Skip to content

Intermicrobial interaction modelling decisions #1

@cpauvert

Description

@cpauvert

This is a rolling issue of pros and cons of modelling decisions especially regarding how to model relationships (see docs) as well as assumptions taken during the development of the MIIID metadata schema.

0. Model all properties from the Perspective paper as strings

Pros:

  • Easy to model
  • Can accomodate n-ary relationships
  • Easy-ish as a TSV

Cons:

  • No mapping of items/enums to WikiData or ontologies
  • No constraint nor validation (except with circonvoluted regex)
  • Not FAIR in the sense that the schema does not know what is each element
  • Burden on the user for formatting input

Status: not considered

1. microbial Participant as a separate class and participants is a slot accepting multiple Participant

Pros:

Cons:

  • Conversion from YAML -> TSV -> YAML does not preserve data integrity (Inlining does not preserve data integrity #2)
  • Will prove difficult for integration with DataHarmonizer
  • Inlining of this nested structure in a TSV will makes it hard for people to contribute
  • Inlining prevents converting to others format as well that are not tree-like

Status: Tried as a first approach. Superseded by (3)
Commit: 9a2016a

2. Model interaction using the biolink

Pros:

  • Reusing existing schema and being part of larger association schema
  • So all pros of (1)

Cons:

Status: not considered yet because of complexity

3. participants is a slot accepting multivalued names, tax_id

Pros:

  • Easier to model
  • Each value of the multivalue has an homogeneous range
  • Can accomodate n-ary relationships

Cons:

  • Name and taxonomic identifiers (as well as future properties) DO NOT belong to the same object which reduces increases errors during data input.

Status: considered implemented
Commit: 10fadb6

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions