/[suikacvs]/markup/xml/xmlcc/xmlcc-work.en.html
Suika

Contents of /markup/xml/xmlcc/xmlcc-work.en.html

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.4 - (show annotations) (download) (as text)
Mon Nov 12 12:45:49 2007 UTC (17 years ago) by wakaba
Branch: MAIN
Changes since 1.3: +32 -22 lines
File MIME type: text/html
entity-error note added

1 <!DOCTYPE html>
2 <html lang="en" class="formal-specification status-work-in-progress">
3 <head>
4 <title>manakai's XML Conformance Checking</title>
5 <link rel="stylesheet" href="http://suika.fam.cx/www/style/html/spec">
6 <link rel="license" href="http://suika.fam.cx/c/gnu/fdl">
7 </head>
8 <body class="has-abstract">
9
10 <div class="header">
11 <h1>manakai's XML Conformance Checking</h1>
12 <h2>Working Draft <time datetime=2007-11-12>12 November 2007</time></h2>
13
14 <dl class="versions-uri">
15 <dt>This Version</dt>
16 <dd><code class="URI">&lt;<a href="http://suika.fam.cx/www/markup/xml/xmlcc/xmlcc-work"
17 >http://suika.fam.cx/www/markup/xml/xmlcc/xmlcc-work</a>&gt;</code></dd>
18 <dt>Latest Version</dt>
19 <dd><code class="URI">&lt;<a href="http://suika.fam.cx/www/markup/xml/xmlcc/xmlcc"
20 >http://suika.fam.cx/www/markup/xml/xmlcc/xmlcc</a>&gt;</code></dd>
21 <dt>Latest Working Draft</dt>
22 <dd><code class="URI">&lt;<a href="http://suika.fam.cx/www/markup/xml/xmlcc/xmlcc-work"
23 >http://suika.fam.cx/www/markup/xml/xmlcc/xmlcc-work</a>&gt;</code></dd>
24 <!-- <dt>Previous Version</dt> -->
25 <dt>Version History</dt>
26 <dd><code class=URI>&lt;<a href="http://suika.fam.cx/gate/cvs/markup/xml/xmlcc/xmlcc-work.en.html">http://suika.fam.cx/gate/cvs/markup/xml/xmlcc/xmlcc-work.en.html</a>&gt;</code></dd>
27 </dl>
28 <dl class="authors" id="author">
29 <dt>Author</dt>
30 <dd><a href="http://suika.fam.cx/~wakaba/who?" rel="author"
31 lang=ja>Wakaba</a>
32 <code class="mail">&lt;<a href="mailto:w@suika.fam.cx" rel="author"
33 >w@suika.fam.cx</a>&gt;</code></dd>
34 </dl>
35
36 <p class="copyright" lang="en">&#xA9; <time>2007</time> <a
37 href="http://suika.fam.cx/~wakaba/who?" rel="author">Wakaba</a>.
38 Permission is granted to copy, distribute and/or modify this document
39 under the terms of the <a rel="license"
40 href="http://www.gnu.org/copyleft/fdl.html">GNU Free Documentation License</a>,
41 Version 1.2
42 or any later version published by the <a
43 href="http://www.fsf.org/">Free Software Foundation</a>;
44 with no Invariant Sections, no Front$B!>(BCover Texts, and no Back$B!>(BCover
45 Texts. A copy of the license is
46 available at <code class="URI">&lt;<a
47 href="http://www.gnu.org/copyleft/fdl.html"
48 rel="license">http://www.gnu.org/copyleft/fdl.html</a>&gt;</code>.</p>
49 </div>
50
51 <div id="abstract" class="section">
52 <h2>Abstract</h2>
53
54 <div class="ed issue">...</div>
55
56 </div>
57
58 <div id="status" class="section">
59 <h2>Status of This Document</h2>
60
61 <p class=section-info><em>This section describes the status of this document
62 at the time of its publication. Other documents
63 might supersede this document.</em></p>
64
65 <p>This document is a working draft, produced as part of the
66 <a href="http://suika.fam.cx/www/markup/html/whatpm/readme">Whatpm</a>
67 subproject of the
68 <a href="http://suika.fam.cx/www/manakai-core/doc/web/">manakai</a>
69 project. It might be updated, replaced, or obsoleted by
70 other documents at any time. It is inappropriate to
71 cite this document as other than <q>work in progress</q>.</p>
72
73 <p>Comments on this document are welcome and
74 may be sent to the <a href="#author">author</a>.</p>
75
76 <p>Translations of thie document might be available.
77 The English version of the document is the only
78 normative version.</p>
79 </div>
80
81 <div id="introduction" class="section">
82 <h2>Introduction</h2>
83
84 <p class=section-info>This section is <em>non$B!>(Bnormative</em>.</p>
85
86 <div class="issue ed">...</div>
87
88
89 </div>
90
91 <div class="section" id="terminology">
92 <h2>Terminology</h2>
93
94 <p>The key words <q><em class="rfc2119">MUST</em></q>,
95 <q><em class="rfc2119">MUST NOT</em></q>,
96 <q><em class="rfc2119">SHOULD</em></q>,
97 <q><em class="rfc2119">SHOULD NOT</em></q>, and
98 <q><em class=rfc2119>MAY</em></q> in this
99 document are to be interpreted as described in
100 <a href="urn:ietf:rfc:2119"><abbr title="Request for Comments">RFC</abbr>
101 2119</a>
102 <cite class="bibref normative">[<a href="#ref-KEYWORDS">KEYWORDS</a>]</cite>.</p>
103
104 <!-- Strictly speaking the paragraph below is not part of terminology. -->
105 <p>All examples and notes in this specification are non$B!>(Bnormative,
106 as are all sections explicitly marked non$B!>(Bnormative. Everything
107 else in this specification is normative.</p>
108
109 <p><span class=ed>Algorithm is normative but non-normative</span>.
110 In addition, the order in which <a href="#errors">errors</a> are
111 raised is undefined.</p>
112 </div>
113
114 <div class="section">
115 <h2 class=ed>Algorithms</h2>
116
117 <p>The following algorithms and definitions are applied to
118 <abbr>XML</abbr> documents; especially, they are not applied
119 to <abbr>HTML</abbr> documents.<!-- TODO: ref to HTML5 --></p>
120
121 <p class=ed>If a <code>Document</code> node has no
122 xml-well-formedness-error, entity-error, and unknown-error,
123 then it is well-formed. If a well-formed <code>Document</code>
124 node has no xml-validity-error, it is valid.</p>
125
126 <div class="note memo">
127 <p>A well$B!>(Bformed <code>Document</code> can be safely serialized
128 into a well$B!>(Bformed XML document. A valid <code>Document</code>
129 can be easily serialized into a valid XML document.</p>
130 </div>
131
132 <p>Errors are classified into these
133 <dfn id=error-category title="error category">error categories</dfn>:</p>
134
135 <dl id=errors>
136 <dt><dfn id=entity-error><code>entity-error</code></dfn></dt>
137 <dd>
138 <p class=ed>@@</p>
139 <div class="note memo">
140 <p>This <span class=ed>algorithm</span> does not support
141 <abbr>DOM</abbr> tree with one or more <code>EntityReference</code>
142 nodes. It is expected that any entity references are expanded
143 at the parse time and any unexpandable entity references
144 make parse time errors raised so that never result in
145 <abbr>DOM</abbr> tree with <code>EntityReference</code> nodes.</p>
146 </div>
147 </dd>
148 <dt><dfn id=round-trip-error><code>round-trip-error</code></dfn></dt>
149 <dd class=ed>@@</dd>
150 <dt class=ed><dfn id=unknown-error><code>unknown-error</code></dfn>?</dt>
151 <dd class=ed>@@</dd>
152 <dt><dfn id=xml-misc-error><code>xml-misc-error</code></dt>
153 <dd>An <abbr>XML</abbr> <i>error</i> (<abbr>XML</abbr> 1.0
154 <cite class="bibref normative">[<a href="#ref-XML10">XML10</a>]</cite>
155 <a href="http://www.w3.org/TR/2006/REC-xml-20060816/#dt-error">error</a> /
156 <abbr>XML</abbr> 1.1
157 <cite class="bibref normative">[<a href="#ref-XML11">XML11</a>]</cite>
158 <a href="@@/#dt-error">error</a>)
159 that is not classified to any other <a href="#error-category">error
160 category</a>.</dd>
161 <dt><dfn id=xml-misc-fatal-error><code>xml-misc-fatal-error</code></dt>
162 <dd>An <abbr>XML</abbr> <i>fatal error</i> (<abbr>XML</abbr> 1.0
163 <cite class="bibref normative">[<a href="#ref-XML10">XML10</a>]</cite>
164 <a href="http://www.w3.org/TR/2006/REC-xml-20060816/#dt-fatal">fatal
165 error</a> / <abbr>XML</abbr> 1.1
166 <cite class="bibref normative">[<a href="#ref-XML11">XML11</a>]</cite>
167 <a href="@@/#dt-fatal">fatal error</a>)
168 that is not classified to any other <a href="#error-category">error
169 category</a>. <span class=ed>@@ What errors fall into this category?</span></dd>
170 <dt><dfn id=xml-validity-error><code>xml-validity-error</code></dfn></dt>
171 <dd>A violation of validity constraint in XML document.</dd>
172 <dt><dfn id=xml-well-formedness-error><code>xml-well-formedness-error</code></dfn></dt>
173 <dd><p>If an <code>xml-well-formedness-error</code> is raised,
174 it would not be possible to generate an XML serialization that
175 would match to the appropriate production rule and that would not
176 violate to any well$B!>(Bformedness constraint in XML
177 specification <cite class="bibref normative">[<a href="#ref-XML10">XML10</a>,
178 <a href="#ref-XML11">XML11</a>]</cite>.</p></dd>
179 </dl>
180
181 <div class=ed><p>@@ TODO: #dt-atuseroption at user option
182 (MAY or MUST), #dt-compat for compatibility,
183 #dt-interop for interoperability</p></div>
184
185 <p>The <dfn id=xml-version><abbr>XML</abbr> version</dfn> of a node is
186 the <abbr>XML</abbr> version of the document to which the node belongs.
187 For a <code>Documemt</code> node, the <abbr>XML</abbr> version
188 of the document is the value of the <code>xmlVersion</code>
189 attribute. For a <code>DocumentType</code> node whose
190 <code>ownerDocument</code> is set to <code>null</code>,
191 the <abbr>XML</abbr> version of the document is <code>1.0</code>.
192 For any other node, the <abbr>XML</abbr> version of the document
193 is that of the <code>Document</code> node contained in the
194 <code>ownerDocument</code> attribute of the node.</p>
195
196 <p>The algorithm <dfn title="to check a node" id=algorithm-to-check-a-node>to
197 check a node (<dfn id=var-n><var>n</var></dfn>)</dfn> is defined as
198 following:</p>
199 <dl class=switch>
200 <dt>If <var>n</var> is an <code>Attr</code> node</dt>
201 <dd>
202 <ol>
203 <li><a href="#algorithm-to-validate-a-ncname">Validate the
204 <code>localName</code> attribute value as an <code>NCName</code></a>.</li>
205 <li>If the <code>prefix</code> attribute value is different from
206 <code>null</code>, then <a href="#algorithm-to-validate-a-ncname">validate
207 the <code>prefix</code> attribute value as an <code>NCName</code></a>.</li>
208 <li>If the <code>childNodes</code> list of <var>n</var> contains
209 a node which is <em>not</em> <code>Text</code> or
210 <code>EntityReference</code> node, then it is a
211 <a href="#xml-well-formedness-error" id=wfe-attr-child><code>xml-well-formedness-error</code></a>.</li>
212 <li>If the <code>childNodes</code> list of <var>n</var> contains
213 an <code>EntityReference</code> node, it is an
214 <a href="#entity-error" id=ee-er-in-attr><code>entity-error</code></a>.</li>
215 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
216 <code>childNodes</code> list of <var>n</var>,
217 which is different from <code>EntityReference</code> recursively.</li>
218 <li class=ed>@@ <code>specified</code>,
219 <code>manakaiAttributeType</code></li>
220 </ol>
221 </dd>
222 <dt>If <var>n</var> is an <code>AttributeDefinition</code> node</dt>
223 <dd class=ed></dd>
224 <dt>If <var>n</var> is a <code>CDATASection</code> node</dt>
225 <dd>
226 <ol>
227 <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the
228 <code>data</code> attribute value as an <abbr>XML</abbr> character
229 data</a>.</li>
230 <li>If the <code>data</code> attribute value contains
231 a string <code>]]></code>, then it is a
232 <a href="#xml-well-formedness-error" id=wfe-cs-mse><code>xml-well-formedness-error</code></a>.</li>
233 <li>If the <code>childNodes</code> list of <var>n</var> contains
234 any nodes, they are in
235 <a href="#xml-well-formedness-error" id=wfe-cs-child><code>xml-well-formedness-error</code></a>s.</li>
236 </ol>
237 </dd>
238 <dt>If <var>n</var> is a <code>Comment</code> node</dt>
239 <dd>
240 <ol>
241 <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the
242 <code>data</code> attribute value as an <abbr>XML</abbr> character
243 data</a>.</li>
244 <li>If the <code>data</code> attribute value contains
245 a string <code>--</code>, or if it ends with a character
246 <code>-</code>, then it is a
247 <a href="#xml-well-formedness-error" id=wfe-comment-com><code>xml-well-formedness-error</code></a>.</li>
248 <li>If the <code>childNodes</code> list of <var>n</var> contains
249 any nodes, they are in
250 <a href="#xml-well-formedness-error" id=wfe-comment-child><code>xml-well-formedness-error</code></a>s.</li>
251 </ol>
252 </dd>
253 <dt>If <var>n</var> is a <code>Document</code> node</dt>
254 <dd>
255 <ol>
256 <li>If <a href="#xml-version"><abbr>XML</abbr> version</a> of <var>n</var>
257 is different from <code>1.0</code> or <code>1.1</code>,
258 then it is an <code class=ed>unknown-error?</code>.</li>
259 <li>If the <code>xmlEncoding</code> attribute value does <em>not</em>
260 match to <code>[A-Za-z] ([A-Za-z0-9._] | '-')*</code>
261 <span class=ed>@@ formal def</span>, then it is a
262 <a href="#xml-well-formedness-error" id=wfe-encoding><code>xml-well-formedness-error</code></a>.</li>
263 <li>The <code>childNodes</code> list of <var>n</var> have to
264 consist of zero or more <code>Comment</code> and/or
265 <code>ProcessingInstruction</code> nodes, followed by
266 an optional <code>DocumentType</code> node, followed
267 by zero or more <code>Comment</code> and/or
268 <code>ProcessingInstruction</code> nodes, followed by
269 an <code>Element</code> node, followed
270 by zero or more <code>Comment</code> and/or
271 <code>ProcessingInstruction</code> nodes. Any violation to this is a
272 <a href="#xml-well-formedness-error" id=wfe-document-child><code>xml-well-formedness-error</code></a>.</li>
273 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
274 <code>childNodes</code> list of <var>n</var>,
275 which is different from <code>EntityReference</code> recursively.</li>
276 <li class=ed>@@ <code>allDeclarationsProcessed</code></li>
277 </ol>
278 </dd>
279 <dt>If <var>n</var> is a <code>DocumentFragment</code> node</dt>
280 <dd>
281 <ol>
282 <li>If the <code>childNodes</code> list of <var>n</var> contains
283 a node which is <em>not</em> <code>Element</code>,
284 <code>Text</code>, <code>CDATASection</code>, <code>Comment</code>,
285 <code>ProcessingInstruction</code>, or
286 <code>EntityReference</code> node, then it is a
287 <a href="#xml-well-formedness-error" id=wfe-df-child><code>xml-well-formedness-error</code></a>.</li>
288 <li>If the <code>childNodes</code> list of <var>n</var> contains
289 an <code>EntityReference</code> node, it is an
290 <a href="#entity-error" id=ee-er-in-df><code>entity-error</code></a>.</li>
291 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
292 <code>childNodes</code> list of <var>n</var>
293 which is different from <code>EntityReference</code> recursively.</li>
294 </ol>
295 </dd>
296 <dt>If <var>n</var> is a <code>DocumentType</code> node</dt>
297 <dd>
298 <ol>
299 <li><a href="#algorithm-to-validate-a-ncname">Validate the
300 <code>nodeName</code> attribute value as an <code>NCName</code></a>.</li>
301 <li>If the <code>publicId</code> attribute value contains any character
302 that is outside of the range of <code>#x20 | <!--#xD | #xA |-->
303 [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</code><!-- @@ TODO: formal def -->,
304 or contains a leading <code class=char>U+0020</code> character,
305 a trailing <code class=char>U+0020</code> character, or a
306 sequence of two or more <code class=char>U+0020</code> characters,
307 then it is a
308 <a href="#xml-well-formedness-error" id=wfe-dt-public-id><code>xml-well-formedness-error</code></a>.</li>
309 <li>If the <code>systemId</code> attribute value contains
310 both <code>"</code> and <code>'</code> characters, it is a
311 <a href="#xml-well-formedness-error" id=wfe-dt-system-id><code>xml-well-formedness-error</code></a>.</li>
312 <!-- publicId = non-null and systemId = null -->
313 <li>If the <code>childNodes</code> list of <var>n</var> contains
314 a node which is <em>not</em> <code>ProcessingInstruction</code> node,
315 then it is a
316 <a href="#xml-well-formedness-error" id=wfe-dt-child><code>xml-well-formedness-error</code></a>.
317 <span class=ed>@@ ref to manakai's extensions</span></li>
318 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
319 <code>childNodes</code> list of <var>n</var>,
320 which is different from <code>EntityReference</code> recursively.</li>
321 <li class=ed>@@ <code>entities</code>, <code>notations</code>,
322 <code>elementTypes</code>, externally declared?</li>
323 </ol>
324 </dd>
325 <dt>If <var>n</var> is an <code>Element</code> node</dt>
326 <dd>
327 <ol>
328 <li><a href="#algorithm-to-validate-a-ncname">Validate the
329 <code>localName</code> attribute value as an <code>NCName</code></a>.</li>
330 <li>If the <code>prefix</code> attribute value is different from
331 <code>null</code>, then <a href="#algorithm-to-validate-a-ncname">validate
332 the <code>prefix</code> attribute value as an <code>NCName</code></a>.</li>
333 <li>If the <code>childNodes</code> list of <var>n</var> contains
334 a node which is <em>not</em> <code>Element</code>,
335 <code>Text</code>, <code>CDATASection</code>, <code>Comment</code>,
336 <code>ProcessingInstruction</code>, or
337 <code>EntityReference</code> node, then it is a
338 <a href="#xml-well-formedness-error" id=wfe-element-child><code>xml-well-formedness-error</code></a>.</li>
339 <li>If the <code>childNodes</code> list of <var>n</var> contains
340 an <code>EntityReference</code> node, it is an
341 <a href="#entity-error" id=ee-er-in-element><code>entity-error</code></a>.</li>
342 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
343 <code>childNodes</code> list of <var>n</var>,
344 which is different from <code>EntityReference</code> recursively.</li>
345 </ol>
346 </dd>
347 <dt>If <var>n</var> is an <code>ElementTypeDefinition</code> node</dt>
348 <dd class=ed></dd>
349 <dt>If <var>n</var> is an <code>Entity</code> node</dt>
350 <dd>
351 <ol>
352 <li>An <a href="#entity-error" id=ee-entity-node><code>entity-error</code></a> <span class=ed>@@ if !notationName</span>.</li>
353 <li><a href="#algorithm-to-validate-a-ncname">Validate the
354 <code>nodeName</code> attribute value as an <code>NCName</code></a>.</li>
355 <li>If the <code>publicId</code> attribute value contains any character
356 that is outside of the range of <code>#x20 | <!--#xD | #xA |-->
357 [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</code><!-- @@ TODO: formal def -->,
358 or contains a leading <code class=char>U+0020</code> character,
359 a trailing <code class=char>U+0020</code> character, or a
360 sequence of two or more <code class=char>U+0020</code> characters,
361 then it is a
362 <a href="#xml-well-formedness-error" id=wfe-dt-public-id><code>xml-well-formedness-error</code></a>.</li>
363 <li>If the <code>systemId</code> attribute value contains
364 both <code>"</code> and <code>'</code> characters, it is a
365 <a href="#xml-well-formedness-error" id=wfe-dt-system-id><code>xml-well-formedness-error</code></a>.</li>
366 <!-- publicId = non-null and systemId = null -->
367 <li class=ed>@@ <code>notationName</code></li>
368 <li>If the <code>childNodes</code> list of <var>n</var> contains
369 a node which is <em>not</em> <code>Element</code>,
370 <code>Text</code>, <code>CDATASection</code>, <code>Comment</code>,
371 <code>ProcessingInstruction</code>, or
372 <code>EntityReference</code> node, then it is a
373 <a href="#xml-well-formedness-error" id=wfe-entity-child><code>xml-well-formedness-error</code></a>.</li>
374 <li>If the <code>childNodes</code> list of <var>n</var> contains
375 an <code>EntityReference</code> node, it is an
376 <a href="#entity-error" id=ee-er-in-er><code>entity-error</code></a>.</li>
377 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
378 <code>childNodes</code> list of <var>n</var>,
379 which is different from <code>EntityReference</code> recursively.</li>
380 </ol>
381 </dd>
382 <dt>If <var>n</var> is an <code>EntityReference</code> node</dt>
383 <dd>
384 <ol>
385 <li>An <a href="#entity-error" id=ee-er-node><code>entity-error</code></a>.</li>
386 <li><a href="#algorithm-to-validate-a-ncname">Validate the
387 <code>nodeName</code> attribute value as an <code>NCName</code></a>.</li>
388 <li>If the <code>childNodes</code> list of <var>n</var> contains
389 a node which is <em>not</em> <code>Element</code>,
390 <code>Text</code>, <code>CDATASection</code>, <code>Comment</code>,
391 <code>ProcessingInstruction</code>, or
392 <code>EntityReference</code> node, then it is a
393 <a href="#xml-well-formedness-error" id=wfe-er-child><code>xml-well-formedness-error</code></a>.</li>
394 <li>If the <code>childNodes</code> list of <var>n</var> contains
395 an <code>EntityReference</code> node, it is an
396 <a href="#entity-error" id=ee-er-in-entity><code>entity-error</code></a>.</li>
397 <li><a href="#algorithm-to-check-a-node">Check each node</a>, in
398 <code>childNodes</code> list of <var>n</var>,
399 which is different from <code>EntityReference</code> recursively.</li>
400 </ol>
401 </dd>
402 <dt>If <var>n</var> is a <code>Notation</code> node</dt>
403 <dd>
404 <ol>
405 <li><a href="#algorithm-to-validate-a-ncname">Validate the
406 <code>nodeName</code> attribute value as an <code>NCName</code></a>.</li>
407 <li>If the <code>publicId</code> attribute value contains any character
408 that is outside of the range of <code>#x20 | <!--#xD | #xA |-->
409 [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</code><!-- @@ TODO: formal def -->,
410 or contains a leading <code class=char>U+0020</code> character,
411 a trailing <code class=char>U+0020</code> character, or a
412 sequence of two or more <code class=char>U+0020</code> characters,
413 then it is a
414 <a href="#xml-well-formedness-error" id=wfe-dt-public-id><code>xml-well-formedness-error</code></a>.</li>
415 <li>If the <code>systemId</code> attribute value contains
416 both <code>"</code> and <code>'</code> characters, it is a
417 <a href="#xml-well-formedness-error" id=wfe-dt-system-id><code>xml-well-formedness-error</code></a>.</li>
418 <li>If the <code>childNodes</code> list of <var>n</var> contains
419 any nodes, they are in
420 <a href="#xml-well-formedness-error" id=wfe-notation-child><code>xml-well-formedness-error</code></a>s.</li>
421 </ol>
422 </dd>
423 <dt>If <var>n</var> is a <code>ProcessingInstruction</code> node</dt>
424 <dd>
425 <ol>
426 <li><a href="#algorithm-to-validate-a-ncname">Validate the
427 <code>target</code> attribute value as an <code>NCName</code></a>.</li>
428 <li>If the <code>target</code> attribute value matches to
429 <code>XML</code> case-insensitively, then it is a
430 <a href="#xml-well-formedness-error" id=wfe-pi-xml><code>xml-well-formedness-error</code></a>.</li>
431 <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the
432 <code>data</code> attribute value as an <abbr>XML</abbr> character
433 data</a>.</li>
434 <li>If the <code>data</code> attribute value contains
435 a string <code>?></code>, or starts with either
436 <code class=char>U+0009</code>, <code class=char>U+000A</code>,
437 <code class=char>U+000D</code>, or <code class=char>U+0020</code>
438 character, then it is a
439 <a href="#round-trip-error" id=rte-pi-data><code>round-trip-error</code></a>.</li>
440 <li>If the <code>childNodes</code> list of <var>n</var> contains
441 any nodes, they are in
442 <a href="#xml-well-formedness-error" id=wfe-pi-child><code>xml-well-formedness-error</code></a>s.</li>
443 </ol>
444 </dd>
445 <dt>If <var>n</var> is a <code>Text</code> node</dt>
446 <dd>
447 <ol>
448 <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the
449 <code>data</code> attribute value as an <abbr>XML</abbr> character
450 data</a>.</li>
451 <li>If the <code>childNodes</code> list of <var>n</var> contains
452 any nodes, they are in
453 <a href="#xml-well-formedness-error" id=wfe-text-child><code>xml-well-formedness-error</code></a>s.</li>
454 </ol>
455 </dd>
456 <dt>Otherwise</dt>
457 <dd><span class=ed>xml-well-formedness-error? unknown-error?</span></dd>
458 </dl>
459
460 <p>The algorithm
461 <dfn id=algorithm-to-validate-an-xml-character-data title-"to validate an XML character data">to
462 validate an <abbr>XML</abbr> character data
463 (<dfn id=var-s><var>s</var></dfn>)</dfn> is defined as following:</p>
464 <ol>
465 <li class=ed>@@</li>
466 </ol>
467
468 <p>The algorithm
469 <dfn id=algorithm-to-validate-a-name title="to validate a Name">to validate a
470 <code>Name</code> (<dfn id=var-name><var>name</var></dfn>)</dfn> is defined
471 as following:</p>
472 <ol>
473 <li class=ed>@@</li>
474 </ol>
475
476 <p>The algorithm
477 <dfn id=algorithm-to-validate-a-ncname title="to validate an NCName">to
478 validate an <code>NCName</code> (<dfn id=var-name><var>name</var></dfn>)</dfn>
479 is defined as following:</p>
480 <ol>
481 <li class=ed>@@</li>
482 </ol>
483
484 </div>
485
486 <div class="section" id="examples">
487 <h2>Examples</h2>
488
489 <p class=section-info>This section is <em>non$B!>(Bnormative</em>.</p>
490
491 <div class="ed issue">
492
493 <div class="example figure block">
494 <div class="caption">...</div>
495
496 <pre><code>...</code></pre>
497 </div>
498
499 </div>
500
501 </div>
502
503 <div id="references" class="section reference">
504 <h2>References</h2>
505
506 <div id="normative-references" class="section normative reference">
507 <h3>Normative References</h3>
508
509 <dl>
510 <dt id=ref-DOM3CORE>DOM3CORE</dt>
511 <dd class=ed>@@ W3C DOM Level 3 Core</dd>
512 <dt id=ref-DOMDTDEF>DOMDTDEF</dt>
513 <dd class=ed>@@ manakai's extension to DOM for document type definitions</dd>
514 <dt id="ref-KEYWORDS">KEYWORDS</dt>
515 <dd><cite><a href="urn:ietf:rfc:2119">Key words for use in
516 <abbr>RFCs</abbr> to Indicate Requirement Levels</a></cite>,
517 <abbr title="Internet Engineering Task Force">IETF</abbr>
518 <a href="urn:ietf:bcp:14"><abbr title="Best Current Practice">BCP</abbr>
519 14</a>, <abbr title="Request for Comments">RFC</abbr> 2119,
520 <time datetime=1997-03>March 1997</time>.
521 <em>This</em> version of the specification is referenced.</dd>
522 <dt id=ref-INFOSET>INFOSET</dt>
523 <dd class=ed>@@</dd>
524 <dt id=ref-XML10">XML10</dt>
525 <dd><cite><a href="http://www.w3.org/TR/2006/REC-xml-20060816">Extensible
526 Markup Language (<abbr>XML</abbr>) 1.0 (Fourth Edition)</a></cite>,
527 <abbr>W3C</abbr> Recommendation, <time datetime=2006-08-16>16 August
528 2006</time>, edited in place <time datetime=2006-09-29>29 September
529 2006</time>. Tje latest version of the specification is available at
530 <code class=uri>&lt;<a href="http://www.w3.org/TR/xml">http://www.w3.org/TR/xml</a>&gt;</code>.
531 <em>This</em> version of the specification is referenced.</dd>
532 <dt id=ref-XML11>XML11</dt>
533 <dd class=ed>@@</dd>
534 </dl>
535 </div>
536
537 <div id="informative-references" class="section informative reference">
538 <h3>Non$B!>(Bnormative References</h3>
539
540 <dl class=ed>
541 <dt id=ref-CSS>CSS</dt>
542 <dd><cite><a href="http://www.w3.org/TR/2007/CR-CSS21-20070719">Cascading
543 Style Sheets Level 2 Revision 1 (<abbr>CSS</abbr> 2.1)
544 Specification</a></cite>,
545 <abbr title="World Wide Web Consortium">W3C</abbr> Candidate
546 Recommendation, <time datetime=2007-07-19>19 July 2007</time>.
547 Work in progress. The latest version of the specification is
548 available at
549 <code class=URI>&lt;<a href="http://www.w3.org/TR/CSS21">http://www.w3.org/TR/CSS21</a>></code>.</dd>
550 <dt id=ref-CSSOM>CSSOM</dt>
551 <dd><cite><a href="http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html?rev=1.55&amp;content-type=text/html;%20charset=utf-8">Cascading
552 Style Sheets Object Model (<abbr>CSSOM</abbr>)</a></cite>,
553 <abbr title="World Wide Web Consortium">W3C</abbr> Editor's Draft,
554 <time datetime=2007-06-18>18 June 2007</time>. Work in progress.
555 The latest Editor's Draft of the specification is available at
556 <code class=URI>&lt;<a href="http://dev.w3.org/csswg/cssom/Overview.html">http://dev.w3.org/csswg/cssom/Overview.html</a>></code>.</dd>
557 <dt id=ref-HTML5>HTML5</dt>
558 <dd><cite><a href="http://whatwg.org/html5"><abbr>HTML</abbr> 5</a></cite>,
559 <abbr title="Web Hypertext Application Technology Working Group">WHATWG</abbr>
560 Working Draft. Work in progress.</dd>
561 <dt id=ref-SAPI>SAPI</dt>
562 <dd><cite><a href="http://dev.w3.org/cvsweb/~checkout~/2006/webapi/selectors-api/Overview.html?rev=1.28&amp;content-type=text/html;%20charset=utf-8">Selectors <abbr>API</abbr></a></cite>,
563 <abbr title="World Wide Web Consortium">W3C</abbr> Editor's Draft,
564 <time datetime=2007-08-29>29 August 2007</time>. Work in progress.
565 The latest Editor's Draft of the specification is available at
566 <code class=URI>&lt;<a href="http://dev.w3.org/2006/webapi/selectors-api/Overview.html">http://dev.w3.org/2006/webapi/selectors-api/Overview.html</a>></code>.
567 The latest published version of the specification is available at
568 <code class=URI>&lt;<a href="http://www.w3.org/TR/selectors-api/">http://www.w3.org/TR/selectors-api/</a>></code>.</dd>
569 <dt id=XBL2>XBL2</dt>
570 <dd><cite><a href="http://www.mozilla.org/projects/xbl/xbl2.html"><abbr>XBL</abbr>
571 2.0</a></cite>, Mozilla.org, <time datetime=2007-03-15>15 Mar 2007</time>.
572 Work in progress. The latest
573 <abbr title="World Wide Web Consortium">W3C</abbr>$B!>(Bpublished
574 version of the specification is available at
575 <code class=URI>&lt;<a href="http://www.w3.org/TR/xbl/">http://www.w3.org/TR/xbl/</a>></code>.</dd>
576 <dt id=ref-XML5>XML5</dt>
577 <dd class=ed>@@</dd>
578 </dl>
579 </div>
580
581 </div>
582
583 </body>
584 </html>

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24