great... Thank you I will give it a go, by the way I think that is the correct xsd schema for xgmml files
Dear All,
Does anyone know about an XGMML standalone parser implemented in Java/Perl ? I have been searching for a while, but I couldn't find anything except Cytoscape source code (not really standalone), and this perl module which generates a file, but do not parse it. What I am basically trying to do is read in an XGMML file, remove a couple of nodes (and edges) based on a list I have and add some additional information to the nodes and edges, (Gene Id, pathway Id, interaction source .....) although it can be done by adhoc scripting, I prefer to use a library to read in or write out the XGMML file.
Thanks a lot.
2 answers
you can use ${JAVA_HOME}/bin/xjc to generate a java parser from the XML schema:
(is it the correct schema ?) . See my blog for more information.
$ xjc -extension "http://psimi.googlecode.com/svn-history/r579/trunk/calimocho-xgmml/src/main/resources/META-INF/schema/xgmml.xsd"
parsing a schema...
compiling a schema...
org/purl/dc/elements/_1/Contributor.java
org/purl/dc/elements/_1/Coverage.java
org/purl/dc/elements/_1/Creator.java
org/purl/dc/elements/_1/Date.java
org/purl/dc/elements/_1/Description.java
org/purl/dc/elements/_1/Format.java
org/purl/dc/elements/_1/Identifier.java
org/purl/dc/elements/_1/Language.java
org/purl/dc/elements/_1/ObjectFactory.java
org/purl/dc/elements/_1/Publisher.java
org/purl/dc/elements/_1/Relation.java
org/purl/dc/elements/_1/Rights.java
org/purl/dc/elements/_1/Source.java
org/purl/dc/elements/_1/Subject.java
org/purl/dc/elements/_1/Title.java
org/purl/dc/elements/_1/Type.java
org/w3/_1999/_02/_22_rdf_syntax_ns/Description.java
org/w3/_1999/_02/_22_rdf_syntax_ns/ObjectFactory.java
org/w3/_1999/_02/_22_rdf_syntax_ns/RDF.java
org/w3/_1999/_02/_22_rdf_syntax_ns/package-info.java
edu/rpi/cs/xgmml/AnchorType.java
edu/rpi/cs/xgmml/ArcstyleType.java
edu/rpi/cs/xgmml/ArrowType.java
edu/rpi/cs/xgmml/Att.java
edu/rpi/cs/xgmml/CapstyleType.java
edu/rpi/cs/xgmml/Center.java
edu/rpi/cs/xgmml/GraphicEdge.java
edu/rpi/cs/xgmml/GraphicGraph.java
edu/rpi/cs/xgmml/GraphicNode.java
edu/rpi/cs/xgmml/Graphics.java
edu/rpi/cs/xgmml/JoinstyleType.java
edu/rpi/cs/xgmml/JustifyType.java
edu/rpi/cs/xgmml/Line.java
edu/rpi/cs/xgmml/ObjectFactory.java
edu/rpi/cs/xgmml/ObjectType.java
edu/rpi/cs/xgmml/Point.java
edu/rpi/cs/xgmml/SimpleEdge.java
edu/rpi/cs/xgmml/SimpleGraph.java
edu/rpi/cs/xgmml/SimpleNode.java
edu/rpi/cs/xgmml/TypeGraphicsType.java
edu/rpi/cs/xgmml/package-info.java
If you also use python, networkx or igraph can do the job for you. These are proper network analysis tools. I strongly recommend you to give them a try if you are to further deal with networks.
If you want to keep using perl, maybe try Graph:Reader, although I've never used it.
Thanks, I will keep that in mind, but I am a complete noob in python
Log in to answer this question.