public void test_XMLNode_create() { XMLNode node = new XMLNode(); assertTrue(node != null); assertTrue(node.getNumChildren() == 0); node = null; node = new XMLNode(); assertTrue(node != null); XMLNode node2 = new XMLNode(); assertTrue(node2 != null); node.addChild(node2); assertTrue(node.getNumChildren() == 1); XMLNode node3 = new XMLNode(); assertTrue(node3 != null); node.addChild(node3); assertTrue(node.getNumChildren() == 2); node = null; node2 = null; node3 = null; }
public static void main(String[] args) { System.loadLibrary("sbmlj"); if (args.length != 2) { System.out.println(" usage: addingEvidenceCodes_2 <input-filename> <output-filename>"); System.out.println(" Adds controlled vocabulary term to a species"); System.out.println(); System.exit(2); } SBMLDocument d = libsbml.readSBML(args[0]); long errors = d.getNumErrors(); if (errors > 0) { System.out.println("Read Error(s):"); d.printErrors(); System.out.println("Correct the above and re-run."); } else { long n = d.getModel().getNumSpecies(); if (n <= 0) { System.out.println("Model has no species.\n Cannot add CV terms\n"); } else { Species s = d.getModel().getSpecies(0); /* * check that the species has a metaid no CVTerms will be added * if there is no metaid to reference */ if (!s.isSetMetaId()) s.setMetaId("metaid_0000052"); CVTerm cv1 = new CVTerm(libsbml.BIOLOGICAL_QUALIFIER); cv1.setBiologicalQualifierType(libsbml.BQB_OCCURS_IN); cv1.addResource("urn:miriam:obo.go:GO%3A0005764"); s.addCVTerm(cv1); // now create the additional annotation // <rdf:Statement> // <rdf:subject rdf:resource="#metaid_0000052"/> // <rdf:predicate // rdf:resource="http://biomodels.net/biology-qualifiers/occursIn"/> // <rdf:object rdf:resource="urn:miriam:obo.go:GO%3A0005764"/> // <bqbiol:isDescribedBy> // <rdf:Bag> // <rdf:li rdf:resource="urn:miriam:obo.eco:ECO%3A0000004"/> // <rdf:li rdf:resource="urn:miriam:pubmed:7017716"/> // </rdf:Bag> // </bqbiol:isDescribedBy> // </rdf:Statement> /* attributes */ XMLAttributes blank_att = new XMLAttributes(); XMLAttributes resource_att = new XMLAttributes(); /* create the outer statement node */ XMLTriple statement_triple = new XMLTriple("Statement", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); XMLToken statement_token = new XMLToken(statement_triple, blank_att); XMLNode statement = new XMLNode(statement_token); /* create the subject node */ XMLTriple subject_triple = new XMLTriple("subject", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); resource_att.clear(); resource_att.add("rdf:resource", "#" + s.getMetaId()); XMLToken subject_token = new XMLToken(subject_triple, resource_att); XMLNode subject = new XMLNode(subject_token); /* create the predicate node */ XMLTriple predicate_triple = new XMLTriple("predicate", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); resource_att.clear(); resource_att.add("rdf:resource", "http://biomodels.net/biology-qualifiers/occursIn"); XMLToken predicate_token = new XMLToken(predicate_triple, resource_att); XMLNode predicate = new XMLNode(predicate_token); /* create the object node */ XMLTriple object_triple = new XMLTriple("object", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); resource_att.clear(); resource_att.add("rdf:resource", "urn:miriam:obo.go:GO%3A0005764"); XMLToken object_token = new XMLToken(object_triple, resource_att); XMLNode object_ = new XMLNode(object_token); /* create the bqbiol node */ XMLTriple bqbiol_triple = new XMLTriple("isDescribedBy", "http://biomodels.net/biology-qualifiers/", "bqbiol"); XMLToken bqbiol_token = new XMLToken(bqbiol_triple, blank_att); XMLNode bqbiol = new XMLNode(bqbiol_token); /* create the bag node */ XMLTriple bag_triple = new XMLTriple("Bag", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); XMLToken bag_token = new XMLToken(bag_triple, blank_att); XMLNode bag = new XMLNode(bag_token); /* create each li node and add to the bag */ XMLTriple li_triple = new XMLTriple("li", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); resource_att.clear(); resource_att.add("rdf:resource", "urn:miriam:obo.eco:ECO%3A0000004"); XMLToken li_token = new XMLToken(li_triple, resource_att); li_token.setEnd(); XMLNode li = new XMLNode(li_token); bag.addChild(li); resource_att.clear(); resource_att.add("rdf:resource", "urn:miriam:pubmed:7017716"); li_token = new XMLToken(li_triple, resource_att); li_token.setEnd(); li = new XMLNode(li_token); bag.addChild(li); /* add the bag to bqbiol */ bqbiol.addChild(bag); /* add subject, predicate, object and bqbiol to statement */ statement.addChild(subject); statement.addChild(predicate); statement.addChild(object_); statement.addChild(bqbiol); /* * create a top-level RDF element this will ensure correct * merging */ XMLNamespaces xmlns = new XMLNamespaces(); xmlns.add("http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); xmlns.add("http://purl.org/dc/elements/1.1/", "dc"); xmlns.add("http://purl.org/dc/terms/", "dcterms"); xmlns.add("http://www.w3.org/2001/vcard-rdf/3.0#", "vCard"); xmlns.add("http://biomodels.net/biology-qualifiers/", "bqbiol"); xmlns.add("http://biomodels.net/model-qualifiers/", "bqmodel"); XMLTriple RDF_triple = new XMLTriple("RDF", "http://www.w3.org/1999/02/22-rdf-syntax-ns#", "rdf"); XMLToken RDF_token = new XMLToken(RDF_triple, blank_att, xmlns); XMLNode annotation = new XMLNode(RDF_token); /* add the staement node to the RDF node */ annotation.addChild(statement); s.appendAnnotation(annotation); libsbml.writeSBML(d, args[1]); } } System.exit((int) errors); }
public void test_XMLNode_remove() { XMLAttributes attr = new XMLAttributes(); XMLTriple trp_p = new XMLTriple("parent", "", ""); XMLTriple trp_c1 = new XMLTriple("child1", "", ""); XMLTriple trp_c2 = new XMLTriple("child2", "", ""); XMLTriple trp_c3 = new XMLTriple("child3", "", ""); XMLTriple trp_c4 = new XMLTriple("child4", "", ""); XMLTriple trp_c5 = new XMLTriple("child5", "", ""); XMLNode p = new XMLNode(trp_p, attr); XMLNode c1 = new XMLNode(trp_c1, attr); XMLNode c2 = new XMLNode(trp_c2, attr); XMLNode c3 = new XMLNode(trp_c3, attr); XMLNode c4 = new XMLNode(trp_c4, attr); XMLNode c5 = new XMLNode(trp_c5, attr); XMLNode r; p.addChild(c1); p.addChild(c2); p.addChild(c3); p.addChild(c4); p.addChild(c5); r = p.removeChild(5); assertTrue(r == null); r = p.removeChild(1); assertTrue(p.getNumChildren() == 4); assertTrue(!r.getName().equals("child2") == false); r = null; r = p.removeChild(3); assertTrue(p.getNumChildren() == 3); assertTrue(!r.getName().equals("child5") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 2); assertTrue(!r.getName().equals("child1") == false); r = null; r = p.removeChild(1); assertTrue(p.getNumChildren() == 1); assertTrue(!r.getName().equals("child4") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 0); assertTrue(!r.getName().equals("child3") == false); r = null; p.addChild(c1); p.addChild(c2); p.addChild(c3); p.addChild(c4); p.addChild(c5); r = p.removeChild(4); assertTrue(p.getNumChildren() == 4); assertTrue(!r.getName().equals("child5") == false); r = null; r = p.removeChild(3); assertTrue(p.getNumChildren() == 3); assertTrue(!r.getName().equals("child4") == false); r = null; r = p.removeChild(2); assertTrue(p.getNumChildren() == 2); assertTrue(!r.getName().equals("child3") == false); r = null; r = p.removeChild(1); assertTrue(p.getNumChildren() == 1); assertTrue(!r.getName().equals("child2") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 0); assertTrue(!r.getName().equals("child1") == false); r = null; p.addChild(c1); p.addChild(c2); p.addChild(c3); p.addChild(c4); p.addChild(c5); r = p.removeChild(0); assertTrue(p.getNumChildren() == 4); assertTrue(!r.getName().equals("child1") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 3); assertTrue(!r.getName().equals("child2") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 2); assertTrue(!r.getName().equals("child3") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 1); assertTrue(!r.getName().equals("child4") == false); r = null; r = p.removeChild(0); assertTrue(p.getNumChildren() == 0); assertTrue(!r.getName().equals("child5") == false); r = null; p.addChild(c1); p.addChild(c2); p.addChild(c3); p.addChild(c4); p.addChild(c5); r = p.removeChild(0); assertTrue(!r.getName().equals("child1") == false); p.insertChild(0, r); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(0).getName().equals("child1") == false); r = null; r = p.removeChild(1); assertTrue(!r.getName().equals("child2") == false); p.insertChild(1, r); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(1).getName().equals("child2") == false); r = null; r = p.removeChild(2); assertTrue(!r.getName().equals("child3") == false); p.insertChild(2, r); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(2).getName().equals("child3") == false); r = null; r = p.removeChild(3); assertTrue(!r.getName().equals("child4") == false); p.insertChild(3, r); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(3).getName().equals("child4") == false); r = null; r = p.removeChild(4); assertTrue(!r.getName().equals("child5") == false); p.insertChild(4, r); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(4).getName().equals("child5") == false); r = null; p = null; c1 = null; c2 = null; c3 = null; c4 = null; c5 = null; attr = null; trp_p = null; trp_c1 = null; trp_c2 = null; trp_c3 = null; trp_c4 = null; trp_c5 = null; }
public void test_XMLNode_insert() { XMLAttributes attr = new XMLAttributes(); XMLTriple trp_p = new XMLTriple("parent", "", ""); XMLTriple trp_c1 = new XMLTriple("child1", "", ""); XMLTriple trp_c2 = new XMLTriple("child2", "", ""); XMLTriple trp_c3 = new XMLTriple("child3", "", ""); XMLTriple trp_c4 = new XMLTriple("child4", "", ""); XMLTriple trp_c5 = new XMLTriple("child5", "", ""); XMLNode p = new XMLNode(trp_p, attr); XMLNode c1 = new XMLNode(trp_c1, attr); XMLNode c2 = new XMLNode(trp_c2, attr); XMLNode c3 = new XMLNode(trp_c3, attr); XMLNode c4 = new XMLNode(trp_c4, attr); XMLNode c5 = new XMLNode(trp_c5, attr); p.addChild(c2); p.addChild(c4); p.insertChild(0, c1); p.insertChild(2, c3); p.insertChild(4, c5); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(0).getName().equals("child1") == false); assertTrue(!p.getChild(1).getName().equals("child2") == false); assertTrue(!p.getChild(2).getName().equals("child3") == false); assertTrue(!p.getChild(3).getName().equals("child4") == false); assertTrue(!p.getChild(4).getName().equals("child5") == false); p.removeChildren(); p.insertChild(0, c1); p.insertChild(0, c2); p.insertChild(0, c3); p.insertChild(0, c4); p.insertChild(0, c5); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(0).getName().equals("child5") == false); assertTrue(!p.getChild(1).getName().equals("child4") == false); assertTrue(!p.getChild(2).getName().equals("child3") == false); assertTrue(!p.getChild(3).getName().equals("child2") == false); assertTrue(!p.getChild(4).getName().equals("child1") == false); p.removeChildren(); p.insertChild(1, c1); p.insertChild(2, c2); p.insertChild(3, c3); p.insertChild(4, c4); p.insertChild(5, c5); assertTrue(p.getNumChildren() == 5); assertTrue(!p.getChild(0).getName().equals("child1") == false); assertTrue(!p.getChild(1).getName().equals("child2") == false); assertTrue(!p.getChild(2).getName().equals("child3") == false); assertTrue(!p.getChild(3).getName().equals("child4") == false); assertTrue(!p.getChild(4).getName().equals("child5") == false); p.removeChildren(); XMLNode tmp; tmp = p.insertChild(0, c1); assertTrue(!tmp.getName().equals("child1") == false); tmp = p.insertChild(0, c2); assertTrue(!tmp.getName().equals("child2") == false); tmp = p.insertChild(0, c3); assertTrue(!tmp.getName().equals("child3") == false); tmp = p.insertChild(0, c4); assertTrue(!tmp.getName().equals("child4") == false); tmp = p.insertChild(0, c5); assertTrue(!tmp.getName().equals("child5") == false); p.removeChildren(); tmp = p.insertChild(1, c1); assertTrue(!tmp.getName().equals("child1") == false); tmp = p.insertChild(2, c2); assertTrue(!tmp.getName().equals("child2") == false); tmp = p.insertChild(3, c3); assertTrue(!tmp.getName().equals("child3") == false); tmp = p.insertChild(4, c4); assertTrue(!tmp.getName().equals("child4") == false); tmp = p.insertChild(5, c5); assertTrue(!tmp.getName().equals("child5") == false); p = null; c1 = null; c2 = null; c3 = null; c4 = null; c5 = null; attr = null; trp_p = null; trp_c1 = null; trp_c2 = null; trp_c3 = null; trp_c4 = null; trp_c5 = null; }