language en

COMODI: An ontology to characterise differences in versions of computational models in biology

Release 2016-03-12

This version:
http://purl.uni-rostock.de/comodi/2016-03-12
Latest version:
http://purl.uni-rostock.de/comodi/
Previous version:
http://purl.uni-rostock.de/comodi/2016-03-11
Authors:
Martin Scharm, University of Rostock
Dagmar Waltemath, University of Rostock
Contributors:
Vivek Garg, University of Rostock
Srijana Kayastha, University of Rostock
License
This work is licensed under a license: Creative Commons Attribution-ShareAlike 4.0 International License.
Click here to see the provenance of this page.

Abstract

The COMODI ontology is needed because COmputational MOdels DIffer. COMODI defines classes and properties to represent changes in computational models on the semantic level. These terms empower users and software to describe model changes in detail. Software can implement user-specific filter options for model changes and potentially predict how a change in a model influences a simulation study.

The OWL encoding of the COMODI Ontology is available from our web server: comodi.owl.
The namespace for all COMODI terms is http://purl.uni-rostock.de/comodi/comodi#.
Please cite COMODI as:
Scharm, Martin; Waltemath, Dagmar; Wolkenhauer, Olaf (2016): COMODI: COmputational MOdels DIffer - a hands-on-poster. figshare. https://dx.doi.org/10.6084/m9.figshare.2543059.v3
A journal article is in under review.

Please Send Comments

We would like to encourage everyone to contribute to the COMODI ontology. Please submit your feedback, suggestions for new terms, or change requests through our github project.

Table of contents

1. Introduction back to ToC

Open model repositories such as BioModels, JWS Online, OpenSourceBrain, or the Physiome Model Repository provide ready-to-reuse computational models of biological systems in standard exchange formats (SBML, CellML, NeuroML, PharmML). The models within the repositories evolve over time, leading to many alternative and subsequent versions. Taken together, the underlying changes reflect a model's provenance and thus can give valuable insights into the studied biology (see Scharm et al 2015). COMODI was developed to overcome this limitation. The ontology serves as a basis for scientists and software developers to characterise model updates at the level of single changes. These annotations can help to determine the relevance of a change in a given context. They furthermore enable scientists to "replay" a model's history and understand which changes occurred and why.

1.1. Notational Conventions

The key words "must", "must not", "required", "shall", "shall not", "should", "should not", "recommended", "may", and "optional" in this document are to be interpreted as described in [RFC2119].

1.2. Namespace declarations

Table 1: Namespaces used in the document
owl<http://www.w3.org/2002/07/owl#>
rdf<http://www.w3.org/1999/02/22-rdf-syntax-ns#>
xsd<http://www.w3.org/2001/XMLSchema#>
rdfs<http://www.w3.org/2000/01/rdf-schema#>
teddy<http://identifiers.org/teddy/TEDDY_>
comodi<http://purl.uni-rostock.de/comodi/comodi#>

All other namespace prefixes are used in examples only. In particular, IRIs starting with http://example.com represent some application-dependent IRI [IRI].

2. COMODI at a glance back to ToC

COMODI consists of the following classes, object properties, and data properties. They are further defined in Section 4. You will find a description of the terms and concepts of COMODI in Section 3.

Classes

Object Properties

Data Properties

3. COMODI Description back to ToC

3.1. The Concept of COMODI

COMODI consists of five types of classes and five object properties which link these classes. The central class is comodi:Change. It represents a change (reflected in a delta) between two versions of a computational model. The type of the change can be specified more precisely by using one of the subclasses of comodi:Change: comodi:Insertion, comodi:Deletion, comodi:Update, or comodi:Move. The comodi:Change class is connected to four other classes, using the five object properties:

Moreover, each comodi:Change can be triggered by another comodi:Change. For example, the deletion of a node triggers the deletion of all its attribute. To represent this knowledge, the comodi:Change classes can be connected using the comodi:wasTriggeredBy property.

In addition, the Teddy ontologoy [TEDDY] is linked into COMODI at the comodi:ModelBehaviour node. Thus, it is also possible to annotate changes that, for example, affect the stability using teddy:0000148 (stability characteristic).

The following figure visualises all classes in COMODI and their properties:

3.2. Examples

Unless otherwise noted, the following examples are based on differences that we detected in SBML- or CellML-encoded models. These differences are detected using BiVeS [BIVES]. To increase the readability, annotations of the examples are given in Turtle format [TURTLE]. Further examplesare provided on a Poster that we presented at the COMBINE 2015 and the ICSB 2015 [COMODI-POSTER].

