Model Schemas
     - BrainMetaL base
     - BrainML base
     - Protocols
     - Usage
     - FAQ
     - Components
     - Specification
     - Protocols
  About this Site
     - How to Query
     - How to Submit
User ID

  BrainML Documentation


PDF version



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


Weill Medical College of Cornell University