SlideShare a Scribd company logo
1 of 38
Download to read offline
Introduction to OPPL
                                 OPPL Syntax
                                  Using OPPL
                               Future of OPPL




 Ontology Pre-Processor Language (OPPL)
   http://oppl.sourceforge.net/

Mikel Egaña (mikel.eganaaranguren@cs.man.ac.uk)
Robert Stevens (robert.stevens@manchester.ac.uk)
        Bio-Health Informatics Group (BHIG), University of Manchester


            Erick Antezana (erant@psb.ugent.be)
           Department of Plant Systems Biology, VIB, Gent, Belgium
     Department of Molecular Genetics, Ghent University, Gent, Belgium


                                OWLED 2008 DC

  Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                     OPPL Syntax
                                      Using OPPL
                                   Future of OPPL


Introduction to OPPL


  “Macro” language for manipulating content of OWL ontologies

  Motivation: authors’ needs when creating/maintaining
  bio-ontologies (Use cases)

  Nearly API-level functionality with minimum programming/OWL
  knowledge

  Manchester OWL Syntax + SELECT, ADD, REMOVE



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                     OPPL Syntax
                                      Using OPPL
                                   Future of OPPL


Introduction to OPPL


  “Macro” language for manipulating content of OWL ontologies

  Motivation: authors’ needs when creating/maintaining
  bio-ontologies (Use cases)

  Nearly API-level functionality with minimum programming/OWL
  knowledge

  Manchester OWL Syntax + SELECT, ADD, REMOVE



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                     OPPL Syntax
                                      Using OPPL
                                   Future of OPPL


Introduction to OPPL


  “Macro” language for manipulating content of OWL ontologies

  Motivation: authors’ needs when creating/maintaining
  bio-ontologies (Use cases)

  Nearly API-level functionality with minimum programming/OWL
  knowledge

  Manchester OWL Syntax + SELECT, ADD, REMOVE



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                     OPPL Syntax
                                      Using OPPL
                                   Future of OPPL


Introduction to OPPL


  “Macro” language for manipulating content of OWL ontologies

  Motivation: authors’ needs when creating/maintaining
  bio-ontologies (Use cases)

  Nearly API-level functionality with minimum programming/OWL
  knowledge

  Manchester OWL Syntax + SELECT, ADD, REMOVE



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                      OPPL instruction
                                     OPPL Syntax
                                                      OPPL instruction examples
                                      Using OPPL
                                                      OPPL extra instructions
                                   Future of OPPL


OPPL instruction




   SELECT Class: admin;ADD label "office admin";
   OPPL statement                                   OPPL statement


              OPPL instruction




      Mikel Egaña, Robert Stevens, Erick Antezana     Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples



  ADD Class:            undergraduate;

  REMOVE Class:                undergraduate;

  SELECT equivalentTo participates_in only
  (intellectual_dinner and party);
  ADD label "professor";
  REMOVE subClassOf lives_on only (not campus);




     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples



  ADD Class:            undergraduate;

  REMOVE Class:                undergraduate;

  SELECT equivalentTo participates_in only
  (intellectual_dinner and party);
  ADD label "professor";
  REMOVE subClassOf lives_on only (not campus);




     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples



  ADD Class:            undergraduate;

  REMOVE Class:                undergraduate;

  SELECT equivalentTo participates_in only
  (intellectual_dinner and party);
  ADD label "professor";
  REMOVE subClassOf lives_on only (not campus);




     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples


  SELECT subClassOf MoleOfSalt;
  ADD subClassOf hasDensity value 0.0;

  SELECT inverse participates_in;
  ADD range student;

  ADD Class: professor;
  ADD label "staff";
  ADD equivalentTo participates_in only
  (intellectual_dinner and party);



     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples


  SELECT subClassOf MoleOfSalt;
  ADD subClassOf hasDensity value 0.0;

  SELECT inverse participates_in;
  ADD range student;

  ADD Class: professor;
  ADD label "staff";
  ADD equivalentTo participates_in only
  (intellectual_dinner and party);



     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples


  SELECT subClassOf MoleOfSalt;
  ADD subClassOf hasDensity value 0.0;

  SELECT inverse participates_in;
  ADD range student;

  ADD Class: professor;
  ADD label "staff";
  ADD equivalentTo participates_in only
  (intellectual_dinner and party);



     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples




  disjointWith, differentFrom, sameAs, type,
  descendantOf, ancestorOf, subPropertyOf, ...

  http://oppl.sourceforge.net/test.oppl




     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                   OPPL instruction
                                    OPPL Syntax
                                                   OPPL instruction examples
                                     Using OPPL
                                                   OPPL extra instructions
                                  Future of OPPL


