Data Fields accept simple types (Integer, String, Boolean,…) where XML fields take XML data structured in a schema that you can specify. XML Schemas and XML data is good in cases that you want to send structed objects between your application and K2 where K2 can parse it and extract any data out of it using the K2 object browser. another use is when you want to send an array or a list of data to k2 (e.g List of destination users) then you should use XML field becase Data Fields do not support lists.