owl and obo
DESCRIPTION
Part of a joint presentation with Midori Harris comparing OWL (Web Ontology Language) and OBO (Open Biomedical Ontologies) as ontology languages, This presentation concentrates on OWL, Midori Harris presented OBO.TRANSCRIPT
EBI is an Outstation of the European Molecular Biology Laboratory.
OWL: Web Ontology Language
Dr. Duncan Hull, Software engineer, EBI Chemoinformatics and Metabolism
An overview
OWL: The Web Ontology Language
• What is OWL?• Examples from ChEBI• When was OWL created?• Who is responsible for OWL?
• Why would you want to use OWL• Where does OWL fit with related technology?
• Other web standards• OBO (Open Biomedical Ontologies)
• How can you use OWL?
• Disclaimer: this is a (superficial) introduction only!
Ontogenesis12.04.232
OWL (not WOL) Web Ontology Language
Ontogenesis12.04.233
A. A. Milne (1926) Winnie the Pooh (fictional characters who often had trouble spelling…)
ChEBI example: ontology of small molecules
Chemical Entities of Biological Interest
Ontogenesis12.04.234
is-a (subclass of)
base-of
is-a (subclass of)
acid-of
has-role
ChEBI:15365
OWL is a W3C standard for expressing this:
Class: ChEBI:Acetylsalicylic_acid
SubClassOf:
ChEBI:Salicyclic_acid,
ChEBI:acid-of some ChEBI:Acetylsalicylate,
ChEBI:has-role some ChEBI:anti-inflammatory_drug
Class: ChEBI:Acetylsalicylate
SubClassOf:
ChEBI:Organic_Molecular_Entity,
ChEBI:base-of some ChEBI:Acetylsalicylic_acid
Class: ChEBI:Salicyclic_acid
SubClassOf:
ChEBI:Organic_Molecular_Entity
Ontogenesis12.04.235
(Classes)
(Relations between classes)
A key feature of OWL is reasoning
• Key feature is automated reasoning (aka classification), with a reasoner using Description Logic (DL) which can perform several tasks including
• Subsumption, automatically organise classes in an ontology into a hierarchy of sub / super-classes
• Consistency, highlight inconsistent statements e.g. a given compound can’t be organic and inorganic at the same time because these are disjoint
• Querying, answering questions about an ontology… (e.g. query languages like SPARQL and SPARQL-DL)
Ontogenesis12.04.236
Why use OWL?
1 Big data: need for more automation
2 A Web standard standard (W3C)
3 Active area of research: funding
Ontogenesis12.04.237
Why OWL? 1. Big data
• Managing big data, manual data curation is not always possible – automation is required for handling quality and quantity of data. Current examples of OWL usage:• ChEBI (~500,000 compounds)
http://www.ebi.ac.uk/chebi
• National Cancer Institute (NCI) Thesaurus http://cancer.gov defines 10,000 cancers using 50,000 concepts managed by ~20 people, provides terminology for cancer image database.
• SNOMED-CT (Systematised Nomenclature of Medicine: Clinical Terms) 373,731 classes and over 1 million terms used by National Health Servicehttp://en.wikipedia.org/wiki/SNOMED_CT
Ontogenesis12.04.238
Why OWL? 2. Suite of web standards• URI:
• E.g. http://www.ebi.ac.uk is a URI• Standard way of naming and identifying things since ~1990
• XML and namespaces: • Standard way of describing data, since 1998
• RDF• Describing graphs, since ~1999
• So what?• Active community of global users • Choice of tools, both open-source and
otherwise• Interoperability, no “vendor lock-in”• Re-use rather than re-invent wheels
Ontogenesis12.04.239
Picture via http://www.codinghorror.com/blog/archives/001145.html
Why OWL? 3. Active research area
• The paint isn’t quite dry yet but if you’re looking to secure research funding OWL and ontologies are very active areas of research…
• This is both a blessing and a curse!
• See e.g. http://www.bio-ontologies.org.uk/ , http://iswc.semanticweb.org/, http://icbo.buffalo.edu/ and many others
OWL and OBO12.04.2310
Who?
Ontogenesis12.04.2311
OWL is managed by a Working Group at the W3C
http://www.w3.org/2007/OWL/
A large group of people chaired by :
http://web.comlab.ox.ac.uk/ian.horrocks/
http://sciencecommons.org/about/whoweare/ruttenberg/
Ian Horrocks, The University of Oxford
Alan Ruttenberg, Science Commons
Who?
• Every year developers and users of OWL gather at OWLED (OWL Experiences and Directions)http://www.webont.org/owled/
• 6th International Workshop in Shanghai, China…
• Co-located with ISWC 2010 The 9th International Semantic Web Conference (Nov 7th – 11th, 2010), at Shanghai International Convention Center, China.
• http://iswc.semanticweb.org/
Ontogenesis12.04.2312
When was OWL created?
• OWL 1.0 became a W3C recommendation in 2004(also OBO Flat File Format Specification, version 1.0)
• OWL 2.0 became a W3C recommendation in 2009
• But OWL has roots in a range of Knowledge Representation (K.R.) systems from Artificial Intelligence (A.I.) research:
• From 1990’s: KRIS, SB-one, Cyc-L, Loom, K-rep, Classic , Back, Candide, GRAIL, DAML, OIL etc
• From 1980’s: KL-ONE, Nikl and Krypton
Ontogenesis12.04.2313
Where does OWL fit?
Ontogenesis12.04.2314
Class: ChEBI:Acetylsalicylic_acid SubClassOf: ChEBI:Salicyclic_acid, ChEBI:acid-of some ChEBI:Acetylsalicylate, ChEBI:has-role some ChEBI:anti-inflammatory_drug
For humans
For machines
Using existing XML, RDF and OWL tools
Where does OWL fit with related technology?
Ontogenesis12.04.2315
Robert Hoehndorf, What is an ontology?
1. Philosophy
2. Biology
3. Computer Science / Artificial Intelligence
Life Scientists vs. Computer Scientists communities have different languages and goals
Ontogenesis12.04.2316
Capulets(Biologists)Like to use OBO
Montagues(Computer Scientists)Like to use OWL
The Montagues and the Capulets (2004) Carole Goble, Chris Wroe Comparative and Functional Genomics, Vol. 5, No. 8. pp. 623-632. http://dx.doi.org/10.1002/cfg.442
Montagues and Capulets
Montagues (OWL) Capulets (OBO)
Generic (“top down”) Specific (“bottom up”)
Describe any domain (in theory) : Technology driven
Describe biology (in practice)“Application pull”
Focus on automated reasoning using logic
Focus on supporting existing users
Background in Artificial Intelligence Background in genome annotation (e.g. with Gene Ontology)
Ontogenesis12.04.2317
In an ideal world we could easily “round-trip”
OWL and OBO12.04.2318
Without gaining or losing information
OBO version 1.2
OWL 2.0
But there are crucial differences
• OBO does things OWL can’t do• OWL does things OBO can’t do• We’ll look at some of them…
• More details in OBO & OWL: Roundtrip Ontology Transformations Syed Hamid Tirmizi, Stuart Aitken, Dilvan A. Moreira, Chris Mungall, Juan Sequeda, Nigam H. Shah, Daniel P. Miranker. Proceedings of Semantic Web Applications and Tools for the Life Sciencses (SWAT4LS) 2009 http://ceur-ws.org/Vol-559/Paper6.pdf
OWL and OBO12.04.2319
Key differences: OBO vs. OWL
• Quantified relations• Cardinality• Necessary and sufficient conditions• Identity, using unique and stable URI’s
Ontogenesis12.04.2320
Quantified relations (not in OBO)
Class: ChEBI:Acetylsalicylate
SubClassOf:
ChEBI:Organic_Molecular_Entity,
ChEBI:base-of some ChEBI:Acetylsalicylic_acid
“Some” means at least one “Existential quantification” here but might want to say:
ChEBI:base-of only ChEBI:Acetylsalicylic_acid
“Only” means all of the things Acetylsalicylate is base-of are Acetylsalicylic_acid “Universal quantification”: not in OBO
OWL and OBO12.04.2321
Cardinality (not in OBO)
Class: ChEBI:Acetylsalicylic_acid
SubClassOf:
ChEBI:Salicyclic_acid,
ChEBI:has-part exactly 1 ChEBI:carboxyl-group
Cardinality can be very useful e.g. saying a hand has five digits etc but is not currently possible in OBO
OWL and OBO12.04.2322
Necessary & Sufficient conditions (not in OBO)
Class: ChEBI:Organic_Molecular_Entity
SubClassOf:
ChEBI:Molecular_Entity
Class: ChEBI:Organic_Molecular_Entity
EquivalentTo:
ChEBI:Molecular_Entity that ChEBI:has-part some CarbonAtom and
that ChEBI:has-part some HydrogenAtom
Can use a reasoner to infer that Acetylsalicylic-Acid is organic but Diamond is inorganic
OWL and OBO12.04.2323
Identity crisis
• OBO uses ID’s in the form e.g. GO:0006534(cysteine metabolic process)
• Rules for transforming OBO ID’s into URI’s e.g.http://purl.obolibrary.org/obo/GO_006534http://purl.org/obo/owl/GO#GO_006534and back again are still being finalised…
• By default, everything (classes, relations and instances) gets a URI in an OWL ontology: WEB Ontology Language
OWL and OBO12.04.2324
How can you use OWL…
• Today is mostly about languages (not tools) but…• Protégé http://protege.stanford.edu (see over)• Top Braid http://www.topquadrant.com • Many others e.g. http://owl.cs.manchester.ac.uk/
• Also OWL API http://owlapi.sourceforge.net/ programmatically read/write ontologies (for software engineers)
• If people want to know more we can arrange hands-on tutorials…
OWL and OBO12.04.2325
OWL and OBO12.04.2326
Conclusions
• Introduced the Web Ontology Language• What it is• Why you might want to use it• How it relates to other web technology • How it relates to OBO
• It would be great if everyone used the same ontology language (and that’s the point) but…
• Developers of biomedical ontologies look likely to continue using both OWL and OBO
• We’ll be struggling with converting between the two for a while...
OWL and OBO12.04.2327
Acknowledgements
• Janna Hastings, Midori Harris, Nico Adams, David Osumi-Sutherland, Ulrike Sattler, Bijan Parsia, Paula de Matos, Christoph Steinbeck.
Ontogenesis12.04.2328