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

NEVER merge: Tracking changes on DEV branch #944

Draft
wants to merge 59 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from 38 commits
Commits
Show all changes
59 commits
Select commit Hold shift + click to select a range
2aba940
Update Dockerfile
matentzn Jul 11, 2023
1d31572
Add new term request github issue template
matentzn Jul 15, 2023
46033d0
Merge branch 'master' into dev
matentzn Jul 15, 2023
ea14c2a
Merge branch 'master' into dev
matentzn Jul 17, 2023
e19d7cb
Re-enable the LightRDF-based RDF/XML check.
gouttegd Sep 26, 2023
a6d7e0e
Merge pull request #939 from INCATools/re-enable-lightrdf-based-check…
gouttegd Oct 5, 2023
c468b44
Merge branch 'master' into dev
matentzn Oct 19, 2023
5b237c3
Add ROBOT test version for OWL API 4.5.27
matentzn Oct 19, 2023
b44693c
Merge branch 'master' into dev
matentzn Oct 19, 2023
51d2ea7
Merge branch 'per-command-resource-usage' into dev
matentzn Oct 24, 2023
70257a6
Merge branch 'master' into dev
matentzn Nov 23, 2023
691e228
Merge remote-tracking branch 'origin/re-enable-lightrdf-based-check' …
matentzn Nov 23, 2023
89cb2e2
Merge branch 'master' into dev
matentzn Dec 6, 2023
57d2bd0
Merge branch 'master' into dev
matentzn Dec 21, 2023
390a20d
Merge remote-tracking branch 'origin/fix-mirroring-pipeline' into dev
matentzn Dec 21, 2023
6488552
Merge branch 'master' into dev
matentzn Jan 2, 2024
9ce8a08
create `ANNOTATION_PROPERTIES_ontid`
anitacaron Jan 3, 2024
bbdc1f4
loop annotation properties directly in robot remove command
anitacaron Jan 4, 2024
b386116
Merge branch 'master' into dev
matentzn Jan 5, 2024
4765569
Merge branch 'master' into dev
matentzn Jan 20, 2024
5b5ec3e
Merge remote-tracking branch 'origin/fix-runsh-return-code' into dev
matentzn Jan 20, 2024
c14baeb
Merge branch 'master' into anitacaron/issue814
Jan 29, 2024
719755b
Merge branch 'master' into dev
matentzn Feb 24, 2024
decde8d
Merge branch 'master' into anitacaron/issue814
matentzn Feb 24, 2024
e99c538
Merge branch 'master' into add-new-term-template
matentzn Feb 24, 2024
003bc92
Mistakenly removed a row during merge
matentzn Feb 24, 2024
5e89dff
Merge branch 'master' into dev
matentzn Feb 24, 2024
3798a07
Merge branch 'issue551-generate-custom-reports-during-release' into dev
matentzn Feb 24, 2024
bc186bc
Merge branch 'issue552-custom-robot-reports-check' into dev
matentzn Feb 24, 2024
2ad43f2
Merge branch 'issue647-inferred-axioms' into dev
matentzn Feb 24, 2024
bb16e04
Merge branch 'add-new-term-template' into dev
matentzn Feb 24, 2024
4b79da2
Merge branch 'rm-aps-merged-import' into dev
matentzn Feb 24, 2024
e7a32bd
Merge branch 'anitacaron/issue814' into dev
matentzn Feb 24, 2024
46e4ac4
Update docker/odklite/Dockerfile
matentzn Feb 24, 2024
6cf084c
Merge branch 'issue552-custom-robot-reports-check' into dev
matentzn Feb 24, 2024
484c290
Fixed typo in download path to report_profile.txt
matentzn Feb 24, 2024
963bbd7
Merge branch 'issue552-custom-robot-reports-check' into dev
matentzn Feb 24, 2024
e157df5
Use @balhoff version of ROBOT
matentzn Feb 25, 2024
6668780
Merge branch 'master' into dev
matentzn Feb 25, 2024
2b6d814
Merge branch 'matentzn-patch-1' into dev
matentzn Feb 25, 2024
4074a0d
Merge branch 'master' into dev
matentzn Feb 25, 2024
d03a518
Update CHANGELOG.md
matentzn Feb 25, 2024
f352ffe
Merge branch 'master' into dev
matentzn Feb 25, 2024
efdee99
Update CHANGELOG.md
matentzn Feb 25, 2024
e4ca80d
Merge branch 'international-edition' into dev
matentzn Feb 25, 2024
016f63f
Merge branch 'international-edition' into dev
matentzn Feb 25, 2024
0681e6b
Merge branch 'master' into dev
matentzn Feb 29, 2024
2b91683
Merge branch 'master' into dev
matentzn Feb 29, 2024
e479e74
Revert some changes to master
matentzn Feb 29, 2024
3b1eec0
Merge branch 'master' into dev
matentzn Mar 1, 2024
7229807
Merge branch 'master' into dev
matentzn Mar 1, 2024
47b7f68
Merge branch 'master' into dev
matentzn Mar 1, 2024
04668ae
Merge branch 'master' into dev
matentzn Mar 1, 2024
3c63180
Merge branch 'base-merge-drop' into dev
matentzn Mar 2, 2024
570ff96
Merge branch 'last-fixes' into dev
matentzn Mar 2, 2024
3cdd08a
Update CHANGELOG.md
matentzn Mar 2, 2024
b8d0fad
Merge branch 'master' into dev
matentzn Mar 2, 2024
481a807
Merge branch 'last-fixes' into dev
matentzn Mar 2, 2024
3b95e0c
Merge branch 'master' into dev
matentzn Mar 2, 2024
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
2 changes: 1 addition & 1 deletion docker/odklite/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ ENV PATH="/tools:/tools/dosdptools/bin:$PATH"
ARG ODK_VERSION=0.0.0
ENV ODK_VERSION=$ODK_VERSION

