Difference between revisions of "CDAO"

From Evolutionary Informatics Working Group
Jump to: navigation, search
(Current priorities)
(Current priorities)
Line 15: Line 15:
  
 
== Current priorities ==
 
== Current priorities ==
 +
 +
=== Manuscript revisions ===
 +
 +
# What are the key points from the reviewer critique?
 +
#*
 +
# What should we do in response to the key points?
 +
#*
 +
# Who is going to take responsibility for each response?
  
 
=== Hackathon preparation ===
 
=== Hackathon preparation ===
Line 20: Line 28:
 
Tests for reasoning over nexml annotations that refer to external namespaces.  These are written in informal language
 
Tests for reasoning over nexml annotations that refer to external namespaces.  These are written in informal language
  
# Taxonomy  
+
# Taxonomy
 
#* OTU has_a cdao:annotation:external_reference
 
#* OTU has_a cdao:annotation:external_reference
 
#* OTU is_a <external_taxonomy>:teleost
 
#* OTU is_a <external_taxonomy>:teleost
 
#* OTU is_a <external_taxonomy>:primate
 
#* OTU is_a <external_taxonomy>:primate
# Specimen provenance  
+
# Specimen provenance
#*  
+
#*
# Tree type  
+
# Tree type
 
#* tree is_a cladogram
 
#* tree is_a cladogram
 
#* tree is_a cdao:fully_resolved and cdao:species_tree
 
#* tree is_a cdao:fully_resolved and cdao:species_tree
#
+
#  
#
+
#  
 
 
What cdao needs:
 
  
* data set or "study" concept, associating OTUs, data, tree, methods, etc, e.g,. need to ask if study has fully_resolved species_tree.  
+
What cdao needs:
* has_function  
+
* data set or "study" concept, associating OTUs, data, tree, methods, etc, e.g,. need to ask if study has fully_resolved species_tree.
 +
* has_function
 
* has_taxonomy_reference
 
* has_taxonomy_reference
 
* has_specimen_reference
 
* has_specimen_reference
* has_reference for literature reference  
+
* has_reference for literature reference
  
 
== Accomplishments ==
 
== Accomplishments ==

Revision as of 17:10, 3 March 2009

Comparative Data Analysis Ontology - Project Page

Note: this is mostly a project page for team members, focused on current issues and ongoing work.

The Comparative Data Analysis Ontology (CDAO) is intended to provide a framework for understanding data in the context of evolutionary-comparative analysis. This comparative approach is used commonly in bioinformatics and other areas of biology to draw inferences from a comparison of differently evolved versions of something, such as differently evolved versions of a protein. The entities to be compared, typically called 'OTUs' (Operational Taxonomic Units), may represent biological species, or entities drawn from higher or lower in a biological hierarchy-- anywhere from molecules to communities. The features to be compared among OTUs are rendered in an entity-attribute-value model sometimes referred to as the 'character-state data model'. For a given character, such as 'beak length' (or 'position 20 of alpha hemoglobin'), each OTU has a state, such as 'short' (or 'Alanine'). The differences between states are understood to emerge by a historical process of evolutionary transitions in state, represented by a model (or rules) of transitions along with a phylogenetic tree. CDAO provides the framework for representing OTUs, trees, transformations, and characters. The representation of characters may depend on imported ontologies,. e.g., character-states for amino acid characters are based on an imported ontology of amino acids.

Quick links

Current priorities

Manuscript revisions

  1. What are the key points from the reviewer critique?
  2. What should we do in response to the key points?
  3. Who is going to take responsibility for each response?

Hackathon preparation

Tests for reasoning over nexml annotations that refer to external namespaces. These are written in informal language

  1. Taxonomy
    • OTU has_a cdao:annotation:external_reference
    • OTU is_a <external_taxonomy>:teleost
    • OTU is_a <external_taxonomy>:primate
  2. Specimen provenance
  3. Tree type
    • tree is_a cladogram
    • tree is_a cdao:fully_resolved and cdao:species_tree

What cdao needs:

  • data set or "study" concept, associating OTUs, data, tree, methods, etc, e.g,. need to ask if study has fully_resolved species_tree.
  • has_function
  • has_taxonomy_reference
  • has_specimen_reference
  • has_reference for literature reference

