I am building a model in Jena and am able to add resources, statements, and properties to it. I also want to add information to this model on its own provenance (the provenance of the model). An example of this is Example 2 at http://www.w3.org/TR/prov-o/#narrative-example-expanded-1. I've pulled out the part I'm interested in below: @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . @prefix foaf: <http://xmlns.com/foaf/0.1/> . @prefix sioc: <http://rdfs.org/sioc/ns#> . @prefix prov: <http://www.w3.org/ns/prov#> . @prefix my: <http://www.example.org/vocab#> . @prefix : <http://www.example.org#> . @base <http://www.example.com/derek-bundle.ttl> .
<> a prov:Bundle, prov:Entity; prov:wasAttributedTo :postEditor; prov:generatedAtTime "2011-07-16T02:52:02Z"^^xsd:dateTime; . :derek a prov:Person, prov:Agent; ## prov:Agent is inferred from prov:Person foaf:givenName "Derek"; foaf:mbox <mailto:[email protected]>; prov:actedOnBehalfOf :national_newspaper_inc; .The resource described by "<>" describes the document itself. It is a prov:Bundle and a prov:Entity with other attributes. I am trying to do something similar for my models in Jena and have not been successful. You can create resources, statements, and properties from a model and then link them and add them to the model but there does not seem to be a way of adding statements and properties to a model to describe the model itself. Am I missing something or is there a way of doing this? Some sample code I have tried to achieve this is below, this outputs an anonymous resource. How do I add statements to a model describing the model itself? Namespace provns = new Namespace("prov","http://www.w3.org/ns/prov#"); Model model = ModelFactory.createOntologyModel(OntModelSpec.OWL_MEM); Property provEntity = model.createProperty(provns.getUri() + "Entity"); Property provBundle = model.createProperty(provns.getUri() + "Bundle"); Statement stmt = model.createStatement(model.createResource(),provEntity,provBundle); model.add(stmt); System.out.println("model="); RDFDataMgr.write(System.out,model,Lang.TURTLE); Output:model=@prefix owl: <http://www.w3.org/2002/07/owl#> .@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . [ <http://www.w3.org/ns/prov#Entity> <http://www.w3.org/ns/prov#Bundle> ] . Neil
