2) Why is :data an declared as "^^rdf:XMLLiteral"?
I thought that since the value of the data field of a content object would most likely be xml, this would probably be the best type to give it. But I am fully open to criticism here.
3) Why does :created have " GMT" in it? I believe this makes it an invalid xsd:dateTime value.
That's because I must have copied and pasted my Java date creation time from a flawed source.
I have now changed it to: df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); //ISO 8601 format