(defparameter *obo-noise-classes* (list !oboinowl:DbXref !oboinowl:Definition !oboinowl:ObsoleteClass !oboinowl:ObsoleteProperty !oboinowl:Subset !oboinowl:Synonym !oboinowl:SynonymType !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION !protegeowl:TO !protegeowl:FROM !protegeowl:SLOT-CONSTRAINTS !protegeowl:PAL-NAME !protegeowl:PAL-CONSTRAINTS !protegeowl:PAL-STATEMENT !protegeowl:PAL-RANGE !protegeowl:PAL-DESCRIPTION)) (defparameter *obi-noise-classes* (append *obo-noise-classes* (list !obi:OBI_0000449 !obi:OBI_0000233 !obi:OBI_0000683 !obi:OBI_0600065))) (defmacro obo-standard-ont (abbrev) `'(:name ,abbrev :location ,(format nil "http://purl.org/obo/owl/~a" abbrev) :dont-show ,*obo-noise-classes* )) (defmacro an-ont (name location &rest keys) `'(:name ,name :location ,location ,@(mapcar 'eval keys))) (defparameter *standard-ontologies* (list (obo-standard-ont :pato) (obo-standard-ont :caro) (obo-standard-ont :obo_rel) (obo-standard-ont :mp) (obo-standard-ont :mesh) (obo-standard-ont :mi) (obo-standard-ont :BP_XP_CL) (an-ont :bfo "http://www.ifomis.org/bfo/1.0") (an-ont :biopax "http://biopax.org/release/biopax-level2.owl") (an-ont :birnlex "http://www.nbirn.net/birnlex/1.2/BIRNLex-Main.owl") (an-ont :obi "file:///Users/alanr/repos/obi/trunk/src/ontology/branches/obil.owl" :dont-show (list* !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION *obi-noise-classes*) :root !bfo:Entity) (an-ont :obim "file:///Users/alanr/repos/obi/trunk/src/ontology/branches/obim.owl" :dont-show (list* !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION *obi-noise-classes*) :root !bfo:Entity :dont-import '("http://www.obofoundry.org/ro/ro.owl" "http://www.ifomis.org/bfo/1.1" "http://protege.stanford.edu/plugins/owl/dc/protege-dc.owl" "http://purl.obolibrary.org/obo/iao/dev/ontology-metadata.owl" "http://purl.obolibrary.org/obo/iao/dev/obsolete.owl" "http://purl.obolibrary.org/obo/iao/dev/externalDerived.owl" "http://purl.obolibrary.org/obo/iao/dev/external.owl" "http://purl.org/obo/owl/ro_bfo_bridge/1.1" "http://purl.obolibrary.org/obo/obi/external-byhand.owl" "http://purl.obolibrary.org/obo/obi/ontie-external.owl" "http://purl.obolibrary.org/obo/obi/obi-ontie-external.owl" "http://purl.obolibrary.org/obo/obi/external.owl" "http://purl.obolibrary.org/obo/obi/externalDerived.owl" "http://purl.obolibrary.org/obo/iao/dev/iao.owl") ) (an-ont :obimi "file:///Users/alanr/repos/obi/trunk/src/ontology/branches/obimi.owl" :dont-show (list* !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION *obi-noise-classes*) :root !bfo:Entity :dont-import '("http://www.obofoundry.org/ro/ro.owl" "http://www.ifomis.org/bfo/1.1" "http://protege.stanford.edu/plugins/owl/dc/protege-dc.owl" "http://purl.obolibrary.org/obo/iao/dev/ontology-metadata.owl" "http://purl.obolibrary.org/obo/iao/dev/obsolete.owl" "http://purl.obolibrary.org/obo/iao/dev/externalDerived.owl" "http://purl.obolibrary.org/obo/iao/dev/external.owl" "http://purl.org/obo/owl/ro_bfo_bridge/1.1" "http://purl.obolibrary.org/obo/obi/external-byhand.owl" "http://purl.obolibrary.org/obo/obi/external.owl" "http://purl.obolibrary.org/obo/obi/ontie-external.owl" "http://purl.obolibrary.org/obo/obi/obi-ontie-external.owl" "http://purl.obolibrary.org/obo/obi/externalDerived.owl" "http://purl.obolibrary.org/obo/iao/dev/iao.owl") ) (an-ont :obir "file:///Users/alanr/repos/obi/releases/2009-07-31/merged/obi-rc.owl" :dont-show (list* !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION *obi-noise-classes*) :root !bfo:Entity :dont-import '("http://www.obofoundry.org/ro/ro.owl" "http://www.ifomis.org/bfo/1.1" "http://protege.stanford.edu/plugins/owl/dc/protege-dc.owl" "http://purl.obolibrary.org/obo/iao/dev/ontology-metadata.owl" "http://purl.obolibrary.org/obo/iao/dev/obsolete.owl" "http://purl.obolibrary.org/obo/iao/dev/externalDerived.owl" "http://purl.obolibrary.org/obo/iao/dev/external.owl" "http://purl.org/obo/owl/ro_bfo_bridge/1.1" "http://purl.obolibrary.org/obo/obi/external-byhand.owl" "http://purl.obolibrary.org/obo/obi/external.owl" "http://purl.obolibrary.org/obo/obi/externalDerived.owl" "http://purl.obolibrary.org/obo/obi/ontie-external.owl" "http://purl.obolibrary.org/obo/obi/obi-ontie-external.owl" "http://purl.obolibrary.org/obo/iao/dev/iao.owl") ) (an-ont :iaol "file:///Users/alanr/repos/information-artifact-ontology/trunk/src/ontology/iaol.owl" :dont-show (list* !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION *obo-noise-classes*) ;:root !snap:GenericallyDependentContinuant ) (an-ont :idol "file:///Users/alanr/repos/infectious-disease-ontology/trunk/src/ontology/ido-core/idol.owl" :dont-show (list* ! !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION !obi:IDO_9099990 !obi:IDO_9099991 !obi:IDO_9099992 !obi:IDO_9099993 !obi:IDO_9099994 !obi:IDO_9099995 !obi:IDO_9099996 !obi:IDO_9099997 !obi:IDO_9099998 !obi:IDO_9099999 !snap:GenericallyDependentContinuant *obo-noise-classes* ) :dont-import '("http://protege.stanford.edu/plugins/owl/dc/protege-dc.owl" "http://purl.obolibrary.org/obo/iao/dev/ontology-metadata.owl" "http://www.ifomis.org/bfo/1.1" "http://purl.obolibrary.org/obo/ogms.owl") ;:root !snap:GenericallyDependentContinuant ) (an-ont :birnorg "http://purl.org/nbirn/birnlex/ontology/BIRNLex-OrganismalTaxonomy.owl" :dont-show (list* !protegeowl:PAL-CONSTRAINT !protegeowl:DIRECTED-BINARY-RELATION *obo-noise-classes*)) (an-ont :annot "http://sw.neurocommons.org/2007/annotations.owl") (an-ont :aba "http://sw.neurocommons.org/2007/aba.owl") (an-ont :family "file:///Users/alanr/repos/pellet-1.4/test_data/misc/family.owl") (an-ont :owl11 "file:///Users/alanr/repos/pellet-1.4/test_data/misc/owl1.1.owl") (an-ont :swan "http://swan.mindinformatics.org/ontology/1.0/20070313/core.owl") (an-ont :biotop "http://biotop.googlecode.com/svn/trunk/biotop.owl") (an-ont :acgt "http://acgt.googlecode.com/svn/trunk/document.owl") (an-ont :bfo-ro "http://www.ifomis.uni-saarland.de/obo/ro/1.0/bfo/ro.owl") (an-ont :neurondb '("http://neuroweb.med.yale.edu/senselab/neuron_ontology.owl" "http://neuroweb.med.yale.edu/senselab/neuron_ontology-bfo-mapping.owl" ) :dont-show '(list !oboinowl:ObsoleteClass !oboinowl:Definition !oboinowl:ObsoleteProperty)) (an-ont :annot1 "http://sw.neurocommons.org/2007/pubmed-annotations/00/7834200.rdf") (an-ont :brainpharm "http://neuroweb.med.yale.edu/senselab/brainpharm.owl") (an-ont :sbo "http://www.ebi.ac.uk/sbo/exports/Main/SBO_OWL.owl") )) (defun uri-of-standard-ontology (keyword) (getf (find keyword *standard-ontologies* :key 'second) :location)) (defun ignore-imports-of-standard-ontology (keyword) (getf (find keyword *standard-ontologies* :key 'second) :dont-import)) (defun standard-ontology-classtree-options (keyword) (cddddr (find keyword *standard-ontologies* :key 'second))) ; (let ((dont (getf (find keyword *standard-ontologies* :key 'second) :dont-show))) ; (and dont (list :dont-show dont)))) (defun whichonts () (let ((*print-case* :downcase)) (loop for spec in *standard-ontologies* do (format t "~s ~s~%" (getf spec :name) (getf spec :location)))))