ygraphml.xsd 67 KB

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