What is BrainML?
|
BrainML is a developing initiative to provide a standard
XML metaformat for exchanging neuroscience data. It focuses
on layered definitions built over a common core in order to support
community-driven extension. BrainML when complete will serve as:
- an open and non-formal functional ontology for neuroscience
- a data description language for interoperability among
neuroscience resources
- an interface for exchange of data, metadata, queries, tools,
and models
- a substrate for describing the contents of journal articles
- a link to other XML-based description languages for scientific
interchange
BrainML is being designed around several key modules and technologies:
- a design and semantics determined by the standards and
practices of neuroscience
- our Quintessence type hierarchies: for data, entities, references,
models, and methods
- BrainMetaL, a metalanguage embodying abstract semantics for
scientific data
- attribute-specific datatype slots, attributes, and hierarchies, to give
is-a and has-a context and selectable specificity
- XML, for universality and available tools
- XML namespaces, to enable interconvertible dialects
- XML Schema, to provide layered extensibility
|
| Return To Top |
What problems is BrainML intended to solve?
|
| BrainML is intended to solve the problem of data linking and
exchange between neuroscience data repositories. Common
information elements are expressed using a common format
to aid integration without compromising expression of distinct
information elements. BrainML supports an extensible ontology
flexible enough to incorporate existing ontologies yet specific
enough to be useful. |
| Return To Top |
How do I use BrainML?
|
| From an end-user perspective, BrainML is a format for XML
documents containing neuroscience data. Software that reads and
writes this format will be available. From a neuroinformatics
developer perspective, BrainML is a framework for defining
XML data interchange formats that simplify the task of integrating
neuroscience data from multiple resources. Please see 'Purpose of BrainML' for
more information. |
| Return To Top |
Who is developing BrainML?
|
| BrainML is being developed by the Laboratory of
Neuroinformatics at Weill Medical College of Cornell
Unversity. A list of contributors can be found here. |
| Return To Top |
What projects are using BrainML right now?
|
| BrainML is being used for the upcoming version of neurodatabase.org (expected
spring 2005) and the Java-based query and upload tools associated
with it. Both the tools and the server will be released as open
source software by the Laboratory
of Neuroinformatics. |
| Return To Top |
What is BrainMetaL?
|
| BrainMetaL is a meta-language for BrainML. BrainMetaL provides
XML Schema type definitions useful as building blocks for BrainML
model developers -- specifically: data containers, units of measure,
controlled vocabulary, a simple top-level ontology (data, entity,
method, model, reference elements), and bibliographic citations.
None of these are specific to neuroscience. In addition a set of
neuroscience-specific building-block components is provided as a
"base" package with BrainML. See 'Components' for a description of the BrainMetaL
and BrainML base components, or see a graphical summary.
|
| Return To Top |
Can I use my own data formats with BrainML?
|
| BrainML defines a set of standard data containers as outlined
above. However you are not limited to these if your data does not
fit well into such a schema. Instead, you can define your own
formats in BrainML and publish them for others to use. Also, there
is nothing in BrainML that prevents the use of existing raw data
formats such as binary image formats or structured data standards
like HDF5 or NetCDF. These are encoded as Base64 and wrapped in
data container tags with metadata for transmission. Alternatively,
the data may be included in separate files which are referenced
from the BrainML.
|
| Return To Top |
Is BrainML going to be submitted as a standard
to the W3C? To Oasis? To the National Library of Medicine?
|
| There are no current plans to submit BrainML as a standard to
the W3C, Oasis, the National Library of Medicine,
or any other organization. BrainML is a new and experimental
initiative, and it or any similar integration architecture for
neuroinformatics would need to prove its utility in the field before
such submission would be considered. |
| Return To Top |
What is the relationship between BrainML and
the Unified Medical Language System (UMLS)?
|
| There is no relationship currently between BrainML and the UMLS. BrainML
does not focus on characterizing semantic relations between terms,
but on merely organizing terms so that they may be used in
structured data documents. BrainML does support the explicit matching
of terms to equivalent terms in the UMLS or any other external
ontology. |
| Return To Top |
Does BrainML support RELAX NG?
|
| Currently, BrainML and this Model Server only support XML Schema 1.0
Specifications. RELAX NG is
a less complex, more usable alternative to XML Schema providing
comparable expressive power. We plan to provide RELAX NG
versions of BrainML schemas once a problem with multiple schema
inclusion is resolved.
|
| Return To Top |
What is a BrainML model?
|
| A BrainML model is a description of a neuroscience data model in
XML Schema. This description contains information pertaining to the
structure/ organization of submitted experiments . XML instance
documents conforming to the schema represent data conforming to
the model. This allows the data to be validated and manipulated
easily by software built on standard XML processing libaries. |
| Return To Top |
What does a BrainML model consist of?
|
| A BrainML model is an XML Schema that conforms to certain
conventions and may make use of building block schema components
provided by the BrainMetaL/BrainML base packages and/or other
models. BrainML provides components with which users can organize
experiments. |
| Return To Top |
What is a BrainML model server?
|
| A model server is a repository for BrainML models. Visitors may
browse available models, or submit models of their own. This
supports public use and reuse of BrainML models and model
components. Furthermore, all model schema and vocabulary files are
made available in raw form from fixed URLs so that software
applications may reference them directly.
|
| Return To Top |
What is a BrainML instance server?
|
| A BrainML instance server is a web-accessible repository of
neuroscience data, capable of sending and receiving BrainML-
formatted data. An instance server allows an interested scientist to find
the actual data that another researcher has uploaded to the server. This
data can be used for comparison, algorithm-processing, or visualization. |
| Return To Top |
Can I create my own model server or instance
server?
|
| The eventual intention is to release the source code for BrainML
model and instance servers, so that organizations may run their own
servers. Note that an instance server will typically deal with data
conforming to a single data model, whereas a model server holds many
data model description schemas, therefore it is expected that it
will be more common to set up instance servers, and utilize a shared
model server instance, often a public one. BrainML.org
itself is a model server, and intended to serve as a general purpose
public model repository for neuroscience. |
| Return To Top |
What technologies are used to run a model
server or instance server?
|
| The model server and instance server implementations are based
on Java, JSP, and Servlets technologies, and a relational
database back end. Open source support libraries are used. |
| Return To Top |
Who can contribute models to
BrainML.org?
|
| Model submission is currently open to all neuroscientists with
an institutional affiliation. In order to facilitate model naming
and tracking, submitters must first sign up for an account, using
the "Sign up" button appearing in the "Schema Documents" section of
the web site. |
| Return To Top |
Is this an open source project?
|
| The Laboratory of
Neuroinformatics plans to make an open source
release of a software toolkit for working with BrainML data and
models, however development of the main code base will still be done
at the Laboratory. We encourage the development of third party
tools and applications, and that is part of what the toolkit will be
intended to help with. |
| Return To Top |
How can I report bugs/errors?
|
| If you encounter technical problems while using BrainML.org or
if you have any suggestions for ways to improve these projects, or
any questions not answered here, please email the Laboratory of Neuroinformatics
at Weill Medical College of Cornell
University at the following email address: neurodatabase AT med.cornell.edu. |
| Return To Top |
How can I delete a model or a version that I created?
|
| Models or model versions cannot be deleted. If you wish to
add additional files to an existing version, select the version, log in as a
Registered User, and select the link for updating the version. If
you have a file that you want to delete from a version, we recommend
creating a new version that does not include that file.
|
| Return To Top |
What are the quintessence classes?
|
| BrainMetaL contains a top-level ontology of metadata with
five categories:data, entity, method, model, and reference elements. The Data
Element abstracts datasets and wrappers around data. The Entity Element
abstracts anatomy. The Method Element defines protocol descriptors. The
Model Element defines model descriptors. The Reference Element
contains structures for bibliographic citations.
|
| Return To Top |