The examples require a basic understanding of the encoding formats, please refer to the SBML and CellML homepage.

3.2.1. Insertion of a Species (SBML)

Let's assume a new species had been introduced into an SBML model. As a consequence, the current version of the document contains an additional node in the listOfSpecies substree, e.g.:

<species name="Glucose" initialConc="0.6" />
BiVeS detects this difference and generates a delta that looks like:
<insert>
	<node id="13" newTag="species" [...] / >
	<attribute id="14" triggeredBy="1" name="initialConc" newValue="0.6" [...] />
	[...]
</insert>
Even though you would probably think of the insertion of a species as just a single operation, BiVeS recognises several changes: an insertion of a species plus the insertions of the species' properties and attributes. Thus, the delta contains multiple changes and every change should be annotated. Using the COMODI onology, we can speficy the nature of all changes in detail:
#13 a comodi:Insertion.
#14 a comodi:Insertion.
Here we assume that this insertion expands the model:
#13 a comodi:Insertion;
    comodi:hasIntention comodi:Expansion.
#14 a comodi:Insertion;
    comodi:hasIntention comodi:Expansion.
In addition, change #13 was applied to an XML node and this change affects the reaction network. In contrast, change #14 was applied to an XML attribute and it affects the model setup, specifically the setup of this species. As we have this knowledge, we should encode it semantically:
#13 a comodi:Insertion;
    comodi:affects comodi:ReactionNetworkDefinition;
    comodi:appliesTo comodi:XmlNode;
    comodi:hasIntention comodi:Expansion.
#14 a comodi:Insertion;
    comodi:hasIntention comodi:Expansion;
    comodi:affects comodi:SpeciesSetup;
    comodi:appliesTo comodi:XmlAttribute.
Finally, change #14 (the setup of the species' initial concentration) was triggered by change #13 (the insertion of the species). After including this information, the final annotation looks like:
#13 a comodi:Insertion;
    comodi:affects comodi:ReactionNetworkDefinition;
    comodi:appliesTo comodi:XmlNode;
    comodi:hasIntention comodi:Expansion.
#14 a comodi:Insertion;
    comodi:hasIntention comodi:Expansion;
    comodi:affects comodi:SpeciesSetup;
    comodi:appliesTo comodi:XmlAttribute;
    comodi:wasTriggeredBy #13.

3.2.2. Correction of a Typo (SBML)

Let's assume you resolved a typo in the name of an SBML species. At first, the species definition in the SBML document did look like:

<species name="Gulcose" initialConc="0.6" />
You recognised the mistake (typo in the name of the species) and corrected the species to produce the following species definition in the XML tree:
<species name="Glucose" initialConc="0.6" />
Using BiVeS, you obtain the following delta:
<update>
	<attribute id="23" newValue="Glucose" name="name" oldValue="Gulcose" />
	[...]
</update>
That means, BiVeS correctly recognises the update of the name attribute.
This change should now be annotated with COMODI terms. We know that the update was a correction, because there had been a typo. The change is an update and is applied to an entity name. Thus, the annotation may look like:
#23 a comodi:Update;
    comodi:hasIntention comodi:Correction.
    comodi:appliesTo comodi:EntityName;
    comodi:hasReason comodi:Typo.

3.2.3. Inline-annotation of SED-ML files

The COMODI ontology can also be used to annotate SED-ML files. SED-ML is a language to encode simulation descriptions in a standardised format [SED-ML]. Software tools use SED-ML to encode changes to the model's setup and, thus, updates of the environment. For instance, a change of a parameter value in an SBML file can be encoded in SED-ML as:

[...]
<model id="model1" name="some name" language="SBML" source="model1">
	<listOfChanges>
		<changeAttribute id="change1" target="/sbml:sbml/sbml:model/sbml:listOfParameters/sbml:parameter[@id='V_m']/@value" newValue="10.27"/>
	</listOfChanges>