OPPL instruction examples




  disjointWith, differentFrom, sameAs, type,
  descendantOf, ancestorOf, subPropertyOf, ...

  http://oppl.sourceforge.net/test.oppl




     Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL instruction
                                     OPPL Syntax
                                                    OPPL instruction examples
                                      Using OPPL
                                                    OPPL extra instructions
                                   Future of OPPL


OPPL extra instructions


  SELECT_PRIMITIVE descendantOf student;

  SELECT_DEFINED descendantOf student;

  SELECT descendantOf person;
  ADD disjointWithSiblings;

  SELECT assertedSubClassOf participates_in some
  sport;




      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL instruction
                                     OPPL Syntax
                                                    OPPL instruction examples
                                      Using OPPL
                                                    OPPL extra instructions
                                   Future of OPPL


OPPL extra instructions


  SELECT_PRIMITIVE descendantOf student;

  SELECT_DEFINED descendantOf student;

  SELECT descendantOf person;
  ADD disjointWithSiblings;

  SELECT assertedSubClassOf participates_in some
  sport;




      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL instruction
                                     OPPL Syntax
                                                    OPPL instruction examples
                                      Using OPPL
                                                    OPPL extra instructions
                                   Future of OPPL


OPPL extra instructions


  SELECT_PRIMITIVE descendantOf student;

  SELECT_DEFINED descendantOf student;

  SELECT descendantOf person;
  ADD disjointWithSiblings;

  SELECT assertedSubClassOf participates_in some
  sport;




      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


OPPL software


  http://oppl.sourceforge.net/

  OPPLInstructionManager
  Java library for processing OPPL instructions (LGPL)
  OWL API, Pellet, FaCT++, DIG

  OPPL reference implementation: OPPL instructions in flat file
  java -jar oppl.jar
  pellet ins.oppl ont.owl new_ont.owl



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


OPPL software


  http://oppl.sourceforge.net/

  OPPLInstructionManager
  Java library for processing OPPL instructions (LGPL)
  OWL API, Pellet, FaCT++, DIG

  OPPL reference implementation: OPPL instructions in flat file
  java -jar oppl.jar
  pellet ins.oppl ont.owl new_ont.owl



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


OPPL software


  http://oppl.sourceforge.net/

  OPPLInstructionManager
  Java library for processing OPPL instructions (LGPL)
  OWL API, Pellet, FaCT++, DIG

  OPPL reference implementation: OPPL instructions in flat file
  java -jar oppl.jar
  pellet ins.oppl ont.owl new_ont.owl



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 1: Bio-ontology axiomatic enrichment


  Gene Ontology Next Generation
  http://www.gong.manchester.ac.uk/

  alanine:sodium symporter activity

  —— Axiomatic enrichment based in rdfs:label ——

  EquivalentTo: symporter activity
  and transports only (alanine or sodium)




      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 1: Bio-ontology axiomatic enrichment


  Gene Ontology Next Generation
  http://www.gong.manchester.ac.uk/

  alanine:sodium symporter activity

  —— Axiomatic enrichment based in rdfs:label ——

  EquivalentTo: symporter activity
  and transports only (alanine or sodium)




      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 1: Bio-ontology axiomatic enrichment


  rdfs:label: alanine:sodium symporter activity
  rdfs:label: glycine:potassium symporter activity
  rdfs:label: valine:sodium symporter activity
  ...

  —— —— —— —— —— —— —— —— ——

  SELECT label "(.+):(.+) (symporter activity)";
  ADD equivalentTo symporter_activity and
  transports only (<1> or <2>);



      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  http://www.cellcycleontology.org/

  Gather knowledge about the cell cycle in 5 ontologies

  Ontologies created anew each pipeline execution

  Impossible to add new axioms by hand to 5 ontologies:
     - Axioms overwritten each time the pipeline is executed
     - Many axioms in different places
     - Ontologies too big


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  http://www.cellcycleontology.org/

  Gather knowledge about the cell cycle in 5 ontologies

  Ontologies created anew each pipeline execution

  Impossible to add new axioms by hand to 5 ontologies:
     - Axioms overwritten each time the pipeline is executed
     - Many axioms in different places
     - Ontologies too big


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  Add axioms automatically each time the pipeline is executed

  Explicit development

  Querying capabilities

  Flexible development

  Ontology Design Patterns
  http://odps.sourceforge.net


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  Add axioms automatically each time the pipeline is executed

  Explicit development

  Querying capabilities

  Flexible development

  Ontology Design Patterns
  http://odps.sourceforge.net


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  Add axioms automatically each time the pipeline is executed

  Explicit development

  Querying capabilities

  Flexible development

  Ontology Design Patterns
  http://odps.sourceforge.net


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  Add axioms automatically each time the pipeline is executed

  Explicit development

  Querying capabilities

  Flexible development

  Ontology Design Patterns
  http://odps.sourceforge.net


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                    OPPL software
                                     OPPL Syntax
                                                    Use case 1: Bio-ontology axiomatic enrichment
                                      Using OPPL
                                                    Use case 2: Cell Cycle Ontology
                                   Future of OPPL


