- From: Michel Dumontier <michel.dumontier@gmail.com>
- Date: Sun, 26 Nov 2017 00:00:03 +0100
- To: Chris Mungall <cjmungall@lbl.gov>
- Cc: Graham Klyne <gk@ninebynine.org>, semantic-web <semantic-web@w3.org>
- Message-ID: <CALcEXf7=94-g1N1cHiqrPJXyf1br5HODqf-SFtvMG+p=YxqcCw@mail.gmail.com>
Chris, seems very reasonable to use prov:wasGenerated By <activity>. feel free to explicitly add "a prov:Activity" to your foo/op1. m. On Sat, Nov 25, 2017 at 7:46 PM, Chris Mungall <cjmungall@lbl.gov> wrote: > I had anticipated using prov:wasAssociatedWith, and not creating any new > properties. The gap to be filled is on the side of subclasses of > prov:Activity, for representing operations specific to ontology processing. > > Assuming such an ontology, does this rough sketch seem like a standard > pattern? Is there a good analogous set of design patterns to follow (e.g. > software compilation, scientific workflows)? > > @prefix prov: <http://www.w3.org/ns/prov#> . > @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . > @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . > @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . > @prefix owl: <http://www.w3.org/2002/07/owl#> . > @prefix obo: <http://purl.obolibrary.org/obo/> . > @prefix opera: <http://example.org/OntologyProcessingExtractionReasoningOntology/> . > > ## Ontology header > obo:foo.owl a owl:Ontology ; > dc:title "..." ; > prov:wasDerivedFrom obo:foo/foo-edit.owl ; > prov:wasGeneratedBy obo:foo/op1 ; ## see below > prov:wasAttributedTo obo:foo/editors ; > ... > > ## Ontology provenance > obo:foo/op1 a opera:ReasonOperation ; > prov:used obo:foo/foo-edit.owl ; ## 'source code' > prov:wasInformedBy <configuration??> ## what to use here? > prov:startedAtTime "..." ; > prov:endedAtTime "..." ; > prov:wasAssociatedWith <github/mavenOrGithubIRIforROBOTversion??> ; > > ## Ontology below > obo:FOO_0000001 a owl:Class ; > ... > > On 25 Nov 2017, at 0:29, Graham Klyne wrote: > > Is there any reason that http://www.w3.org/TR/prov-o/#wasAssociatedWith > doesn't work for you? > > My recollection of PROV discussions is that involvement of human, software > and other agents in an activity was intended to be captured using this (or > qualifiedAssociation structures - cf. http://www.w3.org/TR/prov-o/# > qualifiedAssociation). > > (IIRC, the "qualifiedAssociation" and similar structures -- > http://www.w3.org/TR/prov-o/#description-qualified-terms -- were > introduced to avoid application-dependent (not a priori defined) > sub-properties, which would break OWL-QL compatibility of PROV, with > attendant reasoning performance challenges.) > > #g > -- > > On 24/11/2017 22:15, Chris Mungall wrote: > > Many ontologies such as those in the life-sciences have complex multi-step > release pipelines: for example, using an OWL reasoner to assert direct > inferred > subClassOf axioms, adding owl annotations, verifying using SPARQL. It > would be > useful to capture the full operation graph, so that the provenance of the > released ontology was explicit. > > PROV-O would provide the main framework for doing this. PROV-O predicates > could > be used directly. Existing standards could be used to represent the > software > agents involved. AFAICT there is a gap for an ontology for representing the > ontology processing operations (subclasses of prov:Activity). > > Is there an existing effort that could be piggy-backed on here? This could > be > subsumed into an effort that seeks to represent for example transformations > between named graphs. Alternatively, the ontology build pipeline could be > conceived either as a software release process or a scientific workflow. > For the > latter, there are a number of ontologies but it's not clear we'd get any > benefit > using these rather than PROV-O directly. > > If there is no existing work being done here, I'll propose a draft of > activity > classes and design patterns, and we can do a demo implementation in our > ontology > release tool [ROBOT](https://github.com/ontodev/robot). But I'd rather not > duplicate any existing efforts. > > -- Michel Dumontier Distinguished Professor of Data Science Maastricht University http://dumontierlab.com
Received on Saturday, 25 November 2017 23:00:51 UTC