CDATA can only appear as part of element content, not as part of an attribute value. (It's easier to ask questions and understand the answers if you learn the correct terminology...)
That means you can write
<prop name="test"><![CDATA[{Some Json}]]></prop>
but you can't write
<prop name="test" value="<![CDATA[{Some Json}]]>"/>
CDATA, of course is just a device for escaping special characters, and there are other ways of escaping special characters in attributes. In fact, if you use single quotes around an attribute
<prop name="test" value='{"key":value, "data":[1,2,3]}'/>
then you usually won't need any escaping at all, unless your JSON data happens to contain strings with "'" or "<" in them -- in which case they can be written as XML character references.