ARG ROBOT_JAR=https://github.com/ontodev/robot/releases/download/v$ROBOT_VERSION/robot.jar
ARG ROBOT_JAR=https://incenp.org/files/softs/robot/1.9/robot-1.9.5-fix-owlapi1112.jar
matentzn marked this conversation as resolved.
Show resolved Hide resolved
ENV ROBOT_JAR=$ROBOT_JAR

# Install base tools from Ubuntu.
Expand Down
4 changes: 4 additions & 0 deletions odk/odk.py
Original file line number Diff line number Diff line change
Expand Up @@ -609,6 +609,10 @@ class OntologyProject(JsonSchemaMixin):
"""If set to True, the reasoner will be used during the release process. The reasoner is used for three operations:
reason (the classification/subclassOf hierarchy computaton); materialize (the materialisation of simple existential/
object property restrictions); reduce (the removal of redundant subclassOf axioms)."""

release_annotate_inferred_axioms : bool = False
"""If set to True, axioms that are inferred during the reasoning process are annotated accordingly,
see https://robot.obolibrary.org/reason."""

release_materialize_object_properties : List[str] = None
"""Define which object properties to materialise at release time."""
Expand Down
97 changes: 96 additions & 1 deletion template/_dynamic_files.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -688,6 +688,8 @@ WARN duplicate_label_synonym
ERROR duplicate_label
WARN duplicate_scoped_synonym
WARN equivalent_pair
WARN equivalent_class_axiom_no_genus
ERROR illegal_use_of_built_in_vocabulary
WARN invalid_xref
ERROR label_formatting
ERROR label_whitespace
Expand All @@ -698,11 +700,16 @@ WARN missing_obsolete_label
ERROR missing_ontology_description
ERROR missing_ontology_license
ERROR missing_ontology_title
WARN missing_subset_declaration
INFO missing_superclass
WARN missing_synonymtype_declaration
ERROR misused_obsolete_label
ERROR misused_replaced_by
ERROR multiple_definitions
ERROR multiple_equivalent_classes
ERROR multiple_equivalent_class_definitions
ERROR multiple_labels
WARN invalid_entity_uri
{%- endif %}
{%- if 'basic' in project.release_artefacts or project.primary_release == 'basic' %}
^^^ src/ontology/keeprelations.txt
Expand Down Expand Up @@ -1845,4 +1852,92 @@ jobs:
GITHUB_TOKEN: {% raw %}${{ secrets.GITHUB_TOKEN }}{% endraw %}
CONFIG_FILE: mkdocs.yaml
{% endif -%}
{% endif -%}
{% endif -%}
{% if (('github_actions' in project.ci) and ('github' in project.workflows)) %}
^^^ .github/ISSUE_TEMPLATE/add-term.yml
name: Add term- Request a New Ontology Term
description: Request a new term to be added to the {{ project.title }}.
title: Request for new term [ADD NAME HERE]
labels: [ New term request ]
body:
- type: markdown
attributes:
value: |
Use this form to request a new ontology term be added to {{ project.id | upper }}.
- type: input
id: Label
attributes:
label: Label
description: Preferred term label. Please add the label in lowercase, unless it is a proper name.
placeholder: ex. spindle cell rhabdomyosarcoma
validations:
required: true
- type: input
id: synonyms
attributes:
label: Synonyms
description: Alternative term(s) or acroynymm for the preferred label. Separate by a comma.
placeholder: ex. SCRMS, SC rhabdomyosarcoma
validations:
required: false
- type: dropdown
id: synonym_type
attributes:
label: Synonym type
description: Please indicate if the synonym is exact, broad, narrow or related. See [here for more explanation of synonym scope](https://mondo.readthedocs.io/en/latest/editors-guide/f-entities/#synonym-scope).
options:
- exact
- broad
- narrow
- related
validations:
required: false
- type: textarea
id: description
attributes:
label: Definition
description: |
Please provide a definition of the term and a reference, such as a PubMed ID, if applicable, in format PMID:#######.
validations:
required: true
- type: input
id: parent
attributes:
label: Parent term
description: Provide a parent term or superclass, i.e. the class this new term should be classified under. Provide the ID and label.
placeholder: BFO:0000001
validations:
required: true
- type: input
id: children
attributes:
label: Children term(s)
description: List any existing terms that should be classified underneath this new proposed term, if applicable. Provide the ID and label.
placeholder: ex. MONDO:0100067 childhood spindle cell rhabdomyosarcoma
validations:
required: false
- type: input
id: orcid
attributes:
label: ORCID Identifier
description: What is the ORCID identifier of the person requesting this term? ORCID identifiers can be made at https://orcid.org.
placeholder: e.g. https://orcid.org/0000-0001-5208-3432
validations:
required: false
- type: input
id: website
attributes:
label: Website URL
description: Provide a website URL that you'd like to be associated with this new term.
placeholder: e.g. https://clinicalgenome.org/affiliation/40005/
validations:
required: false
- type: textarea
id: comments
attributes:
label: Additional comments
description: |
Please provide any additional comments here.
validations:
required: false
{% endif -%}
21 changes: 0 additions & 21 deletions template/issue_template.md.jinja2

This file was deleted.

26 changes: 21 additions & 5 deletions template/src/ontology/Makefile.jinja2
Original file line number Diff line number Diff line change
Expand Up @@ -304,6 +304,21 @@ $(REPORTDIR)/$(SRC)-obo-report.tsv: $(SRCMERGED) | $(REPORTDIR)
$(REPORTDIR)/%-obo-report.tsv: % | $(REPORTDIR)
$(ROBOT) report -i $< $(REPORT_LABEL) $(REPORT_PROFILE_OPTS) --fail-on $(REPORT_FAIL_ON) {% if project.robot_report.use_base_iris %}{% if project.namespaces is not none %}{% for iri in project.namespaces %}--base-iri {{ iri }} {% endfor %}{% else %}--base-iri $(URIBASE)/{{ project.id.upper() }}_ --base-iri $(URIBASE)/{{ project.id }} {% endif %}{% endif -%} --print 5 -o $@

ROBOT_DEFAULT_REPORT=https://raw.githubusercontent.com/ontodev/robot/master/robot-core/src/main/resources/report_profile.txt

check_for_robot_updates:
{%- if project.robot_report.custom_profile %}
@wget "$(ROBOT_DEFAULT_REPORT)" -O $(TMPDIR)/report_profile_robot.txt
@cut -f2 "$(TMPDIR)/report_profile_robot.txt" | sort > $(TMPDIR)/sorted_tsv2.txt
@cut -f2 "$(ROBOT_PROFILE)" | sort > $(TMPDIR)/sorted_tsv1.txt
@comm -23 $(TMPDIR)/sorted_tsv2.txt $(TMPDIR)/sorted_tsv1.txt > $(TMPDIR)/missing.txt
@echo "Missing tests:"
@cat $(TMPDIR)/missing.txt
@rm $(TMPDIR)/sorted_tsv1.txt $(TMPDIR)/sorted_tsv2.txt $(TMPDIR)/missing.txt $(TMPDIR)/report_profile_robot.txt
{%- else %}
echo "You are not using a custom profile, so you are getting the joy of the latest ROBOT report!"
{% endif %}

# ----------------------------------------
# Release assets
# ----------------------------------------
Expand Down Expand Up @@ -448,6 +463,7 @@ $(IMPORTDIR)/merged_import.owl: $(MIRRORDIR)/merged.owl $(IMPORTDIR)/merged_term
if [ $(IMP) = true ]; then $(ROBOT) merge -i $< \{% if project.import_group.exclude_iri_patterns is not none %}
{% for pattern in project.import_group.exclude_iri_patterns %}remove --select "{{ pattern }}" {% endfor %} \{% endif %}
extract -T $(IMPORTDIR)/merged_terms_combined.txt --force true --copy-ontology-annotations true --individuals {{ project.import_group.slme_individuals }} --method {{ project.import_group.module_type_slme }} \
remove $(patsubst %, --term %, $(ANNOTATION_PROPERTIES)) -T $(IMPORTDIR)/merged_terms_combined.txt --select complement \
query --update ../sparql/inject-subset-declaration.ru --update ../sparql/inject-synonymtype-declaration.ru --update ../sparql/postprocess-module.ru \
$(ANNOTATE_CONVERT_FILE); fi
{% else %}
Expand Down Expand Up @@ -514,7 +530,7 @@ $(IMPORTDIR)/{{ ont.id }}_import.owl: {% if project.import_group.use_base_mergin
if [ $(IMP) = true ]{% if ont.is_large %} && [ $(IMP_LARGE) = true ]{% endif %}; then $(ROBOT) {% if ont.is_large %}extract -i $< -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --copy-ontology-annotations true --force true --method BOT \{% else %}query -i $< --update ../sparql/preprocess-module.ru \
extract -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --copy-ontology-annotations true --force true --method BOT \{% endif %}
remove {% if ont.base_iris is not none %}{% for iri in ont.base_iris %}--base-iri {{ iri }} {% endfor %}{% else %}--base-iri $(OBOBASE)/{{ ont.id.upper() }} {% endif %}--axioms external --preserve-structure false --trim false \
remove $(patsubst %, --term %, $(ANNOTATION_PROPERTIES)) -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --select complement \
remove $(patsubst %, --term %, $(ANNOTATION_PROPERTIES)) {% if ont.annotation_properties is defined %}{% for p in ont.annotation_properties %}--term {{ p }} {% endfor %}{% endif %} -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --select complement \
query --update ../sparql/inject-subset-declaration.ru --update ../sparql/inject-synonymtype-declaration.ru --update ../sparql/postprocess-module.ru \
$(ANNOTATE_CONVERT_FILE); fi
{% elif ('mirror' == ont.module_type) or (ont.module_type is none and 'mirror' == project.import_group.module_type) %}
Expand All @@ -527,7 +543,7 @@ $(IMPORTDIR)/{{ ont.id }}_import.owl: {% if project.import_group.use_base_mergin
extract -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --copy-ontology-annotations true --force true --method BOT \{% endif %}
remove {% if ont.base_iris is not none %}{% for iri in ont.base_iris %}--base-iri {{iri}} {% endfor %}{% else %}--base-iri $(OBOBASE)/{{ ont.id.upper() }} {% endif %}--axioms external --preserve-structure false --trim false \
query --update ../sparql/inject-subset-declaration.ru --update ../sparql/inject-synonymtype-declaration.ru \
remove $(patsubst %, --term %, $(ANNOTATION_PROPERTIES)) -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --select complement --select "classes individuals annotation-properties" \
remove $(patsubst %, --term %, $(ANNOTATION_PROPERTIES)) {% if ont.annotation_properties is defined %}{% for p in ont.annotation_properties %}--term {{ p }} {% endfor %}{% endif %} -T $(IMPORTDIR)/{{ ont.id }}_terms_combined.txt --select complement --select "classes individuals annotation-properties" \
$(ANNOTATE_CONVERT_FILE); fi
{% elif ('custom' == ont.module_type) or (ont.module_type is none and 'custom' == project.import_group.module_type) %}
$(IMPORTDIR)/{{ ont.id }}_import.owl: {% if project.import_group.use_base_merging %}$(MIRRORDIR)/merged.owl{% elif 'no_mirror' != ont.mirror_type %}$(MIRRORDIR)/{{ ont.id }}.owl{% endif %}
Expand Down Expand Up @@ -987,7 +1003,7 @@ merge $(patsubst %, -i %, $(OTHER_SRC)) {% endif %}
# base: A version of the ontology that does not include any externally imported axioms.
$(ONT)-base.owl: $(EDIT_PREPROCESSED) $(OTHER_SRC) $(IMPORT_FILES)
$(ROBOT_RELEASE_IMPORT_MODE) \{% if project.release_use_reasoner %}
reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} --exclude-tautologies {{ project.exclude_tautologies }} \{% if project.release_materialize_object_properties is defined and project.release_materialize_object_properties %}
reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} --exclude-tautologies {{ project.exclude_tautologies }} --annotate-inferred-axioms {{ project.release_annotate_inferred_axioms }} \{% if project.release_materialize_object_properties is defined and project.release_materialize_object_properties %}
materialize {% for iri in project.release_materialize_object_properties %}--term {{iri}} {% endfor %} \{% endif %}{% endif %}
relax \{% if project.release_use_reasoner %}
reduce -r {{ project.reasoner }} \{% endif %}
Expand Down Expand Up @@ -1030,7 +1046,7 @@ $(ONT)-non-classified.owl: $(EDIT_PREPROCESSED) $(OTHER_SRC) $(IMPORT_FILES)
# remove --select imports --trim false
$(ONT)-simple.owl: $(EDIT_PREPROCESSED) $(OTHER_SRC) $(SIMPLESEED) $(IMPORT_FILES)
$(ROBOT_RELEASE_IMPORT_MODE) \{% if project.release_use_reasoner %}
reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} --exclude-tautologies {{ project.exclude_tautologies }} \{% endif %}
reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} --exclude-tautologies {{ project.exclude_tautologies }} --annotate-inferred-axioms {{ project.release_annotate_inferred_axioms }} \{% endif %}
relax \
remove --axioms equivalent \
relax \
Expand Down Expand Up @@ -1058,7 +1074,7 @@ $(ONT)-simple-non-classified.owl: $(EDIT_PREPROCESSED) $(OTHER_SRC) $(SIMPLESEED
# removes any axioms that contains one of the ops that not in the whitelist file
$(ONT)-basic.owl: $(EDIT_PREPROCESSED) $(OTHER_SRC) $(SIMPLESEED) $(KEEPRELATIONS) $(IMPORT_FILES)
$(ROBOT_RELEASE_IMPORT_MODE) \{% if project.release_use_reasoner %}
reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} --exclude-tautologies {{ project.exclude_tautologies }} \{% endif %}
reason --reasoner {{ project.reasoner }} --equivalent-classes-allowed {{ project.allow_equivalents }} --exclude-tautologies {{ project.exclude_tautologies }} --annotate-inferred-axioms {{ project.release_annotate_inferred_axioms }} \{% endif %}
relax \
remove --axioms equivalent \
remove --axioms disjoint \
Expand Down
19 changes: 19 additions & 0 deletions tests/test-release-reason.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
id: rtrai
title: "Release Test with reasoning and annotating inferred axioms."
github_org: obophenotype
repo: rtrai
report_fail_on: ERROR
namespaces:
- http://purl.obolibrary.org/obo/RTRAI_
- http://purl.obolibrary.org/obo/PATO_
release_artefacts:
- full
- base
primary_release: full
release_annotate_inferred_axioms: true
import_group:
products:
- id: ro
mirror_from: https://raw.githubusercontent.com/INCATools/ontology-development-kit/master/tests/ontologies/ro.owl
- id: pato
mirror_from: https://raw.githubusercontent.com/INCATools/ontology-development-kit/master/tests/ontologies/pato.owl
Loading