Articulo de referencia

CellML

CellML es un lenguaje de marcado basado en XML para describir modelos matemáticos . Aunque teóricamente podría describir cualquier modelo matemático, se creó originalmente pensa...

CellML es un lenguaje de marcado basado en XML para describir modelos matemáticos . Aunque teóricamente podría describir cualquier modelo matemático, se creó originalmente pensando en el Proyecto Fisioma y, por lo tanto, se utiliza principalmente para describir modelos relevantes para el campo de la biología. Esto se refleja en su nombre, CellML, aunque este es simplemente un nombre, no una abreviatura. [ 1 ] CellML está ganando popularidad como formato de descripción portátil para modelos computacionales, y grupos de todo el mundo lo utilizan para modelar o desarrollar herramientas de software basadas en CellML. CellML es similar al Lenguaje de Marcado de Biología de Sistemas (SBML) , pero ofrece un mayor alcance para la modularidad y la reutilización de modelos, y no es específico para descripciones de bioquímica.

Historia

El lenguaje CellML surgió de la necesidad de compartir modelos de dinámica de células cardíacas entre investigadores de diversos centros alrededor del mundo. El grupo de trabajo original, formado en 1998, estaba compuesto por David Bullivant, Warren Hedley y Poul Nielsen; los tres eran entonces miembros del Departamento de Ciencias de la Ingeniería de la Universidad de Auckland. El lenguaje era una aplicación de la especificación XML desarrollada por el Consorcio World Wide Web  ; la decisión de usar XML se basó en recomendaciones de finales de 1998 de Warren Hedley y André (David) Nickerson. Se aprovecharon lenguajes existentes basados ​​en XML para describir las matemáticas (contenido MathML ), los metadatos ( RDF ) y los enlaces entre recursos ( XLink ). El grupo de trabajo CellML tuvo conocimiento del proyecto SBML a finales de 2000, cuando Warren Hedley asistió al segundo taller sobre plataformas de software para biología de sistemas en Tokio.

El grupo de trabajo colaboró ​​con varios investigadores de Physiome Sciences Inc. (en particular Melanie Nelson, Scott Lett, Mark Grehlinger, Prasad Ramakrishna, Jeremy Rice, Adam Muzikant y Kam-Chuen Jim) para redactar la especificación inicial de CellML 1.0, que se publicó el 11 de agosto de 2001. A este primer borrador le siguieron las especificaciones para los metadatos de CellML y una actualización de CellML para acomodar el anidamiento estructurado de modelos con la adición del elemento <import>. Physiome Sciences Inc. también produjo el primer software compatible con CellML. El Centro Nacional de Recursos para el Análisis y Modelado Celular (NRCAM) del Centro de Salud de la Universidad de Connecticut también produjo un software inicial compatible con CellML llamado VCell .

En 2002 se redactó la especificación CellML 1.1, en la que se añadieron las importaciones. Las importaciones permiten incorporar componentes externos a un modelo, facilitando así el modelado modular. Esta especificación se finalizó a principios de 2006. Se ha seguido trabajando en los metadatos y otras especificaciones.

En julio de 2009, el sitio web de CellML fue completamente renovado y se lanzó una versión inicial del nuevo software de repositorio de CellML (PMR2).

En julio de 2020 se publicó la especificación CellML 2.0 [ 2 ] , en la que se añadieron reinicios. Los reinicios permitían establecer el valor de una variable a cualquier valor cuando se cumplía una condición predefinida. Se eliminó la direccionalidad entre las conexiones para facilitar la reutilización de componentes, y la definición de unidades se restringió únicamente al modelo.

En apoyo a la especificación CellML 2.0, el proyecto libCellML se inició en 2015 para proporcionar a los desarrolladores de aplicaciones una biblioteca C++ API basada en modelos. La biblioteca se amplió rápidamente para ofrecer compatibilidad con JavaScript, Julia y Python. La última versión del software es la 0.5.0. Esta versión de la biblioteca admite la mayor parte de la especificación CellML 2.0 y también permite la lectura de modelos CellML 1.1 y CellML 1.0. Un aspecto importante a tener en cuenta es que la biblioteca libCellML no admite la escritura en estándares CellML anteriores.

La estructura de un modelo CellML

Un modelo CellML consta de varios componentes, cada uno descrito en su propio elemento. Un componente puede ser una entidad completamente conceptual creada para facilitar el modelado, o puede tener una interpretación física real (por ejemplo, podría representar la membrana celular ).

Cada componente contiene varias variables, las cuales deben declararse colocando un elemento de variable dentro del componente. Por ejemplo, un componente que representa una membrana celular puede tener una variable llamada V que representa la diferencia de potencial (voltaje) a través de la membrana celular.

Las relaciones matemáticas entre variables se expresan dentro de los componentes mediante MathML . MathML se utiliza para crear expresiones declarativas (a diferencia de las instrucciones procedimentales de un lenguaje de programación ). Sin embargo, la mayoría del software de procesamiento de CellML solo acepta un rango limitado de operaciones matemáticas (por ejemplo, algunos programas requieren ecuaciones con una sola variable en un lado de la igualdad). La elección de MathML hace que CellML sea especialmente adecuado para describir modelos que contienen ecuaciones diferenciales. No existe ningún mecanismo para la expresión de modelos estocásticos ni de ningún otro tipo de aleatoriedad.

Los componentes se pueden conectar entre sí mediante un elemento de conexión, que describe el nombre de los dos componentes que se van a conectar y las variables del primer componente que se asignan a variables del segundo. Dichas conexiones indican que una variable de un componente es equivalente a otra variable de otro componente.

Los modelos CellML también permiten expresar relaciones entre componentes. La especificación CellML define dos tipos de relaciones: encapsulación y contención; sin embargo, el usuario puede definir más. La relación de contención se utiliza para indicar que un componente se encuentra físicamente dentro de otro. La relación de encapsulación es especial porque es la única que afecta la interpretación del resto del modelo. El efecto de la encapsulación es que los componentes encapsulados bajo otros componentes son privados y solo pueden ser accedidos por el componente inmediatamente superior en el árbol de encapsulación. El modelador puede utilizar la encapsulación como una herramienta conceptual, sin que necesariamente tenga una interpretación física.

Presupuesto

CellML se define mediante especificaciones básicas, así como mediante especificaciones adicionales para metadatos, que se utilizan para anotar modelos y especificar simulaciones.

CellML 1.0

CellML 1.0 fue la primera especificación final y se utiliza para describir muchos de los modelos del repositorio de modelos CellML .

CellML 1.0 incluye algunos elementos específicos de bioquímica para describir el papel de las variables en un modelo de reacción.

CellML 1.1

CellML 1.1 introdujo la capacidad de importar componentes y unidades. Para brindar soporte completo a esta función, las variables en CellML 1.1 aceptan nombres de variables como valores iniciales.

CellML 2.0

CellML 2.0 introdujo algunos cambios significativos, que se enumeran a continuación:

  • Se introdujo la capacidad de restablecer las variables de estado.
  • Se eliminó la direccionalidad en las conexiones.
  • Ahora las unidades solo se pueden definir a nivel de modelo.

Especificaciones de metadatos

CellML cuenta con varias especificaciones de metadatos, que se utilizan para anotar modelos o proporcionar información para ejecutar y/o visualizar simulaciones de modelos.

  • La especificación de metadatos 1.0 se utiliza para anotar modelos con diversa información: referencias relevantes, información sobre la autoría, la especie a la que se refiere el modelo, etc.
  • Los metadatos de la simulación proporcionan la información necesaria para reproducir simulaciones específicas utilizando un modelo CellML.
  • Los metadatos gráficos proporcionan información para especificar visualizaciones particulares de los resultados de la simulación, por ejemplo, para reproducir un gráfico concreto de un artículo.

CellML.org

CellML.org pretende ser un punto de encuentro para la comunidad CellML. Los miembros pueden enviar, revisar y actualizar modelos, así como recibir comentarios y ayuda de la comunidad. Encontrará una lista de correo para debatir sobre CellML en CellML-discussion mailing list . Esta lista abarca todo lo relacionado con el desarrollo y el uso de CellML.

En el sitio web de la comunidad CellML, en CellML Model Repository , se puede encontrar un repositorio con varios cientos de modelos biológicos codificados en CellML . Estos modelos se encuentran en un proceso de curación que busca proporcionar anotaciones con ontologías biológicas como Gene Ontology y validarlos según estándares de equilibrio de unidades y restricciones biofísicas como la conservación de la masa, la carga, la energía, etc.

Referencias

  1. " [ cellml-discussion ] Ampliando la abreviatura de CellML" .
  2. Clerx, M.; Cooling, MT; Cooper, J.; Garny, A.; Moyle, K.; Nickerson, DP; Nielsen PMF; Sorby, H. (2020). " [ cellml-2.0 ] Especificación de CellML 2.0" . Journal of Integrative Bioinformatics . 17 ( 2– 3). doi : 10.1515/jib-2020-0021 . PMC 7756617 . PMID 32759406 .  
  • Página principal de CellML
  • Proyecto Fisioma de la IUPS
  • Proyecto Physiome JAPAN
  • Modelos celulares interactivos. Versiones en Java de muchos de los modelos cardíacos de CellML.

Véase también

Obtenido de " https://en.wikipedia.org/w/index.php?title=CellML&oldid=1360480179 "