Accomplishments

  • initial study (done Nov 2007)
  • developed initial draft of ontology in OWL (done April 2008)
  • created sourceforge project (done April 8)
  • cleaned up (property hierarchy; close classes; disjoint axioms) (done in April)
  • annotated (done May 2, Arlin)
  • integrate a domain ontology such as amino acids (done May 5, Enrico)
  • evaluated strengths and weaknesses of Protege (see Ontology Development Software; decided to stick with Protege)
  • evaluated draft ontology
    1. ontology can represent character data instances
    2. ontology provides computability of (some) useful queries
    3. ontology does not duplicate existing ontologies - see table in paper
    4. ontology integrates related ontologies for character domains, SUCH AS (at least one of):
    5. ontology is normalized or modular according to Rector
  • released the initial ontology version (May 20, 2008)
  • set up public web site: evolutionaryontology.org/cdao (Francisco)
  • prepare presentation for scientific meetings in Summer 2008 (done: Marseille (Francisco); to do: SSE)
  • wrote manuscript; submitted; rejected; re-submitted; accepted (February, 2009)

Further development and evaluation (plans and ideas)

More challenging inference

not sure how this would work; some ideas:

  • technology for implementing tests
    • could use Jena API to write simple test application to run such tests
    • more complex reasoning with RACE or other external reasoner
  • test challenges
    • correct computation of MRCA, lineage, and so on

representation challenges

Can the ontology represent complex and diverse data sets?)

  1. NeXML (Brandon at next evoinfo meeting?)
  2. NEXUS
  3. PANDIT and other formats?
  4. round-trip test (formal version of representation challenge)

feedback, community involvement

  • further develop web resource with documentation
  • need to be aggressive - get attention, hold workshop with interested people

Demonstration project ideas

Carry out demonstration projects to demonstrate utility of CDAO. The ideal properties for a demo:

  • significant biological problem
  • technical innovation (extends what is possible)
  • relies uniquely (or at least, relies critically) on CDAO

Possible projects

  1. FIGENIX human proteome history project (Julie, Francisco)
  2. phylogenetic profiles (Julie)
  3. functional inference generalization
  4. natural language processing (via CDAO) to create literature resource (Enrico, idea for possible ASU collaborators)
  5. TreeBASE input validator
  6. translation tools
  7. translate high-value content (PANDIT, KOGs, etc)
  8. other

Acute testing

To get started, we propose to use a test-driven strategy based on explicit tests of the basic concepts from the ConceptGlossary. Attached is the media:prioritized_concept_list.txt (1 is highest priority, 3 is lowest). Here is how it works. Imagine we have a *high-level test language* and this is the code for testing the ontology on its implementation of the "ancestor" concept:

load_ontology("CDAO");
load_data("ancestor_test.nex");
statements = { "otuA is_a ancestor_of otuB", "htuAB is_a ancestor_of otuB" };
truth_value = { "false", "true" };
evaluate( statements, answers );

Here is the "ancestor_test.nex" file:

#NEXUS
BEGIN TAXA;
      dimensions ntax=4;
      taxlabels A B C D;
END;
BEGIN TREES;
      tree bush = [&R] ((otuA,otuB)htuAB,(otuC,otuD)htuCD)htuABCD;
END;

I'm hoping to [[1]attach a tar file] with tests for concepts, but the wiki does not like tar files. I can send it via email. The files come in pairs,

<concept><test_number>.nex
<concept><test_number>.tab

The first file is a NEXUS file with the data. The second file is a table of statements for evaluation, with fields statement_number, truth_value, statement. Right now I am using a three-valued logic (true false and unknown or indeterminate), e.g., if the tree is not rooted, then whether an internal node is the ancestor of some other node is indeterminate.

Resources and demonstrations for development

More elaborate test data sets

Each data set comes with a tree and a character matrix in NEXUS format. To explore these data sets you may wish to:

There are four different categories of character sets:

  • DNA: aligned nucleotides coded via IUPAC standard (T, C, G, A, and so on)
  • protein: aligned amino acids coded via IUPAC standard (A, C, D, E, F, G, H, I and so on)
  • continuous: numeric values of continuous characters (e.g., 0.001, 0.230)
  • morphology: discrete morphological characters with ad hoc numeric encoding (e.g., 0 = absent, 1 = present)

The DNA data are "CDS" or "coding sequence" data, meaning the sequence of nucleotide triplets in the protein-coding part of a gene.

