=== What is XGMML? === [[http://www.cs.rpi.edu/~puninj/XGMML/|XGMML]] is an XML version of [[http://infosun.fmi.uni-passau.de/Graphlet/GML/|GML]]. === XGMML in Cytoscape === In future releases, Cytoscape's standard format for saving graph layout will be XGMML. Users can save graph topology AND attributes in the same file. === XML Schema === The code to manipulate data element in XML file will be generated by data binding package, called [[http://java.sun.com/webservices/jaxb/|Java Architecture for XML Binding (JAXB)]]. JAXB automatically generate JAVA code based on XML Schema. XML schema for XGMML is available [[http://www.cs.rpi.edu/~puninj/XGMML/xgmml.xsd|here]]. === Metanode and XGMML === In Cytoscape v2.3, a new concept called Metanode will be introduced. In XGMML, a metanode is a node which has a subgraph containing nodes and edges. For more information, please read [[Metanode_In_XGMML]] section. === File Format === Network file in XGMML has the following information: * Interactions (Nodes/Edges) * Attributes (annotation for nodes/edges) * Graphical representation of nodes and edges * Network meta-info in RDF * This is general information for the network. Generic information like network name, date modified, etc. will be inserted here. The data format used for network meta-information is RDF (Resource Description Framework). The supported attributes are taken from Dublin Core Metadata Element Set (DCMES): * Title * Creator * Subject * Description * Publisher * Contributor * Date * Type * Format * Identifier * Source * Language * Relation * Coverage * Rights * Although the internal data structure will support all of the above, GUI (Network Metadata Editor) supports a subset of the elements. For more information about DCMES, please visit [[http://dublincore.org/documents/dces/|here]]. JamesMcIninch 2006/04/20: . Questions: * Previously, attributes could be any Java type -- java.net.URL for instance -- and XGMML supports "list", "integer", "real", and "string". What thought has been given to restoring the ability to use other types? * The examples in the testData directory put the '''type''' of the attribute . in the '''label'''. For example, {{{ }}} . instead of the correct XGMML {{{ }}} . .. should that not be fixed? Is Cytoscape doing the the right thing? === Example === The example below describes a small graph in xgmml which will import successfully into '''Cytoscape v2.8.2''' {{{ }}} please note that: * every , and element '''must''' contain a ''label'' attribute. Failure to do so will result in a null-pointer error during the import. * all of the ''xmsns'' attributes in the root element '''must''' be present * including data associated with , and elements requires an element with the attributes ''name'', ''type'' and ''value'' as shown