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

Generate an automatic NTR + KGCL PR from Wikidata (test with [NTR] resident cardiac macrophage) #2297

Open
lubianat opened this issue Feb 23, 2024 · 8 comments
Assignees
Labels
from wikidata a new term request auto-generated from an Wikidata entry new term request Stale

Comments

@lubianat
Copy link
Contributor

lubianat commented Feb 23, 2024

Please check that the term does not already exist by using the ontology search tool OLS:
https://www.ebi.ac.uk/ols4/ontologies/cl

Preferred term label

resident cardiac macrophage

Synonyms (add reference(s), please)
cardiac tissue resident macrophage, heart resident macrophage, heart macrophage

Definition (free text, with reference(s), please. PubMed ID format is PMID:XXXXXX)

A tissue-resident macrophage located in the heart.

References:
Resident cardiac macrophages: Heterogeneity and function in health and disease

PMID:36103852

Parent cell type term (check the hierarchy here Cell Ontology CL)

resident macrophage
CL IDs: CL_0000864

Anatomical structure where the cell type is found (check Uberon for anatomical structures: Uberon Ontology)

heart
Uberon IDs: UBERON_0000948

Your ORCID
https://orcid.org/0000-0003-2473-2313

Additional notes or concerns
The draft for this request was autogenerated from Wikidata. For more details, see the Wikidata item or the source script.

@lubianat lubianat added new term request from wikidata a new term request auto-generated from an Wikidata entry labels Feb 23, 2024
@lubianat lubianat self-assigned this Feb 23, 2024
@lubianat
Copy link
Contributor Author

@balhoff and @cmungall suggested on Slack using KGCL to generate an structured version. Here is a manual version of it based on the examples.

Naturally, this is missing some bits, namely the definition and its references and the contributor of the term.

I am also not sure if this is properly formatted, as I never used KGCL before.

Changes:

---
id: CHANGE:001
type: ClassCreation
about_node_representation: curie
node_id: CL:9999999
command_with_curie: create CL:9999999
command_with_uri: create http://purl.obolibrary.org/obo/CL_9999999

---
id: CHANGE:002
type: NodeCreation
about_node: CL:9999999
about_node_representation: curie
node_id: CL:9999999
name: 'resident cardiac macrophage'
command_with_curie: create node CL:9999999 'resident cardiac macrophage'
command_with_uri: TODO

---
id: CHANGE:005
type: EdgeCreation
object_type: curie
subject: CL:9999999
predicate: rdfs:subClassOf
object: CL:0000864
subject_type: curie
predicate_type: curie
command_with_curie: create edge CL:9999999 rdfs:subClassOf CL:0000864
command_with_uri: create edge http://purl.obolibrary.org/obo/CL_9999999 http://www.w3.org/2000/01/rdf-schema#subClassOf 

---
id: CHANGE:003
type: EdgeCreation
object_type: curie
subject: CL:9999999
predicate: BFO:0000050
object: UBERON:0000948
subject_type: curie
predicate_type: curie
command_with_curie: create edge CL:9999999 BFO:0000050 UBERON:0000948
command_with_uri: create edge http://purl.obolibrary.org/obo/CL_9999999 http://purl.obolibrary.org/obo/BFO_0000050 http://purl.obolibrary.org/obo/UBERON_0000948

---
id: CHANGE:004
type: NewSynonym
new_value: 'heart macrophage'
about_node: CL:9999999
about_node_representation: curie
qualifier: exact
command_with_curie: create exact synonym 'heart macrophage' for CL:9999999
command_with_uri: create exact synonym 'heart macrophage' for http://purl.obolibrary.org/obo/CL_9999999

Putting it here for feedback and possible tests with Ontobot for PRs.

@balhoff
Copy link
Member

balhoff commented Feb 26, 2024

@hrshdhgd @gouttegd any comments on the KGCL?

@gouttegd
Copy link
Collaborator

There should be no need for you to describe changes in the YAML syntax (and I not even sure the Ontobot supports that syntax, though I’ll let @hrshdhgd weigh in on that). All you should need is the “command with curie” syntax:

create class CL:9999999 'resident cardiac macrophage'
create edge CL:9999999 rdfs:subClassOf CL:0000864
create edge CL:9999999 BFO:0000050 UBERON:0000948
create exact synonym 'heart macrophage' for CL:9999999

Naturally, this is missing some bits, namely the definition and its references and the contributor of the term.

The definition can be added with a NewTextDefinition change (add definition "the definition" for CL:9999999). References on the definition and term contributors are currently not supported by KGCL, however.

But the main problem is that, as far as I know, we have no mechanisms in KGCL (yet?) to allow a user to create a new class without knowing in advance the ID of the future class.

@lubianat lubianat changed the title [NTR] resident cardiac macrophage Generate an automatic NTR + KGCL PR from Wikidata (test with [NTR] resident cardiac macrophage) Feb 26, 2024
@lubianat
Copy link
Contributor Author

Thanks, @gouttegd, that is great! It should be relatively straightforward, then, though some manual changes needed.

I guess that for demonstration of an automated system with the currently capabilities it would be easier to modify an existing term, maybe for another issue:

1 - a button that works on terms that already CL Ids on Wikidata
2 - creates a new issue for adding a single image file to a term with the command with curie syntax
3 - ontobot parses it and creates a PR

Do you know if the Ontobot workflow described for Mondo (https://mondo.readthedocs.io/en/stable/editors-guide/make-simple-changes/) works for CL in the same way?

@gouttegd
Copy link
Collaborator

Do you know if the Ontobot workflow described for Mondo (https://mondo.readthedocs.io/en/stable/editors-guide/make-simple-changes/) works for CL in the same way?

It should, yes (again, I’ll let @hrshdhgd weigh in if that’s not the case).

@hrshdhgd
Copy link
Contributor

Do you know if the Ontobot workflow described for Mondo (https://mondo.readthedocs.io/en/stable/editors-guide/make-simple-changes/) works for CL in the same way?

It should, yes (again, I’ll let @hrshdhgd weigh in if that’s not the case).

Yes it does!

Here are some examples I have on my fork

@hrshdhgd
Copy link
Contributor

There should be no need for you to describe changes in the YAML syntax (and I not even sure the Ontobot supports that syntax, though I’ll let @hrshdhgd weigh in on that). All you should need is the “command with curie” syntax:

create class CL:9999999 'resident cardiac macrophage'
create edge CL:9999999 rdfs:subClassOf CL:0000864
create edge CL:9999999 BFO:0000050 UBERON:0000948
create exact synonym 'heart macrophage' for CL:9999999

Naturally, this is missing some bits, namely the definition and its references and the contributor of the term.

The definition can be added with a NewTextDefinition change (add definition "the definition" for CL:9999999). References on the definition and term contributors are currently not supported by KGCL, however.

But the main problem is that, as far as I know, we have no mechanisms in KGCL (yet?) to allow a user to create a new class without knowing in advance the ID of the future class.

Fully agree.

Copy link

This issue has not seen any activity in the past 6 months; it will be closed automatically in one year from now if no action is taken.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
from wikidata a new term request auto-generated from an Wikidata entry new term request Stale
Projects
None yet
Development

No branches or pull requests

4 participants