| <?xml version="1.0"?> |
| |
| <!-- Header --> |
| <xs:schema |
| targetNamespace="http://graphml.graphdrawing.org/xmlns/graphml" |
| |
| xmlns="http://graphml.graphdrawing.org/xmlns/graphml" |
| xmlns:g="http://graphml.graphdrawing.org/xmlns/graphml" |
| xmlns:y="http://www.yworks.com/xml/graphml" |
| xmlns:xs="http://www.w3.org/2001/XMLSchema" |
| xmlns:xlink="http://www.w3.org/1999/xlink" |
| |
| elementFormDefault="qualified" |
| attributeFormDefault="unqualified" |
| > |
| |
| <xs:import namespace="http://www.yworks.com/xml/graphml" schemaLocation="yfeatures.xsd"/> |
| |
| <!-- Redefinition of the elements in the graphml-structure schema --> |
| <xs:redefine schemaLocation="graphml-attributes.xsd"> |
| |
| <xs:attributeGroup name="key.extra.attrib"> |
| <xs:attributeGroup ref="key.extra.attrib"/> |
| <xs:attribute name="yfiles.type" type="xs:string" use="optional"/> |
| </xs:attributeGroup> |
| <!-- Definition of the different grouping types --> |
| <!-- The grouping type is stored as attribute at the node element --> |
| <xs:attributeGroup name="node.extra.attrib"> |
| <xs:attributeGroup ref="node.extra.attrib"/> |
| <xs:attribute name="yfiles.foldertype" type="yfiles.foldertype.type" use="optional"/> |
| </xs:attributeGroup> |
| |
| <!-- Definition of the different node and edge types --> |
| <xs:complexType name="data-extension.type"> |
| <xs:complexContent mixed="true"> |
| <xs:extension base="data-extension.type"> |
| <xs:choice minOccurs="0" maxOccurs="1"> |
| <xs:element ref="y:ShapeNode"/> |
| <xs:element ref="y:ImageNode"/> |
| <xs:element ref="y:GroupNode"/> |
| <xs:element ref="y:GenericNode"/> |
| <xs:element ref="y:ProxyShapeNode"/> |
| <xs:element ref="y:ProxyAutoBoundsNode"/> |
| <xs:element ref="y:PolyLineEdge"/> |
| <xs:element ref="y:ArcEdge"/> |
| <xs:element ref="y:BezierEdge"/> |
| <xs:element ref="y:SplineEdge"/> |
| <xs:element ref="y:QuadCurveEdge"/> |
| <xs:element ref="y:GenericEdge"/> |
| <xs:element ref="y:Postprocessors"/> |
| </xs:choice> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| </xs:redefine> |
| |
| <!-- Type of Grouping --> |
| <xs:simpleType name="yfiles.foldertype.type"> |
| <xs:restriction base="xs:NMTOKEN"> |
| <xs:enumeration value="folder"/> |
| <xs:enumeration value="group"/> |
| <xs:enumeration value="leaf"/> |
| </xs:restriction> |
| </xs:simpleType> |
| |
| </xs:schema> |
| |
| |