This document defines the GraphML language including GraphML attributes and GraphML parseinfo. Simple type for the attr.name attribute of <key>. key.name.type is final, that is, it may not be extended or restricted. key.name.type is a restriction of xs:NMTOKEN Allowed values: (no restriction) Simple type for the attr.type attribute of <key>. key.type.type is final, that is, it may not be extended or restricted. key.type.type is a restriction of xs:NMTOKEN Allowed values: boolean, int, long, float, double, string. Definition of the attribute group key.attributes.attrib. This group consists of the two optional attributes - attr.name (gives the name for the data function) - attr.type ((declares the range of values for the data function) Simple type definitions for the new graph attributes. Simple type for the parse.order attribute of <graph>. graph.order.type is final, that is, it may not be extended or restricted. graph.order.type is a restriction of xs:NMTOKEN Allowed values: free, nodesfirst, adjacencylist. Simple type for the parse.nodes attribute of <graph>. graph.nodes.type is final, that is, it may not be extended or restricted. graph.nodes.type is a restriction of xs:nonNegativeInteger Allowed values: (no restriction). Simple type for the parse.edges attribute of <graph>. graph.edges.type is final, that is, it may not be extended or restricted. graph.edges.type is a restriction of xs:nonNegativeInteger Allowed values: (no restriction). Simple type for the parse.maxindegree attribute of <graph>. graph.maxindegree.type is final, that is, it may not be extended or restricted. graph.maxindegree.type is a restriction of xs:nonNegativeInteger Allowed values: (no restriction). Simple type for the parse.maxoutdegree attribute of <graph>. graph.maxoutdegree.type is final, that is, it may not be extended or restricted. graph.maxoutdegree.type is a restriction of xs:nonNegativeInteger Allowed values: (no restriction). Simple type for the parse.nodeids attribute of <graph>. graph.nodeids.type is final, that is, it may not be extended or restricted. graph.nodeids.type is a restriction of xs:string Allowed values: (no restriction). Simple type for the parse.edgeids attribute of <graph>. graph.edgeids.type is final, that is, it may not be extended or restricted. graph.edgeids.type is a restriction of xs:string Allowed values: (no restriction). Definition of the attribute group graph.parseinfo.attrib. This group consists of the seven attributes - parse.nodeids (fixed to 'canonical' meaning that the id attribute of <node> follows the pattern 'n[number]), - parse.edgeids (fixed to 'canonical' meaning that the id attribute of <edge> follows the pattern 'e[number]), - parse.order (required; one of the values 'nodesfirst', 'adjacencylist' or 'free'), - parse.nodes (required; number of nodes in this graph), - parse.edges (required; number of edges in this graph), - parse.maxindegree (optional; maximal indegree of a node in this graph), - parse.maxoutdegree (optional; maximal outdegree of a node in this graph) Simple type definitions for the new node attributes. Simple type for the parse.indegree attribute of <node>. node.indegree.type is final, that is, it may not be extended or restricted. node.indegree.type is a restriction of xs:nonNegativeInteger Allowed values: (no restriction). Simple type for the parse.outdegree attribute of <node>. node.outdegree.type is final, that is, it may not be extended or restricted. node.outdegree.type is a restriction of xs:nonNegativeInteger Allowed values: (no restriction). Definition of the attribute group node.parseinfo.attrib. This group consists of two attributes - parse.indegree (optional; indegree of this node), - parse.outdegree (optional; outdegree of this node).