Open dosumis opened 2 years ago
TBD - how to integrate with FOVT as terms are created. SSSOM? Or dynamic import into FOVT + obsoletion of FOVT term with replaced_by mappings to new OBA terms. Note - we can add over label, def, xref overrides etc if need to pull more content now in FOVT.
(I would suggest @megbalk to basically do the same in OBA as we do in uPheno: make PRs for new DOSDP patterns one by one, and then incorporate FOVT terms for that pattern with provenance to FUTRES to OBA (using OBA ids). )
I will work off the pull request.
The two subclasses should be (based on General class axioms for "line connecting laterally paired nipples" in OBA):
'part of' some (length and ('characteristic of' some BONE))
length and ('characteristic of' some ('anatomical line' and connects some TO and connects some FROM))
tagging @helenamachado
you cannot use part of
in conjunction with length, only in conjunction with anatomical entities. Do you mean:
length and characteristic of some (part of some BONE)?
I think so, although I am failing to understand the difference between:
length and characteristic of some (part of some BONE)
length and (characteristic of some BONE)
Very difficult problem for phenotype modelling, and you are not alone in that confusion. The difference between the two is only logical, and not biological. The second (length and (characteristic of some BONE)) means that the attribute (length) pertains to the whole bone. The first (length and characteristic of some (part of some BONE)) means that the attribute/quality length pertains to the whole bone or any of its parts. So if you were to have an increase in the length of cell part of the bone, it would be considered an increase in length of the whole bone. That is obviously wrong.
So to clarify:
A) if we have two measurements that are for the entire length of a bone, but measured at different points, we would have "length and (characteristic of some bone)"
B) if we are measuring a part of the bone, like only the distal end, we would have "length and characteristic of some (part of some bone)"
Is that correct?
Yes!
ok, I'll make edits to this file
I am curious if we need two patterns: 1) length and ('characteristic of' some 'bone') e.g., length and ('characteristic of' some humerus) 2) length and ('characteristic of' some ('part of' some 'bone')), e.g., length and ('characteristic of' some ('part of' some ('in distal side of' some humerus)))
The FOVT examples I checked imply length qualities along an anatomical axis from anatomical entity A to anatomical enity B. The measurement seems to be along a line in the sense of geometry and not in the sense of a non-material anatomical boundary such as UBERON:0006800 anatomical line
FOVT:0000007 femur length from caput to medial condyle The length of a line of a femur from a medial condyle of a femur to a head of a femur.
I think here the attribute/trait is intended to be a subClassOf
, which I think is the same as subClassOf
I guess you want to relate this attribute/trait category explicitly to the two anatomical entities that determine the measurement points (anatomical entities A and B), otherwise we could just use the existing pattern entity_attribute_part_of
.
I think it is the position of the anatomical entities A and B which represents the relevant trait/attribute here.
I suggest we model this with two additional subClassOf
logical axioms:
vars:
bone: 'anatomical entity'
from: 'anatomical entity'
to: 'anatomical entity'
logical_axioms:
axiom_type: subClassOf
text: "length and (
'characteristic of part of' some %s"
vars:
- bone
axiom_type: subClassOf
text: "'position originates from' and (
'characteristic of' some %s)"
vars:
- from
axiom_type: subClassOf
text: "'position originates from' and (
'characteristic of' some %s)"
vars:
- to
Taking inspiration from uPheno pattern abnormalDistanceBetweenAnatomicalEntities.yaml
, I have modified my model to:
vars:
bone: 'bone element'
from: 'anatomical entity'
to: 'anatomical entity'
logical_axioms:
axiom_type: subClassOf
text: "length and (
'characteristic of part of' some %s"
vars:
- bone
axiom_type: subClassOf
text: "'position originates from' and (
'characteristic of' some %s) and (
'towards' some %s)"
vars:
- from
- to
Alternatively, I could use PATO:0000040 distance instead of PATO:0040002 position originates from as one of the qualities in the pattern. What do you think @matentzn ?
I think I like the idea with using distance!
suggested pattern for auto-classification under bone length. Not attempting to devise EquivalentClass def for these as too hard to do that while fulfilling simple classification use case.
Also populate tsv with some examples form FOVT:
e.g.