</model>
[...]
This snippet changes the value of the parameter V_m to 10.27. The creator of this file might wanted to test a hypothesis, so (s)he had the intention of a trial. This change obviously affects the parameter setup. Using COMODI, the above section in the SED-ML file may be annotated to explain what the simulation description is going to do to the original model. This time, we will add an <annotation> node directly into the SED-ML document:
[...]
<model id="model1" name="some name" language="SBML" source="model1">
  <listOfChanges>
    <changeAttribute id="change1" target="/sbml:sbml/sbml:model/sbml:listOfParameters/sbml:parameter[@id='V_m']/@value" newValue="10.27">
      <annotation>
        <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
                 xmlns:comodi="http://purl.uni-rostock.de/comodi/comodi#">
                 
          <rdf:Description rdf:about ="#change1">
            <rdf:type rdf:resource="http://purl.uni-rostock.de/comodi/comodi#Update"/>
            <comodi:hasIntention rdf:resource="http://purl.uni-rostock.de/comodi/comodi#Trial"/>
            <comodi:affects rdf:resource="http://purl.uni-rostock.de/comodi/comodi#ParameterSetup"/>
          </rdf:Description>
          
        </rdf:RDF>
      </annotation>
    <changeAttribute>
  </listOfChanges>
</model>
[...]

4. Cross reference for COMODI classes, properties and dataproperties

This section provides details for each class and property defined by COMODI.

Classes

annotation encodingc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#AnnotationEncoding

An annotation scheme encodes the structure of semantic annotations attached to the model or to the model entities.

has super-classes
model encoding c
has sub-classes
vcard encoding c

attributionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Attribution

Attribution is textual description to thank and appreciated e.g. certain persons or institutions.

has super-classes
textual description c

changec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Change

A Change characterises how the description of a particular entity in a model differs from the description of that entity in another model or model version.

has sub-classes
deletion c, insertion c, move c, update c
is in domain of
affects op, applies to op, has intention op, has reason op, was triggered by op
is in range of
was triggered by op
is disjoint with
intention c, reason c, target c, xml entity c

changed specificationc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ChangedSpecification

Models are changed when the encoding standard is updated. In that case, the comodi:Reason of a change is a comodi:ChangedSpecification.

Example:

The upgrade from SBML Level 2 to SBML Level 3 resulted in many changes in SBML models, which were necessary due to the comodi:ChangedSpecification.

has super-classes
reason c

component definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ComponentDefinition

A ComponentDefinition describes a small functional unit of the system.

has super-classes
mathematical model definition c

contributorc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Contributor

A Contributor is an annotation about a human being, who participated in the development of the model.

has super-classes
person c
has sub-classes
creator c

correctionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Correction

A Correction resolves an error in a model.

has super-classes
intention c

creation datec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#CreationDate

is defined by
http://www.w3.org/2001/XMLSchema#dateTime

The CreationDate refers to the date and time when a model or a model entity was created.

has super-classes
date c

creatorc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Creator

A Creator is an annotation about a human being, who was involved in the initial development of the model or its representaiton.

has super-classes
contributor c

datec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Date

is defined by
http://www.w3.org/2001/XMLSchema#dateTime
has super-classes
model annotation c
has sub-classes
creation date c, modification date c

deletionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Deletion

A Deletion removes a component from the model.

Example:

A comodi:Change may delete a cellml:component from the network.

has super-classes
change c

elaborationc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Elaboration

An Elaboration adds more detail to the model.

Example:

A new version of a model may provide a zoom into the model or certain structures therein, or it may provide more details on particular structures inside the model.

has super-classes
intention c

entity identifierc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#EntityIdentifier

has super-classes
xml attribute c
has sub-classes
model id c

entity namec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#EntityName

has super-classes
xml attribute c
has sub-classes
model name c

event definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#EventDefinition

An EventDefinition describes events that occur in the system.

Example:

Events are usually triggered by "something". They may have a delay and they typically have an effect on the system's dynamics.

has super-classes
mathematical model definition c

expansionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Expansion

An Expansion adds new entities to the model in order to cover a significantly larger network, or to enlarge the domain of the model.

Example:

A model describing the Interphase of the Cell Cycle may be expanded to cover the Cell division.

has super-classes
intention c
has sub-classes
merge c

function definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#FunctionDefinition

A FunctionDefinition describes a model-specific function that can be used in the model's maths.

has super-classes
mathematical model definition c

hierarchy definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#HierarchyDefinition

A HierarchyDefinition describes, for example, how to achieve an encapsulation or how to encode hierarchical relationships.

Example:

A modification of the component hierarchy of a CellML model comodi:affects the comodi:HierarchyDefinition.

has super-classes
network definition c

identifier encodingc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#IdentifierEncoding

An IdentifierEncoding specifies the structure of identifiers. That includes the encoding of links to external resources and links to entities in the model document.

Example:

