CellML

CellML logo.svg

CellML to oparty na XML język znaczników do opisywania modeli matematycznych . Chociaż teoretycznie mógłby opisywać dowolny model matematyczny, pierwotnie został stworzony z projekcie Physiome , a zatem był używany głównie do opisu modeli związanych z dziedziną biologii. Znajduje to odzwierciedlenie w nazwie CellML, chociaż jest to po prostu nazwa, a nie skrót. CellML zyskuje na popularności jako przenośny format opisu modeli obliczeniowych, a grupy na całym świecie używają CellML do modelowania lub tworzenia narzędzi programowych opartych na CellML. CellML jest podobny do Systems Biology Markup Language SBML , ale zapewnia większy zakres modułowości modeli i ponownego wykorzystania i nie jest specyficzny dla opisów biochemii.

Historia

Język CellML wyrósł z potrzeby dzielenia się modelami dynamiki komórek serca między badaczami z wielu ośrodków na całym świecie. Oryginalna grupa robocza utworzona w 1998 roku składała się z Davida Bullivanta, Warrena Hedleya i Poula Nielsena; wszyscy trzej byli wówczas członkami Wydziału Nauk Inżynieryjnych na Uniwersytecie w Auckland. Język był aplikacją specyfikacji XML opracowanej przez World Wide Web Consortium – decyzja o użyciu XML została podjęta pod koniec 1998 roku przez Warrena Hedleya i André (Davida) Nickersona. Istniejące języki oparte na XML zostały wykorzystane do opisu matematyki (treść MathML ), metadanych ( RDF ) i powiązań między zasobami ( XLink ). Grupa robocza CellML po raz pierwszy dowiedziała się o SBML pod koniec 2000 r., kiedy Warren Hedley wziął udział w 2. warsztacie na temat platform oprogramowania dla biologii systemowej w Tokio.

Grupa robocza współpracowała z wieloma naukowcami z Physiome Sciences Inc. (szczególnie Melanie Nelson, Scott Lett, Mark Grehlinger, Prasad Ramakrishna, Jeremy Rice, Adam Muzikant i Kam-Chuen Jim) w celu opracowania wstępnej specyfikacji CellML 1.0, która została opublikowano 11 sierpnia 2001 r. Po tym pierwszym szkicu opracowano specyfikacje dla metadanych CellML i aktualizację CellML w celu uwzględnienia ustrukturyzowanego zagnieżdżania modeli z dodatkiem elementu <import>. Firma Physiome Sciences Inc. wyprodukowała również pierwsze oprogramowanie obsługujące technologię CellML. National Resource for Cell Analysis and Modeling (NRCAM) w Centrum Zdrowia Uniwersytetu Connecticut wyprodukowało również wczesne oprogramowanie obsługujące CellML o nazwie Virtual Cell .

W 2002 roku została napisana specyfikacja CellML 1.1, w której dodano import. Importy zapewniają możliwość włączania zewnętrznych komponentów do modelu, umożliwiając modelowanie modułowe. Ta specyfikacja została zamrożona na początku 2006 roku. Kontynuowano prace nad metadanymi i innymi specyfikacjami.

W lipcu 2009 r. strona internetowa CellML została całkowicie przebudowana i wydana została wstępna wersja nowego oprogramowania repozytorium CellML (PMR2).

Struktura modelu CellML

Model CellML składa się z wielu komponentów, z których każdy jest opisany w osobnym elemencie komponentu. Komponent może być całkowicie koncepcyjną jednostką stworzoną dla wygody modelowania lub może mieć jakąś rzeczywistą interpretację fizyczną (na przykład może reprezentować błonę komórkową).

Każdy komponent zawiera pewną liczbę zmiennych, które należy zadeklarować poprzez umieszczenie elementu zmiennego wewnątrz komponentu. Na przykład składnik reprezentujący błonę komórkową może mieć zmienną o nazwie V reprezentującą różnicę potencjałów (napięcie) na błonie komórkowej.

