diff --git a/CHANGELOG.md b/CHANGELOG.md index 94b6da62..fc4518fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Next - Add `composed entity expression` as a new value in the `EntityType` enumeration ([issue](https://github.com/mapping-commons/sssom/issues/402)). +- Add `predicate_type` slot (previously defined but unused) to the `Mapping` and `MappingSet` classes ([issue](https://github.com/mapping-commons/sssom/issues/404)). - TBD ## SSSOM version 1.0.0 diff --git a/examples/schema/predicate-types.sssom.tsv b/examples/schema/predicate-types.sssom.tsv new file mode 100644 index 00000000..c8717e83 --- /dev/null +++ b/examples/schema/predicate-types.sssom.tsv @@ -0,0 +1,11 @@ +#curie_map: +# COMENT: https://example.com/entities/ +# ORGENT: https://example.org/entities/ +# ORGPRO: https://example.org/properties/ +#mapping_set_id: https://w3id.org/sssom/commons/examples/predicate-types.sssom.tsv +#license: https://creativecommons.org/licenses/by/4.0/ +subject_id subject_label predicate_id object_id object_label mapping_justification predicate_type +ORGENT:0001 alice ORGPRO:example_annot_property COMENT:0011 alpha semapv:ManualMappingCuration owl annotation property +ORGENT:0002 bob ORGPRO:example_object_property COMENT:0012 beta semapv:ManualMappingCuration owl object property +ORGENT:0004 daphne ORGPRO:example_data_property COMENT:0014 delta semapv:ManualMappingCuration owl data property +ORGENT:0005 eve ORGPRO:example_rdf_property COMENT:0015 epsilon semapv:ManualMappingCuration rdf property diff --git a/src/docs/spec-model.md b/src/docs/spec-model.md index 4d12341d..a9adf5c9 100644 --- a/src/docs/spec-model.md +++ b/src/docs/spec-model.md @@ -56,7 +56,8 @@ For convenience, here is the current list of propagatable slots: * `subject_preprocessing`, * `subject_source`, * `subject_source_version`, -* `subject_type`. +* `subject_type`, +* `predicate_type`. When a mapping set object has a value in one of its propagatable slots, this MUST be interpreted as if all mappings within the set had that same value in their corresponding slot. For example, if a set has the value _foo_ in its `mapping_tool` slot, all the mappings in that set MUST be treated as if they had the value _foo_ in their `mapping_tool` slot. diff --git a/src/sssom_schema/schema/sssom_schema.yaml b/src/sssom_schema/schema/sssom_schema.yaml index 6bae0362..2edc2b33 100644 --- a/src/sssom_schema/schema/sssom_schema.yaml +++ b/src/sssom_schema/schema/sssom_schema.yaml @@ -230,8 +230,13 @@ slots: - value: has cross-reference description: The label of the oboInOwl:hasDbXref property to represent cross-references. predicate_type: - description: The type of entity that is being mapped. + description: The type of the predicate used to map the subject and object entities. range: entity_type_enum + see_also: + - https://github.com/mapping-commons/sssom/issues/143 + - https://github.com/mapping-commons/sssom/blob/master/examples/schema/predicate-types.sssom.tsv + annotations: + propagated: true examples: - value: owl:AnnotationProperty - value: owl:ObjectProperty @@ -721,6 +726,7 @@ classes: - object_type - object_source - object_source_version + - predicate_type - mapping_provider - mapping_tool - mapping_tool_version @@ -761,6 +767,7 @@ classes: - object_type - object_source - object_source_version + - predicate_type - mapping_provider - mapping_source - mapping_cardinality