althonos / althonos/pronto

What relationships are used to create subclasses/superclasses?

未关闭
#119 6 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
question
主要语言
Python
星标
267
派生
48
PR 合并指标
30 天内没有已合并 PR

描述

One nice aspect of pronto is that it seems able to read most ontologies using a consistent API, even though ontologies don't always follow the same standards. As seen in [these docs](https://github.com/althonos/pronto/blob/8e946ef746a7a2999d32e266ed1996e87659ad69/docs/source/updating.rst), it is possible to get the parents and children for a term like:

```python
# parents
term.superclasses(distance=1, with_self=False)
# children
term.subclasses(distance=1, with_self=False)
```

What relationships are traversed when detecting sub/super-classes? For example, would these OBO relationships contribute to sub/superclasses: `is_a`, `has_subclass`, `has_part`? What about the RDF relationship of `rdfs:subClassOf`? Does each ontology define what types of relationships (i.e. predicates) constitute sub/superclasses? Or does pronto use the same hardcoded relationships for every ontology?

Is there a way to configure which relationships are indicative of sub/superclasses?

I did see that `is_a` and `has_subclass` might be special as per:

https://github.com/althonos/pronto/blob/8e946ef746a7a2999d32e266ed1996e87659ad69/pronto/ontology.py#L450

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。