<svgref>
Use the <svgref>
element to reference a non-DITA XML document
that contains scalable vector graphic (SVG) markup. This element enables you to use the markup
by reference.
<svg>
element. The reference can be
one of the following:- A URI that addresses an XML document; the XML document has a SVG
<svg>
element as the root element - A URI that addresses an XML document and contains a fragment identifier that is the
XML ID of a
<svg>
element within the document
Processors SHOULD process the SVG as
though the <svg>
element had occurred directly in the content of the
containing <svg-container>
element.
The reference can be direct, using the @href
attribute, or indirect, using
the @keyref
attribute. For indirect referencing, only the key name should be
specified. The ID of the <svg>
element must be specified as part of
the value for the @href
attribute on the key definition.
<svg>
element with the
@id
of "svg-fragment-02" within a larger document using a key reference,
you would define the key in the following
way:<keydef keys="svg-fragment-0002" href="svg/svg-library.xml#svg-fragment-02" />You would refer to this key using just the key name:
<svg-container> <svgref keyref="svg-fragment-0002"/> </svg-container>
Content models
See appendix for information about this element in OASIS document type shells.
Inheritance
+ topic/xref svg-d/svgref
Example
Here is a reference to an <svg>
element that is the root element of
its containing document:
<fig> <title>Figure With SVG Container</title> <svg-container> <svgref href="media/svg/svg-graphic-01.xml" format="svg" /> </svg-container> </fig>
<svg>
element sets the SVG namespace as the default namespace, so
there are no namespace prefixes on the SVG
markup:<?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg" width="100" height="100"> <defs> <filter id="f1" x="0" y="0"> <feGaussianBlur in="SourceGraphic" stdDeviation="15"/> </filter> </defs> <rect width="90" height="90" stroke="green" stroke-width="3" fill="yellow" filter="url(#f1)"/> </svg>
Here is a reference to a specific <svg>
element in a containing XML
file:
<fig> <title>Figure with SVG Container</title> <svg-container> <svgref href="media/svg/svg-library.xml#frag-0001" /> </svg-container> </fig>
<?xml version="1.0" encoding="UTF-8"?> <root> <part> <svg id="frag-0001" xmlns="http://www.w3.org/2000/svg" width="100" height="100"> <defs> <filter id="f1" x="0" y="0"> <feGaussianBlur in="SourceGraphic" stdDeviation="15"/> </filter> </defs> <rect width="90" height="90" stroke="green" stroke-width="3" fill="yellow" filter="url(#f1)"/> </svg> <svg id="frag-0002" width="4in" height="6in" version="1.1" > <circle cx="150" cy="200" r="100" fill="url(#grad_blue)" > <animate attributeName="r" begin="Go.click" end="Stop.click" dur="4s" values="100; 0; 100" repeatCount="indefinite"/> </circle> <radialGradient id="grad_blue" cx="20%" cy="20%" r="100%" fx="30%" fy="30%"> <stop stop-color="white" offset="0"/> <stop stop-color="blue" offset="25%"/> <stop stop-color="rgb(0,0,192)" offset="50%"/> <stop stop-color="rgb(0,0,127)" offset="70%"/> <stop stop-color="rgb(0,0,64)" offset="85%"/> <stop stop-color="rgb(0,0,0)" offset="100%"/> </radialGradient> <g id="Go"> <rect x="70" y="320" height="40" width="80" fill="aqua"/> <text x="90" y="350" font-size="30" fill="green">Go </text> </g> <g id="Stop"> <rect x="160" y="320" height="40" width="80" fill="aqua"/> <text x="170" y="350" font-size="30" fill="red">Stop</text> </g> </svg> </part> </root>
Attributes
The following attributes are available on this element: Universal attribute group, outputclass, and @keyref
. This element
also uses Link relationship attribute group, with narrowed
definitions of @href
and @format
(given below).
@href
- Reference to the
<svg>
element to be used. If the<svg>
element is the root element of the referenced resource, then no fragment identifier is required, otherwise, a fragment identifier must be specified, where the fragment identifier is the XML ID of the<svg>
element to be used. This attribute is not required, but must be specified if@keyref
is not specified. See The href attribute for detailed information on supported values and processing implications. @format
- The data format of the resource.. For SVG the format should be "svg", which is the
default value for
@format
on this element.