SBML used different identifier schemes in the past, including identifiers.org (http://identifiers.org/obo.go/GO:0000278) and MIRIAM URNs (urn:miriam:obo.go:GO%3A0000278).

has super-classes
model encoding c
has sub-classes
meta id encoding c

insertionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Insertion

An Insertion adds a new component to the model.

Example:

For the reason of a comodi:Extension, we may insert a new sbml:parameter in the XML code.

has super-classes
change c

intentionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Intention

An Intention specifies the aim of a change, particularly with respect to consequences in the future.

has sub-classes
correction c, elaboration c, expansion c, simplification c, trial c
is in range of
has intention op
is disjoint with
change c, reason c, target c, xml entity c

kinetics definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#KineticsDefinition

A KineticsDefinition describes a kinetic law.

Example:

The sbml:kineticLaw specifies the rate law of a reaction. A change in the kineticLaw comodi:affects the comodi:KineticsDefinition.

has super-classes
mathematical model definition c

knowledge gainc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#KnowledgeGain

A KnowledgeGain is the process of acquiring new knowledge about the model, or the modeled system.

has super-classes
reason c

mathematical model definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#MathematicalModelDefinition

A MathematicalModelDefinition defines structural parts of the model that affect the dynamics of the system.

has super-classes
model definition c
has sub-classes
component definition c, event definition c, function definition c, kinetics definition c, rule definition c, unit definition c

mergec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Merge

A Merge is the result of a combination, blend or unification of different models into a new model.

has super-classes
expansion c

meta id encodingc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#MetaIdEncoding

A MetaIdEncoding specifies the structure of meta-ids, that is global identifiers in the model that can be used to refer to model parts.

has super-classes
identifier encoding c

mismatch with publicationc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#MismatchWithPublication

A MismatchWithPublication reflects that a discrepancy between the model and the corresponding publication was discovered.

has super-classes
reason c

model annotationc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelAnnotation

A ModelAnnotation provides meta-data about the model and its parts.

Popular annotations include RDF blocks, dc:terms and other controlled vocabularies.

has super-classes
target c
has sub-classes
date c, ontology reference c, person c, textual description c

model behaviourc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelBehaviour

is defined by
http://identifiers.org/teddy/TEDDY_0000000
has super-classes
target c

model curationc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelCuration

ModelCuration is the process of analysing the model itself and its correspondence to the publication. (https://www.ebi.ac.uk/biomodels-main/curationtips)

has super-classes
reason c

model definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelDefinition

A ModelDefinition specifies a certain aspect of a model. A model typically contains a positive number of model definitions.

Example:

The sbml:kineticLaw specifies the rate law of a reaction. A change in the kineticLaw comodi:affects the comodi:ModelDefinition.

has super-classes
target c
has sub-classes
mathematical model definition c, network definition c

model encodingc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelEncoding

The ModelEncoding defines how the different parts of the model are to be encoded.

Example:

In SBML or CellML, the comodi:ModelEncoding reflects the structure of the XML layer.

has super-classes
target c
has sub-classes
annotation encoding c, identifier encoding c

model idc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelId

has super-classes
entity identifier c

model namec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelName

has super-classes
entity name c

model setupc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModelSetup

The ModelSetup specifies necessary settings to initialise a model.

Example:

The amount of Glucose in an environment could be specified using a parameter. A change in the amount comodi:affects the comodi:ModelSetup, but does not affect the comodi:ModelDefinition.

has super-classes
target c
has sub-classes
parameter setup c, species setup c, variable setup c

modification datec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ModificationDate

is defined by
http://www.w3.org/2001/XMLSchema#dateTime

A ModificationDate refers to the date and time when a model or a model entity was modified.

has super-classes
date c

movec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Move

A move rearranges parts of the model.

has super-classes
change c
has sub-classes
permutation of entities c

network definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#NetworkDefinition

A NetworkDefinition specifies the biological entities, how they are related to each other, and how they interact.

has super-classes
model definition c
has sub-classes
hierarchy definition c, port definition c, reaction network defintion c, variable connection definition c

obsoletec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#_obsolete

Terms in this subtree are obsolete and shouldn't be used anymore.

ontology referencec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#OntologyReference

An OntologyReference refers to a a term in a third-party resource, using a URI.

Example:

An example of an ontology reference is "http://identifiers.org/obo.go/GO:0000278".

has super-classes
model annotation c

parameter setupc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ParameterSetup

The ParameterSetup describes the value and units of a parameter in a model.

Example:

Parameters can be used to define the current environment of a model, such as the temperature. If the value of a parameter changes it comodi:affects the comodi:ParameterDefinition.

has super-classes
model setup c

participant definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ParticipantDefinition

A ParticipantDefinition describes the participants in the network.

Example:

A comodi:Change of an sbml:Species used in an sbml:reaction targets the comodi:ParticipantDefinition.

A comodi:Change in a comodi:ParticipantDefinition indicates that the role or definition of the biological entity have changed.

has super-classes
reaction network defintion c

permutation of entitiesc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#PermutationOfEntities

A PermutationOfEntities changes the order of model parts sharing the same parent node in the XML document (shuffling siblings).

Example:

The import/export from different software tools may change the order of the sbml:species in the sbml:listOfSpecies. This shuffling is reflected in a comodi:PermutationOfEntities.

has super-classes
move c

personc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Person

A Person is an annotaion about a human being that, for example, contributed to the development of the model in some way.

has super-classes
model annotation c
has sub-classes
contributor c

port definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#PortDefinition

A PortDefinition provides structure to input and output values and enables a convenient graphical representation of models. Ports are the basis for the definition of links in a network of models, representing the flow of information.

has super-classes
network definition c

reaction definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ReactionDefinition

A ReactionDefinition describes a particular reaction taking place in the model.

Example:

A comodi:Change in a comodi:ReactionDefinition indicates that the biological meaning of a reaction has changed.

has super-classes
reaction network defintion c
has sub-classes
reversibility definition c

reaction network defintionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ReactionNetworkDefintion

A ReactioNetworkDefinition describes the structure of the network underlying a model.

has super-classes
network definition c
has sub-classes
participant definition c, reaction definition c

reasonc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Reason

The reason of a change focuses on the cause of a change.

has sub-classes
changed specification c, knowledge gain c, mismatch with publication c, model curation c, typo c
is in range of
has reason op
is disjoint with
change c, intention c, target c, xml entity c

reversibility definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#ReversibilityDefinition

A ReversibilityDefinition describes the nature of the reaction, identifying it as reversible or irreversible.

has super-classes
reaction definition c

rule definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#RuleDefinition

A RuleDefinition specifies the values of the variables in a model, and the dynamic behaviors of those variables.

has super-classes
mathematical model definition c

simplificationc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Simplification

A Simplification decreases the level of complexity by which the model or its entities are described.

has super-classes
intention c

species setupc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#SpeciesSetup

The SpeciesSetup defines a (biological) entity in the model.

Example:

Changes in the value of the initial concentration comodi:affects the corresponding comodi:SpeciesDefinition.

has super-classes
model setup c

targetc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Target

The Target identifies the location of a comodi:Change, and characterises its nature. It thus defines where the comodi:Change takes affect.

Example:

A comodi:Change may affect the comodi:Annotation of a cellml:component.

A comodi:Change may also affect the comodi:UnitDefinition of an sbml:Species.

has sub-classes
model annotation c, model behaviour c, model definition c, model encoding c, model setup c
is in range of
affects op
is disjoint with
change c, intention c, reason c, xml entity c

textual descriptionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#TextualDescription

The TextualDescription of a model is a human-readable explanation of the model. It can be surrounded by layout information, for example to present the textual description in a web browser.

Example:

One example for a textual description is the SBML <notes> element.

has super-classes
model annotation c
has sub-classes
attribution c

trialc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Trial

A Trial is a change resulting from playing around with the model.

Example:

Models may be examined to better understand their dynamic behaviour, or to test hypotheses. In these cases, the changes are the result of a comodi:Trial.

has super-classes
intention c

typoc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Typo

A Typo is a misspelling, e.g. in the description or name of a model or a model entity.

has super-classes
reason c

unit definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#UnitDefinition

A UnitDefinition specifies a unit.

has super-classes
mathematical model definition c

updatec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#Update

An Update replaces a part of the model with another part.

Example:

A comodi:Change may require the exchange of a species definition with an updated one.

has super-classes
change c

variable connection definitionc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#VariableConnectionDefinition

A VariableConnectionDefinition describes how variables in a model are connected with each other.

Example:

A CellML model defines the participants of a biological system as variables. These variables can be part of different cellml:components. The comodi:VariableConnectionDefinition then defines how the variables are connected across the cellml:components. A change in these connections thus comodi:affects the comodi:VariableConnectionDefinition.

has super-classes
network definition c

variable setupc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#VariableSetup

The VariableSetup defines the values of variables in a model component.

has super-classes
model setup c

vcard encodingc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#VcardEncoding

The VcardEncoding specifies how to refer to other people/institutions in a machine readable format.

has super-classes
annotation encoding c

xml attributec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#XmlAttribute

An XmlAttribute contains data related to a specific XML element. (http://www.w3schools.com/xml/xml_attributes.asp)

has super-classes
xml entity c
has sub-classes
entity identifier c, entity name c

xml entityc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#XmlEntity

An XML entity is part of the instance of an XML-encoded model.

has sub-classes
xml attribute c, xml node c, xml text c
is in domain of
had value dp, received value dp
is in range of
applies to op
is disjoint with
change c, intention c, reason c, target c

xml nodec back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#XmlNode

An XmlNode represents a node in the XML tree.

has super-classes
xml entity c

xml textc back to ToC or Class ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#XmlText

An XmlText represents the textual content of an element or attribute.

has super-classes
xml entity c

Object Properties

affectsop back to ToC or Object Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#affects

has domain
change c
has range
target c

applies toop back to ToC or Object Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#appliesTo

has domain
change c
has range
xml entity c

has intentionop back to ToC or Object Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#hasIntention

has domain
change c
has range
intention c

has reasonop back to ToC or Object Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#hasReason

has domain
change c
has range
reason c

was triggered byop back to ToC or Object Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#wasTriggeredBy

has characteristics: transitive

has domain
change c
has range
change c

Data Properties

had valuedp back to ToC or Data Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#hadValue

has domain
xml entity c

received valuedp back to ToC or Data Property ToC

IRI: http://purl.uni-rostock.de/comodi/comodi#receivedValue

has domain
xml entity c

5. References back to ToC

[BIVES]
Martin Scharm, Olaf Wolkenhauer, and Dagmar Waltemath: An algorithm to detect and communicate the differences in computational models describing biological systems. Bioinformatics (2016) 32 (4): 563-570. doi: 10.1093/bioinformatics/btv484
[COMODI-POSTER]
Scharm, Martin; Waltemath, Dagmar; Wolkenhauer, Olaf (2015): COMODI: COmputational MOdels DIffer - a hands-on-poster. figshare. doi: 10.6084/m9.figshare.2543059.v3 (initial version: 10.6084/m9.figshare.2543059.v1)
[IRI]
M. Duerst, M. Suignard. Internationalized Resource Identifiers (IRI). Internet RFC 3987. URL: http://www.ietf.org/rfc/rfc3987.txt
[RFC2119]
S. Bradner. Key words for use in RFCs to Indicate Requirement Levels. March 1997. Internet RFC 2119. URL: http://www.ietf.org/rfc/rfc2119.txt
[SED-ML]
Waltemath D., Adams R., Bergmann F.T., Hucka M., Kolpakov F., Miller A.K., Moraru I.I., Nickerson D., Snoep J.L., Novere, N.: Reproducible computational biology experiments with SED-ML - The Simulation Experiment Description Markup Language. BMC Systems Biology 2011, 5:198. doi: 10.1186/1752-0509-5-198/dd>
[TEDDY]
Courtot M., Juty N., Knüpfer C., Waltemath D., Zhukova A., Dräger A., Dumontier M., Finney A., Golebiewski M., Hastings J., Hoops S., Keating S., Kell D.B., Kerrien S., Lawson J., Lister A., Lu J., Machne R., Mendes P., Pocock M., Rodriguez N., Villeger A., Wilkinson D.J., Wimalaratne S., Laibe C., Hucka M., Novere N. (2011) Controlled vocabularies and semantics in systems biology. Molecular Systems Biology, 7:543. doi: 10.1038/msb.2011.77
[TURTLE]
Eric Prud'hommeaux, Gavin Carothers; eds. Turtle: Terse RDF Triple Language. W3C Working Draft. URL: http://www.w3.org/TR/2011/WD-turtle-20110809/

6. Acknowledgements back to ToC

The authors would like to thank the COMBINE community and the participants of the 2015 ICSB for valuable discussions and their expertise that significantly improved the outcome of this work.

Further to this, the authors would like to thank Silvio Peroni for developing LODE, a Live OWL Documentation Environment, which is used for representing the Cross Referencing Section of this document and Daniel Garijo for developing the Java tool widoco, which was used to generate this website, and the Protege team for providing Protege, the software tool we used to build the ontology.

This work was funded by the German Federal Ministry of Education and Research (BMBF) as part of the e:Bio program SEMS, FKZ 031 6194.