Skip to content

Merging and obsoleting classes

Terms to be obsoleted or merged should be reported in a GitHub issue. Obsoleted terms are maintained in a ROBOT Template which is the source for the “obsolete” component in VBO.

Term merging

When merging a term (=obsolete_term) into another term (=merged_into_term)

  1. Add the obsolete_term information (copied to the original ROBOT template) to the “obsolete” ROBOT template:

    1. VBO ID: (required)
    2. TYPE: (required), should be “owl:Class”
    3. owl:deprecated: (required), should be “true”
    4. ‘term replaced by’: (required) add the merged_into_term vbo id
    5. ‘has obsolescence reason’: (required) write 'terms merged' in the literal field
    6. ‘term tracker item’: (required), add the link to the GitHub issue where the obsoletion/merge was discussed, should be type ‘xsd:anyURI’
    7. Comment: (optional)
  2. Add the obsolete_term information (copied to the original ROBOT template) to the “merged_into_term” (on the ROBOT template):

  3. The original obsolete_term label should be added as an exact synonym, with the original obsolete_term VBO id as a source
  4. Every other annotation and SubClassOf should be added to the “merged_into_term”, with their original source(s); review to ensure that there is no duplicate (when annotations are duplicate, add all sources under a single annotation). This includes:

    1. synonyms
    2. sources
    3. contributors
    4. xref
    5. Comment (note that only one comment is allowed per term, therefore comments might be merged
    6. SubClassOf
  5. Remove the ‘obsolete_term’ from the original ROBOT template

  6. Update components

Term obsoletion (without merging)

  1. Add the obsolete_term information (copied to the original ROBOT template) to the “obsolete” ROBOT template:

    1. VBO ID: (required)
    2. LABEL: (required), add “obsolete” in front of the original template
    3. TYPE: (required), should be “owl:Class”
    4. owl:deprecated: (required), should be “true”
    5. ‘has obsolescence reason’: (required)
    6. ‘term tracker item’’: (required), add the link to the GitHub issue where the obsoletion/merge was discussed, should be type ‘xsd:anyURI’
    7. Plus all the other annotations from the obsolete_term including their original source. This includes
      1. Synonyms
      2. Sources
      3. Contributors
      4. …
      5. **Do NOT** include SubClassOf
      
  2. Remove the ‘obsolete_term’ from the original ROBOT template

  3. Update components