Use case 2: Cell Cycle Ontology


  Add axioms automatically each time the pipeline is executed

  Explicit development

  Querying capabilities

  Flexible development

  Ontology Design Patterns
  http://odps.sourceforge.net


      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                                     OPPL software
                                      OPPL Syntax
                                                     Use case 1: Bio-ontology axiomatic enrichment
                                       Using OPPL
                                                     Use case 2: Cell Cycle Ontology
                                    Future of OPPL


Use case 2: Cell Cycle Ontology

   # Create object property inmediately_precedes

   ADD ObjectProperty: inmediately_precedes;ADD functional;
   ADD subPropertyOf precedes;ADD inverse inmediately_preceded_by;ADD domain
   CCO_U0000002;ADD range CCO_U0000002;

   # Meiotic cell cycle: G1 -> S -> G2 -> M

   SELECT Class: CCO_P0000327;ADD subClassOf inmediately_preceded_by some
   CCO_P0000325;ADD subClassOf inmediately_precedes some CCO_P0000326;

   # Query 1: Proteins acting in the mitotic S phase (At)

   ADD Class: query_1;ADD subClassOf query;REMOVE subClassOf Thing;
   ADD comment "Proteins acting in the mitotic S phase";

   SELECT subClassOf participates_in some (CCO_P0000014 or (part_of some
   CCO_P0000014));ADD subClassOf query_1;




       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                      OPPL Syntax
                                       Using OPPL
                                    Future of OPPL


Future of OPPL

  Syntax closer to OWL?
  ADD Class: professor
  ADD professor subClassOf Thing

  Loops, conditional control, subroutines, ...

  Variables?
  SELECT subClassOf part_of some ?x;
  ADD equivalentTo part_of only ?x;

  SET professor label "new label";


       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                      OPPL Syntax
                                       Using OPPL
                                    Future of OPPL


Future of OPPL

  Syntax closer to OWL?
  ADD Class: professor
  ADD professor subClassOf Thing

  Loops, conditional control, subroutines, ...

  Variables?
  SELECT subClassOf part_of some ?x;
  ADD equivalentTo part_of only ?x;

  SET professor label "new label";


       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                      OPPL Syntax
                                       Using OPPL
                                    Future of OPPL


Future of OPPL

  Syntax closer to OWL?
  ADD Class: professor
  ADD professor subClassOf Thing

  Loops, conditional control, subroutines, ...

  Variables?
  SELECT subClassOf part_of some ?x;
  ADD equivalentTo part_of only ?x;

  SET professor label "new label";


       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                      OPPL Syntax
                                       Using OPPL
                                    Future of OPPL


Future of OPPL

  Syntax closer to OWL?
  ADD Class: professor
  ADD professor subClassOf Thing

  Loops, conditional control, subroutines, ...

  Variables?
  SELECT subClassOf part_of some ?x;
  ADD equivalentTo part_of only ?x;

  SET professor label "new label";


       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                      OPPL Syntax
                                       Using OPPL
                                    Future of OPPL


Future of OPPL




  Formal grammar

  Protégé plugin (autocomplete, syntax validation, logs, ...)




       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                      OPPL Syntax
                                       Using OPPL
                                    Future of OPPL


Future of OPPL




  Formal grammar

  Protégé plugin (autocomplete, syntax validation, logs, ...)




       Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language
Introduction to OPPL
                                     OPPL Syntax
                                      Using OPPL
                                   Future of OPPL


Acknowledgements



  Mikel Egaña: University of Manchester and EPSRC

  Erick Antezana: European Science Foundation (ESF) for the
  activity entitled Frontiers of Functional Genomics

  http://oppl.sourceforge.net/




      Mikel Egaña, Robert Stevens, Erick Antezana   Ontology Pre-Processor Language

