Re: predicate to indicate a SPARQL query used to generate a dataset

I find PROV annoyingly indirect in the way it lets me associate a method, like code, with the Entity generated and I frequently have this case, just as you have! I use this formulation:

### http://linked.data.gov.au/def/loci#hadGenerationMethod

:hadGenerationMethod rdf:type owl:ObjectProperty ;

                     rdfs:range prov:Plan ;
                     owl:propertyChainAxiom ( prov:wasGeneratedBy
                                              prov:qualifiedAssociation
                                              prov:hadPlan
                                            ) ;
                     rdfs:label "had generation method" ;
                     skos:definition "Something (likely a prov:Entity) had a method (prov:Plan) that was used to generate it"@en ;
                     skos:editorialNote "This property is a property chain axiome equivalent to a chain of three properties in the PROV ontology: prov:wasGeneratedBy, prov:qualifiedAssociation and prof:hadPlan linking a prov:Entity (the thing generated) to a prov:Plan (the thin instruction generation - the method) via a prov:Activity (the generating event) and a prov:Association that the prov:Activity has linking it to the prov:Plan."@en .

So:

<SPARQL-Code> a prov:Plan .
<Derived-Entity> loci:hadGenerationMethod <SPARQL-Code> .

I know from talking to several of the main PROV editors that this is not exactly how they intended things to be used but it’s not wrong. I find it useful!

Nick

Nicholas Car
Senior Experimental Scientist
CSIRO
nicholas.car@csiro.au<mailto:nicholas.car@csiro.au> | 0477 560 177


On 9 Mar 2019, at 12:59 am, Svensson, Lars <L.Svensson@dnb.de<mailto:L.Svensson@dnb.de>> wrote:

Hi Antoine,

On Friday, March 08, 2019 2:36 PM, Antoine Isaac [mailto:aisaac@few.vu.nl] wrote:

At Europeana we're playing with slicing datasets (vocabularies) and we'd like to
represent a bit the provenance.
Basically a dataset is generated from another dataset using a SPARQL query, for
example, select all painters from this dataset of artists.
Does anyone know whether there is a way to describe the derived resource,
especially, do you know of a property we could use to attach the query to the URI of
a new resource?

I'd use the pattern described in prov:hadUsage [1].

[1] https://www.w3.org/TR/prov-o/#hadUsage

Best,

Lars

Received on Friday, 8 March 2019 23:39:20 UTC