Unless I am missing something, KGCL allows to manipulate synonym scopes (exact/narrow/broad/related), but it is ignorant of the concept of synonym types (represented in OWL, at least in some ontologies from the OBO world, by oboInOwl#hasSynonymType).
Being able to add types to a synonym would be useful. For example, several OBO ontologies have a policy that abbreviations that may be used to refer to a term should be represented as synonyms with scope related and a type that clearly marks the synonym as an abbreviation.
This could be done with a general syntax to allow arbitrary axiom annotations (as requested in #12), but I think this would be a bit too “low-level” for KGCL. Ideally users should be able to add synonym types without even having to know that such types are represented with a oboInOwl#hasSynonymType under the hood.
Possible syntax:
Specifying the type when adding the synonym in the first place:
create (exact|narrow|broad|exact)? synonym {new_value} (with type {new_synonym_type})? for {about_node}
Adding or changing the type of an existing synonym:
change synonym type (from {old_synonym_type})? to {new_synonym_type} for {old_value} on {about_node}
Unless I am missing something, KGCL allows to manipulate synonym scopes (exact/narrow/broad/related), but it is ignorant of the concept of synonym types (represented in OWL, at least in some ontologies from the OBO world, by
oboInOwl#hasSynonymType
).Being able to add types to a synonym would be useful. For example, several OBO ontologies have a policy that abbreviations that may be used to refer to a term should be represented as synonyms with scope related and a type that clearly marks the synonym as an abbreviation.
This could be done with a general syntax to allow arbitrary axiom annotations (as requested in #12), but I think this would be a bit too “low-level” for KGCL. Ideally users should be able to add synonym types without even having to know that such types are represented with a
oboInOwl#hasSynonymType
under the hood.Possible syntax: