59 |
<div id="status" class="section"> |
<div id="status" class="section"> |
60 |
<h2>Status of This Document</h2> |
<h2>Status of This Document</h2> |
61 |
|
|
62 |
<p class=section-info><em>This section describes the status of this document |
<p class=section-info>This section describes the status of this document at the |
63 |
at the time of its publication. Other documents |
time of its publication. Other documents might supersede this document.</p> |
|
might supersede this document.</em></p> |
|
64 |
|
|
65 |
<p>This document is a working draft, produced as part of the |
<p>This document is a working draft, produced as part of the |
66 |
<a href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai</a> |
<a href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai</a> |
71 |
<p>Comments on this document are welcome and |
<p>Comments on this document are welcome and |
72 |
may be sent to the <a href="#author">author</a>.</p> |
may be sent to the <a href="#author">author</a>.</p> |
73 |
|
|
74 |
<p>Translations of thie document might be available. |
<p>Translations of this document might be available. |
75 |
The English version of the document is the only |
The English version of the document is the only |
76 |
normative version.</p> |
normative version.</p> |
77 |
</div> |
</div> |
223 |
<abbr>DOM</abbr> Tree Converter</dt> |
<abbr>DOM</abbr> Tree Converter</dt> |
224 |
<dd>A software component that converts an <abbr>XML</abbr> information set |
<dd>A software component that converts an <abbr>XML</abbr> information set |
225 |
<cite class="bibref normative">[<a href="#ref-INFOSET">INFOSET</a>]</cite> |
<cite class="bibref normative">[<a href="#ref-INFOSET">INFOSET</a>]</cite> |
226 |
into a <abbr>DOM</abbr> tree. Note that this documetn does not define |
into a <abbr>DOM</abbr> tree. Note that this document does not define |
227 |
any particular way for the convertion, but it defines constraints for |
any particular way for the conversion, but it defines constraints for |
228 |
such processing.</dd> |
such processing.</dd> |
229 |
<dt id=category-dom-infoset><abbr>DOM</abbr> Tree to <abbr>XML</abbr> |
<dt id=category-dom-infoset><abbr>DOM</abbr> Tree to <abbr>XML</abbr> |
230 |
Information Set Converter</dt> |
Information Set Converter</dt> |
231 |
<dd>A software component that converts a <abbr>DOM</abbr> tree into |
<dd>A software component that converts a <abbr>DOM</abbr> tree into |
232 |
an <abbr>XML</abbr> information set. Note that this documetn does not define |
an <abbr>XML</abbr> information set. Note that this document does not define |
233 |
any particular way for the convertion, but it defines constraints for |
any particular way for the conversion, but it defines constraints for |
234 |
such processing.</dd> |
such processing.</dd> |
235 |
</dl> |
</dl> |
236 |
</div> |
</div> |
298 |
<dl> |
<dl> |
299 |
<dt><code id=attributes>attributes</code>, |
<dt><code id=attributes>attributes</code>, |
300 |
<code id=localName>localName</code>, |
<code id=localName>localName</code>, |
|
<code id=manakaiLocalName>manakaiLocalName</code> |
|
|
<cite class="bibref normative">[<a href="#ref-MANAKAI">MANAKAI</a>]</cite>, |
|
301 |
<code id=namespaceURI>namespaceURI</code>, and |
<code id=namespaceURI>namespaceURI</code>, and |
302 |
<code id=prefix>prefix</code></dt> |
<code id=prefix>prefix</code></dt> |
303 |
<dd> |
<dd> |
388 |
the values of the <code>DOMStringList</code> objects in the |
the values of the <code>DOMStringList</code> objects in the |
389 |
<a href="#allowedTokens"><code>allowedTokens</code></a> attributes |
<a href="#allowedTokens"><code>allowedTokens</code></a> attributes |
390 |
are equal, i.e. their <code>length</code> attribute values are equal and |
are equal, i.e. their <code>length</code> attribute values are equal and |
391 |
each string exists in a list is contained in another list (their indeces |
each string exists in a list is contained in another list (their indecies |
392 |
may be different), with an additional constraint that the number of the |
may be different), with an additional constraint that the number of the |
393 |
items that are equal to a string in a list is equal to the number |
items that are equal to a string in a list is equal to the number |
394 |
of the items equal to the string in another list.</p></li> |
of the items equal to the string in another list.</p></li> |
395 |
</ul></dd> |
</ul></dd> |
396 |
|
<dt><code id=manakaiLocalName>manakaiLocalName</code> |
397 |
|
<cite class="bibref normative">[<a href="#ref-MANAKAI">MANAKAI</a>]</cite></dt> |
398 |
|
<dd><p class=section-info>This entry is applied only to implementations |
399 |
|
that support this attribute.</p> |
400 |
|
|
401 |
|
<p>On getting, the attributes <em class=rfc2119>MUST</em> return |
402 |
|
<code>null</code>.</p></dd> |
403 |
<dt><code id=lookupNamespaceURI>lookupNamespaceURI</code> and |
<dt><code id=lookupNamespaceURI>lookupNamespaceURI</code> and |
404 |
<code id=lookupPrefix>lookupPrefix</code></dt> |
<code id=lookupPrefix>lookupPrefix</code></dt> |
405 |
<dd><p>When invoked, the methods <em class=rfc2119>MUST</em> return |
<dd><p>When invoked, the methods <em class=rfc2119>MUST</em> return |
679 |
<dt><code>manakaiDeclarationBaseURI</code>, |
<dt><code>manakaiDeclarationBaseURI</code>, |
680 |
<code>manakaiEntityBaseURI</code>, and <code>manakaiEntityURI</code> |
<code>manakaiEntityBaseURI</code>, and <code>manakaiEntityURI</code> |
681 |
<cite class="bibref normative">[<a href="#ref-MANAKAI">MANAKAI</a>]</cite></dt> |
<cite class="bibref normative">[<a href="#ref-MANAKAI">MANAKAI</a>]</cite></dt> |
682 |
<dd>No explicit value is set.</dd> |
<dd><p class=section-info>This entry is applied only to implementations |
683 |
<dt><a href="#hasReplacementTree"><code>hasReplacementTree</code></a></dt> |
that support these attributes.</p> |
684 |
<dd><code>false</code>.</dd> |
|
685 |
|
<p>No explicit value is set.</p></dd> |
686 |
|
<dt><a href="#hasReplacementTree"><code>hasReplacementTree</code></a> and |
687 |
|
<a href="#isExternallyDeclared"><code>isExternallyDeclared</code></a></dt> |
688 |
|
<dd><p><code>false</code>.</p></dd> |
689 |
<dt><code>nodeName</code></dt> |
<dt><code>nodeName</code></dt> |
690 |
<dd><a href="#createGeneralEntity-name"><var>name</var></a>.</dd> |
<dd><a href="#createGeneralEntity-name"><var>name</var></a>.</dd> |
691 |
<dd> |
<dd> |
728 |
<dd>An empty <code>NodeList</code> object.</dd> |
<dd>An empty <code>NodeList</code> object.</dd> |
729 |
<dt><code>manakaiDeclarationBaseURI</code> |
<dt><code>manakaiDeclarationBaseURI</code> |
730 |
<cite class="bibref normative">[<a href="#ref-MANAKAI">MANAKAI</a>]</cite></dt> |
<cite class="bibref normative">[<a href="#ref-MANAKAI">MANAKAI</a>]</cite></dt> |
731 |
<dd>No explicit value is set.</dd> |
<dd><p class=section-info>This entry is applied only to implementations |
732 |
|
that support these attributes.</p> |
733 |
|
|
734 |
|
<p>No explicit value is set.</p></dd> |
735 |
<dt><code>nodeName</code></dt> |
<dt><code>nodeName</code></dt> |
736 |
<dd><a href="#createNotation-name"><var>name</var></a>.</dd> |
<dd><a href="#createNotation-name"><var>name</var></a>.</dd> |
737 |
<dt><code>ownerDocument</code></dt> |
<dt><code>ownerDocument</code></dt> |
738 |
<dd>The <code>Document</code> node over which the method is invoked.</dd> |
<dd><p>The <a href="#Document"><code>Document</code></a> node over which |
739 |
|
the method is invoked.</p></dd> |
740 |
<dt><a href="#ownerDocumentTypeDefinition"><code>ownerDocumentTypeDefinition</code></a> |
<dt><a href="#ownerDocumentTypeDefinition"><code>ownerDocumentTypeDefinition</code></a> |
741 |
and <code>parentNode</code></dt> |
and <code>parentNode</code></dt> |
742 |
<dd><code>null</code>.</dd> |
<dd><code>null</code>.</dd> |
836 |
<a href="#read-only">read$B!>(Bonly</a>. Otherwise, it <em class=rfc2119>MUST</em> |
<a href="#read-only">read$B!>(Bonly</a>. Otherwise, it <em class=rfc2119>MUST</em> |
837 |
set the specified value as the value associated to the attribute. No |
set the specified value as the value associated to the attribute. No |
838 |
normalization, relative reference resolution, or lexical validation is |
normalization, relative reference resolution, or lexical validation is |
839 |
performed. <span class=ed>@@ If the new value is <code>null</code>, should an e |
performed. <span class=ed>@@ If the new value is <code>null</code>, should an |
840 |
mpty string be set?</span></p> |
empty string be set?</span></p> |
841 |
|
|
842 |
<div class="note memo"> |
<div class="note memo"> |
843 |
<p>Setting an invalid identifier might make the node unserializable. |
<p>Setting an invalid identifier might make the node unserializable. |
844 |
Setting a public identifier while leaveing system identifier unspecified |
Setting a public identifier while leaving system identifier unspecified |
845 |
would also make the <a href="#DocumentType"><code>DocumentType</code></a> |
would also make the <a href="#DocumentType"><code>DocumentType</code></a> |
846 |
or <a href="#Entity"><code>Entity</code></a> node unserializable.</p> |
or <a href="#Entity"><code>Entity</code></a> node unserializable.</p> |
847 |
</div> |
</div> |
884 |
feature <code>Core</code> version <code>3.0</code> |
feature <code>Core</code> version <code>3.0</code> |
885 |
<cite class="bibref normative">[<a href="#ref-DOM3CORE">DOM3CORE</a>]</cite>).</p> |
<cite class="bibref normative">[<a href="#ref-DOM3CORE">DOM3CORE</a>]</cite>).</p> |
886 |
|
|
|
<div class="note memo"> |
|
|
<p>This interface is a separated interface from the |
|
|
<a href="#DocumentType"><code>DocumentType</code></a>, not a set of extensions |
|
|
to the <a href="#DocumentType"><code>DocumentType</code></a>, |
|
|
for the historical reason.</p> |
|
|
|
|
|
<p class=ed>Should the interface be merged with |
|
|
<a href="#DocumentType"><code>DocumentType</code></a>?</p> |
|
|
</div> |
|
|
|
|
887 |
<p>The |
<p>The |
888 |
<a href="#DocumentTypeDefinition"><code>DocumentTypeDefinition</code></a> |
<a href="#DocumentTypeDefinition"><code>DocumentTypeDefinition</code></a> |
889 |
interface <em class=rfc2119>MUST</em> be implemented as the following |
interface <em class=rfc2119>MUST</em> be implemented as the following |
1074 |
<code>null</code>.</p></dd> |
<code>null</code>.</p></dd> |
1075 |
<dt><dfn id=setElementTypeDefinitionNode class=dom-method><code>setElementTypeDefinitionNode</code></dfn>, |
<dt><dfn id=setElementTypeDefinitionNode class=dom-method><code>setElementTypeDefinitionNode</code></dfn>, |
1076 |
method</dt> |
method</dt> |
1077 |
<dd class=ed>@@</dd> |
<dd><p>Associate an |
1078 |
|
<a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> |
1079 |
|
node with the <a href="#DocumentType"><code>DocumentType</code></a> node.</p> |
1080 |
|
|
1081 |
|
<p>The |
1082 |
|
<dfn id=setElementTypeDefinitionNode-node class=dom-param><var>node</var></dfn> |
1083 |
|
parameter is the node to associate.</p> |
1084 |
|
|
1085 |
|
<p>When invoked, the method <em class=rfc2119>MUST</em> follow the rules |
1086 |
|
to <a href="#algorithm-attach-node">attach a node</a>, where |
1087 |
|
<a href="#attach-node-n"><var>n</var></a> is the |
1088 |
|
<a href="#DocumentType"><code>DocumentType</code></a> node, |
1089 |
|
<a href="#attach-node-l"><var>l</var></a> is the |
1090 |
|
<a href="#elementTypes"><code>elementTypes</code></a> attribute value of the |
1091 |
|
<a href="#DocumentType"><code>DocumentType</code></a> node, |
1092 |
|
<a href="#attach-node-node"><var>node</var></a> is the |
1093 |
|
<a href="#setElementTypeDefinitionNode-node"><var>node</var></a>, and |
1094 |
|
<a href="#attach-node-owner-attr"><var>owner-attr</var></a> is the |
1095 |
|
<a href="#ownerDocumentTypeDefinition"><code>ownerDocumentTypeDefinition</code></a> |
1096 |
|
attribute.</p></dd> |
1097 |
<dt><dfn id=setGeneralEntityNode class=dom-method><code>setGeneralEntityNode</code></dfn>, |
<dt><dfn id=setGeneralEntityNode class=dom-method><code>setGeneralEntityNode</code></dfn>, |
1098 |
method</dt> |
method</dt> |
1099 |
<dd class=ed>@@</dd> |
<dd><p>Associate an <a href="#Entity"><code>Entity</code></a> |
1100 |
|
node with the <a href="#DocumentType"><code>DocumentType</code></a> node.</p> |
1101 |
|
|
1102 |
|
<p>The |
1103 |
|
<dfn id=setGeneralEntityNode-node class=dom-param><var>node</var></dfn> |
1104 |
|
parameter is the node to associate.</p> |
1105 |
|
|
1106 |
|
<p>When invoked, the method <em class=rfc2119>MUST</em> follow the rules |
1107 |
|
to <a href="#algorithm-attach-node">attach a node</a>, where |
1108 |
|
<a href="#attach-node-n"><var>n</var></a> is the |
1109 |
|
<a href="#DocumentType"><code>DocumentType</code></a> node, |
1110 |
|
<a href="#attach-node-l"><var>l</var></a> is the |
1111 |
|
<a href="#entities"><code>entities</code></a> attribute value of the |
1112 |
|
<a href="#DocumentType"><code>DocumentType</code></a> node, |
1113 |
|
<a href="#attach-node-node"><var>node</var></a> is the |
1114 |
|
<a href="#setGeneralEntityNode-node"><var>node</var></a>, and |
1115 |
|
<a href="#attach-node-owner-attr"><var>owner-attr</var></a> is the |
1116 |
|
<a href="#ownerDocumentTypeDefinition"><code>ownerDocumentTypeDefinition</code></a> |
1117 |
|
attribute.</p></dd> |
1118 |
<dt><dfn id=setNotationNode class=dom-method><code>setNotationNode</code></dfn>, |
<dt><dfn id=setNotationNode class=dom-method><code>setNotationNode</code></dfn>, |
1119 |
method</dt> |
method</dt> |
1120 |
<dd class=ed>@@</dd> |
<dd><p>Associate an <a href="#Notation"><code>Notation</code></a> |
1121 |
|
node with the <a href="#DocumentType"><code>DocumentType</code></a> node.</p> |
1122 |
|
|
1123 |
|
<p>The <dfn id=setNotationNode-node class=dom-param><var>node</var></dfn> |
1124 |
|
parameter is the node to associate.</p> |
1125 |
|
|
1126 |
|
<p>When invoked, the method <em class=rfc2119>MUST</em> follow the rules |
1127 |
|
to <a href="#algorithm-attach-node">attach a node</a>, where |
1128 |
|
<a href="#attach-node-n"><var>n</var></a> is the |
1129 |
|
<a href="#DocumentType"><code>DocumentType</code></a> node, |
1130 |
|
<a href="#attach-node-l"><var>l</var></a> is the |
1131 |
|
<a href="#notations"><code>notations</code></a> attribute value of the |
1132 |
|
<a href="#DocumentType"><code>DocumentType</code></a> node, |
1133 |
|
<a href="#attach-node-node"><var>node</var></a> is the |
1134 |
|
<a href="#setNotationNode-node"><var>node</var></a>, and |
1135 |
|
<a href="#attach-node-owner-attr"><var>owner-attr</var></a> is the |
1136 |
|
<a href="#ownerDocumentTypeDefinition"><code>ownerDocumentTypeDefinition</code></a> |
1137 |
|
attribute.</p></dd> |
1138 |
</dl> |
</dl> |
1139 |
|
|
1140 |
|
<p>When a <dfn id=algorithm-attach-node title="attach a node">node is |
1141 |
|
attached</dfn>, the rules below, with parameters |
1142 |
|
<dfn id=attach-node-n><var>n</var></dfn>, |
1143 |
|
<dfn id=attach-node-l><var>l</var></dfn>, |
1144 |
|
<dfn id=attach-node-node><var>node</var></dfn>, and |
1145 |
|
<dfn id=attach-node-owner-attr><var>owner-attr</var></dfn>, |
1146 |
|
<em class=rfc2119>MUST</em> be followed:</p> |
1147 |
|
<ol> |
1148 |
|
<li><p>Let |
1149 |
|
<dfn id=attach-node-r><var>r</var></dfn> be the node in |
1150 |
|
<var>l</var> whose <code>nodeName</code> attribute value is equal to the |
1151 |
|
<code>nodeName</code> attribute value of <var>node</var>, if any.</p></li> |
1152 |
|
<li><p>If <var>r</var> is different from <code>null</code> and <var>r</var> |
1153 |
|
is same node as <var>node</var>, then abort these steps.</p></li> |
1154 |
|
<li><p>If <var>n</var> is <a href="#read-only">read$B!>(Bonly</a>, then raise a |
1155 |
|
<code>NO_MODIFICATION_ALLOWED_ERR</code> and abort these steps.</p></li> |
1156 |
|
<li><p>If the <code>ownerDocument</code> attribute value of <var>node</var> |
1157 |
|
is different from that of <var>n</var>, then raise a |
1158 |
|
<code>WRONG_DOCUMENT_ERR</code> and abort these steps.</p></li> |
1159 |
|
<li><p>If the value of the attribute <var>owner-attr</var> of <var>node</var> |
1160 |
|
is different from <code>null</code>, then raise a |
1161 |
|
<code>HIERARCHY_REQUEST_ERR</code> and abort these steps.</p></li> |
1162 |
|
<li><p>If <var>r</var> is a node, then remove it from <var>r</var>.</p> |
1163 |
|
|
1164 |
|
<div class="note memo"> |
1165 |
|
<p>By the removal of <var>r</var>, the attribute <var>owner-attr</var> of |
1166 |
|
<var>r</var> is set to <code>null</code>.</p> |
1167 |
|
</div></li> |
1168 |
|
<li><p>Add <var>node</var> to <var>l</var>.</p> |
1169 |
|
|
1170 |
|
<div class="note memo"> |
1171 |
|
<p>By the addition of <var>node</var>, the attribute <var>owner-attr</var> of |
1172 |
|
<var>node</var> is set to <var>n</var>.</p> |
1173 |
|
</div></li> |
1174 |
|
</ol> |
1175 |
|
|
1176 |
<div class=ed> |
<div class=ed> |
1177 |
<p>A future version of this interface might define the |
<p>A future version of this interface might define the |
1178 |
<code>parameterEntities</code> and getter/setter for parameter entities. |
<code>parameterEntities</code> and getter/setter for parameter entities. |
1302 |
<em class=rfc2119>MUST</em> return <code>null</code>.</p></dd> |
<em class=rfc2119>MUST</em> return <code>null</code>.</p></dd> |
1303 |
<dt><dfn id=setAttributeDefinitionNode class=dom-method><code>setAttributeDefinitionNode</code></dfn>, |
<dt><dfn id=setAttributeDefinitionNode class=dom-method><code>setAttributeDefinitionNode</code></dfn>, |
1304 |
method</dt> |
method</dt> |
1305 |
<dd class=ed>@@</dd> |
<dd><p>Associate an |
1306 |
|
<a href="#AttributeDefinition"><code>AttributeDefinition</code></a> node with |
1307 |
|
the |
1308 |
|
<a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> |
1309 |
|
node.</p> |
1310 |
|
|
1311 |
|
<p>The |
1312 |
|
<dfn id=setAttributeDefinitionNode-node class=dom-param><var>node</var></dfn> |
1313 |
|
parameter is the node to associate.</p> |
1314 |
|
|
1315 |
|
<p>When invoked, the method <em class=rfc2119>MUST</em> follow the rules |
1316 |
|
to <a href="#algorithm-attach-node">attach a node</a>, where |
1317 |
|
<a href="#attach-node-n"><var>n</var></a> is the |
1318 |
|
<a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> |
1319 |
|
node, <a href="#attach-node-l"><var>l</var></a> is the |
1320 |
|
<a href="#attributeDefinitions"><code>attributeDefinitions</code></a> |
1321 |
|
attribute value of the |
1322 |
|
<a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> node, |
1323 |
|
<a href="#attach-node-node"><var>node</var></a> is the |
1324 |
|
<a href="#setAttributeDefinitionNode-node"><var>node</var></a>, and |
1325 |
|
<a href="#attach-node-owner-attr"><var>owner-attr</var></a> is the |
1326 |
|
<a href="#ownerElementTypeDefinition"><code>ownerElementTypeDefinition</code></a> |
1327 |
|
attribute.</p></dd> |
1328 |
</dl> |
</dl> |
1329 |
|
|
1330 |
<div class=ed> |
<div class=ed> |
1607 |
<p>The definition group |
<p>The definition group |
1608 |
<dfn id=DefaultValueType><code>DefaultValueType</code></dfn> |
<dfn id=DefaultValueType><code>DefaultValueType</code></dfn> |
1609 |
contains integers indicating the type of the default for the attribute. |
contains integers indicating the type of the default for the attribute. |
1610 |
The definition group contains the following constans:</p> |
The definition group contains the following constants:</p> |
1611 |
|
|
1612 |
<table> |
<table> |
1613 |
<thead> |
<thead> |