From 369e5839ad80eaaf828869b88bd7cbc39b3f3fbf Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Thu, 11 Jul 2024 12:31:22 +0200 Subject: [PATCH 1/7] Create schema-to-prov.sssom Initialise --- resources/semantic-maps/schema-to-prov.sssom | 1 + 1 file changed, 1 insertion(+) create mode 100644 resources/semantic-maps/schema-to-prov.sssom diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom new file mode 100644 index 000000000..8b1378917 --- /dev/null +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -0,0 +1 @@ + From 2c7fb04c0a315613603d4ecff209c07fb51e741b Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Thu, 11 Jul 2024 12:49:02 +0200 Subject: [PATCH 2/7] Update schema-to-prov.sssom initialise --- resources/semantic-maps/schema-to-prov.sssom | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom index 8b1378917..fa9200520 100644 --- a/resources/semantic-maps/schema-to-prov.sssom +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -1 +1,17 @@ - +#comment: "This mapping was created following and expanding upon the SSSOM guidance: https://mapping-commons.github.io/sssom/spec/" +#license: "https://creativecommons.org/publicdomain/zero/1.0/" +#mapping_set_version: "0.1" +#subject_source: https://github.com/schemaorg/schemaorg/releases/tag/v27.02-release +#object_source: https://www.w3.org/ns/prov-o +#subject_source_version: V27.02 +#object_source_version: v20130430 +#creator_id: +# - orcid:0000-0002-4366-3088 +#creator_label: +# - Pier Luigi Buttigieg +#curie_map: +# schema: "https://schema.org/" +# provo: "http://www.w3.org/ns/prov#" +# orcid: "https://orcid.org/" +# skos: "http://www.w3.org/2004/02/skos/core#" +subject_id subject_label object_id object_label predicate_id mapping_justification comment From ff892696471849f0d446c29e6a01078700f6a813 Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Thu, 11 Jul 2024 13:49:31 +0200 Subject: [PATCH 3/7] Update schema-to-prov.sssom Core PROV model mapping --- resources/semantic-maps/schema-to-prov.sssom | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom index fa9200520..8359e896b 100644 --- a/resources/semantic-maps/schema-to-prov.sssom +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -14,4 +14,17 @@ # provo: "http://www.w3.org/ns/prov#" # orcid: "https://orcid.org/" # skos: "http://www.w3.org/2004/02/skos/core#" -subject_id subject_label object_id object_label predicate_id mapping_justification comment +subject_id subject_label object_id object_label predicate_id mapping_justification comment +schema:Thing Thing provo:Entity Entity skos:closeMatch These are essentially interchangeable +schema:Action Action provo:Activity Activity skos:closeMatch While not exact, these classes are interchangeable in many applications +schema:Person Person provo:Agent Agent skos:narrowMatch One can specify that a Person is an agent by using it as the value of the schema:agent property +schema:Organization Organization provo:Agent Agent skos:narrowMatch One can specify that an Organization is an agent by using it as the value of the schema:agent property +schema:Thing Thing provo:Agent Agent skos:relatedMatch Other things, aside from schema:Person or schema:Organization instances, can be prov:Agents (such as machines, AIs, etc). The semantic relation is weaker here, as schema:Things also include processual entities, which cannot be agents. +schema:agent agent provo:wasAssociatedWith wasAssociatedWith skos:closeMatch In PROV, an Activity is associated with an agent, which matches the identification of a schema:agent in an Action type +schema:participant participant provo:wasAssociatedWith wasAssociatedWith skos:broadMatch schema:participant can be used to identify secondary agents in an Action +schema:isBasedOn isBasedOn provo:wasDerivedFrom wasDerivedFrom skos:broadMatch schema:isBasedOn is used for CreativeWorks, so its dormain and range are narrower than prov:Entities +schema:object object provo:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). +schema:result result provo:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). +schema:object object provo:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to provo:used +schema:result result provo:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result +schema:instrument instrument provo:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. From b0354029175c9be30dd99d14734b9f74412250fb Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Thu, 11 Jul 2024 14:29:14 +0200 Subject: [PATCH 4/7] Update schema-to-prov.sssom Complete Starting Point map --- resources/semantic-maps/schema-to-prov.sssom | 3 +++ 1 file changed, 3 insertions(+) diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom index 8359e896b..b6043cac8 100644 --- a/resources/semantic-maps/schema-to-prov.sssom +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -28,3 +28,6 @@ schema:result result provo:wasDerivedFrom wasDerivedFrom skos:relatedMatch sche schema:object object provo:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to provo:used schema:result result provo:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result schema:instrument instrument provo:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. +schema:endTime endTime provo:endedAtTime endedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity +schema:startTime startTime provo:startedAtTime startedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity +schema:provider provider provo:actedOnBehalfOf actedOnBehalfOf skos:relatedMatch Note that the domains of the properties in this match are different. schema:provider is a property of schema:Action, while prov:actedOnBehalfOf is a property of prov:Agent. Both can express that another agent performed an Action/Activity on behalf of another. From 306317d1b353f429c4daaa61c428b4e828062c85 Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Fri, 12 Jul 2024 23:18:51 +0200 Subject: [PATCH 5/7] Update schema-to-prov.sssom Switched PROV prefix to vanilla prov:, added rdfs for specialisations, added Expanded PROV terms as shown in core model figure, with one or two others (added opportunistically) from https://www.w3.org/ns/prov --- resources/semantic-maps/schema-to-prov.sssom | 63 ++++++++++++++------ 1 file changed, 45 insertions(+), 18 deletions(-) diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom index b6043cac8..128cbf2f4 100644 --- a/resources/semantic-maps/schema-to-prov.sssom +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -10,24 +10,51 @@ #creator_label: # - Pier Luigi Buttigieg #curie_map: +# rdfs: "http://www.w3.org/2000/01/rdf-schema#" # schema: "https://schema.org/" -# provo: "http://www.w3.org/ns/prov#" +# prov: "http://www.w3.org/ns/prov#" # orcid: "https://orcid.org/" # skos: "http://www.w3.org/2004/02/skos/core#" -subject_id subject_label object_id object_label predicate_id mapping_justification comment -schema:Thing Thing provo:Entity Entity skos:closeMatch These are essentially interchangeable -schema:Action Action provo:Activity Activity skos:closeMatch While not exact, these classes are interchangeable in many applications -schema:Person Person provo:Agent Agent skos:narrowMatch One can specify that a Person is an agent by using it as the value of the schema:agent property -schema:Organization Organization provo:Agent Agent skos:narrowMatch One can specify that an Organization is an agent by using it as the value of the schema:agent property -schema:Thing Thing provo:Agent Agent skos:relatedMatch Other things, aside from schema:Person or schema:Organization instances, can be prov:Agents (such as machines, AIs, etc). The semantic relation is weaker here, as schema:Things also include processual entities, which cannot be agents. -schema:agent agent provo:wasAssociatedWith wasAssociatedWith skos:closeMatch In PROV, an Activity is associated with an agent, which matches the identification of a schema:agent in an Action type -schema:participant participant provo:wasAssociatedWith wasAssociatedWith skos:broadMatch schema:participant can be used to identify secondary agents in an Action -schema:isBasedOn isBasedOn provo:wasDerivedFrom wasDerivedFrom skos:broadMatch schema:isBasedOn is used for CreativeWorks, so its dormain and range are narrower than prov:Entities -schema:object object provo:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). -schema:result result provo:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). -schema:object object provo:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to provo:used -schema:result result provo:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result -schema:instrument instrument provo:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. -schema:endTime endTime provo:endedAtTime endedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity -schema:startTime startTime provo:startedAtTime startedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity -schema:provider provider provo:actedOnBehalfOf actedOnBehalfOf skos:relatedMatch Note that the domains of the properties in this match are different. schema:provider is a property of schema:Action, while prov:actedOnBehalfOf is a property of prov:Agent. Both can express that another agent performed an Action/Activity on behalf of another. +subject_id subject_label object_id object_label predicate_id mapping_justification comment +schema:Thing Thing prov:Entity Entity skos:closeMatch These terms are usually interchangeable. +schema:Action Action prov:Activity Activity skos:closeMatch While not exact semantic matches, these classes are interchangeable in many applications. +schema:Person Person prov:Agent Agent skos:narrowMatch One can specify that a Person is an agent by using it as the value of the schema:agent property. +schema:Organization Organization prov:Agent Agent skos:narrowMatch One can specify that an Organization is an agent by using it as the value of the schema:agent property. +schema:Thing Thing prov:Agent Agent skos:relatedMatch Other things, aside from schema:Person or schema:Organization instances, can be prov:Agents (such as machines, AIs, etc). The semantic relation is weaker here, as schema:Things also include processual entities, which cannot be agents. +schema:agent agent prov:wasAssociatedWith wasAssociatedWith skos:closeMatch In PROV, an Activity is associated with an agent, which matches the identification of a schema:agent in an Action type. +schema:participant participant prov:wasAssociatedWith wasAssociatedWith skos:broadMatch schema:participant can be used to identify secondary agents in an Action +schema:isBasedOn isBasedOn prov:wasDerivedFrom wasDerivedFrom skos:broadMatch schema:isBasedOn is used for CreativeWorks, so its domain and range are narrower than prov:Entities. +schema:object object prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). +schema:result result prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). +schema:object object prov:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to prov:used +schema:result result prov:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result. +schema:instrument instrument prov:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. +schema:endTime endTime prov:endedAtTime endedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. +schema:startTime startTime prov:startedAtTime startedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. +schema:provider provider prov:actedOnBehalfOf actedOnBehalfOf skos:relatedMatch Note that the domains of the properties in this match are different. schema:provider is a property of schema:Action, while prov:actedOnBehalfOf is a property of prov:Agent. Both can express that another agent performed an Action/Activity on behalf of another. +schema:Person Person prov:Person Person skos:closeMatch These terms are usually interchangeable. +schema:Organization Organization prov:Organization Organization skos:closeMatch These terms are usually interchangeable. +schema:SoftwareApplication SoftwareApplication prov:SoftwareAgent SoftwareAgent skos:closeMatch These terms are usually interchangeable., however, the PROV class confounds function with being (software becomes an agent, and isn't always so). This is unlikely to cause issues in most applications, unless fine-grained semantic discrimination is needed. +schema:dateCreated dateCreated prov:generatedAtTime generatedAtTime skos:broadMatch These terms are usually interchangeable., however, schema.org limited the domain of this property to schema:CreativeWorks, while PROV allows any prov:Entity to be a value. Surprisingly, this means that schema:Thing doesn't have a native property to describe when it came into being, although one could always add an schema:additionalProperty to express this. For representation of datasets and other creative works, these properties would be interchangeable. +schema:dateDeleted dateDeleted prov:wasInvalidatedBy wasInvalidatedBy skos:broadMatch The prov:wasInvalidatedBy can apply to any Entity, while the schema:dateDeleted only applies to elements in a schema:DataFeed +schema:DeleteAction DeleteAction prov:wasInvalidatedBy wasInvalidatedBy skos:relatedMatch The schema:Type, schema:DeleteAction, can be used on any schema:Thing to express its removal, which is closer to the semantics of prov:wasInvalidatedBy, with the added value that more metadata can be provided on the deletion event itself. +schema:startTime startTime prov:invalidatdAtTime invalidatedAtTime skos:narrowMatch When used on a schema:DeleteAction, time properties can serve to express the time of its deletion. +schema:endTime endTime prov:invalidatdAtTime invalidatedAtTime skos:narrowMatch When used on a schema:DeleteAction, time properties can serve to express the time of its deletion. +schema:Place Place prov:Location Location skos:closeMatch These terms are usually interchangeable. +schema:location location prov:atLocation atLocation skos:closeMatch These terms are usually interchangeable. +schema:Collection Collection prov:Collection Collection skos:broadMatch These terms are usually interchangeable., however, the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower +schema:partOf partOf prov:hadMember hadMember skos:broadMatch These terms are usually interchangeable. for datasets and other schema:CreativeWorks. Note however, that the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower. +schema:isBasedOn isBasedOn prov:hadPrimarySource hadPrimarySource skos:narrowMatch When one traverses a series of schema:CreativeWork nodes through their schema:isBasedOn properties, the primary source can be discovered. This assumes that the path is complete and intact. The PROV property is a useful shortcut and a clear assertion. +schema:potentialAction potentialAction prov:wasInfluencedBy wasInfluencedBy skos:relatedMatch "Influence" is a very fluffy thing, semantically. While PROV provides a relation to express influence, in schema.org, one would have to use the schema:potentialAction property to identify one or more schema:Actions which the schema:Thing (or sub-Type thereof) was a schema:object in. Naturally, if the Thing played an object role in an Action, it was influenced by that Action and its participants. Metadata in the schema:Action type and any participant schema:Things in it can specify the nature of this influence. +schema:isBasedOn isBasedOn prov:wasQuotedFrom wasQuotedFrom skos:narrowMatch When schema:isBasedOn is a property of schema:Quotation, it is semantically close to prov:wasQuotedFrom +schema:Quotation Quotation prov:Quotation Quotation skos:closeMatch These terms are usually interchangeable. +schema:mentions mentions prov:mentionOf mentionOf skos:broadMatch These terms are usually interchangeable, although the domain of schema:mentions is likely narrower, being limited to schema:CreativeWork rather than prov:Entity +schema:UpdateAction UpdateAction prov:wasRevisionOf wasRevisionOf skos:relatedMatch The schema:Type, schema:UpdateAction (or its sub-Types), can be used on any schema:Thing (via schema:potentialAction) to express that it has been changed, including changes that constitute revisions. This is semantically close to prov:wasRevisionOf, with the added value that more metadata can be provided on the revision event itself. +schema:isBasedOn isBasedOn prov:wasRevisionOf wasRevisionOf skos:narrowMatch While less semantically expressive than using schema:UpdateAction, schema:isBasedOn can be used to more broadly suggest change in a downstream schema:CreativeWork +schema:correction correction prov:wasRevisionOf wasRevisionOf skos:relatedMatch As some revisions can be understood as corrections, schema:correction may be a valid counterpart for prov:wasRevisionOf, with a narrower range of schema:CorrectionComment. However, as the schema:correction range is limited to schema:Comment, this is not a close mapping to a schema:CreativeWork that is a revision of another in its totality, rather a corrective note referencing it. +schema:Dataset Dataset prov:Bundle Bundle skos:narrowMatch A prov:Bundle is a set of provenance statements. No close schema:Type exists, however, schema:Dataset can express the set-like nature of a systematic collection of representations, which can be representations of provenance. +schema:sameAs sameAs prov:alternateOf alternateOf skos:broadMatch prov:alternateOf includes references to the same entity. +schema:citation citation prov:alternateOf alternateOf skos:relatedMatch prov:alternateOf includes references to different entities that represent aspects of the same prov:Entity. schema:citation allows one schema:Creative work to reference one or many others. It's likely, although not certain, that creative works in the range of schema:citation will contain information about alternate aspects of whatever the schema:CreativeWork is about. One can scan for identical values of schema:about to increase the chances that this is the case. +rdfs:subClassOf subClassOf prov:specializationOf specializationOf skos:broadMatch in RDF compatible serialisations of schema.org, RDF properties are used to express specialisation. It's unclear why PROV needs to create a new property to do this very standard task. +rdfs:subPropertyOf subPropertyOf prov:specializationOf specializationOf skos:broadMatch in RDF compatible serialisations of schema.org, RDF properties are used to express specialisation. It's unclear why PROV needs to create a new property to do this very standard task. +schema:HowTo HowTo prov:Plan Plan skos:closeMatch These terms are usually interchangeable. From f36264743f1147ecac55a23880328b81b3eda4ab Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Fri, 12 Jul 2024 23:34:06 +0200 Subject: [PATCH 6/7] Update schema-to-prov.sssom Added more mapping metadata to SSSOM --- resources/semantic-maps/schema-to-prov.sssom | 90 ++++++++++---------- 1 file changed, 46 insertions(+), 44 deletions(-) diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom index 128cbf2f4..259955f25 100644 --- a/resources/semantic-maps/schema-to-prov.sssom +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -2,9 +2,10 @@ #license: "https://creativecommons.org/publicdomain/zero/1.0/" #mapping_set_version: "0.1" #subject_source: https://github.com/schemaorg/schemaorg/releases/tag/v27.02-release -#object_source: https://www.w3.org/ns/prov-o +#object_source: https://www.w3.org/ns/prov #subject_source_version: V27.02 #object_source_version: v20130430 +#mapping_date: 2024-07-12 #creator_id: # - orcid:0000-0002-4366-3088 #creator_label: @@ -15,46 +16,47 @@ # prov: "http://www.w3.org/ns/prov#" # orcid: "https://orcid.org/" # skos: "http://www.w3.org/2004/02/skos/core#" -subject_id subject_label object_id object_label predicate_id mapping_justification comment -schema:Thing Thing prov:Entity Entity skos:closeMatch These terms are usually interchangeable. -schema:Action Action prov:Activity Activity skos:closeMatch While not exact semantic matches, these classes are interchangeable in many applications. -schema:Person Person prov:Agent Agent skos:narrowMatch One can specify that a Person is an agent by using it as the value of the schema:agent property. -schema:Organization Organization prov:Agent Agent skos:narrowMatch One can specify that an Organization is an agent by using it as the value of the schema:agent property. -schema:Thing Thing prov:Agent Agent skos:relatedMatch Other things, aside from schema:Person or schema:Organization instances, can be prov:Agents (such as machines, AIs, etc). The semantic relation is weaker here, as schema:Things also include processual entities, which cannot be agents. -schema:agent agent prov:wasAssociatedWith wasAssociatedWith skos:closeMatch In PROV, an Activity is associated with an agent, which matches the identification of a schema:agent in an Action type. -schema:participant participant prov:wasAssociatedWith wasAssociatedWith skos:broadMatch schema:participant can be used to identify secondary agents in an Action -schema:isBasedOn isBasedOn prov:wasDerivedFrom wasDerivedFrom skos:broadMatch schema:isBasedOn is used for CreativeWorks, so its domain and range are narrower than prov:Entities. -schema:object object prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). -schema:result result prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). -schema:object object prov:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to prov:used -schema:result result prov:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result. -schema:instrument instrument prov:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. -schema:endTime endTime prov:endedAtTime endedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. -schema:startTime startTime prov:startedAtTime startedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. -schema:provider provider prov:actedOnBehalfOf actedOnBehalfOf skos:relatedMatch Note that the domains of the properties in this match are different. schema:provider is a property of schema:Action, while prov:actedOnBehalfOf is a property of prov:Agent. Both can express that another agent performed an Action/Activity on behalf of another. -schema:Person Person prov:Person Person skos:closeMatch These terms are usually interchangeable. -schema:Organization Organization prov:Organization Organization skos:closeMatch These terms are usually interchangeable. -schema:SoftwareApplication SoftwareApplication prov:SoftwareAgent SoftwareAgent skos:closeMatch These terms are usually interchangeable., however, the PROV class confounds function with being (software becomes an agent, and isn't always so). This is unlikely to cause issues in most applications, unless fine-grained semantic discrimination is needed. -schema:dateCreated dateCreated prov:generatedAtTime generatedAtTime skos:broadMatch These terms are usually interchangeable., however, schema.org limited the domain of this property to schema:CreativeWorks, while PROV allows any prov:Entity to be a value. Surprisingly, this means that schema:Thing doesn't have a native property to describe when it came into being, although one could always add an schema:additionalProperty to express this. For representation of datasets and other creative works, these properties would be interchangeable. -schema:dateDeleted dateDeleted prov:wasInvalidatedBy wasInvalidatedBy skos:broadMatch The prov:wasInvalidatedBy can apply to any Entity, while the schema:dateDeleted only applies to elements in a schema:DataFeed -schema:DeleteAction DeleteAction prov:wasInvalidatedBy wasInvalidatedBy skos:relatedMatch The schema:Type, schema:DeleteAction, can be used on any schema:Thing to express its removal, which is closer to the semantics of prov:wasInvalidatedBy, with the added value that more metadata can be provided on the deletion event itself. -schema:startTime startTime prov:invalidatdAtTime invalidatedAtTime skos:narrowMatch When used on a schema:DeleteAction, time properties can serve to express the time of its deletion. -schema:endTime endTime prov:invalidatdAtTime invalidatedAtTime skos:narrowMatch When used on a schema:DeleteAction, time properties can serve to express the time of its deletion. -schema:Place Place prov:Location Location skos:closeMatch These terms are usually interchangeable. -schema:location location prov:atLocation atLocation skos:closeMatch These terms are usually interchangeable. -schema:Collection Collection prov:Collection Collection skos:broadMatch These terms are usually interchangeable., however, the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower -schema:partOf partOf prov:hadMember hadMember skos:broadMatch These terms are usually interchangeable. for datasets and other schema:CreativeWorks. Note however, that the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower. -schema:isBasedOn isBasedOn prov:hadPrimarySource hadPrimarySource skos:narrowMatch When one traverses a series of schema:CreativeWork nodes through their schema:isBasedOn properties, the primary source can be discovered. This assumes that the path is complete and intact. The PROV property is a useful shortcut and a clear assertion. -schema:potentialAction potentialAction prov:wasInfluencedBy wasInfluencedBy skos:relatedMatch "Influence" is a very fluffy thing, semantically. While PROV provides a relation to express influence, in schema.org, one would have to use the schema:potentialAction property to identify one or more schema:Actions which the schema:Thing (or sub-Type thereof) was a schema:object in. Naturally, if the Thing played an object role in an Action, it was influenced by that Action and its participants. Metadata in the schema:Action type and any participant schema:Things in it can specify the nature of this influence. -schema:isBasedOn isBasedOn prov:wasQuotedFrom wasQuotedFrom skos:narrowMatch When schema:isBasedOn is a property of schema:Quotation, it is semantically close to prov:wasQuotedFrom -schema:Quotation Quotation prov:Quotation Quotation skos:closeMatch These terms are usually interchangeable. -schema:mentions mentions prov:mentionOf mentionOf skos:broadMatch These terms are usually interchangeable, although the domain of schema:mentions is likely narrower, being limited to schema:CreativeWork rather than prov:Entity -schema:UpdateAction UpdateAction prov:wasRevisionOf wasRevisionOf skos:relatedMatch The schema:Type, schema:UpdateAction (or its sub-Types), can be used on any schema:Thing (via schema:potentialAction) to express that it has been changed, including changes that constitute revisions. This is semantically close to prov:wasRevisionOf, with the added value that more metadata can be provided on the revision event itself. -schema:isBasedOn isBasedOn prov:wasRevisionOf wasRevisionOf skos:narrowMatch While less semantically expressive than using schema:UpdateAction, schema:isBasedOn can be used to more broadly suggest change in a downstream schema:CreativeWork -schema:correction correction prov:wasRevisionOf wasRevisionOf skos:relatedMatch As some revisions can be understood as corrections, schema:correction may be a valid counterpart for prov:wasRevisionOf, with a narrower range of schema:CorrectionComment. However, as the schema:correction range is limited to schema:Comment, this is not a close mapping to a schema:CreativeWork that is a revision of another in its totality, rather a corrective note referencing it. -schema:Dataset Dataset prov:Bundle Bundle skos:narrowMatch A prov:Bundle is a set of provenance statements. No close schema:Type exists, however, schema:Dataset can express the set-like nature of a systematic collection of representations, which can be representations of provenance. -schema:sameAs sameAs prov:alternateOf alternateOf skos:broadMatch prov:alternateOf includes references to the same entity. -schema:citation citation prov:alternateOf alternateOf skos:relatedMatch prov:alternateOf includes references to different entities that represent aspects of the same prov:Entity. schema:citation allows one schema:Creative work to reference one or many others. It's likely, although not certain, that creative works in the range of schema:citation will contain information about alternate aspects of whatever the schema:CreativeWork is about. One can scan for identical values of schema:about to increase the chances that this is the case. -rdfs:subClassOf subClassOf prov:specializationOf specializationOf skos:broadMatch in RDF compatible serialisations of schema.org, RDF properties are used to express specialisation. It's unclear why PROV needs to create a new property to do this very standard task. -rdfs:subPropertyOf subPropertyOf prov:specializationOf specializationOf skos:broadMatch in RDF compatible serialisations of schema.org, RDF properties are used to express specialisation. It's unclear why PROV needs to create a new property to do this very standard task. -schema:HowTo HowTo prov:Plan Plan skos:closeMatch These terms are usually interchangeable. +# semapv: "https://w3id.org/semapv/vocab/" +subject_id subject_label object_id object_label predicate_id comment mapping_justification author_id +schema:Thing Thing prov:Entity Entity skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Action Action prov:Activity Activity skos:closeMatch While not exact semantic matches, these classes are interchangeable in many applications. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Person Person prov:Agent Agent skos:narrowMatch One can specify that a Person is an agent by using it as the value of the schema:agent property. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Organization Organization prov:Agent Agent skos:narrowMatch One can specify that an Organization is an agent by using it as the value of the schema:agent property. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Thing Thing prov:Agent Agent skos:relatedMatch Other things, aside from schema:Person or schema:Organization instances, can be prov:Agents (such as machines, AIs, etc). The semantic relation is weaker here, as schema:Things also include processual entities, which cannot be agents. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:agent agent prov:wasAssociatedWith wasAssociatedWith skos:closeMatch In PROV, an Activity is associated with an agent, which matches the identification of a schema:agent in an Action type. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:participant participant prov:wasAssociatedWith wasAssociatedWith skos:broadMatch schema:participant can be used to identify secondary agents in an Action semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:isBasedOn isBasedOn prov:wasDerivedFrom wasDerivedFrom skos:broadMatch schema:isBasedOn is used for CreativeWorks, so its domain and range are narrower than prov:Entities. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:object object prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:result result prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:object object prov:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to prov:used semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:result result prov:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:instrument instrument prov:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:endTime endTime prov:endedAtTime endedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:startTime startTime prov:startedAtTime startedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:provider provider prov:actedOnBehalfOf actedOnBehalfOf skos:relatedMatch Note that the domains of the properties in this match are different. schema:provider is a property of schema:Action, while prov:actedOnBehalfOf is a property of prov:Agent. Both can express that another agent performed an Action/Activity on behalf of another. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Person Person prov:Person Person skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Organization Organization prov:Organization Organization skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:SoftwareApplication SoftwareApplication prov:SoftwareAgent SoftwareAgent skos:closeMatch These terms are usually interchangeable., however, the PROV class confounds function with being (software becomes an agent, and isn't always so). This is unlikely to cause issues in most applications, unless fine-grained semantic discrimination is needed. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:dateCreated dateCreated prov:generatedAtTime generatedAtTime skos:broadMatch These terms are usually interchangeable., however, schema.org limited the domain of this property to schema:CreativeWorks, while PROV allows any prov:Entity to be a value. Surprisingly, this means that schema:Thing doesn't have a native property to describe when it came into being, although one could always add an schema:additionalProperty to express this. For representation of datasets and other creative works, these properties would be interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:dateDeleted dateDeleted prov:wasInvalidatedBy wasInvalidatedBy skos:broadMatch The prov:wasInvalidatedBy can apply to any Entity, while the schema:dateDeleted only applies to elements in a schema:DataFeed semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:DeleteAction DeleteAction prov:wasInvalidatedBy wasInvalidatedBy skos:relatedMatch The schema:Type, schema:DeleteAction, can be used on any schema:Thing to express its removal, which is closer to the semantics of prov:wasInvalidatedBy, with the added value that more metadata can be provided on the deletion event itself. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:startTime startTime prov:invalidatdAtTime invalidatedAtTime skos:narrowMatch When used on a schema:DeleteAction, time properties can serve to express the time of its deletion. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:endTime endTime prov:invalidatdAtTime invalidatedAtTime skos:narrowMatch When used on a schema:DeleteAction, time properties can serve to express the time of its deletion. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Place Place prov:Location Location skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:location location prov:atLocation atLocation skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Collection Collection prov:Collection Collection skos:broadMatch These terms are usually interchangeable., however, the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:partOf partOf prov:hadMember hadMember skos:broadMatch These terms are usually interchangeable. for datasets and other schema:CreativeWorks. Note however, that the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:isBasedOn isBasedOn prov:hadPrimarySource hadPrimarySource skos:narrowMatch When one traverses a series of schema:CreativeWork nodes through their schema:isBasedOn properties, the primary source can be discovered. This assumes that the path is complete and intact. The PROV property is a useful shortcut and a clear assertion. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:potentialAction potentialAction prov:wasInfluencedBy wasInfluencedBy skos:relatedMatch "Influence" is a very fluffy thing, semantically. While PROV provides a relation to express influence, in schema.org, one would have to use the schema:potentialAction property to identify one or more schema:Actions which the schema:Thing (or sub-Type thereof) was a schema:object in. Naturally, if the Thing played an object role in an Action, it was influenced by that Action and its participants. Metadata in the schema:Action type and any participant schema:Things in it can specify the nature of this influence. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:isBasedOn isBasedOn prov:wasQuotedFrom wasQuotedFrom skos:narrowMatch When schema:isBasedOn is a property of schema:Quotation, it is semantically close to prov:wasQuotedFrom semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Quotation Quotation prov:Quotation Quotation skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:mentions mentions prov:mentionOf mentionOf skos:broadMatch These terms are usually interchangeable, although the domain of schema:mentions is likely narrower, being limited to schema:CreativeWork rather than prov:Entity semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:UpdateAction UpdateAction prov:wasRevisionOf wasRevisionOf skos:relatedMatch The schema:Type, schema:UpdateAction (or its sub-Types), can be used on any schema:Thing (via schema:potentialAction) to express that it has been changed, including changes that constitute revisions. This is semantically close to prov:wasRevisionOf, with the added value that more metadata can be provided on the revision event itself. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:isBasedOn isBasedOn prov:wasRevisionOf wasRevisionOf skos:narrowMatch While less semantically expressive than using schema:UpdateAction, schema:isBasedOn can be used to more broadly suggest change in a downstream schema:CreativeWork semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:correction correction prov:wasRevisionOf wasRevisionOf skos:relatedMatch As some revisions can be understood as corrections, schema:correction may be a valid counterpart for prov:wasRevisionOf, with a narrower range of schema:CorrectionComment. However, as the schema:correction range is limited to schema:Comment, this is not a close mapping to a schema:CreativeWork that is a revision of another in its totality, rather a corrective note referencing it. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:Dataset Dataset prov:Bundle Bundle skos:narrowMatch A prov:Bundle is a set of provenance statements. No close schema:Type exists, however, schema:Dataset can express the set-like nature of a systematic collection of representations, which can be representations of provenance. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:sameAs sameAs prov:alternateOf alternateOf skos:broadMatch prov:alternateOf includes references to the same entity. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:citation citation prov:alternateOf alternateOf skos:relatedMatch prov:alternateOf includes references to different entities that represent aspects of the same prov:Entity. schema:citation allows one schema:Creative work to reference one or many others. It's likely, although not certain, that creative works in the range of schema:citation will contain information about alternate aspects of whatever the schema:CreativeWork is about. One can scan for identical values of schema:about to increase the chances that this is the case. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +rdfs:subClassOf subClassOf prov:specializationOf specializationOf skos:broadMatch in RDF compatible serialisations of schema.org, RDF properties are used to express specialisation. It's unclear why PROV needs to create a new property to do this very standard task. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +rdfs:subPropertyOf subPropertyOf prov:specializationOf specializationOf skos:broadMatch in RDF compatible serialisations of schema.org, RDF properties are used to express specialisation. It's unclear why PROV needs to create a new property to do this very standard task. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:HowTo HowTo prov:Plan Plan skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 From a7f40fb44831e922e78df882dacda17b08759461 Mon Sep 17 00:00:00 2001 From: Pier Luigi Buttigieg Date: Thu, 25 Jul 2024 16:23:29 +0200 Subject: [PATCH 7/7] Update schema-to-prov.sssom Updating based on https://github.com/iodepo/odis-arch/pull/451#issuecomment-2236923265 --- resources/semantic-maps/schema-to-prov.sssom | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/resources/semantic-maps/schema-to-prov.sssom b/resources/semantic-maps/schema-to-prov.sssom index 259955f25..c1aceed45 100644 --- a/resources/semantic-maps/schema-to-prov.sssom +++ b/resources/semantic-maps/schema-to-prov.sssom @@ -16,7 +16,7 @@ # prov: "http://www.w3.org/ns/prov#" # orcid: "https://orcid.org/" # skos: "http://www.w3.org/2004/02/skos/core#" -# semapv: "https://w3id.org/semapv/vocab/" +# semapv: "https://w3id.org/semapv/vocab/" subject_id subject_label object_id object_label predicate_id comment mapping_justification author_id schema:Thing Thing prov:Entity Entity skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:Action Action prov:Activity Activity skos:closeMatch While not exact semantic matches, these classes are interchangeable in many applications. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 @@ -28,7 +28,7 @@ schema:participant participant prov:wasAssociatedWith wasAssociatedWith skos:bro schema:isBasedOn isBasedOn prov:wasDerivedFrom wasDerivedFrom skos:broadMatch schema:isBasedOn is used for CreativeWorks, so its domain and range are narrower than prov:Entities. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:object object prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:result result prov:wasDerivedFrom wasDerivedFrom skos:relatedMatch schema.org does not have a property on schema:Thing that can directly indicate it was derived from some other instance of Thing, thus there's no 1:1 mapping to prov:wasDerivedFrom. However, by expressing what schema:Action intervened to convert one thing to another, one can use the schema:object and schema:result properties for the Action Type to express what thing (the value of object) was converted to another (the value of result). semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 -schema:object object prov:used used skos:relatedMatch schema:Action has a property "object" which indicated what Things and Action is carried out upon. This is a fuzzy match to prov:used semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:object object prov:used used skos:relatedMatch schema:Action has a property 'object' which indicated what Things and Action is carried out upon. This is a fuzzy match to prov:used semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:result result prov:generated generated skos:closeMatch schema doesn't have an inverse property for schema:result, so there's no match to wasGeneratedBy, but PROVO does provide an inverse to wasGeneratedBy, generated, which can be mapped to schema:result. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:instrument instrument prov:used used skos:closeMatch schema:instrument can be used to describe any non-consumed Thing used in an Action, which is very similar to the PROV Activity uses Entity pattern. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:endTime endTime prov:endedAtTime endedAtTime skos:closeMatch One has to ensure that this property is used on a schema:Action or prov:Activity. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 @@ -47,7 +47,7 @@ schema:location location prov:atLocation atLocation skos:closeMatch These terms schema:Collection Collection prov:Collection Collection skos:broadMatch These terms are usually interchangeable., however, the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:partOf partOf prov:hadMember hadMember skos:broadMatch These terms are usually interchangeable. for datasets and other schema:CreativeWorks. Note however, that the prov:Collection is an prov:Entity, while a schema:Collection is a schema:CreativeWork, rendering the latter semantically narrower. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:isBasedOn isBasedOn prov:hadPrimarySource hadPrimarySource skos:narrowMatch When one traverses a series of schema:CreativeWork nodes through their schema:isBasedOn properties, the primary source can be discovered. This assumes that the path is complete and intact. The PROV property is a useful shortcut and a clear assertion. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 -schema:potentialAction potentialAction prov:wasInfluencedBy wasInfluencedBy skos:relatedMatch "Influence" is a very fluffy thing, semantically. While PROV provides a relation to express influence, in schema.org, one would have to use the schema:potentialAction property to identify one or more schema:Actions which the schema:Thing (or sub-Type thereof) was a schema:object in. Naturally, if the Thing played an object role in an Action, it was influenced by that Action and its participants. Metadata in the schema:Action type and any participant schema:Things in it can specify the nature of this influence. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 +schema:potentialAction potentialAction prov:wasInfluencedBy wasInfluencedBy skos:relatedMatch 'Influence' is a very fluffy thing, semantically. While PROV provides a relation to express influence, in schema.org, one would have to use the schema:potentialAction property to identify one or more schema:Actions which the schema:Thing (or sub-Type thereof) was a schema:object in. Naturally, if the Thing played an object role in an Action, it was influenced by that Action and its participants. Metadata in the schema:Action type and any participant schema:Things in it can specify the nature of this influence. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:isBasedOn isBasedOn prov:wasQuotedFrom wasQuotedFrom skos:narrowMatch When schema:isBasedOn is a property of schema:Quotation, it is semantically close to prov:wasQuotedFrom semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:Quotation Quotation prov:Quotation Quotation skos:closeMatch These terms are usually interchangeable. semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088 schema:mentions mentions prov:mentionOf mentionOf skos:broadMatch These terms are usually interchangeable, although the domain of schema:mentions is likely narrower, being limited to schema:CreativeWork rather than prov:Entity semapv:ManualMappingCuration https://orcid.org/0000-0002-4366-3088