linkml / linkml-model

Link Modeling Language (LinkML) model
https://linkml.github.io/linkml-model/docs/
33 stars 16 forks source link

Adding ontology selectors for enums. #106

Closed cmungall closed 2 years ago

cmungall commented 2 years ago

See https://github.com/linkml/linkml/issues/274

cmungall commented 1 year ago

I agree it’s not the best example!

On Wed, May 25, 2022 at 11:07 PM Nico Matentzoglu @.***> wrote:

@.**** commented on this pull request.

In examples/dynamic-enums-example.yaml https://github.com/linkml/linkml-model/pull/106#discussion_r882341847:

+

+#==================================

+# Slots #

+#==================================

+

+slots:

  • name:

  • range: string

  • disease:

  • range: HumanDisease

  • vital_status:

  • enum_range:

  • permissible_values:

  • LIVING:

  • DEAD:

  • UNDEAD:

😂

In examples/dynamic-enums-example.yaml https://github.com/linkml/linkml-model/pull/106#discussion_r882342173:

  • DEAD:
  • UNDEAD:

+#==================================

+# Enums

+#==================================

+

+enums:

  • Disease:

  • reachable_from:

  • source_ontology: bioregistry:mondo

  • source_nodes:

    • MONDO:0000001 ## disease or disorder
  • is_direct: false

  • relationship_types:

    • rdfs:subClassOf

Amazing amazing amazing!

Thank you for doing this!

In examples/dynamic-enums-example.yaml https://github.com/linkml/linkml-model/pull/106#discussion_r882342944:

  • range: HumanDisease
  • vital_status:

  • enum_range:

  • permissible_values:

  • LIVING:

  • DEAD:

  • UNDEAD:

+#==================================

+# Enums

+#==================================

+

+enums:

  • Disease:

  • reachable_from:

  • source_ontology: bioregistry:mondo

You are using br for denoting sources now? Why not obo:Mondo.owl? just out of curiosity

In examples/dynamic-enums-example.yaml https://github.com/linkml/linkml-model/pull/106#discussion_r882343361:

    • reachable_from:
  • source_ontology: bioregistry:loinc

  • source_nodes:

    • loinc:LP43571-6
  • is_direct: true

  • minus:

  • concepts:

    • LOINC:5932-9
  • HCAExample:

  • see_also:

  • include:

    • reachable_from:
  • source_ontology: bioregistry:go

  • source_nodes: ["GO:0007049", "GO:0022403"]

Different permissible syntax for lists?

In examples/dynamic-enums-example.yaml https://github.com/linkml/linkml-model/pull/106#discussion_r882344786:

  • relationship_types:
    • rdfs:subClassOf
  • minus:

  • permissible_values:

  • root_node:

  • meaning: MONDO:0000001 ## disease or disorder

  • HumanDisease:

  • description: Extends the Disease value set, including NCIT neoplasms, excluding non-human diseases

  • inherits:

    • Disease
  • include:

    • reachable_from:
  • source_ontology: bioregistry:ncit

  • source_nodes:

    • NCIT:C3262
  • minus:

Shouldn't minus be directly under include, or does minus have a meaning beyond removing terms included by include?

In examples/dynamic-enums-example.yaml https://github.com/linkml/linkml-model/pull/106#discussion_r882345553:

  • inherits:
    • Disease
  • include:

    • reachable_from:
  • source_ontology: bioregistry:ncit

  • source_nodes:

    • NCIT:C3262
  • minus:

    • reachable_from:
  • source_ontology: bioregistry:mondo

  • source_nodes:

    • MONDO:0005583 ## non-human animal disease
  • relationship_types:

    • rdfs:subClassOf
    • permissible_values:
  • NOT_THIS_ONE:

Seems a bit odd to need an enum to exclude a single term while you can (above) easily exclude an entire branch?

— Reply to this email directly, view it on GitHub https://github.com/linkml/linkml-model/pull/106#pullrequestreview-985759623, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAAMMOONRI5HLGSNWSUY7ADVL4IJPANCNFSM5W7MYLUA . You are receiving this because you authored the thread.Message ID: @.***>