More Related Content

More from Mikel Egaña Aranguren, Ph.D.

More from Mikel Egaña Aranguren, Ph.D. (7)

Life Sciences Linked Data
Life Sciences Linked DataLife Sciences Linked Data
Life Sciences Linked Data
 
OPPL-Galaxy: Enhancing ontology exploitation in Galaxy with OPPL
OPPL-Galaxy: Enhancing ontology exploitation in Galaxy with OPPLOPPL-Galaxy: Enhancing ontology exploitation in Galaxy with OPPL
OPPL-Galaxy: Enhancing ontology exploitation in Galaxy with OPPL
 
Linked data functional genomics
Linked data functional genomicsLinked data functional genomics
Linked data functional genomics
 
Medioambiente Linked Data
Medioambiente Linked DataMedioambiente Linked Data
Medioambiente Linked Data
 
Applying sw mikel_egana
Applying sw mikel_eganaApplying sw mikel_egana
Applying sw mikel_egana
 
Mikel egana itbam_2010_ogo_system
Mikel egana itbam_2010_ogo_systemMikel egana itbam_2010_ogo_system
Mikel egana itbam_2010_ogo_system
 
Ontology Design Patterns (ODPs) for bio-ontologies
Ontology Design Patterns (ODPs) for bio-ontologiesOntology Design Patterns (ODPs) for bio-ontologies
Ontology Design Patterns (ODPs) for bio-ontologies
 

Recently uploaded

Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationnomboosow
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpinRaunakKeshri1
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxShobhayan Kirtania
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...Pooja Nehwal
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...anjaliyadav012327
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajanpragatimahajan3
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfciinovamais
 

Recently uploaded (20)

Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
Mattingly "AI & Prompt Design: Structured Data, Assistants, & RAG"
 
Interactive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communicationInteractive Powerpoint_How to Master effective communication
Interactive Powerpoint_How to Master effective communication
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Student login on Anyboli platform.helpin
Student login on Anyboli platform.helpinStudent login on Anyboli platform.helpin
Student login on Anyboli platform.helpin
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
The byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptxThe byproduct of sericulture in different industries.pptx
The byproduct of sericulture in different industries.pptx
 
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...Russian Call Girls in Andheri Airport Mumbai WhatsApp  9167673311 💞 Full Nigh...
Russian Call Girls in Andheri Airport Mumbai WhatsApp 9167673311 💞 Full Nigh...
 
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
JAPAN: ORGANISATION OF PMDA, PHARMACEUTICAL LAWS & REGULATIONS, TYPES OF REGI...
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
social pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajansocial pharmacy d-pharm 1st year by Pragati K. Mahajan
social pharmacy d-pharm 1st year by Pragati K. Mahajan
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Activity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdfActivity 01 - Artificial Culture (1).pdf
Activity 01 - Artificial Culture (1).pdf
 

