ProvNamespaceManagement

From Provenance WG Wiki
Revision as of 17:41, 10 July 2012 by Gklyne (Talk | contribs)

Jump to: navigation, search

Intro

This page describes the management (and issues around) of the prov namespace.

The namespace is:

Some requirements:

  • the namespace should dereference to appropriate serialization based on accept headers. Some examples
  • In the html page returned, we should provide a glossary of terms with appropriate links to the various specifications.
  • The html should be embedded with RDFa

Current Issues

Which owl should be returned when dereferencing

Solution 1: Merge all owl files into one namespace owl

Here the idea is that each note would maintain a separate owl file. For example sake let's use the following names:

  • ProvenanceOntology.owl - the file containing owl definitions of terms in prov-o
  • prov-aq.owl - the file containing owl definitions of terms in the paq
  • prov-dict.owl - the file containing the owl definitions of terms in prov dictionaries

The proposal would be that this would be merged into a single file

  • prov.owl

The single file would contain concatenated sections delimitated by comments e.g.

# ...
prov:Entity a owl:Class .
# ...
##This section of the prov.owl contains terms from prov-aq
prov:hasProvenanceService a owl:ObjectProperty .
# ...

In addition we would add provenance information identifying where the information was retrieved from

<> prov:wasDerivedFrom <http://www.w3.org/TR/prov-o/prov-20121231.owl> . 

Stian: Should not the above go to the OWL file from the timestamped REC? (changed)

Tim: +1 to Stian. The current location is http://www.w3.org/TR/prov-o/prov.owl, but I plan to use ~ http://www.w3.org/TR/prov-o/prov-20121231.owl when it gets published (to future proof for changes).


Upsides

  • Machine readable information for all terms in the namespace can be easily retrieved

Downsides

  • Creates a monolithic file
  • Some provenance is lost
  • Confusing to know what is part of recommendation or not
  • Confusing which is the official recommendation, prov.owl or ProvenanceOntology.owl - gut instinct would be that the official is what you get from resolving namespace!

Solution 2: Use owl:import

Here we define a single owl file that imports the necessary information from all the separate owl files. Something like:

<> owl:imports <http://www.w3.org/TR/prov-o/prov-20121231.owl> .
<> owl:imports <http://dvcs.w3.org/hg/prov/raw-file/98870b4c796c/ontology/prov-dictionary.owl> .

Stian: Should not the above URLs point to the OWLs of the timestamped REC and Note's folders?


Upsides

  • Creates a simple file with clear distinction between which terms are defined by which notes

Downsides

  • No simple dereferencability
  • Requires owl reasoning

Solution 2.1 Use owl:import, but return only PROV-O

This hybrid solution is a single OWL file with the content of ProvenanceOntology.owl (PROV-O) - but with the additional owl:imports for the modules. It will include provenance to the OWL of the official REC that it is derived from.

## Terms declared here are copied verbatim from the PROV-O recommendation
<> a owl:Ontology ;
   prov:hadPrimarySource <http://www.w3.org/TR/2012/WD-prov-o-20120799/ProvenanceOntology.owl> .
# ...
prov:Entity a owl:Class .
# ...
## This namespace also covers terms from notes which
## don't form part of the PROV-O recommendation.
#
<> owl:imports <http://www.w3.org/TR/prov-aq/prov-aq.owl>,
               <http://www.w3.org/TR/prov-collections/prov-collections.owl> .

Upsides

  • Distinguishes 'official' bit (PROV-O REC) from additional modules (notes)
  • Does not require OWL reasoning for official terms
  • Stronger metaprovenance

Downsides

  • Requires OWL reasoning for notes.

Solution 2.2 Use owl:import and return full merge of PROV-O and all Notes

<> a owl:Ontology ;
   prov:wasGeneratedBy :merge2012-12-16;
   prov:hadPrimarySource <http://www.w3.org/TR/2012/WD-prov-o-20120799/ProvenanceOntology.owl>;
.

:merge2012-12-16
   prov:used <http://www.w3.org/TR/prov-o/prov-20121231.owl>,
             <http://www.w3.org/TR/prov-aq/prov-aq.owl>,
             <http://www.w3.org/TR/prov-collections/prov-collections.owl>;
   prov:qualifiedAssociation :mergeAssociation2012-12-16;
.
:mergeAssociation2012-12-16
   a prov:Association;
   prov:hadPlan <#RDFGraphMerge>;
.
<#RDFGraphMerge>
   a prov:Plan;
   rdfs:label "RDF Graph Merge";
   foaf:page <http://www.w3.org/TR/rdf-mt/>;
   dcterms:description [
      prov:value "A merge of a set of RDF graphs is defined as follows. If the graphs in the set have no blank nodes in common, then the union of the graphs is a merge; if they do share blank nodes, then it is the union of a set of graphs that is obtained by replacing the graphs in the set by equivalent graphs that share no blank nodes.";
      prov:wasQuotedFrom <http://www.w3.org/TR/rdf-mt/>;
   ]
.

## Terms declared here are copied verbatim from the PROV-O recommendation
# ...
prov:Entity a owl:Class .
# ...
## This namespace also covers terms from notes which
## don't form part of the PROV-O recommendation.
#

<> owl:imports <http://www.w3.org/TR/prov-aq/prov-aq.owl> .

## This section of the prov.owl contains terms from prov-aq
prov:hasProvenanceService a owl:ObjectProperty .
# ...

<> owl:imports <http://www.w3.org/TR/prov-collections/prov-collections.owl> .

## This section of the prov.owl contains terms from prov-dictionary
prov:Dictionary a owl:Class .
# ...

Upsides

  • Distinguishes 'official' bit (PROV-O REC) from additional modules (notes)
  • Does not require OWL reasoning for official terms
  • Stronger metaprovenance

Downsides

  • Distinguishing "the big chunk that comes back" requires some work (but still possible)

make simple things easy and hard things possible


Solution 3 Define all terms in a single OWL file

Terms that are not formally part of PROV-O would be described using just annotation properties (rdfs:label, rdfs:comment), so they don't show up in Ontology processing tools, but are still present for documentary purposes when the namespace is dereferenced.

(Additional annotation properties -- provenance even -- might be added so that automated processing tools could separate the terms on the basis of where they are introduced and more fully described.)