Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2397 ns forest markers #2439

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion src/ontology/catalog-v001.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,8 @@
<uri id="User Entered Import Resolution" name="http://purl.obolibrary.org/obo/cl/imports/nif_import.owl" uri="imports/nif_import.owl"/>
<uri id="User Entered Import Resolution" name="http://purl.obolibrary.org/obo/cl/imports/nif_cell.owl" uri="imports/nif_cell.owl"/>
<uri id="User Entered Import Resolution" name="http://ontology.neuinfo.org/NIF/BiomaterialEntities/NIF-Cell.owl" uri="mirror/NIF-Cell.owl"/>
<uri name="http://purl.obolibrary.org/obo/cl/components/hra_subset.owl" uri="components/hra_subset.owl"/>
<uri id="User Entered Import Resolution" name="http://purl.obolibrary.org/obo/cl/patterns/definitions.owl" uri="../patterns/definitions.owl"/>
<uri name="http://purl.obolibrary.org/obo/cl/components/hra_subset.owl" uri="components/hra_subset.owl"/>
<uri name="http://purl.obolibrary.org/obo/cl/components/mappings.owl" uri="components/mappings.owl"/>
<uri name="http://purl.obolibrary.org/obo/cl/components/blood_and_immune_upper_slim.owl" uri="components/blood_and_immune_upper_slim.owl"/>
<uri name="http://purl.obolibrary.org/obo/cl/components/eye_upper_slim.owl" uri="components/eye_upper_slim.owl"/>
Expand Down
1 change: 1 addition & 0 deletions src/ontology/cl-edit.owl
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ Import(<http://purl.obolibrary.org/obo/cl/components/hra_subset.owl>)
Import(<http://purl.obolibrary.org/obo/cl/components/kidney_upper_slim.owl>)
Import(<http://purl.obolibrary.org/obo/cl/components/mappings.owl>)
Import(<http://purl.obolibrary.org/obo/cl/imports/merged_import.owl>)
Import(<http://purl.obolibrary.org/obo/cl/patterns/definitions.owl>)
Annotation(obo:IAO_0000700 obo:CL_0000000)
Annotation(dc:description "An ontology of cell types.")
Annotation(dc:title "Cell Ontology")
Expand Down
6 changes: 6 additions & 0 deletions src/patterns/data/default/MarkersToCells.tsv
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
defined_class Cell_type Minimal_markers_label Organ Species_abbv species FBeta_confidence_score
CL:4028006 alveolar type 2 fibroblast cell "SCARA5, CD248" Lung Human NCBITaxon:9606 0.85
CL:4028004 alveolar type 1 fibroblast cell "AOC3, LUM" Lung Human NCBITaxon:9606 0.7
CL:0000583 alveolar macrophage "MSR1, FABP4" Lung Human NCBITaxon:9606 0.8
CL:4033041 CCL3-positive alveolar macrophage "TNIP3, CXCL5" Lung Human NCBITaxon:9606 0.67
CL:4033042 metallothionein-positive alveolar macrophage "HMOX1, HPGD" Lung Human NCBITaxon:9606 0.41
7 changes: 7 additions & 0 deletions src/patterns/data/default/NSForestMarkers.tsv
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
defined_class Marker_set_of Minimal_markers Minimal_markers_label Organ Species_abbv Organ_region Parent FBeta_confidence_score
CL:4037001 Adventitial fibroblasts entrez:286133|entrez:57124 "['SCARA5', 'CD248']" Lung Human UBERON:0002048 SO:0001260 0.85
CL:4037002 Alveolar fibroblasts entrez:8639|entrez:4060 "['AOC3', 'LUM']" Lung Human UBERON:0002048 SO:0001260 0.7
CL:4037003 Alveolar macrophages entrez:4481|entrez:2168 "['MSR1', 'FABP4']" Lung Human UBERON:0002048 SO:0001260 0.8
CL:4037004 Alveolar Mph CCL3+ entrez:79931|entrez:6374 "['TNIP3', 'CXCL5']" Lung Human UBERON:0002048 SO:0001260 0.67
CL:4037005 Alveolar Mph MT-positive entrez:3162|entrez:3248 "['HMOX1', 'HPGD']" Lung Human UBERON:0002048 SO:0001260 0.41
CL:4037006 Alveolar Mph proliferating entrez:9768|entrez:6241|entrez:11065|entrez:51203 "['PCLAF', 'RRM2', 'UBE2C', 'NUSAP1']" Lung Human UBERON:0002048 SO:0001260 0.26
72 changes: 72 additions & 0 deletions src/patterns/definitions.owl
Original file line number Diff line number Diff line change
Expand Up @@ -11,5 +11,77 @@ Ontology(<http://purl.obolibrary.org/obo/cl/patterns/definitions.owl>
Annotation(owl:versionInfo "2024-07-09")


Declaration(Class(<http://purl.obolibrary.org/obo/CL_4037001>))
Declaration(Class(<http://purl.obolibrary.org/obo/CL_4037002>))
Declaration(Class(<http://purl.obolibrary.org/obo/CL_4037003>))
Declaration(Class(<http://purl.obolibrary.org/obo/CL_4037004>))
Declaration(Class(<http://purl.obolibrary.org/obo/CL_4037005>))
Declaration(Class(<http://purl.obolibrary.org/obo/CL_4037006>))
Declaration(Class(<http://purl.obolibrary.org/obo/SO_0001260>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_11065>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_2168>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_286133>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_3162>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_3248>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_4060>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_4481>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_51203>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_57124>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_6241>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_6374>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_79931>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_8639>))
Declaration(Class(<http://purl.obolibrary.org/obo/entrez_9768>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/BFO_0000051>))
Declaration(AnnotationProperty(<http://purl.obolibrary.org/obo/PCL_0010062>))



############################
# Classes
############################

# Class: <http://purl.obolibrary.org/obo/CL_4037001> (NS forest marker set of Adventitial fibroblasts (Human Lung).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/CL_4037001> "0.85")
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CL_4037001> "NS forest marker set of Adventitial fibroblasts (Human Lung).")
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037001> <http://purl.obolibrary.org/obo/SO_0001260>)
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037001> ObjectIntersectionOf(ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_286133>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_57124>)))

# Class: <http://purl.obolibrary.org/obo/CL_4037002> (NS forest marker set of Alveolar fibroblasts (Human Lung).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/CL_4037002> "0.70")
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CL_4037002> "NS forest marker set of Alveolar fibroblasts (Human Lung).")
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037002> <http://purl.obolibrary.org/obo/SO_0001260>)
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037002> ObjectIntersectionOf(ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_4060>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_8639>)))

# Class: <http://purl.obolibrary.org/obo/CL_4037003> (NS forest marker set of Alveolar macrophages (Human Lung).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/CL_4037003> "0.80")
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CL_4037003> "NS forest marker set of Alveolar macrophages (Human Lung).")
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037003> <http://purl.obolibrary.org/obo/SO_0001260>)
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037003> ObjectIntersectionOf(ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_2168>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_4481>)))

# Class: <http://purl.obolibrary.org/obo/CL_4037004> (NS forest marker set of Alveolar Mph CCL3+ (Human Lung).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/CL_4037004> "0.67")
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CL_4037004> "NS forest marker set of Alveolar Mph CCL3+ (Human Lung).")
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037004> <http://purl.obolibrary.org/obo/SO_0001260>)
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037004> ObjectIntersectionOf(ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_6374>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_79931>)))

# Class: <http://purl.obolibrary.org/obo/CL_4037005> (NS forest marker set of Alveolar Mph MT-positive (Human Lung).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/CL_4037005> "0.41")
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CL_4037005> "NS forest marker set of Alveolar Mph MT-positive (Human Lung).")
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037005> <http://purl.obolibrary.org/obo/SO_0001260>)
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037005> ObjectIntersectionOf(ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_3162>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_3248>)))

# Class: <http://purl.obolibrary.org/obo/CL_4037006> (NS forest marker set of Alveolar Mph proliferating (Human Lung).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/CL_4037006> "0.26")
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/CL_4037006> "NS forest marker set of Alveolar Mph proliferating (Human Lung).")
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037006> <http://purl.obolibrary.org/obo/SO_0001260>)
SubClassOf(<http://purl.obolibrary.org/obo/CL_4037006> ObjectIntersectionOf(ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_11065>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_51203>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_6241>) ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/entrez_9768>)))


)
44 changes: 44 additions & 0 deletions src/patterns/dosdp-patterns/MarkersToCells.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
pattern_name: NSForestMarkers
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this pattern is running at all. I couldn't see any terms generated by this template in the definitions.owl. I couldn't see any terms in my local build as well.
Errors are:

  • missing column for pattern variable <Marker_set>
  • missing column for pattern variable <Marker_set_xref>
  • missing column for pattern variable <has_characterization_set>

pattern_iri: http://purl.obolibrary.org/obo/cl/MarkersToCells.yaml
description: "Adds marker sets to cell types logically and documentation"

classes:
"thing": "owl:Thing"
"Metazoa": "NCBITaxon:33208"

relations:
has part: "BFO:0000051"
has characterizing marker set: "RO:0015004"
present in taxon: "RO:0002175"

vars:
species: "'Metazoa'"
has_characterization_set: "'thing'"

data_vars:
Marker_set_xref: "xsd:string"
Organ: "xsd:string"
Species_abbv: "xsd:string"
FBeta_confidence_score: "xsd:string"
Cell_type: "xsd:string"
Marker_set: "xsd:string"

data_list_vars:
Marker_set: "xsd:string"

logical_axioms:
- axiom_type: subClassOf
text: "('present in taxon' some %s) and ('has characterizing marker set' some %s)"
vars:
- species
- has_characterization_set

comment:
text: "A %s in the %s %s has the gene markers %s with a NS-Forest FBeta value of %s."
vars:
- Cell_type
- Species_abbv
- Organ
- Marker_set
- FBeta_confidence_score
xrefs: Marker_set_xref
57 changes: 57 additions & 0 deletions src/patterns/dosdp-patterns/NSForestMarkers.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
pattern_name: NSForestMarkers
pattern_iri: http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml
description: "Characterizing marker sets template for cell terms."

classes:
"thing": "owl:Thing"
"sequence_feature": "SO:0000110"

relations:
has_part: "BFO:0000051"
# has_anatomical_context: "PCL:0010063"

vars:
Organ_region: "'regional part of brain'"
Parent: "'thing'"

list_vars:
Minimal_markers: "'sequence_feature'"

data_vars:
Marker_set_of: "xsd:string"
Organ: "xsd:string"
Species_abbv: "xsd:string"
FBeta_confidence_score: "xsd:double"

annotationProperties:
fbetaConfidenceScore: "PCL:0010062"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Recently STATO added a new term for F Beta Score ISA-tools/stato#86 (comment).

Should we use STATO:0000663(F-beta score) instead of fbetaConfidenceScore: "PCL:0010062"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes please


name:
text: "NS forest marker set of %s (%s %s)."
vars:
- Marker_set_of
- Species_abbv
- Organ

logical_axioms:
- axiom_type: subClassOf
multi_clause:
sep: " and "
clauses:
- text: "'has_part' some %s"
vars:
- Minimal_markers
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now the marker urls are generated like http://purl.obolibrary.org/obo/entrez_286133 but in the BDSO it is in the form of http://identifiers.org/ncbigene/286133 which is resolvable.

To do this we need to override the make file rules that run $(DOSDPT) generate command and provide a prefix mapping file to it: --prefixes=template_prefixes.yaml

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We will also need an import file for these to get labels. (I think we had ensembl & NCBI for BDSO). I'm wondering whether, longer term, a more sustainable approach would be to have a separate repo for generating marker objects and make imports from that to the KG and CL.

- axiom_type: subClassOf
text: "%s"
vars:
- Parent
# - axiom_type: subClassOf
# text: "'has_anatomical_context' some %s"
# vars:
# - Brain_region

annotations:
- annotationProperty: fbetaConfidenceScore
text: "%s"
vars:
- FBeta_confidence_score
12 changes: 12 additions & 0 deletions src/patterns/pattern.owl
Original file line number Diff line number Diff line change
Expand Up @@ -14,18 +14,22 @@ Declaration(Class(<http://purl.obolibrary.org/obo/GO_0005886>))
Declaration(Class(<http://purl.obolibrary.org/obo/GO_0008150>))
Declaration(Class(<http://purl.obolibrary.org/obo/NCBITaxon_1>))
Declaration(Class(<http://purl.obolibrary.org/obo/PATO_0000001>))
Declaration(Class(<http://purl.obolibrary.org/obo/SO_0000110>))
Declaration(Class(<http://purl.obolibrary.org/obo/UBERON_0001062>))
Declaration(Class(<http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml>))
Declaration(Class(<http://purl.obolibrary.org/obo/cl/cellBearerOfQuality>))
Declaration(Class(<http://purl.obolibrary.org/obo/cl/cellCapableOfBiologicalProcess>))
Declaration(Class(<http://purl.obolibrary.org/obo/cl/cellHasPlasmaMembranePartX>))
Declaration(Class(<http://purl.obolibrary.org/obo/cl/cellPartOfAnatomicalEntity>))
Declaration(Class(<http://purl.obolibrary.org/obo/cl/taxonSpecific>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/BFO_0000050>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/BFO_0000051>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/RO_0000053>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/RO_0002104>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/RO_0002162>))
Declaration(ObjectProperty(<http://purl.obolibrary.org/obo/RO_0002215>))
Declaration(AnnotationProperty(<http://purl.obolibrary.org/obo/IAO_0000115>))
Declaration(AnnotationProperty(<http://purl.obolibrary.org/obo/PCL_0010062>))
Declaration(AnnotationProperty(<http://purl.org/dc/terms/title>))
Declaration(AnnotationProperty(<http://www.geneontology.org/formats/oboInOwl#hasDbXref>))
Declaration(AnnotationProperty(<http://www.geneontology.org/formats/oboInOwl#hasExactSynonym>))
Expand All @@ -36,6 +40,14 @@ Declaration(AnnotationProperty(<http://www.geneontology.org/formats/oboInOwl#has
# Classes
############################

# Class: <http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml> (NS forest marker set of xsd:string (xsd:string xsd:string).)

AnnotationAssertion(<http://purl.obolibrary.org/obo/PCL_0010062> <http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml> "xsd:double"^^xsd:string)
AnnotationAssertion(<http://purl.org/dc/terms/title> <http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml> "NSForestMarkers"^^xsd:string)
AnnotationAssertion(rdfs:label <http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml> "NS forest marker set of xsd:string (xsd:string xsd:string)."^^xsd:string)
SubClassOf(<http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml> owl:Thing)
SubClassOf(<http://purl.obolibrary.org/obo/cl/NSForestMarkers.yaml> ObjectSomeValuesFrom(<http://purl.obolibrary.org/obo/BFO_0000051> <http://purl.obolibrary.org/obo/SO_0000110>))

# Class: <http://purl.obolibrary.org/obo/cl/cellBearerOfQuality> ('quality' 'cell')

AnnotationAssertion(<http://purl.obolibrary.org/obo/IAO_0000115> <http://purl.obolibrary.org/obo/cl/cellBearerOfQuality> "Any 'cell' that is 'quality'"^^xsd:string)
Expand Down
Loading