Transforming the Axiomisation of Ontologies: The Ontology Pre-Processor Language

  • 1. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Ontology Pre-Processor Language (OPPL) http://oppl.sourceforge.net/ Mikel Egaña (mikel.eganaaranguren@cs.man.ac.uk) Robert Stevens (robert.stevens@manchester.ac.uk) Bio-Health Informatics Group (BHIG), University of Manchester Erick Antezana (erant@psb.ugent.be) Department of Plant Systems Biology, VIB, Gent, Belgium Department of Molecular Genetics, Ghent University, Gent, Belgium OWLED 2008 DC Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 2. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Introduction to OPPL “Macro” language for manipulating content of OWL ontologies Motivation: authors’ needs when creating/maintaining bio-ontologies (Use cases) Nearly API-level functionality with minimum programming/OWL knowledge Manchester OWL Syntax + SELECT, ADD, REMOVE Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 3. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Introduction to OPPL “Macro” language for manipulating content of OWL ontologies Motivation: authors’ needs when creating/maintaining bio-ontologies (Use cases) Nearly API-level functionality with minimum programming/OWL knowledge Manchester OWL Syntax + SELECT, ADD, REMOVE Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 4. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Introduction to OPPL “Macro” language for manipulating content of OWL ontologies Motivation: authors’ needs when creating/maintaining bio-ontologies (Use cases) Nearly API-level functionality with minimum programming/OWL knowledge Manchester OWL Syntax + SELECT, ADD, REMOVE Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 5. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Introduction to OPPL “Macro” language for manipulating content of OWL ontologies Motivation: authors’ needs when creating/maintaining bio-ontologies (Use cases) Nearly API-level functionality with minimum programming/OWL knowledge Manchester OWL Syntax + SELECT, ADD, REMOVE Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 6. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction SELECT Class: admin;ADD label "office admin"; OPPL statement OPPL statement OPPL instruction Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 7. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples ADD Class: undergraduate; REMOVE Class: undergraduate; SELECT equivalentTo participates_in only (intellectual_dinner and party); ADD label "professor"; REMOVE subClassOf lives_on only (not campus); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 8. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples ADD Class: undergraduate; REMOVE Class: undergraduate; SELECT equivalentTo participates_in only (intellectual_dinner and party); ADD label "professor"; REMOVE subClassOf lives_on only (not campus); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 9. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples ADD Class: undergraduate; REMOVE Class: undergraduate; SELECT equivalentTo participates_in only (intellectual_dinner and party); ADD label "professor"; REMOVE subClassOf lives_on only (not campus); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 10. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples SELECT subClassOf MoleOfSalt; ADD subClassOf hasDensity value 0.0; SELECT inverse participates_in; ADD range student; ADD Class: professor; ADD label "staff"; ADD equivalentTo participates_in only (intellectual_dinner and party); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 11. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples SELECT subClassOf MoleOfSalt; ADD subClassOf hasDensity value 0.0; SELECT inverse participates_in; ADD range student; ADD Class: professor; ADD label "staff"; ADD equivalentTo participates_in only (intellectual_dinner and party); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 12. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples SELECT subClassOf MoleOfSalt; ADD subClassOf hasDensity value 0.0; SELECT inverse participates_in; ADD range student; ADD Class: professor; ADD label "staff"; ADD equivalentTo participates_in only (intellectual_dinner and party); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 13. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples disjointWith, differentFrom, sameAs, type, descendantOf, ancestorOf, subPropertyOf, ... http://oppl.sourceforge.net/test.oppl Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 14. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL instruction examples disjointWith, differentFrom, sameAs, type, descendantOf, ancestorOf, subPropertyOf, ... http://oppl.sourceforge.net/test.oppl Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 15. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL extra instructions SELECT_PRIMITIVE descendantOf student; SELECT_DEFINED descendantOf student; SELECT descendantOf person; ADD disjointWithSiblings; SELECT assertedSubClassOf participates_in some sport; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 16. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL extra instructions SELECT_PRIMITIVE descendantOf student; SELECT_DEFINED descendantOf student; SELECT descendantOf person; ADD disjointWithSiblings; SELECT assertedSubClassOf participates_in some sport; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 17. Introduction to OPPL OPPL instruction OPPL Syntax OPPL instruction examples Using OPPL OPPL extra instructions Future of OPPL OPPL extra instructions SELECT_PRIMITIVE descendantOf student; SELECT_DEFINED descendantOf student; SELECT descendantOf person; ADD disjointWithSiblings; SELECT assertedSubClassOf participates_in some sport; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 18. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL OPPL software http://oppl.sourceforge.net/ OPPLInstructionManager Java library for processing OPPL instructions (LGPL) OWL API, Pellet, FaCT++, DIG OPPL reference implementation: OPPL instructions in flat file java -jar oppl.jar pellet ins.oppl ont.owl new_ont.owl Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 19. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL OPPL software http://oppl.sourceforge.net/ OPPLInstructionManager Java library for processing OPPL instructions (LGPL) OWL API, Pellet, FaCT++, DIG OPPL reference implementation: OPPL instructions in flat file java -jar oppl.jar pellet ins.oppl ont.owl new_ont.owl Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 20. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL OPPL software http://oppl.sourceforge.net/ OPPLInstructionManager Java library for processing OPPL instructions (LGPL) OWL API, Pellet, FaCT++, DIG OPPL reference implementation: OPPL instructions in flat file java -jar oppl.jar pellet ins.oppl ont.owl new_ont.owl Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 21. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 1: Bio-ontology axiomatic enrichment Gene Ontology Next Generation http://www.gong.manchester.ac.uk/ alanine:sodium symporter activity —— Axiomatic enrichment based in rdfs:label —— EquivalentTo: symporter activity and transports only (alanine or sodium) Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 22. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 1: Bio-ontology axiomatic enrichment Gene Ontology Next Generation http://www.gong.manchester.ac.uk/ alanine:sodium symporter activity —— Axiomatic enrichment based in rdfs:label —— EquivalentTo: symporter activity and transports only (alanine or sodium) Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 23. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 1: Bio-ontology axiomatic enrichment rdfs:label: alanine:sodium symporter activity rdfs:label: glycine:potassium symporter activity rdfs:label: valine:sodium symporter activity ... —— —— —— —— —— —— —— —— —— SELECT label "(.+):(.+) (symporter activity)"; ADD equivalentTo symporter_activity and transports only (<1> or <2>); Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 24. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology http://www.cellcycleontology.org/ Gather knowledge about the cell cycle in 5 ontologies Ontologies created anew each pipeline execution Impossible to add new axioms by hand to 5 ontologies: - Axioms overwritten each time the pipeline is executed - Many axioms in different places - Ontologies too big Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 25. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology http://www.cellcycleontology.org/ Gather knowledge about the cell cycle in 5 ontologies Ontologies created anew each pipeline execution Impossible to add new axioms by hand to 5 ontologies: - Axioms overwritten each time the pipeline is executed - Many axioms in different places - Ontologies too big Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 26. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology Add axioms automatically each time the pipeline is executed Explicit development Querying capabilities Flexible development Ontology Design Patterns http://odps.sourceforge.net Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 27. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology Add axioms automatically each time the pipeline is executed Explicit development Querying capabilities Flexible development Ontology Design Patterns http://odps.sourceforge.net Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 28. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology Add axioms automatically each time the pipeline is executed Explicit development Querying capabilities Flexible development Ontology Design Patterns http://odps.sourceforge.net Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 29. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology Add axioms automatically each time the pipeline is executed Explicit development Querying capabilities Flexible development Ontology Design Patterns http://odps.sourceforge.net Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 30. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology Add axioms automatically each time the pipeline is executed Explicit development Querying capabilities Flexible development Ontology Design Patterns http://odps.sourceforge.net Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 31. Introduction to OPPL OPPL software OPPL Syntax Use case 1: Bio-ontology axiomatic enrichment Using OPPL Use case 2: Cell Cycle Ontology Future of OPPL Use case 2: Cell Cycle Ontology # Create object property inmediately_precedes ADD ObjectProperty: inmediately_precedes;ADD functional; ADD subPropertyOf precedes;ADD inverse inmediately_preceded_by;ADD domain CCO_U0000002;ADD range CCO_U0000002; # Meiotic cell cycle: G1 -> S -> G2 -> M SELECT Class: CCO_P0000327;ADD subClassOf inmediately_preceded_by some CCO_P0000325;ADD subClassOf inmediately_precedes some CCO_P0000326; # Query 1: Proteins acting in the mitotic S phase (At) ADD Class: query_1;ADD subClassOf query;REMOVE subClassOf Thing; ADD comment "Proteins acting in the mitotic S phase"; SELECT subClassOf participates_in some (CCO_P0000014 or (part_of some CCO_P0000014));ADD subClassOf query_1; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 32. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Future of OPPL Syntax closer to OWL? ADD Class: professor ADD professor subClassOf Thing Loops, conditional control, subroutines, ... Variables? SELECT subClassOf part_of some ?x; ADD equivalentTo part_of only ?x; SET professor label "new label"; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 33. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Future of OPPL Syntax closer to OWL? ADD Class: professor ADD professor subClassOf Thing Loops, conditional control, subroutines, ... Variables? SELECT subClassOf part_of some ?x; ADD equivalentTo part_of only ?x; SET professor label "new label"; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 34. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Future of OPPL Syntax closer to OWL? ADD Class: professor ADD professor subClassOf Thing Loops, conditional control, subroutines, ... Variables? SELECT subClassOf part_of some ?x; ADD equivalentTo part_of only ?x; SET professor label "new label"; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 35. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Future of OPPL Syntax closer to OWL? ADD Class: professor ADD professor subClassOf Thing Loops, conditional control, subroutines, ... Variables? SELECT subClassOf part_of some ?x; ADD equivalentTo part_of only ?x; SET professor label "new label"; Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 36. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Future of OPPL Formal grammar Protégé plugin (autocomplete, syntax validation, logs, ...) Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 37. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Future of OPPL Formal grammar Protégé plugin (autocomplete, syntax validation, logs, ...) Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language
  • 38. Introduction to OPPL OPPL Syntax Using OPPL Future of OPPL Acknowledgements Mikel Egaña: University of Manchester and EPSRC Erick Antezana: European Science Foundation (ESF) for the activity entitled Frontiers of Functional Genomics http://oppl.sourceforge.net/ Mikel Egaña, Robert Stevens, Erick Antezana Ontology Pre-Processor Language