この附属書は,RELAX Namespaceの構文をDTDによって記述する。このDTDの公開識別子及びURIを次に示す。
DTDをつぎに示す。
<?xml version="1.0" encoding="utf-8"?>
<!--
DTD for RELAX Namespace (Ver 1.0)
-->
<!--
Typical invocation
<!DOCTYPE framework SYSTEM
PUBLIC "-//RELAX//Module RELAX Namespace 1.0//JA"
SYSTEM "http://www.xml.gr.jp/relax/namespace1/relaxNamespace.dtd">
-->
<!--*******************************************************-->
<!-- -->
<!-- Parameter entities for qualified names -->
<!-- -->
<!--*******************************************************-->
<!ENTITY % nsPrefix "">
<!ENTITY % framework "%nsPrefix;framework">
<!ENTITY % namespace "%nsPrefix;namespace">
<!ENTITY % includeNamespace "%nsPrefix;include">
<!ENTITY % topLevel "%nsPrefix;topLevel">
<!--*******************************************************-->
<!-- -->
<!-- Parameter entities for customization -->
<!-- -->
<!--*******************************************************-->
<!ENTITY % namespaceContent "EMPTY">
<!ENTITY % topLevelContent "EMPTY">
<!ENTITY % annotationInFramework "">
<!ENTITY % includeContent "EMPTY">
<!--*******************************************************-->
<!-- -->
<!-- The overall structure of RELAX frameworks -->
<!-- -->
<!--*******************************************************-->
<!ELEMENT %framework;
(%annotationInFramework;
(%namespace; | %includeNamespace;)*,
(%topLevel;, (%namespace; | %includeNamespace;)*)? )>
<!ATTLIST %framework;
relaxNamespaceVersion CDATA #REQUIRED
frameworkVersion CDATA #IMPLIED
xmlns CDATA #FIXED "http://www.xml.gr.jp/xmlns/relaxNamespace"
>
<!ELEMENT %namespace; %namespaceContent;>
<!ATTLIST %namespace;
name CDATA #REQUIRED
moduleLocation CDATA #IMPLIED
language CDATA #IMPLIED
validation (false) #IMPLIED
>
<!ELEMENT %includeNamespace; %includeContent;>
<!ATTLIST %includeNamespace; frameworkLocation CDATA #REQUIRED>
<!ELEMENT %topLevel; %topLevelContent;>