There are three grades of difficulty:

  • Simplified: small number of OTUs and characters; unambiguous states; single bifurcating tree
  • Typical: may contain many OTUs, multiple trees, polytomies, other stuff
  • Demanding: may contain ambiguous characters, mixed data types, notes, assumptions, etc.


type difficulty description comments NEXUS CDAO
CDS (DNA) Simplified Subset of 10 ATPase CDSs comments PF00137_10_cds.nex PF00137_10_cds.owl[[2]]
CDS (DNA) Typical Eukaryotic cytochrome C CDSs comments PF00034_39_cds.nex PF00034_39_cds.owl[[3]]
CDS (DNA) Typical Eukaryotic ATPase CDSs comments PF00137_47_cds.nex PF00137_47_cds.owl[[4]]
CDS (DNA) Demanding NA comments [[Media:|NA]] [[Media:|NA]]
Protein (AA) Simplified Subset of 10 ATPases comments PF00137_10_protein.nex PF00137_10_protein.owl[[5]]
Protein (AA) Typical Eukaryotic cytochrome Cs comments PF00034_39_protein.nex PF00034_39_protein.owl[[6]]
Protein (AA) Typical Eukaryotic ATPases comments PF00137_47_protein.nex PF00137_47_protein.owl[[7]]
Protein (AA) Demanding NA comments [[Media:|NA]] [[Media:|NA]]
Continuous Simplified NA comments [[Media:|NA]] [[Media:|NA]]
Continuous Typical Inhibitor sensitivity data for human kinases -log(IC50) scaled kinase_rescaled3_sets.nex kinase_rescaled3_sets.owl[[8]]
Continuous Demanding NA comments [[Media:|NA]] [[Media:|NA]]
Morphological Simplified NA comments [[Media:|NA]] [[Media:|NA]]
Morphological Typical Nematode vulval morphology and development Kiontke, et al., 2007 Kiontke_CB_fixed.nex [[Media:|NA]]
Morphological Demanding NA comments [[Media:|NA]] [[Media:|NA]]

Meeting Notes

electronic conversation on manuscript revisions, March, 2009

What are the key points from the reviewer critique? What should we do in response to the key points? Who is going to take responsibility for each response?

Telecon, 15 September, 2008

