Authors documentation: Helen Parkinson and Morris Swertz
Modellers: Morris A. Swertz (University of Groningen), Tomasz
Adamusiak (European Bioinformatics Institute), Juha Muilu (Biomedicum
Helsinki) and Helen Parkinson (European Bioinformatics Institute).
Document version 0.1
This document describes an the MAGE-TAB model, designed to contain the contents of files parsed in MAGE-TAB v1.0 and v1.1 format. The motivation is primarily to integrate MAGE-TAB format data sets from existing resources into one simple system. The aim is to produce an open source MAGE-TAB database and import/export tools to read and write MAGE-TAB formatted data. MOLGENIS is being used to autogenerate such database by describing the data model in its markup language and has useful features including rapid model development, user interfaces, and R and java APIs. Import/export tools can then be easily created against these APIs (in progress).
This data model support MAGE-TAB 1.1 IDF, SDRF, ADF and data file formats and is an extension of previous MAGE-TAB models (Maier et al 2006.) The model documentation includes a description of each data types, explanations of design decisions and examples of MAGE-TAB documents in the ArrayExpress repository. The MAGE-TAB model has been mapped to FuGE and equivalent FuGE classes are provided in the object documentation. This documentation was autogenerated from MOLGENIS model files. Find the complete sources at: magetab_idf.xml , magetab_adf.xml , magetab_sdrf.xml and magetab_data.xml .
| idf package: | adf package: | sdrf package: | data package: |
This package models MAGE-TAB Investigation Description Format (IDF) - providing general information about the investigation, including its name, a brief description, the investigator's contact details, bibliographic references, and free text descriptions of the protocols used in the investigation.
show fullscreen
For modeling and implementation purposes, all objects in MAGE-TAB
model that have an id and name inherit from identifiable. Other
classes in the model can be specified as sub-classes, inheriting
from Identifiable. Identifiable gives classes a unique identifier
within the scope and a name that need not be unique. Also it is
possible to add comments to any objects; in the MAGE-TAB format this
is implied if a Comment[name] is added after/next to the elements
that needs to be commented
Simplification of FuGE::Identifiable/FuGE::Describable, generalizing
all describables to NVT.
| Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| id | int | y | identifier local to the model instance. Can be used as path in LSID in the form 'entity type':'id', e.g. Investigation:1. | |||
| Name | string | The potentially ambiguous common identifier, such as a human-readable name for the instance. | ||||
| Comments | mref | y | Allows specification of additional named properties related to the instance being described that are not directly specified elsewhere. This may include links to ontology entries such as external identifiers | References(NameValueType) via many-to-many linktable. | ||
| Primary key(id) | ||||||
NameValueType is used generically to represent comments from all parts of the MAGE-TAB specification in this model. All objects that are instantiated can have NVT associated, so abstract classes are excluded. See MAGE-TAB specification for detailed examples.
| NameValueType | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| id | int | y | identifier local to the model instance | |||
| Name | string | |||||
| Type | xref | References(OntologyTerm) | ||||
| Value | text | |||||
| Primary key(id) | ||||||
The source ontology or controlled vocabulary list that ontology
terms have been obtained from.
Extension to FuGE::OntologySource adding an optional version.
| OntologySource
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ontologyURI | hyperlink | y | A URI that references the location of the ontology. | |||
| version | string | y | ||||
| Primary key(id) | ||||||
A single entry from an ontology or a controlled vocabulary. If it is
a simple controlled vocabulary, there may be no formal accession for
the term. In these cases the local name should be repeated in both
term and termAccession. If the term has a value, the
OntologyIndividual will have a single DataProperty whose value was
the value for the property. For instance, for an OntologyIndividual
based on the MO ontology the attributes might be: The term would be
what is usually called the local name in the Ontology, for instance
'Age'; The termAccession could be
'http://mged.sourceforge.net/ontologies/MGEDOntology.owl#Age' or a
an arbitrary accession if one exists; The identifier is a unique
identifier for individuals in the scope of the FuGE instance; The
inherited name attribute should not be used; The ontologyURI of
OntologySource could be
'http://mged.sourceforge.net/ontologies/MGEDOntology.owl".
The OntologyTerm subclasses are instances of Ontology
classes and properties, not the actual terms themselves.
An OntologyIndividual, if based on an existing Ontology,
can be considered a statement that can be validated
against the referenced ontology. The subclasses and
their associations are based on the Ontology Definition
Model, ad/2005-04-13, submitted to the OMG as a response
to RFP ad/2003-03-40, Copyright © 2005 DSTC Pty Ltd.
Copyright © 2005 IBM Copyright © 2005 Sandpiper
Software, Inc under the standard OMG license terms.
Copied from FuGE::OntologyTerm.
| OntologyTerm
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| term | string | y | The ontology term itself, also known as the local name in some ontologies. | |||
| termAccession | string | y | The accession number assigned to the ontology term in the source ontology. If there is no explicit accession assigned, then the term (localname) must be repeated (i.e. the term is the unique accession). | |||
| ontologySource | xref | y | null:The source ontology or controlled vocabulary list that ontology terms have been obtained from. | References(OntologySource) | ||
| Primary key(id) | ||||||
Investigation is a high level object that represents information
about a biological investigation. Ontology Terms are used to
describe design type, quality control, replicate design. A title and
description provide free text descriptions of the Investigation.
Note that Investigation can be using one or more technologies such
as Genotyping and Gene Expression. Version is an additional
attribute of the 1.1 MAGE-TAB version and is included to represent
the format version NOT the version of the Investigation.
Investigation and Experiment are considered synonyms in this model,
both are used interchangeably in the MAGE-TAB specification. A URI
has been included in the model to refer to SDRF and ADF files that
do exist locally. Example E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt
.
The FuGE equivalent to Investigation is FuGE::Investigation.
| Investigation
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ExperimentalDesigns | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Date | Date of Experiment | date | y | Date of Experiment | ||
| PublicRelease | Public Release Date | date | y | Public Release Date | ||
| Description | Experiment Description | text | y | Experiment Description | ||
| FormatVersion | string | y | Version of the MAGE-TAB format | |||
| QualityControls | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| ReplicateTypes | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| NormalizationTypes | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Persons | mref | y | References(Person) via many-to-many linktable. | |||
| Publications | mref | y | References(Publication) via many-to-many linktable. | |||
| SRDF File | SDRF File | file | y | SDRF File | ||
| Primary key(id) | ||||||
Factor represents the investigators INTENDED variable within an
Investigation. Example being in cancer studies, whether the
subject has cancer or not is an intended variable, whereas
the age difference between the subjects (although definitely
variable) may be unimportant in the particular study design and shouldn't be reported as Factor.
Typically this correlates with the design type of
investigation. For example a design in which a disease versus normal
is investigated is a disease state design and the corresponding
Factor would be of type disease state. Factors have an association
to FactorValue where the values are instantiated as ontology terms
or measurements. An example of factor can be seen in E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt
.
The FuGE equivalent of Factor is FuGE::Factor
| Factor
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Investigation | xref | References(Investigation) | ||||
| Type | xref | y | References(OntologyTerm) | |||
| Primary key(id) | ||||||
A contact is either a person or an organization. Copied from FuGE::Contact.
| Contact extends Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Address | string | The address of the Contact. | ||||
| Phone | string | The telephone number of the Contact including the suitable area codes. | ||||
| string | The email address of the Contact. | |||||
| Fax | string | The fax number of the Contact. | ||||
| tollFreePhone | string | A toll free phone number for the Contact, including suitable area codes. | ||||
| Primary key(id) | ||||||
Person represents one or more people involved with an Investigation.
This may include authors on a paper, lab personnel or PIs. Person
has last name, firstname, mid initial, address, contact and email. A
Person role is included to represent how a Person is involved with
an investigation. For submission to repository purposes an allowed
value is 'submitter' and the term is present in the MGED Ontology,
an alternative use could represent job title. An Example from
ArrayExpress is E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt.
.
The FUGE equivalent to Person is FuGE::Person.
| Person
implements Contact | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| FirstName | First Name | string | y | First Name | ||
| LastName | Last Name | string | y | Last Name | ||
| MidInitials | Mid Initials | string | y | Mid Initials | ||
| Affiliation | text | y | ||||
| Roles | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Primary key(id) | ||||||
Publication is part of the Investigation package and is used to represent information about one or more publications related to an Investigation. The publication need not only be primary publication for an Investigation but may also represent other related information- though this use is less common. Publications have attributes of publications Authors and also DOI and Pubmed identifiers (when these are available). These are represented as OntologyTerms as in the MAGE-TAB model all 'xrefs' (cross references) for ontologies and accession numbers are handled generically. An example of a publication is available in an IDF file from ArrayExpress is experiment E-MTAB-506 ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt.
The FuGE equivalent to Publication is FuGE::Bibliographic Reference.
| Publication
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| PubmedID | Pubmed ID | xref | y | Pubmed ID | References(OntologyTerm) | |
| DOI | Publication DOI | string | y | Publication DOI | ||
| authorList | text | y | The names of the authors of the publication | |||
| Title | Publication Title | string | y | The title of the Publication | ||
| Status | Publication Status | xref | y | The status of the Publication | References(OntologyTerm) | |
| Primary key(id) | ||||||
Protocol is a high level object that represents the details of
protocols used during the investigation. The uses of Protocols to
process BioMaterials and Data are referenced by ProtocolApplication
(in the SDRF part of the format). Protocol has an association to
OntologyTerm to represent the type of protocol. Protocols are
associated with Hardware, Software and Parameters used in the
Protocol. An example from ArrayExpress is E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt.
The FUGE equivalent to Protocol is FuGE::Protocol.
| Protocol
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Type | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Hardware | mref | y | References(Hardware) via many-to-many linktable. | |||
| Software | mref | y | References(Software) via many-to-many linktable. | |||
| Contact | string | y | ||||
| Description | text | y | ||||
| Primary key(id) | ||||||
ProtocolParameter represents a variable
of a Protocol that is instantiated as a Parameter Value. An Example
of ProtocolParameter is e.g. 'growth temperature' in a protocol
where yeast are grown at permissive and non permissive temperatures.
ProtocolParameter is specialization of FuGE::Parameter
| ProtocolParameter
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Protocol | xref | y | References(Protocol) | |||
| Primary key(id) | ||||||
Hardware is used to represent specific items of
laboratory or other equipment used in protocols. For example a
specific type of PCR machine. Comment[] in the MAGE-TAB format can
be converted to NVT in the MAGE-TAB model to describe e.g. Make,
model, serial number if these are required.
The FuGE equivalent to
Hardware is FuGE::Equipment.
| Hardware
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Software is used to represent programs used by
Protocols for example RMA is a program used in microarray Data
analysis
. Software has no additional attributes but Comment[] in the
MAGE-TAB format can be converted to NVT in the MAGE-TAB model and
associated with Software.
The FuGE equivalent to Hardware is
FuGE::Software.
| Software
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
This package models Array Design Format (ADF) - defining each array type used. An ADF file describes the design of an array, e.g., what sequence is located at each position on an array and what the annotation of this sequence is. If the investigation uses arrays for which a description has been previously provided, such as a standard commercial array, cross-references to entries in a public repository (e.g., an ArrayExpress accession number) can be included instead of explicit array descriptions.
show fullscreen
Artificial class for modeling purposes. Acts as the generalization
of any property of an ArrayDesign such as Reporter and Feature. The
Nearest FuGE equivalent is DimensionElement but an Array specific
extension was needed.
There is no direct equivalent of DesignElement in FuGE.
| DesignElement
implements DimensionElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ArrayDesign | xref | ArrayDesign this element is a part of | References(ArrayDesign) | |||
| Primary key(id) | ||||||
The ArrayDesign is used to represent the information about e.g. a
microarray. The attributes are required to fulfill the MIAME
conditions regarding surface type, polymer type etc and an
association to ProtocolApplication is used to describe the details
of Array production typically for self made rather than commercial
arrays. The ArrayDesign is a high level object. ArrayDesign has
associations to Features, Reporters and CompositeElements
(previously called CompositeSequences in MAGE-OM 1.0) which describe
layout of the ArrayDesign. ArrayDesign is only required for Array
based experiments which use a traditional type microarray where
layout and relationships of probes are important to detect layout
effects.
There is no direct equivalent of ArrayDesign in FuGE, Protocol
and/or Equipment is likely the nearest map as an Array specific
extension was needed.
| ArrayDesign extends Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Version | string | |||||
| Provider | xref | References(Contact) | ||||
| printingProtocol | xref | References(Protocol) | ||||
| SurfaceType | xref | References(OntologyTerm) | ||||
| SequencePolymerType | xref | References(OntologyTerm) | ||||
| TechnologyType | xref | References(OntologyTerm) | ||||
| SubstrateType | xref | References(OntologyTerm) | ||||
| Comment | text | |||||
| Primary key(id) | ||||||
Feature represents the location of some material deposited at a specific place on an array. Feature has coordinates - BlockColumn, BlockRow, Column, Row. This concept is described in ArrayExpress documentation http://www.ebi.ac.uk/miamexpress/help /adf/ and an example of a correctly formatted ADF can be seen in the MAGE-TAB specification v1.0 document. See MAGE-TAB specification for detailed examples.
| Feature extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| BlockCol | int | |||||
| BlockRow | int | |||||
| Col | int | |||||
| Row | int | |||||
| Reporter | xref | References(Reporter) | ||||
| Primary key(id) | ||||||
Enables the grouping of reporters, e.g. to be 'control' or 'experimental'.
| ReporterGroup extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Reporter represents biological information about what the Array Design is designed to detect. Multiple Features can be associated with a Reporter, for example if the Array is spotted in duplicate. Reporters have database entries which are represented generically as OntologyTerms in the MAGE-TAB 1.1. See MAGE-TAB specification for detailed examples.
| Reporter extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Sequence | text | |||||
| ControlType | mref | References(OntologyTerm) via many-to-many linktable. | ||||
| DatabaseEntry | Reporter Database Entry | mref | Reporter Database Entry | References(OntologyTerm) via many-to-many linktable. | ||
| Group_ | Reporter Group | mref | Reporter Group | References(ReporterGroup) via many-to-many linktable. | ||
| Primary key(id) | ||||||
CompositeElement is used to facilate cases where many to many mappings between Feature and Reporter are required. For example a single gene may have many alternative splice forms using different exons and the many-to-many relationships can be used to encode this. For simple 1:1 Feature-Reporter cases CompositeElement is not needed. See the MAGE-TAB specification for detailed examples.
| CompositeElement extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Reporters | mref | References(Reporter) via many-to-many linktable. | ||||
| DatabaseEntry | Composite Element Database Entry | mref | Composite Element Database Entry | References(OntologyTerm) via many-to-many linktable. | ||
| Primary key(id) | ||||||
This package models MAGE-TAB Sample and Data Relationship Format
(SDRF) - a tab-delimited file (or files) describing the relationships
between samples, arrays, data, and other objects used or produced in
the investigation, and providing all MIAME information that is not
provided elsewhere. This is often the least trivial part of the
experiment description due to the typically large graph of complex
relationships which are possible between samples and their respective
hybridizations; however, for simple experimental designs,
constructing the SDRF file is straightforward, and even complex loop
designs can be expressed in this format.
To make this graph explicit, all relationships ar modelled as Nodes
and Edges, with the Nodes being tangible elements of the experiment
like Material or Data files, and the Edges to represent the
treatments that produced them. These edges can be annotated with
zero-or-more Protocol Applications. This grouping of Protocol
Applications is expected to make experiment modeling more flexible
than FuGE.
show fullscreen
An Edge is a generic object that is used to describe the treatments
between Materials and Data in an experiment (i.e. the Nodes of the
experiment graph). An Edge can be annotated with
ProtocolApplications using the reference from ProtocolApplication to
Edge. It has no explicit equivalent in the MAGE-TAB format
specification but acts as a container for chain of zero-or-more
ProtocolApplications that can be added, e.g. between Source, Sample,
Assay, etc. See example, E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt
There is no FuGE equivalent to Edge, closest match is
FuGE::ProtocolApplication.
| Edge
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Investigation | xref | References(Investigation) | ||||
| input | mref | References(Node) via many-to-many linktable. | ||||
| output | mref | References(Node) via many-to-many linktable. | ||||
| Primary key(id) | ||||||
ProtocolApplications are used in MAGE-TAB format to reference to protocols used, with optionally use of certain protocol parameter values. For example, a Source may be transformed into a Labeled Extract by the subsequent application of a Extraction and Labeling protocol. ProtocolApplication is associated with and Edge that links input/output, e.g. Source to Labeled Extract. The order of the application of protocols can be set in order to be able to reconstruct the left-to-right order of protocol references in MAGE-TAB format. The FuGE equivalent to ProtocolApplication is FuGE:ProtocolApplication, however input/output is modeled using Edge.
| ProtocolApplication
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Protocol | xref | References(Protocol) | ||||
| Performer | mref | References(Person) via many-to-many linktable. | ||||
| Edge | xref | References(Edge) | ||||
| Order_ | Order | int | Order | |||
| Primary key(id) | ||||||
A ParameterValue is instantiated when a ProtocolApplication applies a Protocol with Parameters (specified in the IDF) is applied to a Node. ParameterValue implements Measurement to provide values and Units for ParameterValues. See example, E-MTAB-506 ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt The FuGE equivalent to ParameterValue is FuGE::ParameterValue
| ParameterValue extends Measurement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| protocolParameter | xref | References(ProtocolParameter) | ||||
| protocolApplication | xref | References(ProtocolApplication) | ||||
| Primary key(id) | ||||||
One element in the experimental graph.
| Node extends DimensionElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Investigation | xref | References(Investigation) | ||||
| Primary key(id) | ||||||
Characteristic represents a specified annotation of a Material. Characteristic is modeled here so that the (Characteristic)[name] can be represented and its association with OntologyTerm provides the row values of each Characteristic.
| Characteristic
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| term | string | |||||
| Primary key(id) | ||||||
Material is an abstract class used as a parent for all biological
materials on the SDRF, defining what needs to be administrated for
all materials. Present for modeling purposes only.
The FuGE equivalent of Material is FuGE::Material, however in FuGE
materialType refers directly to OntologyTerm which was changed for
MAGE-TAB to allow naming of these references to accomodate MAGE-TAB
Characteristic[some name] notation.
| Material extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Characteristics | Characteristics[] | mref | Characteristics[] | References(Characteristic) via many-to-many linktable. | ||
| materialType | Material Type | mref | Material Type | References(OntologyTerm) via many-to-many linktable. | ||
| Description | text | |||||
| Primary key(id) | ||||||
Source represents the primary biological start material for an
experiment. See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt.
.
The FuGE generalization of Source is FuGE:Material.
| Source extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Provider | mref | References(Contact) via many-to-many linktable. | ||||
| Primary key(id) | ||||||
Sample is a Material created each time a protocol is applied during
treatment of biological materials (annotated in the Edges). Samples
can have different attributes than Sources, for example after a
mutagenic protocol is applied genotype may change, or after a growth
protocol mass of a sample may change. See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
.
The FuGE generalization of Sample is FuGE::Material
| Sample extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Extracts is a Material which are created after the application of an
extraction protocol e.g. for production of nucleic acid. If no such
protocol is used then it's not necessary to add Extract information.
See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
.
The FuGE generalization of Extract is FuGE::Material
| Extract extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
LabeledExtract is a Material which has one ore more named
association (DISCUSS) to an ontology term that describes the Label
used in the experiment. For example Cy3 or Cy5 in a microarray
experiment. One or more LabeledExtracts are inputs for an Assay. See
example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
The FuGE generalization of LabeledExtract is FuGE::Material
| LabeledExtract extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Label | mref | References(OntologyTerm) via many-to-many linktable. | ||||
| Primary key(id) | ||||||
Scan represents the results of an Array scan. It is needed when an
Assay is processed multiple times and complex Assay-DataFile
relationships need to be represented for example if an microarray is
scanned multiple times per channel resulting in multiple data files.
The Edge between Assay and Scan allows specification of a
Protocol Application for each scanning event and relations of the
data. There is no FuGE equivalent to Scan.
The closest equivalent is likely FuGE::ProtocolApplication.
| Scan extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| arrayDataFiles | Array Data File | mref | Array Data File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataFile | Derived Array Data File | mref | Derived Array Data File | References(DataFile) via many-to-many linktable. | ||
| arrayDataMatrixFiles | Array Data Matrix File | mref | Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataMatrixFiles | Derived Array Data Matrix File | mref | Derived Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| Primary key(id) | ||||||
| Assay extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ArrayDesign | xref | References(ArrayDesign) | ||||
| arrayDataFiles | Array Data File | mref | Array Data File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataFile | Derived Array Data File | mref | Derived Array Data File | References(DataFile) via many-to-many linktable. | ||
| arrayDataMatrixFiles | Array Data Matrix File | mref | Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataMatrixFiles | Derived Array Data Matrix File | mref | Derived Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| TechnologyType | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
| Normalization extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| derivedArrayDataFile | Derived Array Data File | mref | Derived Array Data File | References(DataFile) via many-to-many linktable. | ||
| Primary key(id) | ||||||
| Measurement
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| value | string | |||||
| minValue | string | |||||
| maxValue | string | |||||
| unit | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
FactorValue is an attribute of Assay which describes the variables
used to produce the Assay result. FactorValue has an association to
Factor (see IDF) and OntologyEntry and Measurement. Measurement is
used if the FactorValue is numeric. See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
.
The FuGE equivalent is FuGE:FactorValue
| FactorValue extends Measurement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| experimentalFactor | xref | References(Factor) | ||||
| measurement | xref | References(Measurement) | ||||
| assay | xref | References(Assay) | ||||
| Primary key(id) | ||||||
show fullscreen
Element of an Data Matrix. The FuGE equivalent is FuGE:Dimension Element.
| DimensionElement
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| node | string | |||||
| Primary key(id) | ||||||
Data is an abstract class used to contain Data nodes used for modeling purposes only. The FuGE equivalent is FuGE::Data
| Data extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| uri | string | |||||
| datatype | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
MAGE-TAB 1.1 has the column ArrayDataFile and DerivedArrayDataFile. In order to make the MAGE-TAB 1.1. model more generic we have generalized these to DataFile and provided named associations to the respective types via Scan and Assay. An association to ArrayDataFile is typically instrumentation level data and self describing e.g. in the microarray domain an Affymetrix cel file. An association to DerivedArrayDataFile is typically derived data e.g. an Affymetrix CHP file.
| DataFile extends Data | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| format | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
Image is a node used to represent Image data, its only association is to NameValueType (as any node). The FuGE equivalent is FuGE:Data.
| Image extends DataFile | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
MAGE-TAB 1.1. has the column ArrayDataMatrix and DerivedArrayDataMatrix. The formats of both types are tab-delimited and the distinction is that an ArrayDataMatrix is raw data and the DerivedArrayDataMatrix is processed data. The DerivedArrayDataMatrix associates a file of a specific format - see the MAGE-TAB specification for details. In order to index the Rows and Columns of DataMatrix we have generated a DimensionElement that allows us to index DimensionRow and DimensionColumn.
| DataMatrix extends Data | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
| DataElement
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| DataMatrix | xref | Reference to the data this entity belongs to. | References(DataMatrix) | |||
| Col | xref | References(DimensionElement) | ||||
| Row | xref | References(DimensionElement) | ||||
| rowQuantitationType | xref | References(OntologyTerm) | ||||
| index_ | index | int | unique position in the matrix | |||
| Primary key(id) | ||||||
| Secondary key(DataMatrix, Col, Row) | ||||||
For modeling and implementation purposes, all objects in MAGE-TAB
model that have an id and name inherit from identifiable. Other
classes in the model can be specified as sub-classes, inheriting
from Identifiable. Identifiable gives classes a unique identifier
within the scope and a name that need not be unique. Also it is
possible to add comments to any objects; in the MAGE-TAB format this
is implied if a Comment[name] is added after/next to the elements
that needs to be commented
Simplification of FuGE::Identifiable/FuGE::Describable, generalizing
all describables to NVT.
| Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| id | int | y | identifier local to the model instance. Can be used as path in LSID in the form 'entity type':'id', e.g. Investigation:1. | |||
| Name | string | The potentially ambiguous common identifier, such as a human-readable name for the instance. | ||||
| Comments | mref | y | Allows specification of additional named properties related to the instance being described that are not directly specified elsewhere. This may include links to ontology entries such as external identifiers | References(NameValueType) via many-to-many linktable. | ||
| Primary key(id) | ||||||
The source ontology or controlled vocabulary list that ontology
terms have been obtained from.
Extension to FuGE::OntologySource adding an optional version.
| OntologySource
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ontologyURI | hyperlink | y | A URI that references the location of the ontology. | |||
| version | string | y | ||||
| Primary key(id) | ||||||
A single entry from an ontology or a controlled vocabulary. If it is
a simple controlled vocabulary, there may be no formal accession for
the term. In these cases the local name should be repeated in both
term and termAccession. If the term has a value, the
OntologyIndividual will have a single DataProperty whose value was
the value for the property. For instance, for an OntologyIndividual
based on the MO ontology the attributes might be: The term would be
what is usually called the local name in the Ontology, for instance
'Age'; The termAccession could be
'http://mged.sourceforge.net/ontologies/MGEDOntology.owl#Age' or a
an arbitrary accession if one exists; The identifier is a unique
identifier for individuals in the scope of the FuGE instance; The
inherited name attribute should not be used; The ontologyURI of
OntologySource could be
'http://mged.sourceforge.net/ontologies/MGEDOntology.owl".
The OntologyTerm subclasses are instances of Ontology
classes and properties, not the actual terms themselves.
An OntologyIndividual, if based on an existing Ontology,
can be considered a statement that can be validated
against the referenced ontology. The subclasses and
their associations are based on the Ontology Definition
Model, ad/2005-04-13, submitted to the OMG as a response
to RFP ad/2003-03-40, Copyright © 2005 DSTC Pty Ltd.
Copyright © 2005 IBM Copyright © 2005 Sandpiper
Software, Inc under the standard OMG license terms.
Copied from FuGE::OntologyTerm.
| OntologyTerm
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| term | string | y | The ontology term itself, also known as the local name in some ontologies. | |||
| termAccession | string | y | The accession number assigned to the ontology term in the source ontology. If there is no explicit accession assigned, then the term (localname) must be repeated (i.e. the term is the unique accession). | |||
| ontologySource | xref | y | null:The source ontology or controlled vocabulary list that ontology terms have been obtained from. | References(OntologySource) | ||
| Primary key(id) | ||||||
NameValueType is used generically to represent comments from all parts of the MAGE-TAB specification in this model. All objects that are instantiated can have NVT associated, so abstract classes are excluded. See MAGE-TAB specification for detailed examples.
| NameValueType | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| id | int | y | identifier local to the model instance | |||
| Name | string | |||||
| Type | xref | References(OntologyTerm) | ||||
| Value | text | |||||
| Primary key(id) | ||||||
Investigation is a high level object that represents information
about a biological investigation. Ontology Terms are used to
describe design type, quality control, replicate design. A title and
description provide free text descriptions of the Investigation.
Note that Investigation can be using one or more technologies such
as Genotyping and Gene Expression. Version is an additional
attribute of the 1.1 MAGE-TAB version and is included to represent
the format version NOT the version of the Investigation.
Investigation and Experiment are considered synonyms in this model,
both are used interchangeably in the MAGE-TAB specification. A URI
has been included in the model to refer to SDRF and ADF files that
do exist locally. Example E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt
.
The FuGE equivalent to Investigation is FuGE::Investigation.
| Investigation
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ExperimentalDesigns | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Date | Date of Experiment | date | y | Date of Experiment | ||
| PublicRelease | Public Release Date | date | y | Public Release Date | ||
| Description | Experiment Description | text | y | Experiment Description | ||
| FormatVersion | string | y | Version of the MAGE-TAB format | |||
| QualityControls | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| ReplicateTypes | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| NormalizationTypes | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Persons | mref | y | References(Person) via many-to-many linktable. | |||
| Publications | mref | y | References(Publication) via many-to-many linktable. | |||
| SRDF File | SDRF File | file | y | SDRF File | ||
| Primary key(id) | ||||||
Factor represents the investigators INTENDED variable within an
Investigation. Example being in cancer studies, whether the
subject has cancer or not is an intended variable, whereas
the age difference between the subjects (although definitely
variable) may be unimportant in the particular study design and shouldn't be reported as Factor.
Typically this correlates with the design type of
investigation. For example a design in which a disease versus normal
is investigated is a disease state design and the corresponding
Factor would be of type disease state. Factors have an association
to FactorValue where the values are instantiated as ontology terms
or measurements. An example of factor can be seen in E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt
.
The FuGE equivalent of Factor is FuGE::Factor
| Factor
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Investigation | xref | References(Investigation) | ||||
| Type | xref | y | References(OntologyTerm) | |||
| Primary key(id) | ||||||
A contact is either a person or an organization. Copied from FuGE::Contact.
| Contact extends Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Address | string | The address of the Contact. | ||||
| Phone | string | The telephone number of the Contact including the suitable area codes. | ||||
| string | The email address of the Contact. | |||||
| Fax | string | The fax number of the Contact. | ||||
| tollFreePhone | string | A toll free phone number for the Contact, including suitable area codes. | ||||
| Primary key(id) | ||||||
Person represents one or more people involved with an Investigation.
This may include authors on a paper, lab personnel or PIs. Person
has last name, firstname, mid initial, address, contact and email. A
Person role is included to represent how a Person is involved with
an investigation. For submission to repository purposes an allowed
value is 'submitter' and the term is present in the MGED Ontology,
an alternative use could represent job title. An Example from
ArrayExpress is E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt.
.
The FUGE equivalent to Person is FuGE::Person.
| Person
implements Contact | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| FirstName | First Name | string | y | First Name | ||
| LastName | Last Name | string | y | Last Name | ||
| MidInitials | Mid Initials | string | y | Mid Initials | ||
| Affiliation | text | y | ||||
| Roles | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Primary key(id) | ||||||
Publication is part of the Investigation package and is used to represent information about one or more publications related to an Investigation. The publication need not only be primary publication for an Investigation but may also represent other related information- though this use is less common. Publications have attributes of publications Authors and also DOI and Pubmed identifiers (when these are available). These are represented as OntologyTerms as in the MAGE-TAB model all 'xrefs' (cross references) for ontologies and accession numbers are handled generically. An example of a publication is available in an IDF file from ArrayExpress is experiment E-MTAB-506 ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt.
The FuGE equivalent to Publication is FuGE::Bibliographic Reference.
| Publication
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| PubmedID | Pubmed ID | xref | y | Pubmed ID | References(OntologyTerm) | |
| DOI | Publication DOI | string | y | Publication DOI | ||
| authorList | text | y | The names of the authors of the publication | |||
| Title | Publication Title | string | y | The title of the Publication | ||
| Status | Publication Status | xref | y | The status of the Publication | References(OntologyTerm) | |
| Primary key(id) | ||||||
Protocol is a high level object that represents the details of
protocols used during the investigation. The uses of Protocols to
process BioMaterials and Data are referenced by ProtocolApplication
(in the SDRF part of the format). Protocol has an association to
OntologyTerm to represent the type of protocol. Protocols are
associated with Hardware, Software and Parameters used in the
Protocol. An example from ArrayExpress is E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt.
The FUGE equivalent to Protocol is FuGE::Protocol.
| Protocol
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Type | mref | y | References(OntologyTerm) via many-to-many linktable. | |||
| Hardware | mref | y | References(Hardware) via many-to-many linktable. | |||
| Software | mref | y | References(Software) via many-to-many linktable. | |||
| Contact | string | y | ||||
| Description | text | y | ||||
| Primary key(id) | ||||||
ProtocolParameter represents a variable
of a Protocol that is instantiated as a Parameter Value. An Example
of ProtocolParameter is e.g. 'growth temperature' in a protocol
where yeast are grown at permissive and non permissive temperatures.
ProtocolParameter is specialization of FuGE::Parameter
| ProtocolParameter
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Protocol | xref | y | References(Protocol) | |||
| Primary key(id) | ||||||
Hardware is used to represent specific items of
laboratory or other equipment used in protocols. For example a
specific type of PCR machine. Comment[] in the MAGE-TAB format can
be converted to NVT in the MAGE-TAB model to describe e.g. Make,
model, serial number if these are required.
The FuGE equivalent to
Hardware is FuGE::Equipment.
| Hardware
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Software is used to represent programs used by
Protocols for example RMA is a program used in microarray Data
analysis
. Software has no additional attributes but Comment[] in the
MAGE-TAB format can be converted to NVT in the MAGE-TAB model and
associated with Software.
The FuGE equivalent to Hardware is
FuGE::Software.
| Software
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Element of an Data Matrix. The FuGE equivalent is FuGE:Dimension Element.
| DimensionElement
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| node | string | |||||
| Primary key(id) | ||||||
The ArrayDesign is used to represent the information about e.g. a
microarray. The attributes are required to fulfill the MIAME
conditions regarding surface type, polymer type etc and an
association to ProtocolApplication is used to describe the details
of Array production typically for self made rather than commercial
arrays. The ArrayDesign is a high level object. ArrayDesign has
associations to Features, Reporters and CompositeElements
(previously called CompositeSequences in MAGE-OM 1.0) which describe
layout of the ArrayDesign. ArrayDesign is only required for Array
based experiments which use a traditional type microarray where
layout and relationships of probes are important to detect layout
effects.
There is no direct equivalent of ArrayDesign in FuGE, Protocol
and/or Equipment is likely the nearest map as an Array specific
extension was needed.
| ArrayDesign extends Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Version | string | |||||
| Provider | xref | References(Contact) | ||||
| printingProtocol | xref | References(Protocol) | ||||
| SurfaceType | xref | References(OntologyTerm) | ||||
| SequencePolymerType | xref | References(OntologyTerm) | ||||
| TechnologyType | xref | References(OntologyTerm) | ||||
| SubstrateType | xref | References(OntologyTerm) | ||||
| Comment | text | |||||
| Primary key(id) | ||||||
Artificial class for modeling purposes. Acts as the generalization
of any property of an ArrayDesign such as Reporter and Feature. The
Nearest FuGE equivalent is DimensionElement but an Array specific
extension was needed.
There is no direct equivalent of DesignElement in FuGE.
| DesignElement
implements DimensionElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ArrayDesign | xref | ArrayDesign this element is a part of | References(ArrayDesign) | |||
| Primary key(id) | ||||||
Enables the grouping of reporters, e.g. to be 'control' or 'experimental'.
| ReporterGroup extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Reporter represents biological information about what the Array Design is designed to detect. Multiple Features can be associated with a Reporter, for example if the Array is spotted in duplicate. Reporters have database entries which are represented generically as OntologyTerms in the MAGE-TAB 1.1. See MAGE-TAB specification for detailed examples.
| Reporter extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Sequence | text | |||||
| ControlType | mref | References(OntologyTerm) via many-to-many linktable. | ||||
| DatabaseEntry | Reporter Database Entry | mref | Reporter Database Entry | References(OntologyTerm) via many-to-many linktable. | ||
| Group_ | Reporter Group | mref | Reporter Group | References(ReporterGroup) via many-to-many linktable. | ||
| Primary key(id) | ||||||
CompositeElement is used to facilate cases where many to many mappings between Feature and Reporter are required. For example a single gene may have many alternative splice forms using different exons and the many-to-many relationships can be used to encode this. For simple 1:1 Feature-Reporter cases CompositeElement is not needed. See the MAGE-TAB specification for detailed examples.
| CompositeElement extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Reporters | mref | References(Reporter) via many-to-many linktable. | ||||
| DatabaseEntry | Composite Element Database Entry | mref | Composite Element Database Entry | References(OntologyTerm) via many-to-many linktable. | ||
| Primary key(id) | ||||||
An Edge is a generic object that is used to describe the treatments
between Materials and Data in an experiment (i.e. the Nodes of the
experiment graph). An Edge can be annotated with
ProtocolApplications using the reference from ProtocolApplication to
Edge. It has no explicit equivalent in the MAGE-TAB format
specification but acts as a container for chain of zero-or-more
ProtocolApplications that can be added, e.g. between Source, Sample,
Assay, etc. See example, E-MTAB-506
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt
There is no FuGE equivalent to Edge, closest match is
FuGE::ProtocolApplication.
| Edge
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Investigation | xref | References(Investigation) | ||||
| input | mref | References(Node) via many-to-many linktable. | ||||
| output | mref | References(Node) via many-to-many linktable. | ||||
| Primary key(id) | ||||||
ProtocolApplications are used in MAGE-TAB format to reference to protocols used, with optionally use of certain protocol parameter values. For example, a Source may be transformed into a Labeled Extract by the subsequent application of a Extraction and Labeling protocol. ProtocolApplication is associated with and Edge that links input/output, e.g. Source to Labeled Extract. The order of the application of protocols can be set in order to be able to reconstruct the left-to-right order of protocol references in MAGE-TAB format. The FuGE equivalent to ProtocolApplication is FuGE:ProtocolApplication, however input/output is modeled using Edge.
| ProtocolApplication
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Protocol | xref | References(Protocol) | ||||
| Performer | mref | References(Person) via many-to-many linktable. | ||||
| Edge | xref | References(Edge) | ||||
| Order_ | Order | int | Order | |||
| Primary key(id) | ||||||
| Measurement
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| value | string | |||||
| minValue | string | |||||
| maxValue | string | |||||
| unit | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
One element in the experimental graph.
| Node extends DimensionElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Investigation | xref | References(Investigation) | ||||
| Primary key(id) | ||||||
Characteristic represents a specified annotation of a Material. Characteristic is modeled here so that the (Characteristic)[name] can be represented and its association with OntologyTerm provides the row values of each Characteristic.
| Characteristic
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| term | string | |||||
| Primary key(id) | ||||||
Material is an abstract class used as a parent for all biological
materials on the SDRF, defining what needs to be administrated for
all materials. Present for modeling purposes only.
The FuGE equivalent of Material is FuGE::Material, however in FuGE
materialType refers directly to OntologyTerm which was changed for
MAGE-TAB to allow naming of these references to accomodate MAGE-TAB
Characteristic[some name] notation.
| Material extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Characteristics | Characteristics[] | mref | Characteristics[] | References(Characteristic) via many-to-many linktable. | ||
| materialType | Material Type | mref | Material Type | References(OntologyTerm) via many-to-many linktable. | ||
| Description | text | |||||
| Primary key(id) | ||||||
Source represents the primary biological start material for an
experiment. See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt.
.
The FuGE generalization of Source is FuGE:Material.
| Source extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Provider | mref | References(Contact) via many-to-many linktable. | ||||
| Primary key(id) | ||||||
Sample is a Material created each time a protocol is applied during
treatment of biological materials (annotated in the Edges). Samples
can have different attributes than Sources, for example after a
mutagenic protocol is applied genotype may change, or after a growth
protocol mass of a sample may change. See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
.
The FuGE generalization of Sample is FuGE::Material
| Sample extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
Extracts is a Material which are created after the application of an
extraction protocol e.g. for production of nucleic acid. If no such
protocol is used then it's not necessary to add Extract information.
See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
.
The FuGE generalization of Extract is FuGE::Material
| Extract extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
LabeledExtract is a Material which has one ore more named
association (DISCUSS) to an ontology term that describes the Label
used in the experiment. For example Cy3 or Cy5 in a microarray
experiment. One or more LabeledExtracts are inputs for an Assay. See
example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
The FuGE generalization of LabeledExtract is FuGE::Material
| LabeledExtract extends Material | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Label | mref | References(OntologyTerm) via many-to-many linktable. | ||||
| Primary key(id) | ||||||
Scan represents the results of an Array scan. It is needed when an
Assay is processed multiple times and complex Assay-DataFile
relationships need to be represented for example if an microarray is
scanned multiple times per channel resulting in multiple data files.
The Edge between Assay and Scan allows specification of a
Protocol Application for each scanning event and relations of the
data. There is no FuGE equivalent to Scan.
The closest equivalent is likely FuGE::ProtocolApplication.
| Scan extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| arrayDataFiles | Array Data File | mref | Array Data File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataFile | Derived Array Data File | mref | Derived Array Data File | References(DataFile) via many-to-many linktable. | ||
| arrayDataMatrixFiles | Array Data Matrix File | mref | Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataMatrixFiles | Derived Array Data Matrix File | mref | Derived Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| Primary key(id) | ||||||
| Assay extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| ArrayDesign | xref | References(ArrayDesign) | ||||
| arrayDataFiles | Array Data File | mref | Array Data File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataFile | Derived Array Data File | mref | Derived Array Data File | References(DataFile) via many-to-many linktable. | ||
| arrayDataMatrixFiles | Array Data Matrix File | mref | Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| derivedArrayDataMatrixFiles | Derived Array Data Matrix File | mref | Derived Array Data Matrix File | References(DataFile) via many-to-many linktable. | ||
| TechnologyType | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
| Normalization extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| derivedArrayDataFile | Derived Array Data File | mref | Derived Array Data File | References(DataFile) via many-to-many linktable. | ||
| Primary key(id) | ||||||
A ParameterValue is instantiated when a ProtocolApplication applies a Protocol with Parameters (specified in the IDF) is applied to a Node. ParameterValue implements Measurement to provide values and Units for ParameterValues. See example, E-MTAB-506 ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.idf.txt The FuGE equivalent to ParameterValue is FuGE::ParameterValue
| ParameterValue extends Measurement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| protocolParameter | xref | References(ProtocolParameter) | ||||
| protocolApplication | xref | References(ProtocolApplication) | ||||
| Primary key(id) | ||||||
FactorValue is an attribute of Assay which describes the variables
used to produce the Assay result. FactorValue has an association to
Factor (see IDF) and OntologyEntry and Measurement. Measurement is
used if the FactorValue is numeric. See example
ftp://ftp.ebi.ac.uk/pub/databases/microarray/data/experiment/TABM/E-TABM-506/E-TABM-506.sdrf.txt
.
The FuGE equivalent is FuGE:FactorValue
| FactorValue extends Measurement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| experimentalFactor | xref | References(Factor) | ||||
| measurement | xref | References(Measurement) | ||||
| assay | xref | References(Assay) | ||||
| Primary key(id) | ||||||
Feature represents the location of some material deposited at a specific place on an array. Feature has coordinates - BlockColumn, BlockRow, Column, Row. This concept is described in ArrayExpress documentation http://www.ebi.ac.uk/miamexpress/help /adf/ and an example of a correctly formatted ADF can be seen in the MAGE-TAB specification v1.0 document. See MAGE-TAB specification for detailed examples.
| Feature extends DesignElement | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| BlockCol | int | |||||
| BlockRow | int | |||||
| Col | int | |||||
| Row | int | |||||
| Reporter | xref | References(Reporter) | ||||
| Primary key(id) | ||||||
Data is an abstract class used to contain Data nodes used for modeling purposes only. The FuGE equivalent is FuGE::Data
| Data extends Node | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| uri | string | |||||
| datatype | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
MAGE-TAB 1.1 has the column ArrayDataFile and DerivedArrayDataFile. In order to make the MAGE-TAB 1.1. model more generic we have generalized these to DataFile and provided named associations to the respective types via Scan and Assay. An association to ArrayDataFile is typically instrumentation level data and self describing e.g. in the microarray domain an Affymetrix cel file. An association to DerivedArrayDataFile is typically derived data e.g. an Affymetrix CHP file.
| DataFile extends Data | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| format | xref | References(OntologyTerm) | ||||
| Primary key(id) | ||||||
Image is a node used to represent Image data, its only association is to NameValueType (as any node). The FuGE equivalent is FuGE:Data.
| Image extends DataFile | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
MAGE-TAB 1.1. has the column ArrayDataMatrix and DerivedArrayDataMatrix. The formats of both types are tab-delimited and the distinction is that an ArrayDataMatrix is raw data and the DerivedArrayDataMatrix is processed data. The DerivedArrayDataMatrix associates a file of a specific format - see the MAGE-TAB specification for details. In order to index the Rows and Columns of DataMatrix we have generated a DimensionElement that allows us to index DimensionRow and DimensionColumn.
| DataMatrix extends Data | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| Primary key(id) | ||||||
| DataElement
implements Identifiable | ||||||
|---|---|---|---|---|---|---|
| attribute | label | type | NULL? | AUTO? | description | constraints |
| DataMatrix | xref | Reference to the data this entity belongs to. | References(DataMatrix) | |||
| Col | xref | References(DimensionElement) | ||||
| Row | xref | References(DimensionElement) | ||||
| rowQuantitationType | xref | References(OntologyTerm) | ||||
| index_ | index | int | unique position in the matrix | |||
| Primary key(id) | ||||||
| Secondary key(DataMatrix, Col, Row) | ||||||