callahantiff / PheKnowLator

PheKnowLator: Heterogeneous Biomedical Knowledge Graphs and Benchmarks Constructed Under Alternative Semantic Models
https://github.com/callahantiff/PheKnowLator/wiki
Apache License 2.0
157 stars 29 forks source link

Adding Edge Pattern and Relation Types #114

Open callahantiff opened 2 years ago

callahantiff commented 2 years ago

New Edge Metadata

I am hoping to add two types of relation-specific metadata to the statistics that are currently generated with each KG build: (i) relation types and (ii) relation patterns. A brief description of each is included below. The thing to keep in mind when considering how we might generate these stats is that we need strategies for generating them for our OWL builds and the OWL-NETS builds.

Relation Types

Resources: arXiv paper

I think it's most useful to think of these things in terms of tail and relation pairs versus a head node or head and relation pairs versus a tail node.

  1. 1:1: only one tail node points only one other type of tail node
  2. 1:N: one head node points to at least one tail node (e.g., one variant can contribute to multiple phenotypes)
  3. N:1: more than one head node points to the same tail node (e.g., many proteins have the same cellular location)
  4. N:N: more than one head node is connected to more than one tail node (e.g., many proteins interact with many other proteins)

I also attempted to draw the silly picture included below. IMG_6216


Relation Patterns

Resources: Stanford Lecture; article, page 27

  1. Symmetric: r ∈ R is symmetric if ∀(h, r, t) ∈ G, (t, r, h) ∈ G (e.g., moleculary interacts)
  2. Antisymmetric: r ∈ R is anti-symmetric if ∀(h, r, t) ∈ G, (t, r, h) ∉ G
  3. Inversion: r ∈ R then the inverse R-1 = {∀(h, r, t) : (t, r, h) ∈ R}
  4. Transitive): r ∈ R is transitive if ∀ pairs of facts (h, r, x) ∈ G and (x, r, t) ∈ G, (h, r, t) ∈ G as well (for OWL KGs this is easily identified easily through owl:TransitiveProperty)
  5. Reflexive: r ∈ R is reflexive if ∀(h, r, t) ∈ G, (h, r, h) ∈ G
  6. Irreflexive: r ∈ R is irreflexive if ∀e ∈ ɛ(e, r, r) ∉ G

Notes



Other relevant or Linked Issues: #99



@bill-baumgartner - Can you please confirm if you agree with this? Any help or insight you have would also be greatly appreciated! 😄

sanyabt commented 2 years ago

Hi @callahantiff, dropping in for a quick comment that Scott Malec (@kingfish777) mapped relations in the Relation Ontology to the above relation patterns for our symmetric and transitive closure on literature-based knowledge and semantic relation extraction graph last year. Will be happy to share that if it is useful 😄

callahantiff commented 2 years ago

Hi @callahantiff, dropping in for a quick comment that Scott Malec (@kingfish777) mapped relations in the Relation Ontology to the above relation patterns for our symmetric and transitive closure on literature-based knowledge and semantic relation extraction graph last year. Will be happy to share that if it is useful 😄

Oh, yes, please! That would be awesome! Thank you so much for sharing!

sanyabt commented 2 years ago

Of course! I am meeting him tomorrow and will make sure I have the latest version then share it with you.