<!ELEMENT shape (name|icon|description?|default-width?|default-height?|connections?|
		 aspectratio?|textbox?|ext_attributes?|svg:svg)* >
<!ATTLIST shape
  xmlns CDATA #FIXED 'http://www.daa.com.au/~james/dia-shape-ns'
  xmlns:svg CDATA #FIXED 'http://www.w3.org/2000/svg'
  xmlns:xlink CDATA #FIXED 'http://www.w3.org/1999/xlink' >

<!ELEMENT name (#PCDATA)* >

<!-- This element is deprecated.  Put descriptions in sheet files -->
<!ELEMENT description (#PCDATA)* >
<!ATTLIST description
  xml:lang NMTOKEN #IMPLIED >

<!ELEMENT icon (#PCDATA)* >

<!ELEMENT connections (point*) >

<!ELEMENT point EMPTY >
<!ATTLIST point
  x CDATA #REQUIRED
  y CDATA #REQUIRED
  main CDATA #IMPLIED >

<!ELEMENT aspectratio EMPTY >
<!ATTLIST aspectratio
  type CDATA #REQUIRED
  min CDATA #IMPLIED
  max CDATA #IMPLIED >

<!ELEMENT default-width (#PCDATA)* >

<!ELEMENT default-height (#PCDATA)* >

<!ELEMENT textbox EMPTY >
<!ATTLIST textbox
  x1 CDATA #REQUIRED
  y1 CDATA #REQUIRED
  x2 CDATA #REQUIRED
  y2 CDATA #REQUIRED 
  align (left|center|right) #IMPLIED
  resize (yes|no) #IMPLIED >

<!ELEMENT ext_attributes (ext_attribute)* >
<!ELEMENT ext_attribute EMPTY>
<!ATTLIST ext_attribute
  name CDATA #REQUIRED
  type CDATA #REQUIRED
  description CDATA #IMPLIED >

<!ELEMENT svg:svg (svg:g | svg:line | svg:polyline | svg:polygon | svg:rect |
                   svg:circle | svg:ellipse | svg:path | svg:image | svg:text)* >
<!ATTLIST svg:svg
  width CDATA #IMPLIED
  height CDATA #IMPLIED
  style CDATA #IMPLIED 
  viewBox CDATA #IMPLIED >

<!ELEMENT svg:g (svg:g | svg:line | svg:polyline | svg:polygon | svg:rect | 
                 svg:circle | svg:ellipse | svg:path | svg:image | svg:text )* >
<!ATTLIST svg:g
  style CDATA #IMPLIED >

<!ELEMENT svg:line EMPTY >
<!ATTLIST svg:line
  x1 CDATA #REQUIRED
  y1 CDATA #REQUIRED
  x2 CDATA #REQUIRED
  y2 CDATA #REQUIRED
  style CDATA #IMPLIED >

<!ELEMENT svg:polyline EMPTY >
<!ATTLIST svg:polyline
  points CDATA #REQUIRED
  style CDATA #IMPLIED >

<!ELEMENT svg:polygon EMPTY >
<!ATTLIST svg:polygon
  points CDATA #REQUIRED
  style CDATA #IMPLIED
  fill-rule CDATA #IMPLIED >

<!ELEMENT svg:rect EMPTY >
<!ATTLIST svg:rect
  x CDATA #REQUIRED
  y CDATA #REQUIRED
  width CDATA #REQUIRED
  height CDATA #REQUIRED
  style CDATA #IMPLIED
  rx CDATA #IMPLIED
  ry CDATA #IMPLIED >

<!ELEMENT svg:image EMPTY >
<!ATTLIST svg:image
  x CDATA #IMPLIED
  y CDATA #IMPLIED
  width CDATA #REQUIRED
  height CDATA #REQUIRED
  xlink:href CDATA #REQUIRED >

<!ELEMENT svg:circle EMPTY >
<!ATTLIST svg:circle
  cx CDATA #REQUIRED
  cy CDATA #IMPLIED
  r CDATA #REQUIRED
  style CDATA #IMPLIED >

<!ELEMENT svg:ellipse EMPTY >
<!ATTLIST svg:ellipse
  cx CDATA #REQUIRED
  cy CDATA #REQUIRED
  rx CDATA #REQUIRED
  ry CDATA #REQUIRED
  style CDATA #IMPLIED >

<!ELEMENT svg:path EMPTY >
<!ATTLIST svg:path
  d CDATA #REQUIRED
  style CDATA #IMPLIED
  stroke-dasharray CDATA #IMPLIED
  fill-rule CDATA #IMPLIED >

<!ELEMENT svg:text (#PCDATA)* >
<!ATTLIST svg:text
  x CDATA #REQUIRED
  y CDATA #REQUIRED
  style CDATA #IMPLIED
  textLength CDATA #IMPLIED
  font-size CDATA #IMPLIED >
