diff --git a/subsets/Makefile b/subsets/Makefile index 181d2ed..882b453 100644 --- a/subsets/Makefile +++ b/subsets/Makefile @@ -13,7 +13,10 @@ taxslim: taxon-subset-ids.txt robot convert -i taxslim.owl -f json -o taxslim.json taxslim-disjoint-over-in-taxon.owl: taxslim - owltools taxslim.owl --create-taxon-disjoint-over-in-taxon --root NCBITaxon:1 + owltools taxslim.owl --create-taxon-disjoint-over-in-taxon --root NCBITaxon:1 --output $@.tmp.owl + robot query --input taxslim.owl --format ttl --query add-taxon-disjoints.ru $@.tmp.ttl + robot merge --input $@.tmp.owl --input $@.tmp.ttl --output $@ + rm $@.tmp.owl && rm $@.tmp.ttl ## The following should not be run as part of CI job. ## Admin for this project should run and check in results. diff --git a/subsets/add-taxon-disjoints.ru b/subsets/add-taxon-disjoints.ru new file mode 100644 index 0000000..556286e --- /dev/null +++ b/subsets/add-taxon-disjoints.ru @@ -0,0 +1,22 @@ +PREFIX rdfs: +PREFIX rdf: +PREFIX owl: +PREFIX in_taxon: +CONSTRUCT { + [ + a owl:Restriction ; + owl:onProperty in_taxon: ; + owl:someValuesFrom ?subtaxon ; + owl:disjointWith [ + a owl:Restriction ; + owl:onProperty in_taxon: ; + owl:someValuesFrom [ + a owl:Class ; + owl:complementOf ?subtaxon + ] + ] + ] . +} +WHERE { + ?subtaxon rdf:type owl:Class . +}