ygraphml.xsd 67 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Header this is flattened by Arkadiusz Binder to locally parse data faster -->
  3. <xs:schema xmlns="http://graphml.graphdrawing.org/xmlns"
  4. xmlns:xlink="http://www.w3.org/1999/xlink"
  5. xmlns:xs="http://www.w3.org/2001/XMLSchema"
  6. xmlns:y="http://www.yworks.com/xml/graphml"
  7. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  8. xmlns:p5_tr_map="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/procesy5_translate_map.xsd"
  9. xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning"
  10. xmlns:system_cache__resources_tree_generate_xsl_required_occurs_raport="http://biuro.biall-net.pl/xmlschema_procesy5/system_cache/resources_tree_generate_xsl_require_occurs_raport"
  11. xmlns:system_cache__appinfo="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/appinfo.xsd"
  12. xmlns:p5opr="http://biuro.biall-net.pl/xmlschema_procesy5/system_cache/object_parent_relations/object_parent_relations.xsd"
  13. xmlns:p5_simpleSchema_map="http://biuro.biall-net.pl/xmlschema_procesy5/default_db_xml_cache/p5_simpleSchema_map.xsd"
  14. attributeFormDefault="unqualified"
  15. elementFormDefault="qualified"
  16. targetNamespace="http://graphml.graphdrawing.org/xmlns">
  17. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  18. <xs:documentation> GraphML core language definitions including GraphML attributes and
  19. GraphML parseinfo. </xs:documentation>
  20. </xs:annotation>
  21. <xs:import namespace="http://www.yworks.com/xml/graphml"
  22. schemaLocation="yfeatures.xsd"/>
  23. <!--<xs:include schemaLocation="graphml-parseinfo.xsd"/>-->
  24. <!-- Redefinition of the elements in the graphml-structure schema -->
  25. <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink.xsd">
  26. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  27. <xs:documentation xml:lang="en"> Get access to the xlink attribute groups for
  28. the attributes xlink:href and xlink:type of locator.type.
  29. </xs:documentation>
  30. </xs:annotation>
  31. </xs:import>
  32. <xs:attributeGroup name="key.extra.attrib">
  33. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  34. <xs:documentation> Redefinition of file graphml-structure.xsd.
  35. <p>Extends the attribute group key.extra.attrib (which takes part in
  36. the attribute list of &lt;key&gt;) by adding the attribute yfiles.type which
  37. is defined below. </p>
  38. </xs:documentation>
  39. </xs:annotation>
  40. <xs:attributeGroup ref="key.extra.attrib_Redefined1"/>
  41. <xs:attribute name="yfiles.type"
  42. type="xs:string"
  43. use="optional"
  44. id="___d15e95140-1_yfiles.typ">
  45. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  46. <xs:documentation> Custom yfiles specific attribute that allows to
  47. specify an additional data type. </xs:documentation>
  48. </xs:annotation>
  49. </xs:attribute>
  50. </xs:attributeGroup>
  51. <xs:attributeGroup name="key.extra.attrib_Redefined1">
  52. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  53. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  54. Redefinition of file graphml-structure.xsd. Extends the attribute group
  55. key.extra.attrib (which takes part in the attribute list of &lt;key&gt;) by adding
  56. the attribute group key.attributes.attrib which is defined below.
  57. </xs:documentation>
  58. </xs:annotation>
  59. <xs:attributeGroup ref="key.extra.attrib_Redefined0"/>
  60. <xs:attributeGroup ref="key.attributes.attrib"/>
  61. </xs:attributeGroup>
  62. <!-- Definition of the different grouping types -->
  63. <!-- The grouping type is stored as attribute at the node element -->
  64. <xs:attributeGroup name="node.extra.attrib">
  65. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  66. <xs:documentation> Redefinition of file graphml-structure.xsd.
  67. <p>Extends the attribute group node.extra.attrib (which takes part
  68. in the attribute list of &lt;node&gt;) by adding a yfiles specific attribute
  69. for the folder type. </p>
  70. </xs:documentation>
  71. </xs:annotation>
  72. <xs:attributeGroup ref="node.extra.attrib_Redefined1"/>
  73. <xs:attribute name="yfiles.foldertype"
  74. type="yfiles.foldertype.type"
  75. use="optional"
  76. id="___d15e95159-1_yfiles.fol">
  77. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  78. <xs:documentation> The foldertype for group/folder nodes.
  79. </xs:documentation>
  80. </xs:annotation>
  81. </xs:attribute>
  82. </xs:attributeGroup>
  83. <xs:attributeGroup name="node.extra.attrib_Redefined1">
  84. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  85. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  86. Redefinition of file graphml-structure.xsd. Extends the attribute group
  87. graph.extra.attrib (which takes part in the attribute list of &lt;graph&gt;) by
  88. adding the attribute group graph.parseinfo.attrib which is defined below.
  89. </xs:documentation>
  90. </xs:annotation>
  91. <xs:attributeGroup ref="node.extra.attrib_Redefined0"/>
  92. <xs:attributeGroup ref="node.parseinfo.attrib"/>
  93. </xs:attributeGroup>
  94. <xs:complexType name="data-extension.type" id="___d15e95170-1_data__x2D__exten">
  95. <xs:complexContent mixed="true" id="___d15e95171-1">
  96. <xs:extension base="data-extension.type_Redefined0" id="___d15e95172-1">
  97. <xs:sequence id="___d15e95173-1">
  98. <xs:any maxOccurs="unbounded" minOccurs="0" processContents="strict"/>
  99. </xs:sequence>
  100. </xs:extension>
  101. </xs:complexContent>
  102. </xs:complexType>
  103. <xs:complexType mixed="true"
  104. name="data-extension.type_Redefined0"
  105. id="___d15e95175-1_data__x2D__exten">
  106. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  107. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  108. Extension mechanism for the content of &lt;data&gt; and &lt;default&gt;. The complex type
  109. data-extension.type is empty per default. Users may redefine this type in
  110. order to add content to the complex types data.type and default.type which
  111. are extensions of data-extension.type. </xs:documentation>
  112. </xs:annotation>
  113. </xs:complexType>
  114. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  115. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> This
  116. document defines the GraphML language including GraphML attributes and GraphML
  117. parseinfo. </xs:documentation>
  118. </xs:annotation>
  119. <xs:attributeGroup name="key.extra.attrib_Redefined0">
  120. <xs:attributeGroup ref="common.extra.attrib"/>
  121. </xs:attributeGroup>
  122. <xs:attributeGroup name="graph.extra.attrib">
  123. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  124. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  125. Redefinition of file graphml-structure.xsd. Extends the attribute group
  126. node.extra.attrib (which takes part in the attribute list of &lt;node&gt;) by adding
  127. the attribute group node.parseinfo.attrib which is defined below.
  128. </xs:documentation>
  129. </xs:annotation>
  130. <xs:attributeGroup ref="graph.extra.attrib_Redefined0"/>
  131. <xs:attributeGroup ref="graph.parseinfo.attrib"/>
  132. </xs:attributeGroup>
  133. <xs:attributeGroup name="graph.extra.attrib_Redefined0">
  134. <xs:attributeGroup ref="common.extra.attrib"/>
  135. </xs:attributeGroup>
  136. <xs:attributeGroup name="node.extra.attrib_Redefined0">
  137. <xs:attributeGroup ref="common.extra.attrib"/>
  138. </xs:attributeGroup>
  139. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  140. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> The schema
  141. corresponding to this document defines the structural layer of the Graph Markup
  142. Language (GraphML). Although a DTD is provided, this schema is, together with its
  143. extensions http://graphml.graphdrawing.org/xmlns/1.0/graphml-attributes.xsd
  144. and http://graphml.graphdrawing.org/xmlns/1.0/graphml-parseinfo.xsd, the
  145. only normative reference. </xs:documentation>
  146. </xs:annotation>
  147. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  148. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> The
  149. attribute groups &lt;element_name&gt;.extra.attrib may be used for adding user defined
  150. attributes to the elements &lt;element_name&gt;. The attribute group
  151. common.extra.attrib may be used for adding user defined attributes to all
  152. elements. </xs:documentation>
  153. </xs:annotation>
  154. <xs:attributeGroup name="common.extra.attrib"/>
  155. <xs:attributeGroup name="graphml.extra.attrib">
  156. <xs:attributeGroup ref="common.extra.attrib"/>
  157. </xs:attributeGroup>
  158. <xs:attributeGroup name="data.extra.attrib">
  159. <xs:attributeGroup ref="common.extra.attrib"/>
  160. </xs:attributeGroup>
  161. <xs:attributeGroup name="default.extra.attrib">
  162. <xs:attributeGroup ref="common.extra.attrib"/>
  163. </xs:attributeGroup>
  164. <xs:attributeGroup name="edge.extra.attrib">
  165. <xs:attributeGroup ref="common.extra.attrib"/>
  166. </xs:attributeGroup>
  167. <xs:attributeGroup name="port.extra.attrib">
  168. <xs:attributeGroup ref="common.extra.attrib"/>
  169. </xs:attributeGroup>
  170. <xs:attributeGroup name="hyperedge.extra.attrib">
  171. <xs:attributeGroup ref="common.extra.attrib"/>
  172. </xs:attributeGroup>
  173. <xs:attributeGroup name="endpoint.extra.attrib">
  174. <xs:attributeGroup ref="common.extra.attrib"/>
  175. </xs:attributeGroup>
  176. <xs:attributeGroup name="locator.extra.attrib">
  177. <xs:attributeGroup ref="common.extra.attrib"/>
  178. </xs:attributeGroup>
  179. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  180. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Complex
  181. type definitions for the GraphML structural layer elements: &lt;data&gt;, &lt;default&gt;, &lt;key&gt;,
  182. &lt;graphml&gt;, &lt;graph&gt;, &lt;node&gt;, &lt;port&gt;, &lt;edge&gt;, &lt;hyperedge&gt;, &lt;endpoint&gt; and &lt;locator&gt;. The
  183. names of the complex types are constructed corresponding to the pattern
  184. element_name.type. (The only remaining GraphML structural layer element &lt;desc&gt;
  185. is of simple type xs:string.) </xs:documentation>
  186. </xs:annotation>
  187. <xs:complexType final="#all" name="data.type" id="___d15e95221-1_data.type">
  188. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  189. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  190. Complex type for the &lt;data&gt; element. data.type is mixed, that is, &lt;data&gt; may
  191. contain #PCDATA. Content type: extension of data-extension.type which is
  192. empty per default. </xs:documentation>
  193. </xs:annotation>
  194. <xs:complexContent mixed="true" id="___d15e95225-1">
  195. <xs:extension base="data-extension.type" id="___d15e95226-1">
  196. <xs:attribute form="unqualified"
  197. name="key"
  198. type="xs:NMTOKEN"
  199. use="required"
  200. id="___d15e95227-1_key">
  201. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  202. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">refers to the id attribute of a &lt;key&gt;. </xs:documentation>
  203. </xs:annotation>
  204. </xs:attribute>
  205. <xs:attribute form="unqualified"
  206. name="id"
  207. type="xs:NMTOKEN"
  208. use="optional"
  209. id="___d15e95231-1_id">
  210. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  211. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">identifies this &lt;data&gt;. </xs:documentation>
  212. </xs:annotation>
  213. </xs:attribute>
  214. <xs:attributeGroup ref="data.extra.attrib">
  215. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  216. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  217. user defined extra attributes for &lt;data&gt; elements
  218. </xs:documentation>
  219. </xs:annotation>
  220. </xs:attributeGroup>
  221. </xs:extension>
  222. </xs:complexContent>
  223. </xs:complexType>
  224. <xs:complexType final="#all" name="default.type" id="___d15e95239-1_default.ty">
  225. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  226. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  227. Complex type for the &lt;default&gt; element. default.type is mixed, that is, data
  228. may contain #PCDATA. Content type: extension of data-extension.type which is
  229. empty per default. </xs:documentation>
  230. </xs:annotation>
  231. <xs:complexContent mixed="true" id="___d15e95243-1">
  232. <xs:extension base="data-extension.type" id="___d15e95244-1">
  233. <xs:attributeGroup ref="default.extra.attrib">
  234. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  235. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  236. user defined extra attributes for &lt;default&gt; elements
  237. </xs:documentation>
  238. </xs:annotation>
  239. </xs:attributeGroup>
  240. </xs:extension>
  241. </xs:complexContent>
  242. </xs:complexType>
  243. <xs:simpleType final="#all" name="key.for.type" id="___d15e95249-1_key.for.ty">
  244. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  245. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  246. Simple type for the for attribute of &lt;key&gt;. key.for.type is a restriction of
  247. xs:NMTOKEN Allowed values: all, graphml, graph, node, edge, hyperedge, port
  248. and endpoint. </xs:documentation>
  249. </xs:annotation>
  250. <xs:restriction base="xs:NMTOKEN">
  251. <xs:enumeration value="all"/>
  252. <xs:enumeration value="graph"/>
  253. <xs:enumeration value="node"/>
  254. <xs:enumeration value="edge"/>
  255. <xs:enumeration value="hyperedge"/>
  256. <xs:enumeration value="port"/>
  257. <xs:enumeration value="endpoint"/>
  258. <xs:enumeration value="graphml"/>
  259. </xs:restriction>
  260. </xs:simpleType>
  261. <xs:complexType final="#all" name="key.type" id="___d15e95263-1_key.type">
  262. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  263. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  264. Complex type for the &lt;key&gt; element. </xs:documentation>
  265. </xs:annotation>
  266. <xs:sequence id="___d15e95267-1">
  267. <xs:element minOccurs="0" ref="desc" id="___d15e95268-1"/>
  268. <xs:element minOccurs="0" ref="default" id="___d15e95269-1"/>
  269. </xs:sequence>
  270. <xs:attribute form="unqualified"
  271. name="id"
  272. type="xs:NMTOKEN"
  273. use="required"
  274. id="___d15e95270-1_id">
  275. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  276. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">identifies
  277. this &lt;key&gt;. </xs:documentation>
  278. </xs:annotation>
  279. </xs:attribute>
  280. <xs:attribute default="all"
  281. form="unqualified"
  282. name="for"
  283. type="key.for.type"
  284. id="___d15e95274-1_for">
  285. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  286. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  287. describes the domain of definition for the corresponding graph
  288. attribute. </xs:documentation>
  289. </xs:annotation>
  290. </xs:attribute>
  291. <xs:attributeGroup ref="key.extra.attrib">
  292. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  293. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  294. user defined extra attributes for &lt;key&gt; elements. </xs:documentation>
  295. </xs:annotation>
  296. </xs:attributeGroup>
  297. </xs:complexType>
  298. <xs:complexType final="#all" name="graphml.type" id="___d15e95282-1_graphml.ty">
  299. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  300. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  301. Complex type for the &lt;graphml&gt; element. </xs:documentation>
  302. </xs:annotation>
  303. <xs:sequence id="___d15e95286-1">
  304. <xs:element minOccurs="0" ref="desc" id="___d15e95287-1"/>
  305. <xs:element maxOccurs="unbounded"
  306. minOccurs="0"
  307. ref="key"
  308. id="___d15e95288-1"/>
  309. <xs:sequence id="___d15e95289-1">
  310. <xs:choice maxOccurs="unbounded" minOccurs="0" id="___d15e95290-1">
  311. <xs:element ref="graph" id="___d15e95291-1"/>
  312. <xs:element ref="data" id="___d15e95292-1"/>
  313. </xs:choice>
  314. </xs:sequence>
  315. </xs:sequence>
  316. <xs:attributeGroup ref="graphml.extra.attrib">
  317. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  318. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  319. user defined extra attributes for &lt;graphml&gt; elements. </xs:documentation>
  320. </xs:annotation>
  321. </xs:attributeGroup>
  322. </xs:complexType>
  323. <xs:simpleType final="#all"
  324. name="graph.edgedefault.type"
  325. id="___d15e95297-1_graph.edge">
  326. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  327. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  328. Simple type for the edgedefault attribute of &lt;graph&gt;. graph.edgedefault.type
  329. is a restriction of xs:NMTOKEN Allowed values: directed, undirected.
  330. </xs:documentation>
  331. </xs:annotation>
  332. <xs:restriction base="xs:NMTOKEN">
  333. <xs:enumeration value="directed"/>
  334. <xs:enumeration value="undirected"/>
  335. </xs:restriction>
  336. </xs:simpleType>
  337. <xs:complexType final="#all" name="graph.type" id="___d15e95304-1_graph.type">
  338. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  339. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  340. Complex type for the &lt;graph&gt; element. </xs:documentation>
  341. </xs:annotation>
  342. <xs:sequence id="___d15e95308-1">
  343. <xs:element minOccurs="0" ref="desc" id="___d15e95309-1"/>
  344. <xs:choice id="___d15e95310-1">
  345. <xs:sequence id="___d15e95311-1">
  346. <xs:choice maxOccurs="unbounded" minOccurs="0" id="___d15e95312-1">
  347. <xs:element ref="data" id="___d15e95313-1"/>
  348. <xs:element ref="node" id="___d15e95314-1"/>
  349. <xs:element ref="edge" id="___d15e95315-1"/>
  350. <xs:element ref="hyperedge" id="___d15e95316-1"/>
  351. </xs:choice>
  352. </xs:sequence>
  353. <xs:element ref="locator" id="___d15e95317-1"/>
  354. </xs:choice>
  355. </xs:sequence>
  356. <xs:attributeGroup ref="graph.extra.attrib">
  357. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  358. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  359. user defined extra attributes for &lt;graph&gt; elements. </xs:documentation>
  360. </xs:annotation>
  361. </xs:attributeGroup>
  362. <xs:attribute form="unqualified"
  363. name="id"
  364. type="xs:NMTOKEN"
  365. id="___d15e95322-1_id">
  366. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  367. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  368. identifies this graph . </xs:documentation>
  369. </xs:annotation>
  370. </xs:attribute>
  371. <xs:attribute form="unqualified"
  372. name="edgedefault"
  373. type="graph.edgedefault.type"
  374. use="required"
  375. id="___d15e95326-1_edgedefaul">
  376. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  377. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  378. describes whether edges of this graph are considered as directed or
  379. undirected per default (unless specified by the attribute directed of
  380. &lt;edge&gt;). </xs:documentation>
  381. </xs:annotation>
  382. </xs:attribute>
  383. </xs:complexType>
  384. <xs:complexType final="#all" name="node.type" id="___d15e95330-1_node.type">
  385. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  386. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  387. Complex type for the &lt;node&gt; element. </xs:documentation>
  388. </xs:annotation>
  389. <xs:sequence id="___d15e95334-1">
  390. <xs:element minOccurs="0" ref="desc" id="___d15e95335-1"/>
  391. <xs:choice id="___d15e95336-1">
  392. <xs:sequence id="___d15e95337-1">
  393. <xs:choice maxOccurs="unbounded" minOccurs="0" id="___d15e95338-1">
  394. <xs:element ref="data" id="___d15e95339-1"/>
  395. <xs:element ref="port" id="___d15e95340-1"/>
  396. <xs:element ref="graph" id="___d15e95341-1"/>
  397. </xs:choice>
  398. </xs:sequence>
  399. <xs:element ref="locator" id="___d15e95342-1"/>
  400. </xs:choice>
  401. </xs:sequence>
  402. <xs:attributeGroup ref="node.extra.attrib">
  403. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  404. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  405. user defined extra attributes for &lt;node elements. </xs:documentation>
  406. </xs:annotation>
  407. </xs:attributeGroup>
  408. <xs:attribute form="unqualified"
  409. name="id"
  410. type="xs:NMTOKEN"
  411. use="required"
  412. id="___d15e95347-1_id">
  413. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  414. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  415. identifies this node. </xs:documentation>
  416. </xs:annotation>
  417. </xs:attribute>
  418. </xs:complexType>
  419. <xs:complexType final="#all" name="port.type" id="___d15e95351-1_port.type">
  420. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  421. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  422. Complex type for the &lt;port&gt; element. </xs:documentation>
  423. </xs:annotation>
  424. <xs:sequence id="___d15e95355-1">
  425. <xs:element minOccurs="0" ref="desc" id="___d15e95356-1"/>
  426. <xs:choice maxOccurs="unbounded" minOccurs="0" id="___d15e95357-1">
  427. <xs:element ref="data" id="___d15e95358-1"/>
  428. <xs:element ref="port" id="___d15e95359-1"/>
  429. </xs:choice>
  430. </xs:sequence>
  431. <xs:attributeGroup ref="port.extra.attrib">
  432. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  433. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  434. user defined extra attributes for &lt;port&gt; elements. </xs:documentation>
  435. </xs:annotation>
  436. </xs:attributeGroup>
  437. <xs:attribute form="unqualified"
  438. name="name"
  439. type="xs:NMTOKEN"
  440. use="required"
  441. id="___d15e95364-1_name">
  442. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  443. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  444. identifies this port, within the node it is contained in.
  445. </xs:documentation>
  446. </xs:annotation>
  447. </xs:attribute>
  448. </xs:complexType>
  449. <xs:complexType final="#all" name="edge.type" id="___d15e95368-1_edge.type">
  450. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  451. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  452. Complex type for the &lt;edge&gt; element. </xs:documentation>
  453. </xs:annotation>
  454. <xs:sequence id="___d15e95372-1">
  455. <xs:element minOccurs="0" ref="desc" id="___d15e95373-1"/>
  456. <xs:element maxOccurs="unbounded"
  457. minOccurs="0"
  458. ref="data"
  459. id="___d15e95374-1"/>
  460. <xs:element minOccurs="0" ref="graph" id="___d15e95375-1"/>
  461. </xs:sequence>
  462. <xs:attributeGroup ref="edge.extra.attrib">
  463. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  464. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  465. user defined extra attributes for &lt;edge&gt; elements. </xs:documentation>
  466. </xs:annotation>
  467. </xs:attributeGroup>
  468. <xs:attribute form="unqualified"
  469. name="id"
  470. type="xs:NMTOKEN"
  471. id="___d15e95380-1_id">
  472. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  473. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  474. identifies this edge . </xs:documentation>
  475. </xs:annotation>
  476. </xs:attribute>
  477. <xs:attribute form="unqualified"
  478. name="directed"
  479. type="xs:boolean"
  480. id="___d15e95384-1_directed">
  481. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  482. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  483. overwrites the edgedefault attribute of &lt;graph&gt; . </xs:documentation>
  484. </xs:annotation>
  485. </xs:attribute>
  486. <xs:attribute form="unqualified"
  487. name="source"
  488. type="xs:NMTOKEN"
  489. use="required"
  490. id="___d15e95388-1_source">
  491. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  492. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  493. points to the id attribute of the source &lt;node&gt;. </xs:documentation>
  494. </xs:annotation>
  495. </xs:attribute>
  496. <xs:attribute form="unqualified"
  497. name="target"
  498. type="xs:NMTOKEN"
  499. use="required"
  500. id="___d15e95392-1_target">
  501. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  502. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  503. points to the id attribute of the target &lt;node&gt;. </xs:documentation>
  504. </xs:annotation>
  505. </xs:attribute>
  506. <xs:attribute form="unqualified"
  507. name="sourceport"
  508. type="xs:NMTOKEN"
  509. id="___d15e95396-1_sourceport">
  510. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  511. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  512. points to the name attribute of the source &lt;port&gt;. </xs:documentation>
  513. </xs:annotation>
  514. </xs:attribute>
  515. <xs:attribute form="unqualified"
  516. name="targetport"
  517. type="xs:NMTOKEN"
  518. id="___d15e95400-1_targetport">
  519. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  520. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  521. points to the name attribute of the target &lt;port&gt;. </xs:documentation>
  522. </xs:annotation>
  523. </xs:attribute>
  524. </xs:complexType>
  525. <xs:complexType final="#all" name="hyperedge.type" id="___d15e95404-1_hyperedge.">
  526. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  527. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  528. Complex type for the &lt;hyperedge&gt; element. </xs:documentation>
  529. </xs:annotation>
  530. <xs:sequence id="___d15e95408-1">
  531. <xs:element minOccurs="0" ref="desc" id="___d15e95409-1"/>
  532. <xs:choice maxOccurs="unbounded" minOccurs="0" id="___d15e95410-1">
  533. <xs:element ref="data" id="___d15e95411-1"/>
  534. <xs:element ref="endpoint" id="___d15e95412-1"/>
  535. </xs:choice>
  536. <xs:element minOccurs="0" ref="graph" id="___d15e95413-1"/>
  537. </xs:sequence>
  538. <xs:attributeGroup ref="hyperedge.extra.attrib">
  539. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  540. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  541. user defined extra attributes for &lt;hyperedge&gt; elements.
  542. </xs:documentation>
  543. </xs:annotation>
  544. </xs:attributeGroup>
  545. <xs:attribute form="unqualified"
  546. name="id"
  547. type="xs:NMTOKEN"
  548. id="___d15e95418-1_id">
  549. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  550. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  551. identifies this &lt;hyperedge&gt; . </xs:documentation>
  552. </xs:annotation>
  553. </xs:attribute>
  554. </xs:complexType>
  555. <xs:simpleType final="#all"
  556. name="endpoint.type.type"
  557. id="___d15e95422-1_endpoint.t">
  558. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  559. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  560. Simple type for the type attribute of &lt;endpoint&gt;. endpoint.type.type is a
  561. restriction of xs:NMTOKEN Allowed values: in, out, undir.
  562. </xs:documentation>
  563. </xs:annotation>
  564. <xs:restriction base="xs:NMTOKEN">
  565. <xs:enumeration value="in"/>
  566. <xs:enumeration value="out"/>
  567. <xs:enumeration value="undir"/>
  568. </xs:restriction>
  569. </xs:simpleType>
  570. <xs:complexType final="#all" name="endpoint.type" id="___d15e95430-1_endpoint.t">
  571. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  572. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  573. Complex type for the &lt;endpoint&gt; element. </xs:documentation>
  574. </xs:annotation>
  575. <xs:sequence id="___d15e95434-1">
  576. <xs:element minOccurs="0" ref="desc" id="___d15e95435-1"/>
  577. </xs:sequence>
  578. <xs:attributeGroup ref="endpoint.extra.attrib">
  579. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  580. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  581. user defined extra attributes for &lt;endpoint&gt; elements. </xs:documentation>
  582. </xs:annotation>
  583. </xs:attributeGroup>
  584. <xs:attribute form="unqualified"
  585. name="id"
  586. type="xs:NMTOKEN"
  587. id="___d15e95440-1_id">
  588. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  589. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  590. identifies this &lt;endpoint&gt; . </xs:documentation>
  591. </xs:annotation>
  592. </xs:attribute>
  593. <xs:attribute form="unqualified"
  594. name="port"
  595. type="xs:NMTOKEN"
  596. id="___d15e95444-1_port">
  597. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  598. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  599. points to the name of the port, to which this endpoint is connected .
  600. </xs:documentation>
  601. </xs:annotation>
  602. </xs:attribute>
  603. <xs:attribute form="unqualified"
  604. name="node"
  605. type="xs:NMTOKEN"
  606. use="required"
  607. id="___d15e95448-1_node">
  608. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  609. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  610. points to the id of the node, to which this endpoint is connected.
  611. </xs:documentation>
  612. </xs:annotation>
  613. </xs:attribute>
  614. <xs:attribute default="undir"
  615. form="unqualified"
  616. name="type"
  617. type="endpoint.type.type"
  618. id="___d15e95452-1_type">
  619. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  620. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  621. defines the direction on this endpoint (undirected per default).
  622. </xs:documentation>
  623. </xs:annotation>
  624. </xs:attribute>
  625. </xs:complexType>
  626. <xs:complexType final="#all" name="locator.type" id="___d15e95456-1_locator.ty">
  627. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  628. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  629. Complex type for the &lt;locator&gt; element. Content type: (empty)
  630. </xs:documentation>
  631. </xs:annotation>
  632. <xs:attributeGroup ref="locator.extra.attrib">
  633. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  634. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  635. user defined extra attributes for &lt;locator&gt; elements. </xs:documentation>
  636. </xs:annotation>
  637. </xs:attributeGroup>
  638. <xs:attribute ref="xlink:href" use="required" id="___d15e95464-1">
  639. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  640. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  641. points to the resource of this locator. </xs:documentation>
  642. </xs:annotation>
  643. </xs:attribute>
  644. <!-- xs:attribute ref="xlink:type" fixed="simple"-->
  645. <xs:attribute ref="xlink:type" id="___d15e95469-1">
  646. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  647. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  648. type of the hyperlink (fixed as simple). </xs:documentation>
  649. </xs:annotation>
  650. </xs:attribute>
  651. </xs:complexType>
  652. <!--========================================================-->
  653. <xs:element block="#all"
  654. name="desc"
  655. type="xs:string"
  656. id="___d15e95475-1_desc">
  657. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  658. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  659. Description: Provides human-readable descriptions for the GraphML element
  660. containing this &lt;desc&gt; as its first child. Occurence: &lt;key&gt;, &lt;graphml&gt;, &lt;graph&gt;,
  661. &lt;node&gt;, &lt;port&gt;, &lt;edge&gt;, &lt;hyperedge&gt;, and &lt;endpoint&gt;. </xs:documentation>
  662. </xs:annotation>
  663. </xs:element>
  664. <xs:element block="#all"
  665. name="locator"
  666. type="locator.type"
  667. id="___d15e95479-1_locator">
  668. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  669. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  670. Description: Graphs and nodes are declared by the elements &lt;graph&gt; and &lt;node&gt;,
  671. respectively. The optional &lt;locator&gt;-child of these elements point to
  672. their definition. (If there is no &lt;locator&gt;-child the graphs/nodes are defined
  673. by their content). Occurence: &lt;graph&gt;, and &lt;node&gt;. </xs:documentation>
  674. </xs:annotation>
  675. </xs:element>
  676. <xs:element block="#all"
  677. name="data"
  678. type="data.type"
  679. id="___d15e95483-1_data">
  680. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  681. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  682. Description: In GraphML there may be data-functions attached to graphs,
  683. nodes, ports, edges, hyperedges and endpoint and to the whole collection of
  684. graphs described by the content of &lt;graphml&gt;. These functions are declared by
  685. &lt;key&gt; elements (children of &lt;graphml&gt;) and defined by &lt;data&gt; elements.
  686. Occurence: &lt;graphml&gt;, &lt;graph&gt;, &lt;node&gt;, &lt;port&gt;, &lt;edge&gt;, &lt;hyperedge&gt;, and &lt;endpoint&gt;.
  687. </xs:documentation>
  688. </xs:annotation>
  689. <xs:unique name="data_data_key_unique">
  690. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  691. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  692. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  693. &lt;data&gt; element. </xs:documentation>
  694. </xs:annotation>
  695. <xs:selector xpath="./g:data"/>
  696. <xs:field xpath="@key"/>
  697. </xs:unique>
  698. </xs:element>
  699. <xs:element block="#all" name="key" type="key.type" id="___d15e95493-1_key">
  700. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  701. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  702. Description: In GraphML there may be data-functions attached to graphs,
  703. nodes, ports, edges, hyperedges and endpoint and to the whole collection of
  704. graphs described by the content of &lt;graphml&gt;. These functions are declared by
  705. &lt;key&gt; elements (children of &lt;graphml&gt;) and defined by &lt;data&gt; elements.
  706. Occurence: &lt;graphml&gt;. </xs:documentation>
  707. </xs:annotation>
  708. </xs:element>
  709. <xs:element block="#all"
  710. name="default"
  711. type="default.type"
  712. id="___d15e95497-1_default">
  713. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  714. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  715. Description: In GraphML there may be data-functions attached to graphs,
  716. nodes, ports, edges, hyperedges and endpoint and to the whole collection of
  717. graphs described by the content of &lt;graphml&gt;. These functions are declared by
  718. &lt;key&gt; elements (children of &lt;graphml&gt;) and defined by &lt;data&gt; elements.
  719. The (optional) &lt;default&gt; child of &lt;key&gt; gives the default value for the
  720. corresponding function. Occurence: &lt;key&gt;. </xs:documentation>
  721. </xs:annotation>
  722. </xs:element>
  723. <xs:element block="#all"
  724. name="graphml"
  725. type="graphml.type"
  726. id="___d15e95501-1_graphml">
  727. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  728. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  729. Description: &lt;graphml&gt; is the root element of each GraphML document.
  730. Occurence: root. </xs:documentation>
  731. </xs:annotation>
  732. <xs:unique name="graphml_data_key_unique">
  733. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  734. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  735. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  736. &lt;graphml&gt; element. </xs:documentation>
  737. </xs:annotation>
  738. <xs:selector xpath="./g:data"/>
  739. <xs:field xpath="@key"/>
  740. </xs:unique>
  741. <xs:key name="key_id_key">
  742. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  743. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  744. Ensures: existence and uniqueness of the id attributes of each &lt;key&gt;
  745. element in this document. </xs:documentation>
  746. </xs:annotation>
  747. <xs:selector xpath=".//g:key"/>
  748. <xs:field xpath="@id"/>
  749. </xs:key>
  750. <xs:unique name="graph_id_unique">
  751. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  752. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  753. Ensures: uniqueness of the id attributes of each &lt;graph&gt; element in this
  754. document. </xs:documentation>
  755. </xs:annotation>
  756. <xs:selector xpath=".//g:graph"/>
  757. <xs:field xpath="@id"/>
  758. </xs:unique>
  759. <xs:keyref name="data_key_ref" refer="key_id_key">
  760. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  761. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  762. Ensures: for the key attribute of each &lt;data&gt; in this document, the
  763. existence of an id attribute of &lt;key&gt; which matches the value of it.
  764. </xs:documentation>
  765. </xs:annotation>
  766. <xs:selector xpath=".//g:data"/>
  767. <xs:field xpath="@key"/>
  768. </xs:keyref>
  769. </xs:element>
  770. <xs:element block="#all"
  771. name="graph"
  772. type="graph.type"
  773. id="___d15e95529-1_graph">
  774. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  775. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  776. Description: Describes one graph in this document. Occurence: &lt;graphml&gt;, &lt;node&gt;,
  777. &lt;edge&gt;, &lt;hyperedge&gt;. </xs:documentation>
  778. </xs:annotation>
  779. <xs:unique name="graph_data_key_unique">
  780. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  781. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  782. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  783. &lt;graph&gt; element. </xs:documentation>
  784. </xs:annotation>
  785. <xs:selector xpath="./g:data"/>
  786. <xs:field xpath="@key"/>
  787. </xs:unique>
  788. <xs:key name="node_id_key">
  789. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  790. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  791. Ensures: existence and uniqueness of the id attributes of each &lt;node&gt;
  792. element in this graph. </xs:documentation>
  793. </xs:annotation>
  794. <xs:selector xpath=".//g:node"/>
  795. <xs:field xpath="@id"/>
  796. </xs:key>
  797. <xs:unique name="edge_id_unique">
  798. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  799. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  800. Ensures: uniqueness of the id attributes of each &lt;edge&gt; element in this
  801. graph. </xs:documentation>
  802. </xs:annotation>
  803. <xs:selector xpath=".//g:edge"/>
  804. <xs:field xpath="@id"/>
  805. </xs:unique>
  806. <xs:unique name="hyperedge_id_unique">
  807. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  808. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  809. Ensures: uniqueness of the id attributes of each &lt;hyperedge&gt; element in
  810. this graph. </xs:documentation>
  811. </xs:annotation>
  812. <xs:selector xpath=".//g:hyperedge"/>
  813. <xs:field xpath="@id"/>
  814. </xs:unique>
  815. <xs:unique name="endpoint_id_unique">
  816. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  817. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  818. Ensures: uniqueness of the id attributes of each &lt;endpoint&gt; element in
  819. this graph. </xs:documentation>
  820. </xs:annotation>
  821. <xs:selector xpath=".//g:endpoint"/>
  822. <xs:field xpath="@id"/>
  823. </xs:unique>
  824. <xs:keyref name="edge_source_ref" refer="node_id_key">
  825. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  826. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  827. Ensures: for the source attribute of each &lt;edge&gt; in this graph, the
  828. existence of an id attribute of &lt;node&gt; which matches the value of it.
  829. </xs:documentation>
  830. </xs:annotation>
  831. <xs:selector xpath=".//g:edge"/>
  832. <xs:field xpath="@source"/>
  833. </xs:keyref>
  834. <xs:keyref name="edge_target_ref" refer="node_id_key">
  835. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  836. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  837. Ensures: for the target attribute of each &lt;edge&gt; in this graph, the
  838. existence of an id attribute of &lt;node&gt; which matches the value of it.
  839. </xs:documentation>
  840. </xs:annotation>
  841. <xs:selector xpath=".//g:edge"/>
  842. <xs:field xpath="@target"/>
  843. </xs:keyref>
  844. <xs:keyref name="endpoint_node_ref" refer="node_id_key">
  845. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  846. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  847. Ensures: for the node attribute of each &lt;endpoint&gt; in this graph, the
  848. existence of an id attribute of &lt;node&gt; which matches the value of it.
  849. </xs:documentation>
  850. </xs:annotation>
  851. <xs:selector xpath=".//g:endpoint"/>
  852. <xs:field xpath="@node"/>
  853. </xs:keyref>
  854. </xs:element>
  855. <xs:element block="#all"
  856. name="node"
  857. type="node.type"
  858. id="___d15e95581-1_node">
  859. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  860. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  861. Description: Describes one node in the &lt;graph&gt; containing this &lt;node&gt;.
  862. Occurence: &lt;graph&gt;. </xs:documentation>
  863. </xs:annotation>
  864. <xs:key name="port_name_key">
  865. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  866. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  867. Ensures: existence and uniqueness of the name attributes of each &lt;port&gt;
  868. element within this &lt;node&gt;. </xs:documentation>
  869. </xs:annotation>
  870. <xs:selector xpath=".//g:port"/>
  871. <xs:field xpath="@name"/>
  872. </xs:key>
  873. <xs:unique name="node_data_key_unique">
  874. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  875. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  876. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  877. &lt;node&gt; element. </xs:documentation>
  878. </xs:annotation>
  879. <xs:selector xpath="./g:data"/>
  880. <xs:field xpath="@key"/>
  881. </xs:unique>
  882. </xs:element>
  883. <xs:element block="#all"
  884. name="port"
  885. type="port.type"
  886. id="___d15e95597-1_port">
  887. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  888. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  889. Description: Nodes may be structured by ports; thus edges are not only
  890. attached to a node but to a certain port in this node. Occurence:
  891. &lt;node&gt;, &lt;port&gt;. </xs:documentation>
  892. </xs:annotation>
  893. <xs:unique name="port_data_key_unique">
  894. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  895. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  896. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  897. &lt;port&gt; element. </xs:documentation>
  898. </xs:annotation>
  899. <xs:selector xpath="./g:data"/>
  900. <xs:field xpath="@key"/>
  901. </xs:unique>
  902. </xs:element>
  903. <xs:element block="#all"
  904. name="edge"
  905. type="edge.type"
  906. id="___d15e95607-1_edge">
  907. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  908. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  909. Description: Describes an edge in the &lt;graph&gt; which contains this &lt;edge&gt;.
  910. Occurence: &lt;graph&gt;. </xs:documentation>
  911. </xs:annotation>
  912. <xs:unique name="edge_data_key_unique">
  913. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  914. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  915. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  916. &lt;edge&gt; element. </xs:documentation>
  917. </xs:annotation>
  918. <xs:selector xpath="./g:data"/>
  919. <xs:field xpath="@key"/>
  920. </xs:unique>
  921. </xs:element>
  922. <xs:element block="#all"
  923. name="hyperedge"
  924. type="hyperedge.type"
  925. id="___d15e95617-1_hyperedge">
  926. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  927. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  928. Description: While edges describe relations between two nodes, a hyperedge
  929. describes a relation between an arbitrary number of nodes.
  930. Occurence: &lt;graph&gt;. </xs:documentation>
  931. </xs:annotation>
  932. <xs:unique name="hyperedge_data_key_unique">
  933. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  934. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  935. Ensures: uniqueness of the key attributes of &lt;data&gt; children of this
  936. &lt;hyperedge&gt; element. </xs:documentation>
  937. </xs:annotation>
  938. <xs:selector xpath="./g:data"/>
  939. <xs:field xpath="@key"/>
  940. </xs:unique>
  941. </xs:element>
  942. <xs:element block="#all"
  943. name="endpoint"
  944. type="endpoint.type"
  945. id="___d15e95628-1_endpoint">
  946. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  947. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  948. Description: The list of &lt;endpoints&gt; within a hyperedge points to the nodes
  949. contained in this hyperedge. Occurence: &lt;hyperedge&gt;. </xs:documentation>
  950. </xs:annotation>
  951. </xs:element>
  952. <!--types as in graphml-attributes.xsd -->
  953. <xs:simpleType final="#all" name="key.name.type" id="___d15e95633-1_key.name.t">
  954. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  955. <xs:documentation source="http://graphml.graphdrawing.org/(Dokumentation der Attributes Erweiterung; entsprechende Stelle.html)"
  956. xml:lang="en"> Simple type for the attr.name attribute of &lt;key&gt;.
  957. key.name.type is final, that is, it may not be extended or restricted.
  958. key.name.type is a restriction of xs:NMTOKEN Allowed values: (no
  959. restriction) </xs:documentation>
  960. </xs:annotation>
  961. <xs:restriction base="xs:NMTOKEN"/>
  962. </xs:simpleType>
  963. <xs:simpleType final="#all" name="key.type.type" id="___d15e95638-1_key.type.t">
  964. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  965. <xs:documentation source="http://graphml.graphdrawing.org/(Dokumentation der Attributes Erweiterung; entsprechende Stelle.html)"
  966. xml:lang="en"> Simple type for the attr.type attribute of &lt;key&gt;.
  967. key.type.type is final, that is, it may not be extended or restricted.
  968. key.type.type is a restriction of xs:NMTOKEN Allowed values: boolean, int,
  969. long, float, double, string, complex. </xs:documentation>
  970. </xs:annotation>
  971. <xs:restriction base="xs:NMTOKEN">
  972. <xs:enumeration value="boolean"/>
  973. <xs:enumeration value="int"/>
  974. <xs:enumeration value="long"/>
  975. <xs:enumeration value="float"/>
  976. <xs:enumeration value="double"/>
  977. <xs:enumeration value="string"/>
  978. <xs:enumeration value="complex"/>
  979. </xs:restriction>
  980. </xs:simpleType>
  981. <xs:attributeGroup name="key.attributes.attrib">
  982. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  983. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  984. Definition of the attribute group key.attributes.attrib. This group consists
  985. of the two optional attributes - attr.name (gives the name for the data
  986. function) - attr.type (declares the range of values for the data function)
  987. </xs:documentation>
  988. </xs:annotation>
  989. <xs:attribute form="unqualified"
  990. name="attr.name"
  991. type="key.name.type"
  992. use="optional"
  993. id="___d15e95654-1_attr.name"/>
  994. <xs:attribute form="unqualified"
  995. name="attr.type"
  996. type="key.type.type"
  997. use="optional"
  998. id="___d15e95655-1_attr.type"/>
  999. </xs:attributeGroup>
  1000. <!--types as in graphml-parseinfo.xsd -->
  1001. <xs:simpleType final="#all" name="graph.order.type" id="___d15e95657-1_graph.orde">
  1002. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1003. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1004. type for the parse.order attribute of &lt;graph&gt;. graph.order.type is final, that
  1005. is, it may not be extended or restricted.
  1006. graph.order.type is a restriction of xs:NMTOKEN Allowed values: free,
  1007. nodesfirst, adjacencylist. </xs:documentation>
  1008. </xs:annotation>
  1009. <xs:restriction base="xs:NMTOKEN">
  1010. <xs:enumeration value="free"/>
  1011. <xs:enumeration value="nodesfirst"/>
  1012. <xs:enumeration value="adjacencylist"/>
  1013. </xs:restriction>
  1014. </xs:simpleType>
  1015. <xs:simpleType final="#all" name="graph.nodes.type" id="___d15e95665-1_graph.node">
  1016. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1017. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1018. type for the parse.nodes attribute of &lt;graph&gt;. graph.nodes.type is final, that
  1019. is, it may not be extended or restricted.
  1020. graph.nodes.type is a restriction of xs:nonNegativeInteger Allowed values: (no
  1021. restriction). </xs:documentation>
  1022. </xs:annotation>
  1023. <xs:restriction base="xs:nonNegativeInteger"/>
  1024. </xs:simpleType>
  1025. <xs:simpleType final="#all" name="graph.edges.type" id="___d15e95670-1_graph.edge">
  1026. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1027. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1028. type for the parse.edges attribute of &lt;graph&gt;. graph.edges.type is final, that
  1029. is, it may not be extended or restricted.
  1030. graph.edges.type is a restriction of xs:nonNegativeInteger Allowed values: (no
  1031. restriction). </xs:documentation>
  1032. </xs:annotation>
  1033. <xs:restriction base="xs:nonNegativeInteger"/>
  1034. </xs:simpleType>
  1035. <xs:simpleType final="#all"
  1036. name="graph.maxindegree.type"
  1037. id="___d15e95675-1_graph.maxi">
  1038. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1039. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1040. type for the parse.maxindegree attribute of &lt;graph&gt;. graph.maxindegree.type is
  1041. final, that is, it may not be extended or restricted.
  1042. graph.maxindegree.type is a restriction of xs:nonNegativeInteger Allowed
  1043. values: (no restriction). </xs:documentation>
  1044. </xs:annotation>
  1045. <xs:restriction base="xs:nonNegativeInteger"/>
  1046. </xs:simpleType>
  1047. <xs:simpleType final="#all"
  1048. name="graph.maxoutdegree.type"
  1049. id="___d15e95680-1_graph.maxo">
  1050. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1051. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1052. type for the parse.maxoutdegree attribute of &lt;graph&gt;. graph.maxoutdegree.type is
  1053. final, that is, it may not be extended or restricted.
  1054. graph.maxoutdegree.type is a restriction of xs:nonNegativeInteger Allowed
  1055. values: (no restriction). </xs:documentation>
  1056. </xs:annotation>
  1057. <xs:restriction base="xs:nonNegativeInteger"/>
  1058. </xs:simpleType>
  1059. <xs:simpleType final="#all"
  1060. name="graph.nodeids.type"
  1061. id="___d15e95686-1_graph.node">
  1062. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1063. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1064. type for the parse.nodeids attribute of &lt;graph&gt;. graph.nodeids.type is final,
  1065. that is, it may not be extended or restricted.
  1066. graph.nodeids.type is a restriction of xs:string Allowed values: (no
  1067. restriction). </xs:documentation>
  1068. </xs:annotation>
  1069. <xs:restriction base="xs:NMTOKEN">
  1070. <xs:enumeration value="canonical"/>
  1071. <xs:enumeration value="free"/>
  1072. </xs:restriction>
  1073. </xs:simpleType>
  1074. <xs:simpleType final="#all"
  1075. name="graph.edgeids.type"
  1076. id="___d15e95693-1_graph.edge">
  1077. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1078. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1079. type for the parse.edgeids attribute of &lt;graph&gt;. graph.edgeids.type is final,
  1080. that is, it may not be extended or restricted.
  1081. graph.edgeids.type is a restriction of xs:string Allowed values: (no
  1082. restriction). </xs:documentation>
  1083. </xs:annotation>
  1084. <xs:restriction base="xs:NMTOKEN">
  1085. <xs:enumeration value="canonical"/>
  1086. <xs:enumeration value="free"/>
  1087. </xs:restriction>
  1088. </xs:simpleType>
  1089. <xs:attributeGroup name="graph.parseinfo.attrib">
  1090. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1091. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  1092. Definition of the attribute group graph.parseinfo.attrib. This group consists
  1093. of the seven attributes: <ul>
  1094. <li>
  1095. <code>parse.nodeids</code>
  1096. </li> (fixed to 'canonical' meaning that the id
  1097. attribute of &lt;node&gt; follows the pattern 'n[number]),
  1098. <li>
  1099. <code>parse.edgeids</code>
  1100. </li> (fixed to 'canonical' meaning that
  1101. the id attribute of &lt;edge&gt; follows the pattern 'e[number]),
  1102. <li>
  1103. <code>parse.order</code>
  1104. </li> (required; one of the values
  1105. 'nodesfirst', 'adjacencylist' or 'free'),
  1106. <li>
  1107. <code>parse.nodes</code>
  1108. </li> (required; number of nodes in this
  1109. graph), <li>
  1110. <code>parse.edges</code>
  1111. </li> (required; number of edges in
  1112. this graph), <li>
  1113. <code>parse.maxindegree</code>
  1114. </li> (optional; maximal
  1115. indegree of a node in this graph), <li>
  1116. <code>parse.maxoutdegree</code>
  1117. </li>
  1118. (optional; maximal outdegree of a node in this graph) </ul>
  1119. </xs:documentation>
  1120. </xs:annotation>
  1121. <xs:attribute form="unqualified"
  1122. name="parse.nodeids"
  1123. type="graph.nodeids.type"
  1124. id="___d15e95734-1_parse.node"/>
  1125. <xs:attribute form="unqualified"
  1126. name="parse.edgeids"
  1127. type="graph.edgeids.type"
  1128. id="___d15e95735-1_parse.edge"/>
  1129. <xs:attribute form="unqualified"
  1130. name="parse.order"
  1131. type="graph.order.type"
  1132. id="___d15e95736-1_parse.orde"/>
  1133. <xs:attribute form="unqualified"
  1134. name="parse.nodes"
  1135. type="graph.nodes.type"
  1136. id="___d15e95737-1_parse.node"/>
  1137. <xs:attribute form="unqualified"
  1138. name="parse.edges"
  1139. type="graph.edges.type"
  1140. id="___d15e95738-1_parse.edge"/>
  1141. <xs:attribute form="unqualified"
  1142. name="parse.maxindegree"
  1143. type="graph.maxindegree.type"
  1144. use="optional"
  1145. id="___d15e95739-1_parse.maxi"/>
  1146. <xs:attribute form="unqualified"
  1147. name="parse.maxoutdegree"
  1148. type="graph.maxoutdegree.type"
  1149. use="optional"
  1150. id="___d15e95740-1_parse.maxo"/>
  1151. </xs:attributeGroup>
  1152. <xs:simpleType final="#all"
  1153. name="node.indegree.type"
  1154. id="___d15e95741-1_node.indeg">
  1155. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1156. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1157. type for the parse.indegree attribute of &lt;node&gt;. node.indegree.type is final,
  1158. that is, it may not be extended or restricted.
  1159. node.indegree.type is a restriction of xs:nonNegativeInteger Allowed values:
  1160. (no restriction). </xs:documentation>
  1161. </xs:annotation>
  1162. <xs:restriction base="xs:nonNegativeInteger"/>
  1163. </xs:simpleType>
  1164. <xs:simpleType final="#all"
  1165. name="node.outdegree.type"
  1166. id="___d15e95746-1_node.outde">
  1167. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1168. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en"> Simple
  1169. type for the parse.outdegree attribute of &lt;node&gt;. node.outdegree.type is final,
  1170. that is, it may not be extended or restricted.
  1171. node.outdegree.type is a restriction of xs:nonNegativeInteger Allowed values:
  1172. (no restriction). </xs:documentation>
  1173. </xs:annotation>
  1174. <xs:restriction base="xs:nonNegativeInteger"/>
  1175. </xs:simpleType>
  1176. <xs:attributeGroup name="node.parseinfo.attrib">
  1177. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1178. <xs:documentation source="http://graphml.graphdrawing.org/" xml:lang="en">
  1179. Definition of the attribute group node.parseinfo.attrib. This group consists of
  1180. two attributes - parse.indegree (optional; indegree of this node), -
  1181. parse.outdegree (optional; outdegree of this node). </xs:documentation>
  1182. </xs:annotation>
  1183. <xs:attribute form="unqualified"
  1184. name="parse.indegree"
  1185. type="node.indegree.type"
  1186. use="optional"
  1187. id="___d15e95755-1_parse.inde"/>
  1188. <xs:attribute form="unqualified"
  1189. name="parse.outdegree"
  1190. type="node.outdegree.type"
  1191. use="optional"
  1192. id="___d15e95756-1_parse.outd"/>
  1193. </xs:attributeGroup>
  1194. <!-- Type of Grouping -->
  1195. <xs:simpleType name="yfiles.foldertype.type" id="___d15e95758-1_yfiles.fol">
  1196. <xs:annotation xmlns:g="http://graphml.graphdrawing.org/xmlns">
  1197. <xs:documentation> The valid folder types for a folder/group node.
  1198. <p>Valid values are <ul>
  1199. <li>
  1200. <b>folder</b>: for folder nodes</li>
  1201. <li>
  1202. <b>group</b>: for group nodes</li>
  1203. <li>
  1204. <b>leaf</b>: for leaf nodes (this is the implied value)</li>
  1205. </ul>
  1206. </p>
  1207. </xs:documentation>
  1208. </xs:annotation>
  1209. <xs:restriction base="xs:NMTOKEN">
  1210. <xs:enumeration value="folder"/>
  1211. <xs:enumeration value="group"/>
  1212. <xs:enumeration value="leaf"/>
  1213. </xs:restriction>
  1214. </xs:simpleType>
  1215. </xs:schema>