While a human may be able to read the explanatory text in order to figure out which links point to schemas and which links point to stylesheets, software needs somewhat more formal hints to ensure that a validator doesn't try to validate a document against a stylesheet or that a browser doesn't try to format a document as described by a DTD. To this end, the xlink:role attribute may contain a URL that indicates the nature of the resource likely to be found at the other end of the simple link. For example, this rddl:resource element locates a W3C XML Schema Language schema: <rddl:resource xlink:type="simple" xlink:href="http://developer.megabank.com/xml/mbsml.xsd" xlink:role="http://www.w3.org/2001/XMLSchema" /> This rddl:resource element locates a DTD: <rddl:resource xlink:type="simple" xlink:href="http://developer.megabank.com/xml/mbsml.dtd" xlink:role="http://www.isi.edu/in- notes/iana/assignments/media-types/application/xml-dtd" /> This rddl:resource element locates a CSS stylesheet: <rddl:resource xlink:type="simple" xlink:href="http://developer.megabank.com/xml/mbsml.xsd" xlink:role="http://www.isi.edu/in -notes/iana/assignments/media-types/text/css" /> As in these examples, most nature URIs are derived from either XML namespace URLs or MIME media type URLs. The RDDL specification currently defines the 22 roles listed in Table 42-1. However, new ones are added regularly; you are free to invent and use your own. Most software will silently ignore any rddl:resource elements with unfamiliar natures. Table 42-1. RDDL Natures
|