¿Cómo definir properties propias para models basados ​​en Jena?

Estoy creando una aplicación, que necesita save datos sobre personas, incl. date y hora cuando una persona en particular ha sido creada en la database.

val model = ds.defaultModel val uuid = UUID.randomUUID() val uri = "http://mycompany.com/data/p-${uuid}" val person = model.createResource(uri) person.addProperty(VCARD.EMAIL, email) person.addProperty(VCARD.N, model.createResource() .addProperty(VCARD.NICKNAME, nick)) 

Ahora necesito una nueva propiedad (similar a VCARD.EMAIL y VCARD.N ), que representará la información "Los datos de este usuario se inserton en la database en la date / hora X".

Vi un ejemplo , donde las properties se agregan así:

  r.addProperty(RDFS.label, model.createLiteral("chat", "en")) 

Traté de hacer algo similar:

 val cal = Calendar.Builder().setDate(2017, 2, 3).setTimeOfDay(13, 35, 0) .build() val prop = model.createProperty("http://mycompany.com/schema/person/firstContactDateTime") person.addProperty(prop, model.createTypedLiteral(cal)) 

Obtengo la siguiente estructura:

 <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:vcard="http://www.w3.org/2001/vcard-rdf/3.0#" xmlns:j.0="http://mycompany.com/schema/person/"> <rdf:Description rdf:about="http://mycompany.com/data/p-db6a5042-e5ed-4041-ae00-23df64ac1e7f"> <vcard:EMAIL>john.doe@provider.com</vcard:EMAIL> <vcard:N rdf:parseType="Resource"> <vcard:NICKNAME>jd</vcard:NICKNAME> </vcard:N> <j.0:firstContactDateTime rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime" >2017-03-03T10:35:00Z</j.0:firstContactDateTime> </rdf:Description> </rdf:RDF> 

¿Es la forma correcta de express en RDF la afirmación "La primera interacción con el usuario jd ocurrió el 2017-03-03T10: 35: 00Z"?