sssom icon indicating copy to clipboard operation
sssom copied to clipboard

Add constraints on which slots should be documented with which mapping justification

Open matentzn opened this issue 3 years ago • 2 comments

Right now, the core SSSOM model is

subject, predicate, object, mapping justification.

In our flat model, we have not constrained how specific elements, like subject_match_field should appear in conjunction with which mapping justification.

Here is a dump that we should probably constrain in one form or another:
mapping justification:
  abstract: true
  description: A mapping activity is an activity that confirms or provides evidence towards the truthfullness of a mapping.
  slots:
    - confidence
    - author
    - creator
    - mapping_date
    - see_also
    - other
    - comment
derivation:
  is_a: mapping activity
  description: A derivation is a mapping activity that derives a mapping from another mapping source, such as a mapping table or ontology. This process often involves "guessing" the intended mapping predicate. It is recommended that this is well documented.
  slots:
    - mapping_provider
automated match:
  abstract: true
  is_a: match
  description: An automated match is a match which is performed by a software agent, such as an Ontolgy Mapping Tool.
  slots:
    - mapping_tool
    - mapping_tool_version
lexical match:
  is_a: automated match
  description: Lexical match
  slots:
    - subject_match_field
    - object_match_field
    - match_string
    - subject_preprocessing
    - object_preprocessing
cross-walk:
  is_a: automated match
  description: A cross-walk is a match type based on one or more mappings
    - mapping_ids
human curated mapping:
  is_a: mapping activity
  description: Match based on human expert opinion
  slots:
    - curation rule
semantic similarity match:
  slots:
    - semantic_similarity_score
    - semantic_similarity_measure

classes:
  mapping set:
    description: Represents a set of mappings
    slot_usage:
      license:
        required: true
    slots:
    - mappings
    - mapping_set_id
    - mapping_set_version
    - mapping_set_source
    - mapping_set_description
    - creator_id
    - creator_label
    - license
    - mapping activity
    - subject_category
    - subject_source
    - subject_source_version
    - object_category
    - object_source
    - object_source_version
    - see_also
    - other
    - comment
  subject_entity:
    slots:
    - subject_id
    - subject_label
    - subject_category
    - subject_source
    - subject_source_version
  object_entity:
    slots:
    - object_id
    - object_label
    - object_category
    - object_source
    - object_source_version
  predicate:
    slots:
    - predicate_id
    - predicate_label
    - predicate_modifier
  mapping:
    description: Represents an individual mapping between a pair of entities
    slots:
      - mapping_id
      - subject
      - predicate
      - object
      - mapping_justification
      - mapping_cardinality
    class_uri: owl:Axiom
  agent:
    author:
      is_a: agent
      slots:
        - author_id
        - author_label
    creator:
      is_a: agent
      slots:
        - creator_id
        - creator_label
    

matentzn avatar Apr 15 '22 13:04 matentzn

Is this related to #146 ?

jonquet avatar Apr 19 '22 00:04 jonquet

Yes, seems to be the same. Should merge the two issues in the next round. Thanks for spotting!

matentzn avatar Apr 19 '22 11:04 matentzn