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

Fixes #3288 Add blood vasculature design pattern and 55 blood terms from VCCF #3289

Merged
merged 18 commits into from
Jun 25, 2024

Conversation

aleixpuigb
Copy link
Collaborator

Fixes #3288 Add blood vasculature design pattern and 55 blood terms from VCCF

…rom VCCF

Fixes #3288 Add blood vasculature design pattern and 55 blood terms from VCCF
Copy link
Contributor

@matentzn matentzn left a comment

Choose a reason for hiding this comment

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

Overall, your suggesting looks like a ROBOT template to me, not a dosdp pattern / template. I would recommend getting a @dosumis or @balhoff review for this one. Or, if you can @cmungall.

src/patterns/data/default/blood_vessel_pattern.tsv Outdated Show resolved Hide resolved
@@ -0,0 +1,56 @@
defined_class label parent part_of_vccf definition xref_vccf synonym synonym_xrefs connecting_branch_of tributary_of vessel_supplies_blood_to vessel_drains_blood_from creator
Copy link
Contributor

Choose a reason for hiding this comment

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

label will not be used, check docs. I think it must be defined_class_name

Copy link
Contributor

Choose a reason for hiding this comment

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

Same as definition - are they too irregular to automatically generate them with dosdp?

Copy link
Contributor

Choose a reason for hiding this comment

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

The big advantage of DOSDPs over ROBOT is text generation. This can use optionals too. If really need to add labels and defs manually, then maybe ROBOT is more appropriate.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

In this case I prefer to not automatically generate them, since they have different structures. I can use ROBOT then, thank you!

Copy link
Member

Choose a reason for hiding this comment

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

IMO the main advantage of DOSDPs is that they are a specification here, independent of whether you want to use the spec to generate or validate. We are desperately in need of specifications of all the patterns in Uberon

src/patterns/data/default/blood_vessel_pattern.tsv Outdated Show resolved Hide resolved
src/patterns/dosdp-patterns/blood_vessel_pattern.yaml Outdated Show resolved Hide resolved
hasDbXref: "oboInOwl:hasDbXref"

vars:
parent: ""
Copy link
Contributor

Choose a reason for hiding this comment

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

Why not typing these? Why "" instead of, say, "anatomical entity"?

parent is not a name for a slot in a dosdp pattern. Sounds again like a ROBOT template to me.

Copy link
Contributor

Choose a reason for hiding this comment

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

You can call your slots whatever you want, but it is good practice to specify a range.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I was adapting the design pattern that we have for the VCCF ontology, but yes, I should have added a range.

Copy link
Member

@cmungall cmungall left a comment

Choose a reason for hiding this comment

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

Are we completely sure we want a single DP covering all blood vessels? I prefer separating artery veins and direction-agnostic classes capillaries etc into distinct DPs (with reuse of slots).

The TSV and the YAML don't seem to match. What is xref_vccf?

@aleixpuigb
Copy link
Collaborator Author

Are we completely sure we want a single DP covering all blood vessels? I prefer separating artery veins and direction-agnostic classes capillaries etc into distinct DPs (with reuse of slots).

Thank you, I have split the pattern in two patterns, one for veins/venules and one for arteries/arterioles. I will create a DOSDP for capillaries in the future.

The TSV and the YAML don't seem to match. What is xref_vccf?

Apologies, the column was supposed to be relabeled and it will be fix in the next commit.

Changes in the DOSDP:
- Split in two DOSDP for venous and arterial blood vessels
- Add proper description
- Add range to variables
- Logical axioms that might have more than one variable, use list_vars and multi_clause

Changes in the table:
- Fix column labels
- Due a problem on the range of vessel supplies/drains blood to/from, all anatomical spaces or cavities had to be substituted
@aleixpuigb
Copy link
Collaborator Author

Changes in the DOSDPs:

  • Split in two DOSDP for venous and arterial blood vessels.
  • Add proper description.
  • Add range to variables.
  • Logical axioms that might have more than one variable, use list_vars and multi_clause.

Changes in the tables:

  • Fix column labels.
  • Due a problem on the range of vessel supplies/drains blood to/from, all anatomical spaces or cavities had to be substituted.
  • Remove two of the contributors, since there was a problem where list of contributors where added as strings. This problem has already been identified.
