Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add curie_map element to data model #349

Closed
wants to merge 6 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
## Next

- Add the concept of "propagatable slots".
- Add `curie_map` as an [explicit element of the SSSOM model](https://github.com/mapping-commons/sssom/issues/225)

## SSSOM version 0.15.1

Expand Down
13 changes: 13 additions & 0 deletions examples/schema/curie_map.sssom.tsv
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#curie_map:
# HP: http://purl.obolibrary.org/obo/HP_
# MP: http://purl.obolibrary.org/obo/MP_
# orcid: https://orcid.org/
#mapping_set_id: https://w3id.org/sssom/commons/examples/issue_tracker.sssom.tsv
#license: "https://creativecommons.org/publicdomain/zero/1.0/"
#creator_id: orcid:0000-0002-7356-1779
#mapping_provider: "https://w3id.org/sssom/core_team"
#comment: This is an example file for the SSSOM for illustration only. Its contents are entirely fabricated.
subject_id predicate_id object_id mapping_justification
HP:0009124 skos:exactMatch MP:0000003 semapv:ManualMappingCuration
HP:0008551 skos:exactMatch MP:0000018 semapv:ManualMappingCuration
HP:0000411 skos:exactMatch MP:0000021 semapv:ManualMappingCuration
3 changes: 3 additions & 0 deletions src/docs/spec-formats-tsv.md
Original file line number Diff line number Diff line change
Expand Up @@ -112,6 +112,9 @@ Any prefix name used in a SSSOM/TSV file MUST be declared with a corresponding e

Prefix names listed in the table found in the [IRI prefixes](spec-intro.md#iri-prefixes) section are considered “built-in”. As such, they MAY be omitted from the CURIE map. If they are not omitted, they MUST point to the same IRI prefixes as in the aforementioned table.

_Note_ that as of SSSOM version 0.15.3, the `curie_map` element is part of the metadata model.
This does not have any consequences for SSSOM users, but developers building tools based on
the LinkML model of the SSSOM schema may have to adjust their parsers and serialisers accordingly.

## Propagatable slots

Expand Down
21 changes: 21 additions & 0 deletions src/sssom_schema/schema/sssom_schema.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,20 @@ types:
- https://mapping-commons.github.io/sssom/spec/#tsv

slots:
prefix_name:
key: true
range: ncname
prefix_url:
range: uri
curie_map:
description: A dictionary that contains prefixes as keys and their URI expansions as values.
range: prefix
multivalued: true
inlined: true
see_also:
- https://github.com/mapping-commons/sssom/issues/225
- https://github.com/mapping-commons/sssom/pull/349
- https://github.com/mapping-commons/sssom/blob/master/examples/schema/curie_map.sssom.tsv
mirror_from:
description: A URL location from which to obtain a resource, such as a mapping set.
range: uri
Expand Down Expand Up @@ -627,6 +641,7 @@ classes:
license:
required: true
slots:
- curie_map
- mappings
- mapping_set_id
- mapping_set_version
Expand Down Expand Up @@ -770,6 +785,12 @@ classes:
- mapping_set_group
- last_updated
- local_name

prefix:
slots:
- prefix_name
- prefix_url

Propagatable:
class_uri: sssom:Propagatable
description: Metamodel extension class to describe slots whose value can be
Expand Down
Loading