Relacje matematyczne między zmiennymi są wyrażane w komponentach przy użyciu MathML . MathML służy do tworzenia wyrażeń deklaratywnych (w przeciwieństwie do instrukcji proceduralnych, jak w języku programowania komputerów ). Jednak większość programów przetwarzających CellML akceptuje tylko ograniczony zakres matematyki (na przykład niektóre programy przetwarzające wymagają równań z pojedynczą zmienną po jednej stronie równości). Wybór MathML sprawia, że ​​CellML jest szczególnie odpowiedni do opisywania modeli zawierających równania różniczkowe. Nie ma mechanizmu wyrażania modeli stochastycznych ani żadnej innej formy losowości.

Komponenty można łączyć w innych komponentach za pomocą elementu połączenia, który opisuje nazwę dwóch komponentów, które mają być połączone, oraz zmienne w pierwszym komponencie, które są mapowane na zmienne w drugim komponencie. Takie połączenia są stwierdzeniem, że zmienna w jednym komponencie jest równoważna innej zmiennej w innym komponencie.

Modele CellML umożliwiają również wyrażanie relacji między komponentami. Specyfikacja CellML definiuje dwa typy relacji, hermetyzację i zawieranie, jednak użytkownik może zdefiniować więcej. Relacja zawierania jest używana do wyrażenia, że ​​jeden komponent jest fizycznie zawarty w innym. Relacja enkapsulacji jest szczególna, ponieważ jest to jedyna relacja, która wpływa na interpretację reszty modelu. Efektem enkapsulacji jest to, że komponenty enkapsulowane pod innymi komponentami są prywatne i nie można uzyskać do nich dostępu, z wyjątkiem komponentu znajdującego się bezpośrednio powyżej w drzewie enkapsulacji. Twórca modeli może swobodnie używać enkapsulacji jako narzędzia koncepcyjnego i niekoniecznie musi ona mieć jakąkolwiek fizyczną interpretację.

Specyfikacje

CellML jest zdefiniowany przez podstawowe specyfikacje, jak również dodatkowe specyfikacje dotyczące metadanych, używanych do opisywania modeli i określania symulacji.

CellML 1.0

CellML 1.0 był pierwszą ostateczną specyfikacją i jest używany do opisu wielu modeli w CellML Model Repository .

CellML 1.0 zawiera pewne elementy specyficzne dla biochemii do opisu roli zmiennych w modelu reakcji.

CellML 1.1

CellML 1.1 wprowadził możliwość importowania komponentów i jednostek. Aby w pełni obsługiwać tę funkcję, zmienne w CellML 1.1 akceptują nazwy zmiennych jako wartości początkowe.

Specyfikacje metadanych

CellML ma kilka specyfikacji metadanych, używanych do opisywania modeli lub dostarczania informacji do uruchamiania i/lub wizualizacji symulacji modeli.

  • Specyfikacja metadanych 1.0 służy do opisywania modeli różnymi informacjami; odpowiednie odniesienia, informacje o autorstwie, gatunek, do którego odnosi się model, i tak dalej.
  • Metadane symulacji dostarczają informacji wymaganych do odtworzenia określonych symulacji przy użyciu modelu CellML.
  • Metadane wykresów dostarczają informacji umożliwiających określenie konkretnych wizualizacji danych wyjściowych symulacji, na przykład w celu odtworzenia określonego wykresu z artykułu.

CellML.org

CellML.org ma na celu zapewnienie centralnego punktu dla społeczności CellML. Członkowie mogą przesyłać, przeglądać i aktualizować modele oraz otrzymywać opinie i pomoc od społeczności. Dyskusyjną listę dyskusyjną CellML można znaleźć na liście dyskusyjnej CellML . Zakres tej listy mailingowej obejmuje wszystko, co jest związane z rozwojem i użytkowaniem CellML.

Repozytorium kilkuset modeli biologicznych zakodowanych w CellML można znaleźć na stronie społeczności CellML pod adresem CellML Model Repository . Modele te aktywnie przechodzą proces kuracji mający na celu dostarczenie adnotacji z biologicznymi ontologiami, takimi jak Gene Ontology , oraz zweryfikowanie modeli pod kątem standardów równowagi jednostek i ograniczeń biofizycznych, takich jak zachowanie masy, ładunku, energii itp.

Linki zewnętrzne

Zobacz też