participating: Julie, Arlin, Enrico, Francisco, Brandon

  1. Paper submission
    • format: Julie has done everything but EndNote references (arlin needs to re-format these)
    • venue: bmc evol biology
    • referees: people we haven't published with.
      • ad hoc list: Fabricio Santosm, Jim Leebens-Mack, David Maddison, Wayne Maddison, Jim Balhoff, Miguel Andrade, Manolo Gouy
      • Enrico (*) to send suggestions (name, affiliation, contact info)
      • Francisco (*) to send suggestions
  2. Ontology submission to OBO
    • Enrico will do this
  3. Next evoinfo meeting
    • Rutger is planning this (Arlin too busy)
    • focus on nexml, MIAPA, CarrotBase
  4. Further development of CDAO
    • possible NESCent-sponsored group supplement meeting
      • Arlin will ask if supplement funds are still available
      • Enrico will do application for meeting funds from NESCent
    • Objectives for further development
      • enrich classes (Enrico's additions)
      • core relations and concepts
      • evaluation (see Supporting_MIAPA and CarrotBase projects on evoinfo wiki)


Telecon, 6 June, 2008

participating: Enrico, Julie, Arlin, Francisco

  1. website
    • francisco says yes
    • nescent says yes
  2. evaluation
    • worm file
  3. representation (implementation)
    • tree (arlin)
    • matrix (enrico)
    • homologizing concept, coordinate system
  4. MIAPA
    • phenote
    • web form: top-level, launch, phenote, verity, term-request

Telecon, 29 May, 2008

participating: Enrico, Julie, Arlin

  1. website
    • Arlin to ask francisco to take lead on this
    • work with NESCent a la nexml.org
    • transfer content
    • develop system to manage content
  2. nexml-CDAO
    • not much progress lately
    • Brandon working on C-based
    • Enrico working on Prolog-based
  3. sequence characters
    • practical issues: how to merge with upper and lower
    • chebi amino acid residues
    • bio-top
  4. manuscript
    • waiting for evaluation
  5. what do we need to wrap up this stage
    • groups of chars
    • evaluation

Telecon, 16 May, 2008

Web site (Francisco)

  • design criteria
    • stable home, public face for project
    • provides accessible description of CDAO
    • portal for those seeking information in this area
    • host for workflows projects
    • may host other services e.g., discussion board
  • Arlin to find out about content management
  • Home for CDAO URI?
    • not NESCent
    • could be our web site (preferred option)
    • or OBO (biggest player)
  • deadline ? not urgent

Submission to OBO

  • renewed our commitment to submit to OBO
  • Arlin will ask Julie is she could pursue this further

Evaluation (Enrico)

  • difficulties
  • many changes to ontology
  • nearest-common-ancestor
  • ran RDQL queries through Pellet external reasoner
  • racer does not like our ontology
    • doesn't like property chaining
    • purports to support OWL 1.1 but does not
  • compute cost of path across tree, can't do that directly with reasoner

Manuscript (Arlin)

  • will finish more revisions today
  • still not done
  • suggest pushing submission date back to June

Telecon, 9 May, 2008

Ongoing issues from last week:

  1. software choices:
    • arlin recommends to stick with Protege 4
      • latest build fixes several major bugs we have encountered
      • Protege has a large user base and an active developer community-- bugs being fixed
      • lots of discussion on mailing lists p4-feedback (protege 4 list) and protege-owl
    • but enrico notes problem with insufficient dl query interface
      • Brandon found free SPARQL engine called twinkle
      • Arlin notes that SPARQL (accessed via the Java API) is one of the topics discussed on protege-owl
    • our conclusion is that, at least for now, we should stick with Protege 4
  2. instance data
    • Enrico and Brandon are almost ready with their translators
      • Brandon has written a C++ program based on NCL
      • Enrico has written a Perl program based on Bio::NEXUS and prolog
        • the program reads in NEXUS and dumps out facts in CDAO RDF terms
  3. query-based evaluation (test ability to reason from representation of instance data)
    • this also is nearly ready to begin
    • depends on instance data translators described above
    • also depends on full DL queries as with SPARQL
  4. home page (we need a home page with a public orientation)
    • need to hear back from Francisco
    • as a start, Arlin added an intro paragraph to evoinfo/CDAO wiki
  5. annotation: done (Arlin)

Other issues

  1. Representation of nearest common ancestor is not good.
    • best we can do is represent-- we cannot make MRCA computable
    • current attempt to represent MRCA will not work
    • we need to have a set concept to use a binary relation
      1. OTU_set has_mrca Node
      2. Node is_mrca_of OTU_set
  2. Upper ontologies? Should we address this in manuscript?
    • Enrico says no need to worry about this now
  3. is this an application ontology or reference ontology?
    • also seems like an unimportant distinction

Telecon, 5 May, 2008

To do:

  1. find a more stable and interoperable replacement for Protege (Enrico, Arlin):
  2. develop instance data to illustrate encoding, for use in manuscript figures and supplementary data (very simple cases, e.g., based on Fig. 4)
  3. use simple queries on instance data to evaluate the ontology (Brandon, Enrico)
  4. develop a project home page that is written for other scientists and potential users, not just for project participants (Francisco)
  5. finish up ontology annotation (Arlin)

Telecon, 25 April, 2008

Telecon, 18 April, 2008

Working meeting march 24-april 4

Day 11, Thursday Apr 3, 2008

remains to be done

  • category 2 items from yesterday

Incorporated (provisionally) in Version 12:

  • imported equivalence class of amino acids SpecificAminoAcid from OWL amino-acid (www.co-ode.org/ontologies/amino-acid/2005/10/11/amino-acid.owl)
  • found classes for nucleotides in www.bioontology.org/files/4531/basic-vertebrate-gross-anatomy.owl, actually these are imported from http://www.co-ode.org/ontologies/basic-bio/top-bio.owl


Incorporated in Version 11:

  • gap state or missing data
  • homologous to
  • taxonomic link as TU annotation

Incorporated in Version 10:

  • lineage
  • transformation types

Incorporated in Version 9:

  • made Anotayshun CDAO_Annotation
  • added Ancestral_Node, Common_Ancestral_Node and MRCA_Node with restriction has_Descendants > 1
  • linked TU to Node with object property represented_by_Node (inverse represents_TU)
  • compound character class

Day 10, Wednesday Apr 2, 2008

The next sub-section of the ontology to be refined was the part representing the character state data matrix. Although this initially seemed to be a relatively simple structure, a number of complications were encountered because of the various data types we wanted to include (nucleotide, amino acid, continuous data and other discrete data, such as GO terms, EC numbers, anatomy, etc.) and the large number of properties attached to each class.

Two alternative representations were considered to take into account the different data types. The first tried to minimise the number of classes specific to each data type, however this turned out to be too difficult to represent with the OWL language. The second option defined a number of type-specific classes and although this is not an ideal structure with a number of duplications, the ontology structure was simplified. The second option defines a set of restrictions that will allow us to check data for consistency with the ontology reasoner.

At this stage the validity of the draft ontology was tested by adding instance data into Protege and a reasoner to check for inconsistencies.

In addition, we

  • generalized edge annotation concept
  • allowed for residues to have coordinates in a sequence
  • learned more about the bugs-features of reasoners in Protege 4
    • FaCT++ does not seem to work in the Mac version
    • errors in instance data trigger a Java fault (not reasoner error) for both FaCT++ and Pellet
    • DL Queries are limited to classes and simple conjunctions with properties
Remaining issues:

1. ontology classes and properties

  • In the toplogy sub-section: notions of lineage, MRCA, subtree.
  • Links between tree and TU
  • In the character state data matrix sub-section: sequential character types and positional information.
  • Transformation concepts that will be included as edge_annotation in the tree topology

2. general issues

  • Linking CDAO to other ontologies: amino acid, GO, SO, NCBI taxonomy
  • Mapping to MAO concepts
  • Text annotations of classes and properties i.e. human-readable definitions of all CDAO concepts
  • Submission to OBO

Day 9, Tuesday Mar. 30, 2008

We spent the first part day becoming familiar with the latest version of Protege 4 and other tools such as the ontology DL and the OWLviz visualization. Updating from version 3 of Protege caused a number of compatalibity problems, but the extra features, especially the visualization tool were considered important.

We then decided to concentrate on a number of sub-sections of the ontology, starting with the tree topology. The issued raised on day 8 were all addressed during this session. The most important decisions were the kinds of topologies to include in the ontology (rooted/unrooted trees, more general networks or graphs, ...) and the representation of direction in rooted trees. The concept of parent/child or ancestor/descendant nodes connected by an edge proved to be non-trivial to describe in the OWL language with the limitation of properties linking only two classes. This was overcome with the facility of 'chaining properties'.

Day 8, Monday Mar. 31, 2008

Julie and Francisco reviewed the complete draft ontology built during the first week and compiled a list of questions to address with the full team during the next week:

  1. Do we want to differentiate between traits and characters?
  2. How de we represent the tree topology and what do we need to differentiate between rooted and unrooted trees?
  3. What properties de we need for edges and nodes? how do we define directed edges for rooted trees?
  4. Do we want to define a minimum ontology with only basic concepts, or do we want to include other concepts that could be derived from the basic ones?

Day 6 to 7, Sat to Sun, Mar. 29 to 30, 2008

The work done by Brandon and Francisco was handed over to the team working in the second week (Julie, Enrico, Arlin).

Day 5, Friday Mar. 28, 2008

1. Adding new concepts to the ontology

Today Francisco reviewed Arlin's entire list of concepts and added to the ontology all that he could clearly understand and describe. To do for Monday: (1) take a look into this list together and (2) try to verify if the concepts are clearly and well represented or whether different representations can be suggested.

Some concepts at the bottom of the list (many of the priority 3 ones), although very relevant in evolutionary biology, seem very difficult to include in the current ontology -- pecifically the ones related to population genetics. Maybe we would need another "sister ontology" to describe these, although it may be possible to link them to the concepts already present in CDAO.


2. Gathering new information to write a final version of paper

In addition, Francisco has been looking into the CDAO manuscript and gathering information from the web to try to fill it with more information. He has made a list of references on biomedical ontologies retrieved from PubMed. These have been downloaded and saved in a MS-word .doc format for use with endnote.


3. Writing the algorithm

Brandon has another great day of coding. He has finished the overall design of the system, but we have not yet had a chance to test it. He plans to work on it more this weekend after getting back to Las Cruces, and will send an updated version by Monday morning.

Day 4, Thursday Mar. 27, 2008

1. We have now produced a more consistent version of the ontology presenting (almost) all priority 1 concepts and also some priority 2 ones -- we've missed just a couple of priority 1 concepts that we didn't understand very well and that we'll be able to add into the ontology next week, after discussion with the other members of the group.

2. We believe this version of the ontology is much clearer and the relationship between classes are better described. Some concepts considered as classes before are now represented as object_properties or datatype_properties (and vice-versa). We have also restricted some of the datatype_properties to a set of limited values, avoiding misrepresentation of data. We think we've found a good representation of some difficult inter-related concepts such as the relationship between transformation, branch modification, character, OTU and character-state modification. I hope that we can re-refine this representation during the next week.

3. Brandon has finished a preliminary version of his algorithm that reads and interprets the NEXUS files and tomorrow morning he'll be adding to it the module that reads our new ontology -- he has an idea of some modules to use and he thinks there will be no problem with this. We hope to finish the day tomorrow with the complete and validated-by-hand representation of at least 2 nexus files in an ontology XML format.

Day 3, Wednesday Mar. 26, 2008

1. Optimizing the ontology

Today, we began discussing two versions of a simplified ontology we made yesterday (each of us made our own simplified version). Finally, we realized that the original ontology made on Monday containing all the concepts was not very well encapsulated and we prefer to begin another one. We have checked the best descriptions made by each of us and produced a cleaner and more consistent ontology using the best way to describe concepts we've made. We've discussed differences in data representation and have come to an agreement on the best way to represent different kinds of data.

Although the new ontology is cleaner, more understandable and the concepts are inter-related in a better way, it still lacks some synonyms and some important concepts. We'll add them by importing from the original complete ontology in a step-by-step manner, testing each concept and their relationships before adding the next one.


2. Automating the representation of test sets

Since we spent lots of time yesterday afternoon and this morning trying to represent 3-OTUs with 5-characters in the Protégé ontology manually, in the afternoon we decided that we would need at least a very preliminary algorithm to read the input test files made by Arlin and translate them into a file to be read and checked inside Protégé.

Brandon has spent the afternoon producing this algorithm (although he hasn't finished it yet, he has advanced well). In the meantime, Francisco continued to look into the simplified ontologies we have made and to add new concepts into them. Although they still lack many of Arlin's concepts with priority 1, we think that these new ontologies we have made beginning from zero are more internally-consistent and they will allow better representation of the data than the original one produced on Monday.

Day 2, Tuesday Mar. 25, 2008

1. Revisions

We added synonyms to the ontology, in the needed places.

We also separated characters and their related classes and properties into a separate ontology in order to better encapsulate these elements so that they could be refined in isolation without disturbing the other parts. This additionally helps to reduce confusion between properties while working.

2. Examples

We started work encoding the examples provided on the Wiki page.

This encoding is not yet complete, but we are making progress, and have identified and made a few necessary changes to fix earlier errors such as relating traits/characters to edges rather than OLT's

3. Testing and Protege Training

As part of the testing process we each made simplified versions of the ontology

and worked on encoding the examples, so that we could identify the critical components, transfer knowledge about protege, and also work out problem spots in a simple environment where they would be, most likely, easier to fix. Additionally the import system has proven to be somewhat brittle so while the encapsulation is desireable, until each of the sub-parts is stable, it iseasier to work with them as a single ontology file.

4. Updates available

We have uploaded the current versions of our work to [[9]] It's now available as both OWL and Protege Project files.

Day 1, Monday

We began by checking the concepts in the prioritized_concept_list, trying to make them available in the current version of the ontology. Most of the concepts were added in the tree subsection, although a number of them were shown to be redundant or better represented as other terms and relationships. We have also converted some terms that were classes to properties and other from properties to classes -- in the context of an OWL representation.

First we grouped the terms in related groups:

  • Group 1 - TU related
    • Descendant
    • Ancestor
    • HTU
    • Hypothetical Taxonomic Unit
    • Most Recent Common Ancestor
    • MRCA
    • Operational Taxonomic Unit
    • OTU
    • Outgroup
    • Leaf node
    • Terminal node
    • Root
    • Basal
  • Group 2 - Tree related
    • Branch support
    • Tree
    • Unresolved
    • Cladrogram
    • Dichotomy
    • Edge
    • Fully resolved
    • Monophyly
    • Network
    • Bifurcation
    • Phylogenetic Tree
    • Phylogentic Tree Topology
    • Bipartition
    • Bootstrap support
    • Branch
    • Subtree
    • Lineage
    • Topology
    • Polytomy
    • Unrooted
  • Group 3 - Character related
    • Trait
    • Character
    • Character-state
    • Character-State Data Matrix
    • Derived
    • Apomorphy
    • Primitive
    • State
    • Missing data
  • Group 4 - Others
    • Gap
    • Indel
    • Homology
    • Polymorphism
    • Taxon
    • Taxonomic Rank

Then, we defined the synonymous usage of terms. When the terms are synonymous concepts or representation, we chose just one of them to present.

  • Group 1
    • HTU = Hypothetical Taxonomic Unit = Ancestor
    • Leaf node = OTU = Operational Taxonomic Unit = Terminal node
    • Descendant = Child
    • Root
    • Outgroup
    • Most Recent Common Ancestor = MRCA
    • Basal

(These two concepts may be derived from an algorithm reading the ontology-annotated file, but they are not explicitly defined in the ontology itself. The information is there, but no specific concept is provided. If we choose to represent all the MRCA of all OTU/HTU and which TUs are more or less basal than other ones, we think the representation file would be very big.)

  • Group 2
    • Tree = Cladogram = Network = Phylogenetic Tree
    • Dichotomy = Fully resolved = Bifurcation = Monophyly = Bipartition
    • Edge = Branch
    • Polytomy = Unresolved
    • Unrooted
    • Subtree = Lineage
    • Branch confidence level = Branch support = Bootstrap support

(here we used confidence level as it can support any confidence analysis, even if bootstrap is the most used)

    • Topology = Phylogenetic Tree Topology

(the topology is something we need to have to build ontology-based representations, it is imported from NEXUS file and it can be retrieve by the ontology file through child-parent relationships)

  • Group 3 - Character related
    • Trait: Defined as any characteristic of the TU that the annotator would like to describe
    • Character: Defined as the characteristics used for evolutionary classification
    • State = Character-state
    • Derived = Apomorphy
    • Primitive
    • Missing data
    • Character-State Data Matrix

(This would be in the input file of the ontology and could also be retrieved from the ontology-annotated file by algorithms)


  • Group 4 - Others
    • Gap = defined in the transformation
    • Indel = defined in the transformation
    • Homology
    • Polymorphism = we didn't understand what it means
    • Taxon = defined as a property of an OTU
    • Taxonomic Rank


Once all these concepts were defined and added to the ontology, we began to make a simple representation of a simple hypothetical dataset. During this preliminary representation we have found some errors, and modified some concepts from properties to classes (such like the branch one, etc). Moreover, we had some difficulties to work with Protégé since it seems to be in a very beta release and each time we found something that would be represented better in the ontology by changing slightly the concepts, we need to rebuild and re-enter manually all the concepts in our test set.

  • Question : can synonyms be represented in Protégé? I think it would be useful for scientists to be able to choose the term they want to use.

telecon, 14 March, 2:00 UTC

skipped this

Telecon, 7 March, 2007

present: Francisco Prodoscimi, Julie Thompson, Enrico Pontelli, Arlin Stoltzfus

What activities to do before the meeting? Plan for development?

  1. represent 4 simple test cases
    1. nt alignment plus tree
    2. prot alignment plus tree
    3. kinases with inhibitor sensitivity
    4. worm morphologies
  2. carry out operations with reasoning
    1. set and logic operations on characters and OTUs
    2. tree operations (clade selection, prune)
    3. other?
  3. map ontology to other representations
    1. NEXUS
    2. neXML
  4. start compiling list of concepts that are missing
    1. review Enrico's proposal
  5. look ahead to future challenges
    1. genetic encoding of characters
    2. ambiguous, multi-dimensional, or otherwise complex characters

Other issues for meeting and for paper

  • what is the scope?
  • How to integrate with other ontologies?
    • table from 'related artefacts' exercise
    • genetic code as a test case for integration
      • requires nt aa mapping to specify code
      • requires species taxonomy to assign code to species
      • requires cell ontology to assign code to compartmental genome (nuc, mito, cp)

Next meeting

  • telecon, 14 March, 2:00 pm UTC
  • agenda
    • nt and prot test data sets (arlin)
    • protege demo (brandon)

Related Work

  • we are working on a direct generation of an ontology from the Concept Glossary. We are documenting the progress at this page [10]. Note that the page is not up-to-date at this moment (hopefully it will be by the end of the day or tomorrow [3/18/2008]). The goal is to eventually show that CDAO can map over all these concepts.