SlideShare uma empresa Scribd logo
1 de 22
OWL Macro use cases – why we need shortcut relations Chris Mungall Alan Ruttenberg Open Bio Ontologies Foundry
Outline Illustration of problem Biological example: neural networks Implementation choices and existing approaches property chains spreadsheet translation OPPL/OPPL2 A proposed approach Open discussion
Background Biology is complex modeling is hard OWL2 provides some of the needed expressivity …but ontologies that model the necessary detail can be difficult to work with Some kind of intermediate representation (IR) would help Ideally this representation would live in OWL and be edited in common OWL tools
Example: High level modeling of (real) neural networks N_ABC ObjectProperty: synapsed_to Annotations: definition “Relation between a neuron and an anatomical structure it forms a chemical synapse to” N_DEF N_JKL N_GHI Class: N_ABC SubClassOf:  synapsed_to some N_DEF
Modeling in more detail We can model chemical synapsing in detail using  Gene Ontology classes: ,[object Object]
post-synaptic membraneproperties: ,[object Object],pre-synaptic membrane; GO_0042734 post-synaptic membrane; GO_0045211
Modeling in more detail We can model chemical synapsing in detail using  Gene Ontology classes: ,[object Object]
post-synaptic membraneproperties: ,[object Object],pre-synaptic membrane; GO_0042734 Class: N_ABC SubClassOf: has_partsome (‘pre-synaptic membrane ; GO_0042734’ that part_ofsome (‘synapse ; GO_0045202’ that has_partsome (‘post-synaptic membrane ; GO_0045211’ that part_of someN_DEF)) post-synaptic membrane; GO_0045211
Taking shortcuts We would like to write: ?X synapsed_tosome ?Y We want to infer this is equivalent to: ?XSubclassOf( has_partsome ( ‘pre-synaptic membrane ; GO_0042734’ that part_ofsome (  	‘synapse ; GO_0045202’ that has_partsome ( 			‘post-synaptic membrane ; GO_0045211’ that part_of some?Y))))
Is this a problem? We don’t need a synapsed_to property We can write the fully expanded axiom each time But we want to add 100s-1000s of axioms following this pattern error prone obscures underlying pattern we might want to modify representation choices later on or defer (e.g. description graphs) Ideally we would have shortcut properties expand to more complex axioms using macro definitions
Requirements Use shortcut object properties within OWL not translated from other syntax use existing OWL environment Expanding axioms should only produce new inferences Shortcuts should be able to annotation properties Should be able to assert multiple statements, annotations (e.g. for provenance) Expansions should be able to be re-definable, re-runnable (so debuggable) (nice to have): Real abstraction/programming language
Implementation choices Macro language Where do the macros live? Embed or first-class citizens Expressivity? Expansion of embedded expressions? Expansion of axioms or parts of axioms?  Replacement or addition or GCIs Reasoning over unexpanded ontology allowed? Binary or n-ary? if n-ary, how do we encode? Queries?
Property chains Why not use property chains? Reason 1 implication is unidirectional Example: overlaps  has_part o part_of Reason 2 can’t be used for mixed constructs E.g. ?X R ?Y  X subClassOf R1 some (R2 only ?Y)
Spreadsheet translation approach Domain experts use spreadsheets We write translations that generate OWL from spreadsheets Problem: Not optimal for all communities Many domain experts are semi-comfortable in OWL environments we want to encourage this original spreadsheet abstraction is lost
obo2owl approach Relational patterns in OWL and their application to OBORobert Hoehndorf, Anika Oellrich, Michel Dumontier, Heinrich Herre and Dietrich Rebholz-Schuhmann Ontology is authored in obo format Macro expansion is part of obo2owl translation Limitations: shortcut properties only existing in obo lost when translated to owl does not deal with equivalence axioms
OPPL2 approach Write OPPL2 queries: ?x: SELECT ?xSubClassOfsynapsed_to some ?y 			ADD ?XSubclassOf ( has_partsome ( ‘pre-synaptic membrane ; GO_0042734’ that part_ofsome (  	‘synapse ; GO_0045202’ that has_partsome ( 			‘post-synaptic membrane ; GO_0045211’ that part_of some ?Y)))) Expansion code doesn’t have a home? 	Unclear whether we can we use rdfs:labels in expressions. 	Can’t currently access or write annotations 	No abstraction (e.g. functions to be reused) 	One shortcut relation needs multiple OPPL scripts for each of SubClassOf, EquivalentTo, …
OPPL2 – embedded expressions But trouble if the shortcut is embedded Have to write another pattern and expansion N1 connected_to some (synapsed_to some N2) -> N1 SubclassOf    connected_to some         (has_part some (‘pre-synaptic membrane’ that part_of some                        (‘synapse’ that has_part some 		         (‘post-synaptic membrane’ that part_of some N2)))) select ?N1:Class ?N2:Class where ?N1 subclassOf connected_to some (synapsed_to some ?N2) …
Our current approach domain experts author ontologies using shortcut relations obo or owl macros are embedded as annotation properties expansion engine rewrites ontology can reason over pre or post expanded ontology we would like to do this in a standard way which is why we’re here
Example: synapses O1 ObjectProperty: synapsed_to Annotations: expandExpressionTo “has_partsome ( ‘pre-synaptic membrane’ that part_ofsome ( ‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of some ?Y)) ” Class: N_ABC SubClassOf:  synapsed_to some N_DEF O2 Class: N_ABC SubClassOf: has_partsome (‘pre-synaptic membrane’ that part_ofsome (‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of someN_DEF))
Class: Foo_synapsing_neuron EquivalentTo:  neuron that  synapsed_to some N_Foo Also works for equivalence axioms O1 ObjectProperty: synapsed_to Annotations: expandExpressionTo “has_partsome ( ‘pre-synaptic membrane’ that part_ofsome ( ‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of some ?Y)) ” O2 Class: N_ABC EquivalentTo: neuron that  has_partsome (‘pre-synaptic membrane’ that part_ofsome (‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of someN_DEF))
Class: ‘B1b-B cell’ EquivalentTo: ‘B1-B cell’ and lacks_plasma_membrane_part value CD5 Chaining mixed constructs O1 ObjectProperty: lacks_plasma_membrane_part Annotations: expandExpressionTo “has part exactly 0 (‘plasma membrane’ and has_part some  ?Y) ” O2 Class: ‘B1b-B cell’ EquivalentTo: ‘B1-B cell’ and has part exactly 0 (‘plasma membrane’ and has_part some  CD5)
Class: cell nucleus Annotations: disconnected_from cytoplasm Expansion of axioms O1 ObjectProperty: disconnected_from Annotations: expandAssertionTo “ (part_of?X) DisjointWith (part_of?Y )” O2 (part_of ‘cell nucleus’) DisjointWith (part_of ‘cytoplasm’)

Mais conteúdo relacionado

Semelhante a Macro discussion (owled 2010)

Enriching EMF Models with Scala (quick overview)
Enriching EMF Models with Scala (quick overview)Enriching EMF Models with Scala (quick overview)
Enriching EMF Models with Scala (quick overview)Filip Krikava
 
Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Samuel Croset
 
Introduction to Clojure
Introduction to ClojureIntroduction to Clojure
Introduction to ClojureRenzo Borgatti
 
How to not suck at JavaScript
How to not suck at JavaScriptHow to not suck at JavaScript
How to not suck at JavaScripttmont
 
Object Oriented Concepts and Principles
Object Oriented Concepts and PrinciplesObject Oriented Concepts and Principles
Object Oriented Concepts and Principlesdeonpmeyer
 
Sec1_SOLID Principles_Software Engineering.pptx
Sec1_SOLID Principles_Software Engineering.pptxSec1_SOLID Principles_Software Engineering.pptx
Sec1_SOLID Principles_Software Engineering.pptxHebaSamy22
 
PAGOdA paper
PAGOdA paperPAGOdA paper
PAGOdA paperDBOnto
 
Clojure - an introduction (and some CFML)
Clojure - an introduction (and some CFML)Clojure - an introduction (and some CFML)
Clojure - an introduction (and some CFML)Kai Koenig
 
Clojure and The Robot Apocalypse
Clojure and The Robot ApocalypseClojure and The Robot Apocalypse
Clojure and The Robot Apocalypseelliando dias
 
Object+oriented+programming+in+java
Object+oriented+programming+in+javaObject+oriented+programming+in+java
Object+oriented+programming+in+javaYe Win
 
Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...
Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...
Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...Hilmar Lapp
 

Semelhante a Macro discussion (owled 2010) (20)

OOP java
OOP javaOOP java
OOP java
 
Enriching EMF Models with Scala (quick overview)
Enriching EMF Models with Scala (quick overview)Enriching EMF Models with Scala (quick overview)
Enriching EMF Models with Scala (quick overview)
 
Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013Tutorial OWL and drug discovery ICBO 2013
Tutorial OWL and drug discovery ICBO 2013
 
Introduction to Clojure
Introduction to ClojureIntroduction to Clojure
Introduction to Clojure
 
eureka09
eureka09eureka09
eureka09
 
eureka09
eureka09eureka09
eureka09
 
How to not suck at JavaScript
How to not suck at JavaScriptHow to not suck at JavaScript
How to not suck at JavaScript
 
OOPS ABAP.docx
OOPS ABAP.docxOOPS ABAP.docx
OOPS ABAP.docx
 
Object Oriented Concepts and Principles
Object Oriented Concepts and PrinciplesObject Oriented Concepts and Principles
Object Oriented Concepts and Principles
 
Eclipse OCL Summary
Eclipse OCL SummaryEclipse OCL Summary
Eclipse OCL Summary
 
Applying OO Concepts
Applying OO ConceptsApplying OO Concepts
Applying OO Concepts
 
Sec1_SOLID Principles_Software Engineering.pptx
Sec1_SOLID Principles_Software Engineering.pptxSec1_SOLID Principles_Software Engineering.pptx
Sec1_SOLID Principles_Software Engineering.pptx
 
Bt0074
Bt0074Bt0074
Bt0074
 
PAGOdA paper
PAGOdA paperPAGOdA paper
PAGOdA paper
 
Clojure - an introduction (and some CFML)
Clojure - an introduction (and some CFML)Clojure - an introduction (and some CFML)
Clojure - an introduction (and some CFML)
 
Spring fundamentals
Spring fundamentalsSpring fundamentals
Spring fundamentals
 
Clojure and The Robot Apocalypse
Clojure and The Robot ApocalypseClojure and The Robot Apocalypse
Clojure and The Robot Apocalypse
 
Object+oriented+programming+in+java
Object+oriented+programming+in+javaObject+oriented+programming+in+java
Object+oriented+programming+in+java
 
Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...
Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...
Towards ubiquitous OWL computing: Simplifying programmatic authoring of and q...
 
Java Notes
Java NotesJava Notes
Java Notes
 

Mais de Chris Mungall

MADICES Mungall 2022.pptx
MADICES Mungall 2022.pptxMADICES Mungall 2022.pptx
MADICES Mungall 2022.pptxChris Mungall
 
Scaling up semantics; lessons learned across the life sciences
Scaling up semantics; lessons learned across the life sciencesScaling up semantics; lessons learned across the life sciences
Scaling up semantics; lessons learned across the life sciencesChris Mungall
 
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOLinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOChris Mungall
 
Ontology Access Kit_ Workshop Intro Slides.pptx
Ontology Access Kit_ Workshop Intro Slides.pptxOntology Access Kit_ Workshop Intro Slides.pptx
Ontology Access Kit_ Workshop Intro Slides.pptxChris Mungall
 
LinkML Intro (for Monarch devs)
LinkML Intro (for Monarch devs)LinkML Intro (for Monarch devs)
LinkML Intro (for Monarch devs)Chris Mungall
 
LinkML presentation to Yosemite Group
LinkML presentation to Yosemite GroupLinkML presentation to Yosemite Group
LinkML presentation to Yosemite GroupChris Mungall
 
Experiences in the biosciences with the open biological ontologies foundry an...
Experiences in the biosciences with the open biological ontologies foundry an...Experiences in the biosciences with the open biological ontologies foundry an...
Experiences in the biosciences with the open biological ontologies foundry an...Chris Mungall
 
All together now: piecing together the knowledge graph of life
All together now: piecing together the knowledge graph of lifeAll together now: piecing together the knowledge graph of life
All together now: piecing together the knowledge graph of lifeChris Mungall
 
Collaboratively Creating the Knowledge Graph of Life
Collaboratively Creating the Knowledge Graph of LifeCollaboratively Creating the Knowledge Graph of Life
Collaboratively Creating the Knowledge Graph of LifeChris Mungall
 
Representation of kidney structures in Uberon
Representation of kidney structures in UberonRepresentation of kidney structures in Uberon
Representation of kidney structures in UberonChris Mungall
 
SparqlProg (BioHackathon 2019)
SparqlProg (BioHackathon 2019)SparqlProg (BioHackathon 2019)
SparqlProg (BioHackathon 2019)Chris Mungall
 
Ontology Development Kit: Bio-Ontologies 2019
Ontology Development Kit: Bio-Ontologies 2019Ontology Development Kit: Bio-Ontologies 2019
Ontology Development Kit: Bio-Ontologies 2019Chris Mungall
 
US2TS: Reasoning over multiple open bio-ontologies to make machines and human...
US2TS: Reasoning over multiple open bio-ontologies to make machines and human...US2TS: Reasoning over multiple open bio-ontologies to make machines and human...
US2TS: Reasoning over multiple open bio-ontologies to make machines and human...Chris Mungall
 
Uberon: opening up to community contributions
Uberon: opening up to community contributionsUberon: opening up to community contributions
Uberon: opening up to community contributionsChris Mungall
 
Modeling exposure events and adverse outcome pathways using ontologies
Modeling exposure events and adverse outcome pathways using ontologiesModeling exposure events and adverse outcome pathways using ontologies
Modeling exposure events and adverse outcome pathways using ontologiesChris Mungall
 
Causal reasoning using the Relation Ontology
Causal reasoning using the Relation OntologyCausal reasoning using the Relation Ontology
Causal reasoning using the Relation OntologyChris Mungall
 
US2TS presentation on Gene Ontology
US2TS presentation on Gene OntologyUS2TS presentation on Gene Ontology
US2TS presentation on Gene OntologyChris Mungall
 
Introduction to the BioLink datamodel
Introduction to the BioLink datamodelIntroduction to the BioLink datamodel
Introduction to the BioLink datamodelChris Mungall
 
Computing on Phenotypes AMP 2015
Computing on Phenotypes AMP 2015Computing on Phenotypes AMP 2015
Computing on Phenotypes AMP 2015Chris Mungall
 

Mais de Chris Mungall (20)

MADICES Mungall 2022.pptx
MADICES Mungall 2022.pptxMADICES Mungall 2022.pptx
MADICES Mungall 2022.pptx
 
Scaling up semantics; lessons learned across the life sciences
Scaling up semantics; lessons learned across the life sciencesScaling up semantics; lessons learned across the life sciences
Scaling up semantics; lessons learned across the life sciences
 
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODOLinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
LinkML Intro July 2022.pptx PLEASE VIEW THIS ON ZENODO
 
Ontology Access Kit_ Workshop Intro Slides.pptx
Ontology Access Kit_ Workshop Intro Slides.pptxOntology Access Kit_ Workshop Intro Slides.pptx
Ontology Access Kit_ Workshop Intro Slides.pptx
 
LinkML Intro (for Monarch devs)
LinkML Intro (for Monarch devs)LinkML Intro (for Monarch devs)
LinkML Intro (for Monarch devs)
 
LinkML presentation to Yosemite Group
LinkML presentation to Yosemite GroupLinkML presentation to Yosemite Group
LinkML presentation to Yosemite Group
 
Experiences in the biosciences with the open biological ontologies foundry an...
Experiences in the biosciences with the open biological ontologies foundry an...Experiences in the biosciences with the open biological ontologies foundry an...
Experiences in the biosciences with the open biological ontologies foundry an...
 
All together now: piecing together the knowledge graph of life
All together now: piecing together the knowledge graph of lifeAll together now: piecing together the knowledge graph of life
All together now: piecing together the knowledge graph of life
 
Collaboratively Creating the Knowledge Graph of Life
Collaboratively Creating the Knowledge Graph of LifeCollaboratively Creating the Knowledge Graph of Life
Collaboratively Creating the Knowledge Graph of Life
 
Representation of kidney structures in Uberon
Representation of kidney structures in UberonRepresentation of kidney structures in Uberon
Representation of kidney structures in Uberon
 
SparqlProg (BioHackathon 2019)
SparqlProg (BioHackathon 2019)SparqlProg (BioHackathon 2019)
SparqlProg (BioHackathon 2019)
 
Ontology Development Kit: Bio-Ontologies 2019
Ontology Development Kit: Bio-Ontologies 2019Ontology Development Kit: Bio-Ontologies 2019
Ontology Development Kit: Bio-Ontologies 2019
 
US2TS: Reasoning over multiple open bio-ontologies to make machines and human...
US2TS: Reasoning over multiple open bio-ontologies to make machines and human...US2TS: Reasoning over multiple open bio-ontologies to make machines and human...
US2TS: Reasoning over multiple open bio-ontologies to make machines and human...
 
Uberon: opening up to community contributions
Uberon: opening up to community contributionsUberon: opening up to community contributions
Uberon: opening up to community contributions
 
Modeling exposure events and adverse outcome pathways using ontologies
Modeling exposure events and adverse outcome pathways using ontologiesModeling exposure events and adverse outcome pathways using ontologies
Modeling exposure events and adverse outcome pathways using ontologies
 
Causal reasoning using the Relation Ontology
Causal reasoning using the Relation OntologyCausal reasoning using the Relation Ontology
Causal reasoning using the Relation Ontology
 
US2TS presentation on Gene Ontology
US2TS presentation on Gene OntologyUS2TS presentation on Gene Ontology
US2TS presentation on Gene Ontology
 
Introduction to the BioLink datamodel
Introduction to the BioLink datamodelIntroduction to the BioLink datamodel
Introduction to the BioLink datamodel
 
Computing on Phenotypes AMP 2015
Computing on Phenotypes AMP 2015Computing on Phenotypes AMP 2015
Computing on Phenotypes AMP 2015
 
ENVO GSC 2015
ENVO GSC 2015ENVO GSC 2015
ENVO GSC 2015
 

Último

Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxDr.Ibrahim Hassaan
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfMr Bounab Samir
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 

Último (20)

Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptx
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdfLike-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
Like-prefer-love -hate+verb+ing & silent letters & citizenship text.pdf
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 

Macro discussion (owled 2010)

  • 1. OWL Macro use cases – why we need shortcut relations Chris Mungall Alan Ruttenberg Open Bio Ontologies Foundry
  • 2. Outline Illustration of problem Biological example: neural networks Implementation choices and existing approaches property chains spreadsheet translation OPPL/OPPL2 A proposed approach Open discussion
  • 3. Background Biology is complex modeling is hard OWL2 provides some of the needed expressivity …but ontologies that model the necessary detail can be difficult to work with Some kind of intermediate representation (IR) would help Ideally this representation would live in OWL and be edited in common OWL tools
  • 4. Example: High level modeling of (real) neural networks N_ABC ObjectProperty: synapsed_to Annotations: definition “Relation between a neuron and an anatomical structure it forms a chemical synapse to” N_DEF N_JKL N_GHI Class: N_ABC SubClassOf: synapsed_to some N_DEF
  • 5.
  • 6.
  • 7.
  • 8.
  • 9. Taking shortcuts We would like to write: ?X synapsed_tosome ?Y We want to infer this is equivalent to: ?XSubclassOf( has_partsome ( ‘pre-synaptic membrane ; GO_0042734’ that part_ofsome ( ‘synapse ; GO_0045202’ that has_partsome ( ‘post-synaptic membrane ; GO_0045211’ that part_of some?Y))))
  • 10. Is this a problem? We don’t need a synapsed_to property We can write the fully expanded axiom each time But we want to add 100s-1000s of axioms following this pattern error prone obscures underlying pattern we might want to modify representation choices later on or defer (e.g. description graphs) Ideally we would have shortcut properties expand to more complex axioms using macro definitions
  • 11. Requirements Use shortcut object properties within OWL not translated from other syntax use existing OWL environment Expanding axioms should only produce new inferences Shortcuts should be able to annotation properties Should be able to assert multiple statements, annotations (e.g. for provenance) Expansions should be able to be re-definable, re-runnable (so debuggable) (nice to have): Real abstraction/programming language
  • 12. Implementation choices Macro language Where do the macros live? Embed or first-class citizens Expressivity? Expansion of embedded expressions? Expansion of axioms or parts of axioms? Replacement or addition or GCIs Reasoning over unexpanded ontology allowed? Binary or n-ary? if n-ary, how do we encode? Queries?
  • 13. Property chains Why not use property chains? Reason 1 implication is unidirectional Example: overlaps  has_part o part_of Reason 2 can’t be used for mixed constructs E.g. ?X R ?Y  X subClassOf R1 some (R2 only ?Y)
  • 14. Spreadsheet translation approach Domain experts use spreadsheets We write translations that generate OWL from spreadsheets Problem: Not optimal for all communities Many domain experts are semi-comfortable in OWL environments we want to encourage this original spreadsheet abstraction is lost
  • 15. obo2owl approach Relational patterns in OWL and their application to OBORobert Hoehndorf, Anika Oellrich, Michel Dumontier, Heinrich Herre and Dietrich Rebholz-Schuhmann Ontology is authored in obo format Macro expansion is part of obo2owl translation Limitations: shortcut properties only existing in obo lost when translated to owl does not deal with equivalence axioms
  • 16. OPPL2 approach Write OPPL2 queries: ?x: SELECT ?xSubClassOfsynapsed_to some ?y ADD ?XSubclassOf ( has_partsome ( ‘pre-synaptic membrane ; GO_0042734’ that part_ofsome ( ‘synapse ; GO_0045202’ that has_partsome ( ‘post-synaptic membrane ; GO_0045211’ that part_of some ?Y)))) Expansion code doesn’t have a home? Unclear whether we can we use rdfs:labels in expressions. Can’t currently access or write annotations No abstraction (e.g. functions to be reused) One shortcut relation needs multiple OPPL scripts for each of SubClassOf, EquivalentTo, …
  • 17. OPPL2 – embedded expressions But trouble if the shortcut is embedded Have to write another pattern and expansion N1 connected_to some (synapsed_to some N2) -> N1 SubclassOf connected_to some (has_part some (‘pre-synaptic membrane’ that part_of some (‘synapse’ that has_part some (‘post-synaptic membrane’ that part_of some N2)))) select ?N1:Class ?N2:Class where ?N1 subclassOf connected_to some (synapsed_to some ?N2) …
  • 18. Our current approach domain experts author ontologies using shortcut relations obo or owl macros are embedded as annotation properties expansion engine rewrites ontology can reason over pre or post expanded ontology we would like to do this in a standard way which is why we’re here
  • 19. Example: synapses O1 ObjectProperty: synapsed_to Annotations: expandExpressionTo “has_partsome ( ‘pre-synaptic membrane’ that part_ofsome ( ‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of some ?Y)) ” Class: N_ABC SubClassOf: synapsed_to some N_DEF O2 Class: N_ABC SubClassOf: has_partsome (‘pre-synaptic membrane’ that part_ofsome (‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of someN_DEF))
  • 20. Class: Foo_synapsing_neuron EquivalentTo: neuron that synapsed_to some N_Foo Also works for equivalence axioms O1 ObjectProperty: synapsed_to Annotations: expandExpressionTo “has_partsome ( ‘pre-synaptic membrane’ that part_ofsome ( ‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of some ?Y)) ” O2 Class: N_ABC EquivalentTo: neuron that has_partsome (‘pre-synaptic membrane’ that part_ofsome (‘synapse’ that has_partsome (‘post-synaptic membrane’ that part_of someN_DEF))
  • 21. Class: ‘B1b-B cell’ EquivalentTo: ‘B1-B cell’ and lacks_plasma_membrane_part value CD5 Chaining mixed constructs O1 ObjectProperty: lacks_plasma_membrane_part Annotations: expandExpressionTo “has part exactly 0 (‘plasma membrane’ and has_part some ?Y) ” O2 Class: ‘B1b-B cell’ EquivalentTo: ‘B1-B cell’ and has part exactly 0 (‘plasma membrane’ and has_part some CD5)
  • 22. Class: cell nucleus Annotations: disconnected_from cytoplasm Expansion of axioms O1 ObjectProperty: disconnected_from Annotations: expandAssertionTo “ (part_of?X) DisjointWith (part_of?Y )” O2 (part_of ‘cell nucleus’) DisjointWith (part_of ‘cytoplasm’)
  • 23. Open Bio Ontologies Relation Ontology Collection of object properties for use in the biological and biomedical sciences Principles: relations must be defined in terms of more basic primitive relations these basic relations live in BFO (Basic Formal Ontology) We are using the macro expansions as definitions
  • 24. Open Discussion Do others find authoring complex OWL axioms difficult/repetitive? What approach do you use? Should we have a standard solution? Expansion in queries?