public void test_XMLNode_convert() { String xmlstr = "<annotation>\n" + " <test xmlns=\"http://test.org/\" id=\"test\">test</test>\n" + "</annotation>"; XMLNode node; XMLNode child, gchild; XMLAttributes attr; XMLNamespaces ns; node = XMLNode.convertStringToXMLNode(xmlstr, null); child = node.getChild(0); gchild = child.getChild(0); attr = child.getAttributes(); ns = child.getNamespaces(); assertTrue(!node.getName().equals("annotation") == false); assertTrue(!child.getName().equals("test") == false); assertTrue(!gchild.getCharacters().equals("test") == false); assertTrue(!attr.getName(0).equals("id") == false); assertTrue(!attr.getValue(0).equals("test") == false); assertTrue(!ns.getURI(0).equals("http://test.org/") == false); assertTrue(ns.getPrefix(0).equals("") == true); String toxmlstring = node.toXMLString(); assertTrue(!toxmlstring.equals(xmlstr) == false); node = null; }
public void test_XMLNode_attribute_set_clear() { XMLTriple triple = new XMLTriple("test", "", ""); XMLAttributes attr = new XMLAttributes(); XMLNode node = new XMLNode(triple, attr); XMLAttributes nattr = new XMLAttributes(); XMLTriple xt1 = new XMLTriple("name1", "http://name1.org/", "p1"); XMLTriple xt2 = new XMLTriple("name2", "http://name2.org/", "p2"); XMLTriple xt3 = new XMLTriple("name3", "http://name3.org/", "p3"); XMLTriple xt4 = new XMLTriple("name4", "http://name4.org/", "p4"); XMLTriple xt5 = new XMLTriple("name5", "http://name5.org/", "p5"); nattr.add(xt1, "val1"); nattr.add(xt2, "val2"); nattr.add(xt3, "val3"); nattr.add(xt4, "val4"); nattr.add(xt5, "val5"); node.setAttributes(nattr); assertTrue(node.getAttributesLength() == 5); assertTrue(node.isAttributesEmpty() == false); assertTrue(!node.getAttrName(0).equals("name1") == false); assertTrue(!node.getAttrValue(0).equals("val1") == false); assertTrue(!node.getAttrURI(0).equals("http://name1.org/") == false); assertTrue(!node.getAttrPrefix(0).equals("p1") == false); assertTrue(!node.getAttrName(1).equals("name2") == false); assertTrue(!node.getAttrValue(1).equals("val2") == false); assertTrue(!node.getAttrURI(1).equals("http://name2.org/") == false); assertTrue(!node.getAttrPrefix(1).equals("p2") == false); assertTrue(!node.getAttrName(2).equals("name3") == false); assertTrue(!node.getAttrValue(2).equals("val3") == false); assertTrue(!node.getAttrURI(2).equals("http://name3.org/") == false); assertTrue(!node.getAttrPrefix(2).equals("p3") == false); assertTrue(!node.getAttrName(3).equals("name4") == false); assertTrue(!node.getAttrValue(3).equals("val4") == false); assertTrue(!node.getAttrURI(3).equals("http://name4.org/") == false); assertTrue(!node.getAttrPrefix(3).equals("p4") == false); assertTrue(!node.getAttrName(4).equals("name5") == false); assertTrue(!node.getAttrValue(4).equals("val5") == false); assertTrue(!node.getAttrURI(4).equals("http://name5.org/") == false); assertTrue(!node.getAttrPrefix(4).equals("p5") == false); XMLTriple ntriple = new XMLTriple("test2", "http://test2.org/", "p2"); node.setTriple(ntriple); assertTrue(!node.getName().equals("test2") == false); assertTrue(!node.getURI().equals("http://test2.org/") == false); assertTrue(!node.getPrefix().equals("p2") == false); node.clearAttributes(); assertTrue(node.getAttributesLength() == 0); assertTrue(node.isAttributesEmpty() != false); triple = null; ntriple = null; node = null; attr = null; nattr = null; xt1 = null; xt2 = null; xt3 = null; xt4 = null; xt5 = null; }
public void test_XMLNode_getters() { XMLToken token; XMLNode node; XMLTriple triple; XMLAttributes attr; XMLNamespaces NS; NS = new XMLNamespaces(); NS.add("http://test1.org/", "test1"); token = new XMLToken("This is a test"); node = new XMLNode(token); assertTrue(node != null); assertTrue(node.getNumChildren() == 0); assertTrue(!node.getCharacters().equals("This is a test") == false); assertTrue(node.getChild(1) != null); attr = new XMLAttributes(); assertTrue(attr != null); attr.add("attr2", "value"); triple = new XMLTriple("attr", "uri", "prefix"); token = new XMLToken(triple, attr); assertTrue(token != null); node = new XMLNode(token); assertTrue(!node.getName().equals("attr") == false); assertTrue(!node.getURI().equals("uri") == false); assertTrue(!node.getPrefix().equals("prefix") == false); XMLAttributes returnattr = node.getAttributes(); assertTrue(!returnattr.getName(0).equals("attr2") == false); assertTrue(!returnattr.getValue(0).equals("value") == false); token = new XMLToken(triple, attr, NS); node = new XMLNode(token); XMLNamespaces returnNS = node.getNamespaces(); assertTrue(returnNS.getLength() == 1); assertTrue(returnNS.isEmpty() == false); triple = null; token = null; node = 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_createElement() { XMLTriple triple; XMLAttributes attr; XMLNamespaces ns; XMLNode snode, enode, tnode; XMLAttributes cattr; String name = "test"; String uri = "http://test.org/"; String prefix = "p"; String text = "text node"; triple = new XMLTriple(name, uri, prefix); ns = new XMLNamespaces(); attr = new XMLAttributes(); ns.add(uri, prefix); attr.add("id", "value", uri, prefix); snode = new XMLNode(triple, attr, ns); assertTrue(snode != null); assertTrue(snode.getNumChildren() == 0); assertTrue(!snode.getName().equals(name) == false); assertTrue(!snode.getPrefix().equals(prefix) == false); assertTrue(!snode.getURI().equals(uri) == false); assertTrue(snode.isElement() == true); assertTrue(snode.isStart() == true); assertTrue(snode.isEnd() == false); assertTrue(snode.isText() == false); snode.setEnd(); assertTrue(snode.isEnd() == true); snode.unsetEnd(); assertTrue(snode.isEnd() == false); cattr = snode.getAttributes(); assertTrue(cattr != null); assertTrue(!cattr.getName(0).equals("id") == false); assertTrue(!cattr.getValue(0).equals("value") == false); assertTrue(!cattr.getPrefix(0).equals(prefix) == false); assertTrue(!cattr.getURI(0).equals(uri) == false); triple = null; attr = null; ns = null; snode = null; attr = new XMLAttributes(); attr.add("id", "value"); triple = new XMLTriple(name, "", ""); snode = new XMLNode(triple, attr); assertTrue(snode != null); assertTrue(snode.getNumChildren() == 0); assertTrue(!snode.getName().equals("test") == false); assertTrue(snode.getPrefix().equals("") == true); assertTrue(snode.getURI().equals("") == true); assertTrue(snode.isElement() == true); assertTrue(snode.isStart() == true); assertTrue(snode.isEnd() == false); assertTrue(snode.isText() == false); cattr = snode.getAttributes(); assertTrue(cattr != null); assertTrue(!cattr.getName(0).equals("id") == false); assertTrue(!cattr.getValue(0).equals("value") == false); assertTrue(cattr.getPrefix(0).equals("") == true); assertTrue(cattr.getURI(0).equals("") == true); enode = new XMLNode(triple); assertTrue(enode != null); assertTrue(enode.getNumChildren() == 0); assertTrue(!enode.getName().equals("test") == false); assertTrue(enode.getPrefix().equals("") == true); assertTrue(enode.getURI().equals("") == true); assertTrue(enode.isElement() == true); assertTrue(enode.isStart() == false); assertTrue(enode.isEnd() == true); assertTrue(enode.isText() == false); tnode = new XMLNode(text); assertTrue(tnode != null); assertTrue(!tnode.getCharacters().equals(text) == false); assertTrue(tnode.getNumChildren() == 0); assertTrue(tnode.getName().equals("") == true); assertTrue(tnode.getPrefix().equals("") == true); assertTrue(tnode.getURI().equals("") == true); assertTrue(tnode.isElement() == false); assertTrue(tnode.isStart() == false); assertTrue(tnode.isEnd() == false); assertTrue(tnode.isText() == true); triple = null; attr = null; snode = null; enode = null; tnode = null; }