AnnotationAssertion(<http://purl.org/dc/terms/contributor> <http://purl.obolibrary.org/obo/UBERON_8600055> "https://orcid.org/0000-0001-6677-8489"^^xsd:string)
AnnotationAssertion(<http://purl.org/dc/terms/contributor> <http://purl.obolibrary.org/obo/UBERON_8600055> "https://orcid.org/0000-0002-2597-881X"^^xsd:string)
AnnotationAssertion(<http://purl.org/dc/terms/contributor> <http://purl.obolibrary.org/obo/UBERON_8600055> "https://orcid.org/0000-0002-5574-4272"^^xsd:string)

@aleixpuigb aleixpuigb marked this pull request as draft June 6, 2024 19:19
Once the object properties are fixed, needs to be reversed
@aleixpuigb
Copy link
Collaborator Author

#gogoeditdiff

Copy link

github-actions bot commented Jun 6, 2024

Here's a diff of how these changes impact the classified ontology (on -base file):

Ontology comparison

Left

  • Ontology IRI: http://purl.obolibrary.org/obo/uberon/uberon-base.owl
  • Version IRI: http://purl.obolibrary.org/obo/uberon/releases/2024-06-06/uberon-base.owl
  • Loaded from: file:/__w/uberon/uberon/src/ontology/uberon-base-main.owl/uberon-base.owl

Right

  • Ontology IRI: http://purl.obolibrary.org/obo/uberon/uberon-base.owl
  • Version IRI: http://purl.obolibrary.org/obo/uberon/releases/2024-06-06/uberon-base.owl
  • Loaded from: file:/__w/uberon/uberon/src/ontology/uberon-base-pr.owl/uberon-base.owl

Ontology imports

Ontology annotations

RO_0020101 http://purl.obolibrary.org/obo/RO_0020101

Added

RO_0020102 http://purl.obolibrary.org/obo/RO_0020102

Added

accessory meningeal artery http://purl.obolibrary.org/obo/UBERON_8600099

Added

anterior internal vertebral venous plexus http://purl.obolibrary.org/obo/UBERON_8600103

Added

artery of pterygoid canal http://purl.obolibrary.org/obo/UBERON_8600100

Added

ascending palatine artery http://purl.obolibrary.org/obo/UBERON_8600095

Added

ascending pharyngeal artery http://purl.obolibrary.org/obo/UBERON_8600078

Added

atrioventicular nodal artery http://purl.obolibrary.org/obo/UBERON_8600055

Added

basivertebral vein http://purl.obolibrary.org/obo/UBERON_8600066

Added

bronchial venule http://purl.obolibrary.org/obo/UBERON_8600067

Added

circumflex humeral vein http://purl.obolibrary.org/obo/UBERON_8600073

Added

deep cervical vein http://purl.obolibrary.org/obo/UBERON_8600059

Added

deep lingual artery http://purl.obolibrary.org/obo/UBERON_8600097

Added

deep lingual vein http://purl.obolibrary.org/obo/UBERON_8600069

Added

descending palatine artery http://purl.obolibrary.org/obo/UBERON_8600101

Added

dorsal lingual artery http://purl.obolibrary.org/obo/UBERON_8600098

Added

dorsal lingual vein http://purl.obolibrary.org/obo/UBERON_8600070

Added

dural artery http://purl.obolibrary.org/obo/UBERON_8600079

Added

esophageal vein http://purl.obolibrary.org/obo/UBERON_8600053

Added

external nasal vein http://purl.obolibrary.org/obo/UBERON_8600087

Added

fibular vein http://purl.obolibrary.org/obo/UBERON_8600083

Added

glandular venous plexus http://purl.obolibrary.org/obo/UBERON_8600072

Added

hepatic portal venule http://purl.obolibrary.org/obo/UBERON_8600085

Added

hypophyseal vein http://purl.obolibrary.org/obo/UBERON_8600090

Added

incisor artery http://purl.obolibrary.org/obo/UBERON_8600086

Added

inferior anastomotic vein http://purl.obolibrary.org/obo/UBERON_8600091

Added

intervertebral vein http://purl.obolibrary.org/obo/UBERON_8600104

Added

intra-acinar arteriole http://purl.obolibrary.org/obo/UBERON_8600094

Added

intra-acinar venule http://purl.obolibrary.org/obo/UBERON_8600061

Added

lateral femoral circumflex vein http://purl.obolibrary.org/obo/UBERON_8600065

Added

lateral sacral vein http://purl.obolibrary.org/obo/UBERON_8600056

Added

left anterior descending artery http://purl.obolibrary.org/obo/UBERON_8600102

Added

lumbar vein http://purl.obolibrary.org/obo/UBERON_8600105

Added

mental vein http://purl.obolibrary.org/obo/UBERON_8600068

Added

middle hemorrhoidal vein http://purl.obolibrary.org/obo/UBERON_8600057

Added

percardiacophrenic artery http://purl.obolibrary.org/obo/UBERON_8600081

Added

pericardial artery http://purl.obolibrary.org/obo/UBERON_8600080

Added

posterolateral artery http://purl.obolibrary.org/obo/UBERON_8600064

Added

prostatic venule http://purl.obolibrary.org/obo/UBERON_8600084

Added

pulmonary arteriole http://purl.obolibrary.org/obo/UBERON_8600077

Added

radial vein http://purl.obolibrary.org/obo/UBERON_8600092

Added

segmental pulmonary vein http://purl.obolibrary.org/obo/UBERON_8600051

Added

septal perforating artery http://purl.obolibrary.org/obo/UBERON_8600063

Added

sublingual vein http://purl.obolibrary.org/obo/UBERON_8600071

Added

submental artery http://purl.obolibrary.org/obo/UBERON_8600096

Added

suboccipital venous plexus http://purl.obolibrary.org/obo/UBERON_8600076

Added

subsegmental pulmonary artery http://purl.obolibrary.org/obo/UBERON_8600060

Added

subsegmental pulmonary vein http://purl.obolibrary.org/obo/UBERON_8600052

Added

superficial iliac circumflex vein http://purl.obolibrary.org/obo/UBERON_8600082

Added

supratrochlear vein http://purl.obolibrary.org/obo/UBERON_8600088

Added

supreme intercostal vein http://purl.obolibrary.org/obo/UBERON_8600054

Added

thoracoacromial vein http://purl.obolibrary.org/obo/UBERON_8600074

Added

thyrocervical trunk http://purl.obolibrary.org/obo/UBERON_8600062

Added

transverse cervical vein http://purl.obolibrary.org/obo/UBERON_8600075

Added

transverse nasal root vein http://purl.obolibrary.org/obo/UBERON_8600089

Added

ulnar vein http://purl.obolibrary.org/obo/UBERON_8600093

Added

uterine vein http://purl.obolibrary.org/obo/UBERON_8600058

Added

Copy link

github-actions bot commented Jun 6, 2024

Here's a diff of your edit file (unreasoned)

Ontologies are identical

@aleixpuigb aleixpuigb marked this pull request as ready for review June 7, 2024 10:12
- Change column name part_of for location
- Add FMA_xref
- All radiopedia URL are substituted by doi
- Add more specific ranges
@anitacaron anitacaron requested a review from dosumis June 11, 2024 12:33
matentzn
matentzn previously approved these changes Jun 11, 2024
Copy link
Contributor

@matentzn matentzn left a comment

Choose a reason for hiding this comment

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

LGTM to me, but I didnt do a deep dive.

@aleixpuigb I absolutely love it you took the time to carefully craft these patterns. This is super essential for Uberon moving forward!

Thanks a lot!

I will leave the deep dive review to @rays22 and @anitacaron

@aleixpuigb aleixpuigb requested a review from rays22 June 12, 2024 08:07
Copy link
Collaborator

@rays22 rays22 left a comment

Choose a reason for hiding this comment

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

Looks fine for the most part, but there are some typos and yaml syntax issues. The logical axioms look also fine for now, but I am not sure if all the anatomy experts would agree with the resulting taxonomy.

Co-authored-by: Ray Stefancsik <ray@ebi.ac.uk>
This commit fixes:
- Unnecessary indentation
- Add new empty line at the end of the yaml files
- Change the range of date to xsd:dateTime
- Fix typo in atrioventricular nodal artery
Copy link
Collaborator

@rays22 rays22 left a comment

Choose a reason for hiding this comment

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

I think the pattern templates look fine.

Copy link
Collaborator

@anitacaron anitacaron left a comment

Choose a reason for hiding this comment

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

Technically, I approve it.

@aleixpuigb aleixpuigb merged commit 40afefc into master Jun 25, 2024
1 check passed
@aleixpuigb aleixpuigb deleted the 3288_vccf_DOSDP_vessels branch June 25, 2024 09:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Blood vasculature design pattern - VCCF
6 participants