Remove objects with same displayId before creating new

Fix run deadlock on errors
This commit is contained in:
Chris Myers 2020-05-10 13:37:36 -06:00
parent ca58aa4f9d
commit 515c7634a2
22 changed files with 368 additions and 16027 deletions

65
analysis/log4j2.xml Normal file
View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" name="XMLConfigTest" packages="org.sbml.*">
<Properties>
<Property name="filename">jsbml.log</Property>
</Properties>
<ThresholdFilter level="trace"/>
<Appenders>
<Console name="console">
<PatternLayout pattern="%5p (%F:%L) - %m%n"/>
</Console>
<File name="file" fileName="${filename}">
<PatternLayout>
<pattern>%d %p %C{1.} [%t] %m%n</pattern>
</PatternLayout>
</File>
</Appenders>
<Loggers>
<Logger name="org.sbml" level="info" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<!--
<Logger name="org.sbml.jsbml.xml.stax.SBMLWriter" level="debug" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<Logger name="org.sbml.jsbml.xml.stax.SBMLReader" level="debug" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
-->
<!--
# org.sbml.jsbml.test.SimpleSBaseChangeListener - DEBUG : it will display all add, remove or change event (lot of output when reading an SBML file)
# org.sbml.jsbml.xml.parsers.SBMLCoreParser - ERROR to DEBUG : anything related to problems when parsing the SBML core elements.
# org.sbml.jsbml.xml.parsers.StringParser - ERROR to DEBUG : (lot of output) display all the event when reading XHTML
# org.sbml.jsbml.xml.parsers.AnnotationParser - DEBUG : output when reading non RDF annotations.
# org.sbml.jsbml.xml.parsers.XMLNodeWriter - DEBUG : output events when writing XMLNode, so HTML block
# org.sbml.jsbml.xml.stax.SBMLReader - ERROR to DEBUG : (lot of output) display all the event when reading an SBML file
# org.sbml.jsbml.xml.stax.SBMLWriter - ERROR to DEBUG : (lot of output) display all the event when writing an SBML file
# org.sbml.jsbml.util.StringTools - WARN : warning when there is a problem with the conversion of a String into a number or boolean.
# org.sbml.jsbml.util.compilers.MathMLXMLStreamCompiler - WARN to DEBUG : (lot of output) display all the event when writing mathML
# org.sbml.jsbml.xml.parsers.MathMLStaxParser - ERROR to DEBUG : (lot of output) display all the event when reading a MathML block
# org.sbml.jsbml.SBMLDocument - ERROR to DEBUG : will display problems related to the checkConsistency call
# org.sbml.jsbml.validator.SBMLValidator - DEBUG : will print the xml result file from http://sbml.org/validator/ with few others checks when the parsing is done
# org.sbml.jsbml.util.SubModel - DEBUG : will print the details of the submodel building
# org.sbml.jsbml.ASTNode - ERROR to DEBUG
# org.sbml.jsbml.xml.parsers.AbstractReaderWriter - DEBUG : events when reading or writing L3 packages block (if the parser extends this abstract class)
# org.sbml.jsbml.xml.parsers.QualParser - DEBUG : events when reading/writing the qual package/extension.
# org.sbml.jsbml.ext.comp.CompModelPlugin - DEBUG: register and unregister debug output for the comp package id namespace
# org.sbml.jsbml.ext.comp.ArraysSBasePlugin - DEBUG: register and unregister debug output for the arrays package id namespace
# org.sbml.jsbml.Model - DEBUG: register and unregister debug output for the core package id namespace
# org.sbml.jsbml.xml.parsers.SBMLRDFAnnotationParser - DEBUG: debug output when reading and writing RDF annotations
-->
<Root level="info">
<AppenderRef ref="file"/>
</Root>
</Loggers>
</Configuration>

View file

@ -6,7 +6,7 @@
<parent>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<packaging>jar</packaging>
@ -73,13 +73,13 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-dataModels</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>LEMA-verification</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>

View file

@ -50,6 +50,7 @@ import edu.utah.ece.async.ibiosim.dataModels.util.Executables;
import edu.utah.ece.async.ibiosim.dataModels.util.Message;
import edu.utah.ece.async.ibiosim.dataModels.util.MutableString;
import edu.utah.ece.async.ibiosim.dataModels.util.exceptions.BioSimException;
import edu.utah.ece.async.ibiosim.dataModels.util.observe.BioObservable;
import edu.utah.ece.async.ibiosim.dataModels.util.observe.CoreObservable;
import edu.utah.ece.async.lema.verification.lpn.Abstraction;
import edu.utah.ece.async.lema.verification.lpn.LPN;
@ -474,7 +475,11 @@ public class Run extends CoreObservable implements ActionListener {
this.notifyObservers(message);
reb2sac = exec.exec(command, env, work);
updateReb2SacProgress();
ReadStream s1 = new ReadStream("stdin", reb2sac.getInputStream ());
ReadStream s2 = new ReadStream("stderr", reb2sac.getErrorStream ());
s1.start ();
s2.start ();
//updateReb2SacProgress();
exitValue = reb2sac.waitFor();
}
@ -845,6 +850,71 @@ public class Run extends CoreObservable implements ActionListener {
}
}
public class ReadStream implements Runnable {
String name;
InputStream is;
Thread thread;
public ReadStream(String name, InputStream is) {
this.name = name;
this.is = is;
}
public void start () {
thread = new Thread (this);
thread.start ();
}
public void run () {
try {
InputStreamReader isr = new InputStreamReader (is);
BufferedReader br = new BufferedReader (isr);
double runTime = properties.getSimulationProperties().getRun() * properties.getSimulationProperties().getTimeLimit();
double time = 0;
double oldTime = 0;
int runNum = 0;
int prog = 0;
while (true) {
String line = br.readLine ();
if (line == null) break;
if (name.equals("stdin")) {
try {
if (line.contains("Time")) {
time = Double.parseDouble(line.substring(line.indexOf('=') + 1, line.length()));
if (oldTime > time) {
runNum++;
}
oldTime = time;
time += (runNum * properties.getSimulationProperties().getTimeLimit());
double d = ((time * 100) / runTime);
String s = d + "";
double decimal = Double.parseDouble(s.substring(s.indexOf('.'), s.length()));
if (decimal >= 0.5) {
prog = (int) (Math.ceil(d));
} else {
prog = (int) (d);
}
}
}
catch (Exception e) {
e.printStackTrace();
}
if (parent!=null) {
message.setInteger(prog);
parent.send(RequestType.REQUEST_PROGRESS, message);
} else{
System.out.println(line);
}
} else {
System.out.println ("[" + name + "] " + line);
}
}
is.close ();
} catch (Exception ex) {
System.out.println ("Problem reading stream " + name + "... :" + ex);
ex.printStackTrace ();
}
}
}
private void updateReb2SacProgress() throws IOException {
String error = "";
try {

View file

@ -6,7 +6,7 @@
<parent>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<packaging>jar</packaging>
@ -65,7 +65,7 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-dataModels</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>

View file

@ -56,6 +56,7 @@ import org.sbolstandard.core2.SBOLValidationException;
import org.sbolstandard.core2.Sequence;
import org.sbolstandard.core2.SequenceOntology;
import org.sbolstandard.core2.SystemsBiologyOntology;
import org.sbolstandard.core2.TopLevel;
import edu.utah.ece.async.ibiosim.dataModels.biomodel.annotation.AnnotationUtility;
import edu.utah.ece.async.ibiosim.dataModels.biomodel.parser.BioModel;
@ -140,6 +141,22 @@ public class SBML2SBOL {
return parseSBMLModel("file:" + fileName, externalSBMLPath, sbmlDoc, sbmlDoc.getModel(), sbolDoc, sbol_Library);
}
/**
* Remove SBOL objects by their displayId to avoid objects with same displayId but different
* URI prefix
*
* @param sbolDoc SBOL document to remove objects from
* @param displayId Display id to use to search for objects to remove
* @throws SBOLValidationException Thrown when there is a problem caused by removing the object
*/
public static void removeByDisplayId(SBOLDocument sbolDoc,String displayId) throws SBOLValidationException {
for (TopLevel topLevel : sbolDoc.getTopLevels()) {
if (topLevel.getDisplayId().contentEquals(displayId)) {
sbolDoc.removeTopLevel(topLevel);
}
}
}
/**
* Convert the specified SBML model to its equivalent SBOL ModuleDefinition.
* All SBML SBase referencing this SBML model will be converted to SBOL data object.
@ -175,6 +192,7 @@ public class SBML2SBOL {
sbolDoc.removeModel(sbolModel);
}
removeByDisplayId(sbolDoc,model.getId() + "_model");
sbolModel = sbolDoc.createModel(model.getId() + "_model", VERSION, sourceURI, LANGUAGE, FRAMEWORK);
String identityStr = model.getId() + "_md";
@ -182,6 +200,7 @@ public class SBML2SBOL {
if (moduleDef!=null) {
sbolDoc.removeModuleDefinition(moduleDef);
}
removeByDisplayId(sbolDoc,identityStr);
moduleDef = sbolDoc.createModuleDefinition(identityStr, VERSION);
moduleDef.addModel(sbolModel);
@ -378,11 +397,13 @@ public class SBML2SBOL {
}
compDef = sbolDoc.getComponentDefinition(compDef_identity, VERSION);
if (compDef==null) {
removeByDisplayId(sbolDoc,compDef_identity);
compDef = sbolDoc.createComponentDefinition(compDef_identity, VERSION, compDef_type);
compDef.setName(species.getId());
compDef.setRoles(compDef_role);
} else if (!compDef.getTypes().containsAll(compDef_type)) {
sbolDoc.removeComponentDefinition(compDef);
removeByDisplayId(sbolDoc,compDef_identity);
compDef = sbolDoc.createComponentDefinition(compDef_identity, VERSION, compDef_type);
compDef.setName(species.getId());
compDef.setRoles(compDef_role);

65
dataModels/log4j2.xml Normal file
View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" name="XMLConfigTest" packages="org.sbml.*">
<Properties>
<Property name="filename">jsbml.log</Property>
</Properties>
<ThresholdFilter level="trace"/>
<Appenders>
<Console name="console">
<PatternLayout pattern="%5p (%F:%L) - %m%n"/>
</Console>
<File name="file" fileName="${filename}">
<PatternLayout>
<pattern>%d %p %C{1.} [%t] %m%n</pattern>
</PatternLayout>
</File>
</Appenders>
<Loggers>
<Logger name="org.sbml" level="info" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<!--
<Logger name="org.sbml.jsbml.xml.stax.SBMLWriter" level="debug" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<Logger name="org.sbml.jsbml.xml.stax.SBMLReader" level="debug" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
-->
<!--
# org.sbml.jsbml.test.SimpleSBaseChangeListener - DEBUG : it will display all add, remove or change event (lot of output when reading an SBML file)
# org.sbml.jsbml.xml.parsers.SBMLCoreParser - ERROR to DEBUG : anything related to problems when parsing the SBML core elements.
# org.sbml.jsbml.xml.parsers.StringParser - ERROR to DEBUG : (lot of output) display all the event when reading XHTML
# org.sbml.jsbml.xml.parsers.AnnotationParser - DEBUG : output when reading non RDF annotations.
# org.sbml.jsbml.xml.parsers.XMLNodeWriter - DEBUG : output events when writing XMLNode, so HTML block
# org.sbml.jsbml.xml.stax.SBMLReader - ERROR to DEBUG : (lot of output) display all the event when reading an SBML file
# org.sbml.jsbml.xml.stax.SBMLWriter - ERROR to DEBUG : (lot of output) display all the event when writing an SBML file
# org.sbml.jsbml.util.StringTools - WARN : warning when there is a problem with the conversion of a String into a number or boolean.
# org.sbml.jsbml.util.compilers.MathMLXMLStreamCompiler - WARN to DEBUG : (lot of output) display all the event when writing mathML
# org.sbml.jsbml.xml.parsers.MathMLStaxParser - ERROR to DEBUG : (lot of output) display all the event when reading a MathML block
# org.sbml.jsbml.SBMLDocument - ERROR to DEBUG : will display problems related to the checkConsistency call
# org.sbml.jsbml.validator.SBMLValidator - DEBUG : will print the xml result file from http://sbml.org/validator/ with few others checks when the parsing is done
# org.sbml.jsbml.util.SubModel - DEBUG : will print the details of the submodel building
# org.sbml.jsbml.ASTNode - ERROR to DEBUG
# org.sbml.jsbml.xml.parsers.AbstractReaderWriter - DEBUG : events when reading or writing L3 packages block (if the parser extends this abstract class)
# org.sbml.jsbml.xml.parsers.QualParser - DEBUG : events when reading/writing the qual package/extension.
# org.sbml.jsbml.ext.comp.CompModelPlugin - DEBUG: register and unregister debug output for the comp package id namespace
# org.sbml.jsbml.ext.comp.ArraysSBasePlugin - DEBUG: register and unregister debug output for the arrays package id namespace
# org.sbml.jsbml.Model - DEBUG: register and unregister debug output for the core package id namespace
# org.sbml.jsbml.xml.parsers.SBMLRDFAnnotationParser - DEBUG: debug output when reading and writing RDF annotations
-->
<Root level="info">
<AppenderRef ref="file"/>
</Root>
</Loggers>
</Configuration>

View file

@ -6,7 +6,7 @@
<parent>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<packaging>jar</packaging>
@ -71,7 +71,7 @@
<dependency>
<groupId>org.sbml.jsbml</groupId>
<artifactId>jsbml</artifactId>
<version>1.4</version>
<version>1.6-SNAPSHOT</version>
</dependency>
<dependency>
@ -132,7 +132,7 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-libsbml</artifactId>
<version>5.16.0-SNAPSHOT</version>
<version>5.18.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>

View file

@ -76,10 +76,6 @@ import org.sbml.jsbml.ext.comp.ReplacedBy;
import org.sbml.jsbml.ext.comp.ReplacedElement;
import org.sbml.jsbml.ext.comp.SBaseRef;
import org.sbml.jsbml.ext.comp.Submodel;
import org.sbml.jsbml.ext.distrib.DistribConstants;
import org.sbml.jsbml.ext.distrib.DistribFunctionDefinitionPlugin;
import org.sbml.jsbml.ext.distrib.DistribInput;
import org.sbml.jsbml.ext.distrib.DrawFromDistribution;
import org.sbml.jsbml.ext.fbc.FBCConstants;
import org.sbml.jsbml.ext.fbc.FBCModelPlugin;
import org.sbml.jsbml.ext.fbc.FBCReactionPlugin;
@ -90,10 +86,7 @@ import org.sbml.jsbml.ext.layout.LayoutModelPlugin;
import org.sbml.jsbml.text.parser.FormulaParserLL3;
import org.sbml.jsbml.text.parser.IFormulaParser;
import org.sbml.jsbml.text.parser.ParseException;
import org.sbml.jsbml.xml.XMLAttributes;
import org.sbml.jsbml.xml.XMLNamespaces;
import org.sbml.jsbml.xml.XMLNode;
import org.sbml.jsbml.xml.XMLTriple;
import org.sbml.libsbml.ConversionProperties;
import org.sbml.libsbml.SBMLNamespaces;
import org.sbml.libsbml.SBasePlugin;
@ -3138,35 +3131,35 @@ public class SBMLutilities extends CoreObservable
createFunction(model, "bernoulli", "Bernoulli distribution", "lambda(p,p)");
}
public static void createDistribution(FunctionDefinition f, String[] inputTypes, String[] inputs, String distribution)
{
DistribFunctionDefinitionPlugin distrib = SBMLutilities.getDistribFunctionDefinitionPlugin(f);
DrawFromDistribution draw = distrib.createDrawFromDistribution();
for (int i = 0; i < inputs.length; i++)
{
DistribInput input = draw.createDistribInput();
input.setId(inputs[i]);
input.setIndex(i);
}
// UncertML element
XMLNode xmlNode = new XMLNode(new XMLTriple("UncertML"), new XMLAttributes(), new XMLNamespaces());
xmlNode.addNamespace("http://www.uncertml.org/3.0");
// NormalDistribution element
XMLNode distNode = new XMLNode(new XMLTriple(distribution), new XMLAttributes(), new XMLNamespaces());
distNode.addAttr("definition", "http://www.uncertml.org/distributions");
xmlNode.addChild(distNode);
for (int i = 0; i < inputs.length; i++)
{
XMLNode inputNode = new XMLNode(new XMLTriple(inputTypes[i]), new XMLAttributes(), new XMLNamespaces());
distNode.addChild(inputNode);
XMLNode varNode = new XMLNode(new XMLTriple("var"), new XMLAttributes(), new XMLNamespaces());
varNode.addAttr("varId", inputs[i]);
inputNode.addChild(varNode);
}
// draw.setUncertML(xmlNode);
}
// public static void createDistribution(FunctionDefinition f, String[] inputTypes, String[] inputs, String distribution)
// {
// DistribFunctionDefinitionPlugin distrib = SBMLutilities.getDistribFunctionDefinitionPlugin(f);
// DrawFromDistribution draw = distrib.createDrawFromDistribution();
// for (int i = 0; i < inputs.length; i++)
// {
// DistribInput input = draw.createDistribInput();
// input.setId(inputs[i]);
// input.setIndex(i);
// }
// // UncertML element
// XMLNode xmlNode = new XMLNode(new XMLTriple("UncertML"), new XMLAttributes(), new XMLNamespaces());
// xmlNode.addNamespace("http://www.uncertml.org/3.0");
//
// // NormalDistribution element
// XMLNode distNode = new XMLNode(new XMLTriple(distribution), new XMLAttributes(), new XMLNamespaces());
// distNode.addAttr("definition", "http://www.uncertml.org/distributions");
// xmlNode.addChild(distNode);
//
// for (int i = 0; i < inputs.length; i++)
// {
// XMLNode inputNode = new XMLNode(new XMLTriple(inputTypes[i]), new XMLAttributes(), new XMLNamespaces());
// distNode.addChild(inputNode);
// XMLNode varNode = new XMLNode(new XMLTriple("var"), new XMLAttributes(), new XMLNamespaces());
// varNode.addAttr("varId", inputs[i]);
// inputNode.addChild(varNode);
// }
//// draw.setUncertML(xmlNode);
// }
/**
* Add a new function
@ -3194,50 +3187,50 @@ public class SBMLutilities extends CoreObservable
if (id.equals("uniform"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Uniform_distribution_(continuous)");
SBMLutilities.createDistribution(f, new String[] { "minimum", "maximum" }, new String[] { "a", "b" }, "UniformDistribution");
//SBMLutilities.createDistribution(f, new String[] { "minimum", "maximum" }, new String[] { "a", "b" }, "UniformDistribution");
}
else if (id.equals("normal"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Normal_distribution");
SBMLutilities.createDistribution(f, new String[] { "mean", "stddev" }, new String[] { "m", "s" }, "NormalDistribution");
//SBMLutilities.createDistribution(f, new String[] { "mean", "stddev" }, new String[] { "m", "s" }, "NormalDistribution");
}
else if (id.equals("exponential"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Exponential_distribution");
SBMLutilities.createDistribution(f, new String[] { "rate" }, new String[] { "l" }, "ExponentialDistribution");
//SBMLutilities.createDistribution(f, new String[] { "rate" }, new String[] { "l" }, "ExponentialDistribution");
}
else if (id.equals("gamma"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Gamma_distribution");
SBMLutilities.createDistribution(f, new String[] { "shape", "scale" }, new String[] { "a", "b" }, "GammaDistribution");
//SBMLutilities.createDistribution(f, new String[] { "shape", "scale" }, new String[] { "a", "b" }, "GammaDistribution");
}
else if (id.equals("poisson"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Poisson_distribution");
SBMLutilities.createDistribution(f, new String[] { "rate" }, new String[] { "mu" }, "PoissonDistribution");
//SBMLutilities.createDistribution(f, new String[] { "rate" }, new String[] { "mu" }, "PoissonDistribution");
}
else if (id.equals("lognormal"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Log-normal_distribution");
// TODO: check order
SBMLutilities.createDistribution(f, new String[] { "shape", "logScale" }, new String[] { "sh", "lsc" }, "GammaDistribution");
//SBMLutilities.createDistribution(f, new String[] { "shape", "logScale" }, new String[] { "sh", "lsc" }, "GammaDistribution");
}
else if (id.equals("chisq"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Chi-squared_distribution");
SBMLutilities.createDistribution(f, new String[] { "degreeOfFreedom" }, new String[] { "nu" }, "ChiSquareDistribution");
//SBMLutilities.createDistribution(f, new String[] { "degreeOfFreedom" }, new String[] { "nu" }, "ChiSquareDistribution");
}
else if (id.equals("laplace"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Laplace_distribution");
// TODO: mine only has one param?
SBMLutilities.createDistribution(f, new String[] { "location", "scale" }, new String[] { "l", "s" }, "LaplaceDistribution");
//SBMLutilities.createDistribution(f, new String[] { "location", "scale" }, new String[] { "l", "s" }, "LaplaceDistribution");
}
else if (id.equals("cauchy"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Cauchy_distribution");
// TODO: mine only has one param?
SBMLutilities.createDistribution(f, new String[] { "location", "scale" }, new String[] { "l", "s" }, "CauchyDistribution");
//SBMLutilities.createDistribution(f, new String[] { "location", "scale" }, new String[] { "l", "s" }, "CauchyDistribution");
}
else if (id.equals("rayleigh"))
{
@ -3247,13 +3240,13 @@ public class SBMLutilities extends CoreObservable
else if (id.equals("binomial"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Binomial_distribution");
SBMLutilities.createDistribution(f, new String[] { "probabilityOfSuccess", "numberOfTrials" }, new String[] { "p", "n" },
"BinomialDistribution");
//SBMLutilities.createDistribution(f, new String[] { "probabilityOfSuccess", "numberOfTrials" }, new String[] { "p", "n" },
// "BinomialDistribution");
}
else if (id.equals("bernoulli"))
{
AnnotationUtility.setDistributionAnnotation(f, "http://en.wikipedia.org/wiki/Bernoulli_distribution");
SBMLutilities.createDistribution(f, new String[] { "categoryProb" }, new String[] { "p" }, "BernoulliDistribution");
//SBMLutilities.createDistribution(f, new String[] { "categoryProb" }, new String[] { "p" }, "BernoulliDistribution");
}
}
}
@ -4937,16 +4930,16 @@ public class SBMLutilities extends CoreObservable
return null;
}
public static DistribFunctionDefinitionPlugin getDistribFunctionDefinitionPlugin(FunctionDefinition function)
{
if (function.getExtension(DistribConstants.namespaceURI) != null)
{
return (DistribFunctionDefinitionPlugin) function.getExtension(DistribConstants.namespaceURI);
}
DistribFunctionDefinitionPlugin distrib = new DistribFunctionDefinitionPlugin(function);
function.addExtension(DistribConstants.namespaceURI, distrib);
return distrib;
}
// public static DistribFunctionDefinitionPlugin getDistribFunctionDefinitionPlugin(FunctionDefinition function)
// {
// if (function.getExtension(DistribConstants.namespaceURI) != null)
// {
// return (DistribFunctionDefinitionPlugin) function.getExtension(DistribConstants.namespaceURI);
// }
// DistribFunctionDefinitionPlugin distrib = new DistribFunctionDefinitionPlugin(function);
// function.addExtension(DistribConstants.namespaceURI, distrib);
// return distrib;
// }
public static LayoutModelPlugin getLayoutModelPlugin(Model model)
{

View file

@ -6,7 +6,7 @@
<parent>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<packaging>jar</packaging>
@ -123,38 +123,38 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-dataModels</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-conversion</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-learn</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-analysis</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-synthesis</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async.sboldesigner</groupId>
<artifactId>SBOLDesigner</artifactId>
<version>3.1-SNAPSHOT</version>
<version>3.1</version>
</dependency>

View file

@ -4139,11 +4139,14 @@ public class Gui implements BioObserver, MouseListener, ActionListener, MouseMot
public void createIBioSimActivity() throws Exception {
Activity iBioSimActivity = sbolDocument.getActivity(currentProjectId + "_iBioSim_activity", "1");
if (iBioSimActivity==null) {
SBML2SBOL.removeByDisplayId(sbolDocument,currentProjectId + "_iBioSim_activity");
iBioSimActivity = sbolDocument.createActivity(currentProjectId + "_iBioSim_activity", "1");
Association association = iBioSimActivity.createAssociation("association",
URI.create("https://synbiohub.org/public/SBOL_Software/iBioSim/"+iBioSimVersion));
SBML2SBOL.removeByDisplayId(sbolDocument,currentProjectId + "_plan");
Plan plan = sbolDocument.createPlan(currentProjectId + "_plan", "1");
association.setPlan(plan.getIdentity());
SBML2SBOL.removeByDisplayId(sbolDocument,currentProjectId + "_sedml");
Attachment sedmlFile = sbolDocument.createAttachment(currentProjectId + "_sedml", "1",
URI.create("file:" + currentProjectId + ".sedml"));
sedmlFile.setName(currentProjectId + ".sedml");
@ -4174,6 +4177,7 @@ public class Gui implements BioObserver, MouseListener, ActionListener, MouseMot
root + File.separator + output.getId()+".png",GraphData.PNG_FILE_TYPE,650,400);
Attachment pngFile = sbolDocument.getAttachment(output.getId()+"_png","1");
if (pngFile==null) {
SBML2SBOL.removeByDisplayId(sbolDocument,output.getId()+"_png");
pngFile = sbolDocument.createAttachment(output.getId()+"_png", "1",
URI.create("file:"+output.getId()+".png"));
pngFile.setFormat(URI.create("http://identifiers.org/edam/format_3603"));
@ -4189,6 +4193,7 @@ public class Gui implements BioObserver, MouseListener, ActionListener, MouseMot
root + File.separator + output.getId()+".png",GraphData.PNG_FILE_TYPE,650,400);
Attachment pngFile = sbolDocument.getAttachment(output.getId()+"_png","1");
if (pngFile==null) {
SBML2SBOL.removeByDisplayId(sbolDocument,output.getId()+"_png");
pngFile = sbolDocument.createAttachment(output.getId()+"_png", "1",
URI.create("file:"+output.getId()+".png"));
pngFile.setFormat(URI.create("http://identifiers.org/edam/format_3603"));

View file

@ -5,7 +5,7 @@
<artifactId>iBioSim-learn</artifactId>
<parent>
<groupId>edu.utah.ece.async</groupId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
<artifactId>iBioSim</artifactId>
</parent>
@ -65,7 +65,7 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-analysis</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>

Binary file not shown.

65
log4j2.xml Normal file
View file

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" name="XMLConfigTest" packages="org.sbml.*">
<Properties>
<Property name="filename">jsbml.log</Property>
</Properties>
<ThresholdFilter level="trace"/>
<Appenders>
<Console name="console">
<PatternLayout pattern="%5p (%F:%L) - %m%n"/>
</Console>
<File name="file" fileName="${filename}">
<PatternLayout>
<pattern>%d %p %C{1.} [%t] %m%n</pattern>
</PatternLayout>
</File>
</Appenders>
<Loggers>
<Logger name="org.sbml" level="info" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<!--
<Logger name="org.sbml.jsbml.xml.stax.SBMLWriter" level="debug" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
<Logger name="org.sbml.jsbml.xml.stax.SBMLReader" level="debug" additivity="false">
<AppenderRef ref="console"/>
<AppenderRef ref="file"/>
</Logger>
-->
<!--
# org.sbml.jsbml.test.SimpleSBaseChangeListener - DEBUG : it will display all add, remove or change event (lot of output when reading an SBML file)
# org.sbml.jsbml.xml.parsers.SBMLCoreParser - ERROR to DEBUG : anything related to problems when parsing the SBML core elements.
# org.sbml.jsbml.xml.parsers.StringParser - ERROR to DEBUG : (lot of output) display all the event when reading XHTML
# org.sbml.jsbml.xml.parsers.AnnotationParser - DEBUG : output when reading non RDF annotations.
# org.sbml.jsbml.xml.parsers.XMLNodeWriter - DEBUG : output events when writing XMLNode, so HTML block
# org.sbml.jsbml.xml.stax.SBMLReader - ERROR to DEBUG : (lot of output) display all the event when reading an SBML file
# org.sbml.jsbml.xml.stax.SBMLWriter - ERROR to DEBUG : (lot of output) display all the event when writing an SBML file
# org.sbml.jsbml.util.StringTools - WARN : warning when there is a problem with the conversion of a String into a number or boolean.
# org.sbml.jsbml.util.compilers.MathMLXMLStreamCompiler - WARN to DEBUG : (lot of output) display all the event when writing mathML
# org.sbml.jsbml.xml.parsers.MathMLStaxParser - ERROR to DEBUG : (lot of output) display all the event when reading a MathML block
# org.sbml.jsbml.SBMLDocument - ERROR to DEBUG : will display problems related to the checkConsistency call
# org.sbml.jsbml.validator.SBMLValidator - DEBUG : will print the xml result file from http://sbml.org/validator/ with few others checks when the parsing is done
# org.sbml.jsbml.util.SubModel - DEBUG : will print the details of the submodel building
# org.sbml.jsbml.ASTNode - ERROR to DEBUG
# org.sbml.jsbml.xml.parsers.AbstractReaderWriter - DEBUG : events when reading or writing L3 packages block (if the parser extends this abstract class)
# org.sbml.jsbml.xml.parsers.QualParser - DEBUG : events when reading/writing the qual package/extension.
# org.sbml.jsbml.ext.comp.CompModelPlugin - DEBUG: register and unregister debug output for the comp package id namespace
# org.sbml.jsbml.ext.comp.ArraysSBasePlugin - DEBUG: register and unregister debug output for the arrays package id namespace
# org.sbml.jsbml.Model - DEBUG: register and unregister debug output for the core package id namespace
# org.sbml.jsbml.xml.parsers.SBMLRDFAnnotationParser - DEBUG: debug output when reading and writing RDF annotations
-->
<Root level="info">
<AppenderRef ref="file"/>
</Root>
</Loggers>
</Configuration>

View file

@ -4,7 +4,7 @@
<modelVersion>4.0.0</modelVersion>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>iBioSim</name>
<description>CAD tool aimed for the modeling, analysis, and design of genetic circuits. This tool supports both SBML and SBOL data models.</description>

View file

@ -6,7 +6,7 @@
<parent>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<packaging>jar</packaging>
@ -35,12 +35,12 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>LEMA-verification</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-dataModels</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.sbml.jsbml</groupId>
@ -60,7 +60,7 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-conversion</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<issueManagement>

View file

@ -1,496 +0,0 @@
<?xml version='1.0' encoding='UTF-8'?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sbol="http://sbols.org/v2#" xmlns:dcterms="http://purl.org/dc/terms/" xmlns:prov="http://www.w3.org/ns/prov#" xmlns:om="http://www.ontology-of-units-of-measure.org/resource/om-2/">
<sbol:ModuleDefinition rdf:about="http://dummy.org/MD0r_s_q_net/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net"/>
<sbol:displayId>MD0r_s_q_net</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC1_s/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC1_s"/>
<sbol:displayId>FC1_s</sbol:displayId>
<sbol:version>1.0</sbol:version>
<dcterms:title>s</dcterms:title>
<sbol:definition rdf:resource="http://dummy.org/CD1_s/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC4__1_/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC4__1_"/>
<sbol:displayId>FC4__1_</sbol:displayId>
<sbol:version>1.0</sbol:version>
<dcterms:title>_1_</dcterms:title>
<sbol:definition rdf:resource="http://dummy.org/CD4__1_/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC0_r/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC0_r"/>
<sbol:displayId>FC0_r</sbol:displayId>
<sbol:version>1.0</sbol:version>
<dcterms:title>r</dcterms:title>
<sbol:definition rdf:resource="http://dummy.org/CD0_r/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#in"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC3__0_/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC3__0_"/>
<sbol:displayId>FC3__0_</sbol:displayId>
<sbol:version>1.0</sbol:version>
<dcterms:title>_0_</dcterms:title>
<sbol:definition rdf:resource="http://dummy.org/CD3__0_/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#inout"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC6_norTU/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC6_norTU"/>
<sbol:displayId>FC6_norTU</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:definition rdf:resource="http://dummy.org/CD9_er/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC7_notTU/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC7_notTU"/>
<sbol:displayId>FC7_notTU</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:definition rdf:resource="http://dummy.org/CD13_er/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC2_q/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC2_q"/>
<sbol:displayId>FC2_q</sbol:displayId>
<sbol:version>1.0</sbol:version>
<dcterms:title>q</dcterms:title>
<sbol:definition rdf:resource="http://dummy.org/CD2_q/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#out"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:functionalComponent>
<sbol:FunctionalComponent rdf:about="http://dummy.org/MD0r_s_q_net/FC5_norTU/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/FC5_norTU"/>
<sbol:displayId>FC5_norTU</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:definition rdf:resource="http://dummy.org/CD5_er/1.0"/>
<sbol:access rdf:resource="http://sbols.org/v2#public"/>
<sbol:direction rdf:resource="http://sbols.org/v2#none"/>
</sbol:FunctionalComponent>
</sbol:functionalComponent>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I5_Prod/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I5_Prod"/>
<sbol:displayId>I5_Prod</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000589"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I5_Prod/P11/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I5_Prod/P11"/>
<sbol:displayId>P11</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000011"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC3__0_/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I5_Prod/P10/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I5_Prod/P10"/>
<sbol:displayId>P10</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000645"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC6_norTU/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I7_Prod/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I7_Prod"/>
<sbol:displayId>I7_Prod</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000589"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I7_Prod/P15/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I7_Prod/P15"/>
<sbol:displayId>P15</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000011"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC2_q/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I7_Prod/P14/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I7_Prod/P14"/>
<sbol:displayId>P14</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000645"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC7_notTU/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I4_Inhib/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I4_Inhib"/>
<sbol:displayId>I4_Inhib</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000169"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I4_Inhib/P8/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I4_Inhib/P8"/>
<sbol:displayId>P8</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000020"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC4__1_/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I4_Inhib/P9/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I4_Inhib/P9"/>
<sbol:displayId>P9</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000642"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC6_norTU/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I0_Inhib/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I0_Inhib"/>
<sbol:displayId>I0_Inhib</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000169"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I0_Inhib/P1/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I0_Inhib/P1"/>
<sbol:displayId>P1</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000642"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC5_norTU/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I0_Inhib/P0/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I0_Inhib/P0"/>
<sbol:displayId>P0</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000020"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC0_r/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I3_Inhib/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I3_Inhib"/>
<sbol:displayId>I3_Inhib</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000169"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I3_Inhib/P7/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I3_Inhib/P7"/>
<sbol:displayId>P7</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000642"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC6_norTU/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I3_Inhib/P6/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I3_Inhib/P6"/>
<sbol:displayId>P6</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000020"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC1_s/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I6_Inhib/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I6_Inhib"/>
<sbol:displayId>I6_Inhib</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000169"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I6_Inhib/P12/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I6_Inhib/P12"/>
<sbol:displayId>P12</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000020"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC3__0_/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I6_Inhib/P13/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I6_Inhib/P13"/>
<sbol:displayId>P13</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000642"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC7_notTU/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I1_Inhib/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I1_Inhib"/>
<sbol:displayId>I1_Inhib</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000169"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I1_Inhib/P2/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I1_Inhib/P2"/>
<sbol:displayId>P2</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000020"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC3__0_/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I1_Inhib/P3/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I1_Inhib/P3"/>
<sbol:displayId>P3</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000642"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC5_norTU/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
<sbol:interaction>
<sbol:Interaction rdf:about="http://dummy.org/MD0r_s_q_net/I2_Prod/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I2_Prod"/>
<sbol:displayId>I2_Prod</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000589"/>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I2_Prod/P5/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I2_Prod/P5"/>
<sbol:displayId>P5</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000011"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC4__1_/1.0"/>
</sbol:Participation>
</sbol:participation>
<sbol:participation>
<sbol:Participation rdf:about="http://dummy.org/MD0r_s_q_net/I2_Prod/P4/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/MD0r_s_q_net/I2_Prod/P4"/>
<sbol:displayId>P4</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:role rdf:resource="http://identifiers.org/biomodels.sbo/SBO:0000645"/>
<sbol:participant rdf:resource="http://dummy.org/MD0r_s_q_net/FC5_norTU/1.0"/>
</sbol:Participation>
</sbol:participation>
</sbol:Interaction>
</sbol:interaction>
</sbol:ModuleDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD7_cds/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD7_cds"/>
<sbol:displayId>CD7_cds</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000316"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD15_cds/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD15_cds"/>
<sbol:displayId>CD15_cds</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000316"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD3__0_/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD3__0_"/>
<sbol:displayId>CD3__0_</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD12_terminator/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD12_terminator"/>
<sbol:displayId>CD12_terminator</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000141"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD1_s/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD1_s"/>
<sbol:displayId>CD1_s</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD6_promoter/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD6_promoter"/>
<sbol:displayId>CD6_promoter</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000167"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD5_er/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_er"/>
<sbol:displayId>CD5_er</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD5_er/C2_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_er/C2_part"/>
<sbol:displayId>C2_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD8_terminator/1.0"/>
</sbol:Component>
</sbol:component>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD5_er/C0_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_er/C0_part"/>
<sbol:displayId>C0_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD6_promoter/1.0"/>
</sbol:Component>
</sbol:component>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD5_er/C1_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD5_er/C1_part"/>
<sbol:displayId>C1_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD7_cds/1.0"/>
</sbol:Component>
</sbol:component>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD2_q/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD2_q"/>
<sbol:displayId>CD2_q</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD13_er/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD13_er"/>
<sbol:displayId>CD13_er</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD13_er/C8_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD13_er/C8_part"/>
<sbol:displayId>C8_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD16_terminator/1.0"/>
</sbol:Component>
</sbol:component>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD13_er/C7_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD13_er/C7_part"/>
<sbol:displayId>C7_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD15_cds/1.0"/>
</sbol:Component>
</sbol:component>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD13_er/C6_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD13_er/C6_part"/>
<sbol:displayId>C6_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD14_promoter/1.0"/>
</sbol:Component>
</sbol:component>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD4__1_/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD4__1_"/>
<sbol:displayId>CD4__1_</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD8_terminator/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD8_terminator"/>
<sbol:displayId>CD8_terminator</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000141"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD14_promoter/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD14_promoter"/>
<sbol:displayId>CD14_promoter</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000167"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD11_cds/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD11_cds"/>
<sbol:displayId>CD11_cds</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000316"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD16_terminator/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD16_terminator"/>
<sbol:displayId>CD16_terminator</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000141"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD0_r/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD0_r"/>
<sbol:displayId>CD0_r</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#Protein"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD10_promoter/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD10_promoter"/>
<sbol:displayId>CD10_promoter</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000167"/>
</sbol:ComponentDefinition>
<sbol:ComponentDefinition rdf:about="http://dummy.org/CD9_er/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD9_er"/>
<sbol:displayId>CD9_er</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:type rdf:resource="http://www.biopax.org/release/biopax-level3.owl#DnaRegion"/>
<sbol:role rdf:resource="http://identifiers.org/so/SO:0000804"/>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD9_er/C3_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD9_er/C3_part"/>
<sbol:displayId>C3_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD10_promoter/1.0"/>
</sbol:Component>
</sbol:component>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD9_er/C5_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD9_er/C5_part"/>
<sbol:displayId>C5_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD12_terminator/1.0"/>
</sbol:Component>
</sbol:component>
<sbol:component>
<sbol:Component rdf:about="http://dummy.org/CD9_er/C4_part/1.0">
<sbol:persistentIdentity rdf:resource="http://dummy.org/CD9_er/C4_part"/>
<sbol:displayId>C4_part</sbol:displayId>
<sbol:version>1.0</sbol:version>
<sbol:access rdf:resource="http://sbols.org/v2#private"/>
<sbol:definition rdf:resource="http://dummy.org/CD11_cds/1.0"/>
</sbol:Component>
</sbol:component>
</sbol:ComponentDefinition>
</rdf:RDF>

View file

@ -6,7 +6,7 @@
<parent>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
<packaging>jar</packaging>
@ -42,7 +42,7 @@
<dependency>
<groupId>edu.utah.ece.async</groupId>
<artifactId>iBioSim-dataModels</artifactId>
<version>3.0.0-SNAPSHOT</version>
<version>3.1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</project>