1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143
|
<?xml version="1.0" encoding="UTF-8"?>
<grammar xml:lang="en" ns="http://www.w3.org/2000/svg" xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<a:documentation>
SVG 1.1 Marker Module
file: svg-marker.rng
This is SVG, a language for describing two-dimensional graphics in XML.
Copyright 2001, 2002 W3C (MIT, INRIA, Keio), All Rights Reserved.
$Id: svg-marker.rng,v 1.1 2003/07/15 07:11:10 dean Exp $
</a:documentation>
<a:documentation>
Marker
marker
This module declares markup to provide support for marker.
</a:documentation>
<a:documentation>
Datatypes
</a:documentation>
<define name="MarkerValue.datatype">
<data type="string"/>
</define>
<a:documentation>
SVG.Marker.attrib
</a:documentation>
<define name="SVG.Marker.extra.attrib">
<empty/>
</define>
<define name="SVG.Marker.attrib" combine="interleave">
<optional>
<attribute name="marker-start">
<ref name="MarkerValue.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="marker-mid">
<ref name="MarkerValue.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="marker-end">
<ref name="MarkerValue.datatype"/>
</attribute>
</optional>
<ref name="SVG.Marker.extra.attrib"/>
</define>
<a:documentation>
SVG.Marker.class
</a:documentation>
<define name="SVG.Marker.extra.class">
<notAllowed/>
</define>
<define name="SVG.Marker.class" combine="choice">
<choice>
<ref name="marker"/>
<ref name="SVG.Marker.extra.class"/>
</choice>
</define>
<a:documentation>
marker: Marker Element
</a:documentation>
<define name="SVG.marker.content">
<zeroOrMore>
<choice>
<ref name="SVG.Description.class"/>
<ref name="SVG.Animation.class"/>
<ref name="SVG.Structure.class"/>
<ref name="SVG.Conditional.class"/>
<ref name="SVG.Image.class"/>
<ref name="SVG.Style.class"/>
<ref name="SVG.Shape.class"/>
<ref name="SVG.Text.class"/>
<ref name="SVG.Marker.class"/>
<ref name="SVG.Profile.class"/>
<ref name="SVG.Gradient.class"/>
<ref name="SVG.Pattern.class"/>
<ref name="SVG.Clip.class"/>
<ref name="SVG.Mask.class"/>
<ref name="SVG.Filter.class"/>
<ref name="SVG.Cursor.class"/>
<ref name="SVG.Hyperlink.class"/>
<ref name="SVG.View.class"/>
<ref name="SVG.Script.class"/>
<ref name="SVG.Font.class"/>
</choice>
</zeroOrMore>
</define>
<define name="marker">
<element name="marker">
<ref name="attlist.marker"/>
<ref name="SVG.marker.content"/>
</element>
</define>
<define name="attlist.marker" combine="interleave">
<ref name="SVG.Core.attrib"/>
<ref name="SVG.Style.attrib"/>
<ref name="SVG.Presentation.attrib"/>
<ref name="SVG.External.attrib"/>
<optional>
<attribute name="refX">
<ref name="Coordinate.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="refY">
<ref name="Coordinate.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="markerUnits">
<choice>
<value>strokeWidth</value>
<value>userSpaceOnUse</value>
</choice>
</attribute>
</optional>
<optional>
<attribute name="markerWidth">
<ref name="Length.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="markerHeight">
<ref name="Length.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="orient"/>
</optional>
<optional>
<attribute name="viewBox">
<ref name="ViewBoxSpec.datatype"/>
</attribute>
</optional>
<optional>
<attribute name="preserveAspectRatio" a:defaultValue="xMidYMid meet">
<ref name="PreserveAspectRatioSpec.datatype"/>
</attribute>
</optional>
</define>
</grammar>
|