90 likes | 259 Views
Cell Behavior Model Definition Language. A. Cosmanescu, J. Sluka, M. Swat, J. Glazier. define computational models using the rigor and simulator-independence provided by the Cell Behavior Ontology . <cbmdl>. why <cbmdl> . Model code can not be interchanged easily
E N D
Cell Behavior Model Definition Language A. Cosmanescu, J. Sluka, M. Swat, J. Glazier define computational models using the rigor and simulator-independence provided by the Cell Behavior Ontology
<cbmdl> why <cbmdl> Model code can not be interchanged easily Model implementations can not be composed difficult to parse to biology from model code Languages do not represent all possible biology
<cbmdl> “<cbmdl> is not biology” (that is the CBO’s job) model
<cbmdl> <cbmdl> is... <?xml version="1.0" encoding="UTF-8"?> <cbmdlxmlns:cbmdl="http://cbmdl.org/cbmdl/level0/version0"xmlns:xi="http://www.w3.org/2001/XInclude" level="0" version="0"> <cbmdl:model id="2D_Sort" name="2D Cell Sort"> <cbmdl:listofObjects> <cbmdl:objectCollection size='50'> <cbmdl:Object idref='NonCondensingCell'/> </cbmdl:objectCollection> <cbmdl:objectCollection size='50'> <cbmdl:Object idref='CondensingCell'/> </cbmdl:objectCollection> <cbmdl:Object idref='stdlib:extracellular_matrix'/> <cbmdl:Object id='MySpecialCell' idref='CondensigCell'> <cbmdl:Interface idref='position'> <argument name='y'>10</argument> </cbmdl:Interface> </cbmdl:Object> </cbmdl:listofObjects> </cbmdl:model> </cbmdl>
<cbmdl> <cbmdl> is a framework <?xml version="1.0" encoding="UTF-8"?> <cbmdlxmlns:cbmdl="http://cbmdl.org/cbmdl/level0/version0"xmlns:xi="http://www.w3.org/2001/XInclude" level="0" version="0"> <cbmdl:model id="2D_Sort" name="2D Cell Sort"> <cbmdl:listofObjects> <cbmdl:objectCollection size='50'> <cbmdl:Object idref='NonCondensingCell'/> </cbmdl:objectCollection> <cbmdl:objectCollection size='50'> <cbmdl:Object idref='CondensingCell'/> </cbmdl:objectCollection> <cbmdl:Object idref='stdlib:extracellular_matrix'/> <cbmdl:Object id='MySpecialCell' idref='CondensigCell'> <cbmdl:Interface idref='position'> <argument name='y'>10</argument> </cbmdl:Interface> </cbmdl:Object> </cbmdl:listofObjects> </cbmdl:model> </cbmdl> objects, and interfaces, and libraries. Oh My.
<cbmdl> <cbmdl> is a language without a country <CompuCell3D> <Plugin Name="VolumeFlex"> <VolumeEnergyParameters CellType="NonCondensing" TargetVolume="25" LambdaVolume="1"/> <VolumeEnergyParameters CellType="Condensing" TargetVolume="25" LambdaVolume="1"/> </Plugin> <Plugin Name="CellType"> <CellType TypeName="Medium" TypeId="0"/> <CellType TypeName="Condensing" TypeId="1"/> <CellType TypeName="NonCondensing" TypeId="2"/> </Plugin> <Plugin Name="Contact"> <Energy Type1="Medium" Type2="Medium">0</Energy> <Energy Type1="NonCondensing" Type2="NonCondensing">16</Energy> <Energy Type1="Condensing" Type2="Condensing">2</Energy> <Energy Type1="NonCondensing" Type2="Condensing">11</Energy> <Energy Type1="NonCondensing" Type2="Medium">16</Energy> <Energy Type1="Condensing" Type2="Medium">16</Energy> </Plugin> </CompuCell3D>
<cbmdl> <cbmdl> is a language without a country <CompuCell3D> <Plugin Name="VolumeFlex"> <VolumeEnergyParameters CellType="NonCondensing" TargetVolume="25" LambdaVolume="1"/> <VolumeEnergyParameters CellType="Condensing" TargetVolume="25" LambdaVolume="1"/> </Plugin> <Plugin Name="CellType"> <CellType TypeName="Medium" TypeId="0"/> <CellType TypeName="Condensing" TypeId="1"/> <CellType TypeName="NonCondensing" TypeId="2"/> </Plugin> <Plugin Name="Contact"> <Energy Type1="Medium" Type2="Medium">0</Energy> <Energy Type1="NonCondensing" Type2="NonCondensing">16</Energy> <Energy Type1="Condensing" Type2="Condensing">2</Energy> <Energy Type1="NonCondensing" Type2="Condensing">11</Energy> <Energy Type1="NonCondensing" Type2="Medium">16</Energy> <Energy Type1="Condensing" Type2="Medium">16</Energy> </Plugin> </CompuCell3D> things are missing! you can't translate words you don't have
<cbmdl> <cbmdl> is defined in <cbmdl> <?xml version="1.0" encoding="UTF-8"?> <cbmdlxmlns:cbmdl="http://cbmdl.org/cbmdl/level0/version0"xmlns:xi="http://www.w3.org/2001/XInclude" level="0" version="0"> <cbmdl:model id="2D_Sort" name="2D Cell Sort"> <cbmdl:listofObjects> <cbmdl:objectCollection size='50'> <cbmdl:Object idref='NonCondensingCell'/> </cbmdl:objectCollection> <cbmdl:objectCollection size='50'> <cbmdl:Object idref='CondensingCell'/> </cbmdl:objectCollection> <cbmdl:Object idref='stdlib:extracellular_matrix'/> <cbmdl:Object id='MySpecialCell' idref='CondensigCell'> <cbmdl:Interface idref='position'> <argument name='y'>10</argument> </cbmdl:Interface> </cbmdl:Object> </cbmdl:listofObjects> </cbmdl:model> </cbmdl>
<cbmdl> <cbmdl> is defined in <cbmdl> <cbmdl:Object idref='CondensingCell'/> this tells the simulation environment that we want a CondensingCell this tells the simulation environment what a CondensingCell is <cbmdl:objectDefinition id='CondensingCell'> <cbmdl:Interface idref='stdlib:cell'> <cbmdl:argument name='geometrical_properties/volume'> <!-- an initial volume could be placed here --> </cbmdl:argument> <cbmdl:argument name='cellular_process/existential_cellular_processes/target_volume'> 25 </cbmdl:argument> <cbmdl:argument name='cellular_process/existential_cellular_processes/lambda_volume'> 1.0 </cbmdl:argument> </cbmdl:Interface> <cbmdl:Interface id='ConConContact' idref='stdlib:cellular_process:cell_contact:cell-cell_contact'> <cbmdl:argument name='Contactee'> <cbmdl:objectReference idref='CondensingCell'/> </cbmdl:argument> <cbmdl:argument name='BoundaryEnergyCoefficient'> 2 </cbmdl:argument> </cbmdl:Interface> <cbmdl:Interface id='NonConConContact' idref='stdlib:cellular_process:cell_contact:cell-cell_contact'> <cbmdl:argument name='Contactee'> <cbmdl:objectReference idref='NonCondensingCell'/> </cbmdl:argument> <cbmdl:argument name='BoundaryEnergyCoefficient'> 11 </cbmdl:argument> </cbmdl:Interface> <cbmdl:Interface id='ConECMContact' idref='stdlib:cellular_process:cell_contact:cell-noncell_contact'> <cbmdl:argument name='Contactee'> <cbmdl:objectReference idref='stdlib:extracellular_matrix'/> </cbmdl:argument> <cbmdl:argument name='BoundaryEnergyCoefficient'> 16 </cbmdl:argument> </cbmdl:Interface> </cbmdl:objectDefinition>