NineML is a markup language for describing neuronal network models. It is intended to provide a mechanism for scientists to publish and share unambiguous, mathematically explicit model definitions, with the aims of promoting reproducibility and reusability of components. NineML has a two-layered architecture, with an “abstraction” layer that is used to define mathematically the behavior of components, such as neurons, synapses, and connectivity rules and a “user” layer that is used to specify network structure in terms of populations of neurons and the projections between them, on the basis of the components described in the abstraction layer.
NineML is defined in terms of an object model. The current specification is available at http://software.incf.org/software/nineml/wiki/nineml-specification. The canonical serialization of this object model is as an XML document, but NineML documents can also be created using a domain-specific language...