You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PATO's upper level is moving from BFO to COB (see #602). Cleanly cutting the BFO tie on PATO:characteristic (PATO:0000001) is blocked by an axiom outside our control: RO declares the range of has_characteristic (RO:0000053) as BFO:0000020. Until that range is changed to PATO:0000001, anything that imports RO will keep dragging BFO:0000020 back in and reasoners will keep classifying PATO:characteristic underneath it. Splitting this out of #602 so we can coordinate the cross-ontology change with RO and downstream consumers without holding up the rest of the upper-level reorg.
Context
The plan in #602 renames quality to characteristic and rewires the PATO upper level so the root no longer needs BFO:0000020 (specifically dependent continuant) as a parent. In principle, pato-edit.obo already does not assert PATO:0000001 is_a BFO:0000020 directly. In practice, reasoning over the release artifact still puts PATO:0000001 under BFO:0000020, for two independent reasons:
RO range on has_characteristic. RO:0000053 (has characteristic) declares its range as BFO:0000020. As long as that holds, every ontology that uses has_characteristic (which is most of OBO) needs BFO:0000020 in scope, and PATO:characteristic will continue to be classified under it transitively. The fix is for RO to change the range to PATO:0000001 (PATO:characteristic).
Both fixes are cross-ontology and will break downstream tooling that assumes BFO:0000020 is the canonical type for characteristics/qualities. That is the reason for decoupling this from #602: #602 should land on its own timeline, and the BFO drop should be coordinated separately with RO, GO, and downstream consumers so they have notice.
PATO's upper level is moving from BFO to COB (see #602). Cleanly cutting the BFO tie on
PATO:characteristic(PATO:0000001) is blocked by an axiom outside our control: RO declares the range ofhas_characteristic(RO:0000053) asBFO:0000020. Until that range is changed toPATO:0000001, anything that imports RO will keep draggingBFO:0000020back in and reasoners will keep classifyingPATO:characteristicunderneath it. Splitting this out of #602 so we can coordinate the cross-ontology change with RO and downstream consumers without holding up the rest of the upper-level reorg.Context
The plan in #602 renames
qualitytocharacteristicand rewires the PATO upper level so the root no longer needsBFO:0000020(specifically dependent continuant) as a parent. In principle,pato-edit.oboalready does not assertPATO:0000001 is_a BFO:0000020directly. In practice, reasoning over the release artifact still putsPATO:0000001underBFO:0000020, for two independent reasons:Foreign axiom in GO base.
go-base.owl(versionIRI 2024-06-17) carriesSubClassOf(PATO_0000001 BFO_0000020). This needs to be fixed upstream in GO: Remove BFO imports and rely on COB at the upper ontology geneontology/go-ontology#31354 (cc @balhoff)RO range on
has_characteristic. RO:0000053 (has characteristic) declares its range asBFO:0000020. As long as that holds, every ontology that useshas_characteristic(which is most of OBO) needsBFO:0000020in scope, andPATO:characteristicwill continue to be classified under it transitively. The fix is for RO to change the range toPATO:0000001(PATO:characteristic).Both fixes are cross-ontology and will break downstream tooling that assumes
BFO:0000020is the canonical type for characteristics/qualities. That is the reason for decoupling this from #602: #602 should land on its own timeline, and the BFO drop should be coordinated separately with RO, GO, and downstream consumers so they have notice.