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

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

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.18 by wakaba, Sat Dec 1 14:32:30 2007 UTC revision 1.21 by wakaba, Sat Dec 1 15:18:43 2007 UTC
# Line 314  is that of the <code>Document</code> nod Line 314  is that of the <code>Document</code> nod
314    
315    
316  <div class=section id=checking-components>  <div class=section id=checking-components>
317  <h3>Checking Components</h3>  <h3>Conformance Checking Algorithms for Components</h3>
318    
319  <p>The algorithm  <p>To
320  <dfn id=algorithm-to-validate-an-xml-character-data title-"to validate an XML character data">to  <dfn id=algorithm-to-validate-an-xml-character-data title="validate an XML string">to
321  validate an <abbr>XML</abbr> character data  validate an <abbr>XML</abbr> string (<dfn id=var-s><var>s</var></dfn>)</dfn>,
322  (<dfn id=var-s><var>s</var></dfn>)</dfn> is defined as following:</p>  the following algorithm <em class=rfc2119>MUST</em> be used:</p>
323  <ol>  <ol>
324  <li>If <var>s</var> contains a character that is <em>not</em> in  <li>If <var>s</var> contains a character that is <em>not</em> in
325  the character class <a href="#class-Char10"><code>Char10</code></a>,  the character class <a href="#class-Char10"><code>Char10</code></a>,
# Line 344  U+000D will be serialized as &#x000D; (s Line 344  U+000D will be serialized as &#x000D; (s
344  will be raised).</span></li>  will be raised).</span></li>
345  </ol>  </ol>
346    
347  <p>The algorithm  <p>To
348  <dfn id=algorithm-to-validate-a-name title="to validate a Name">to validate a  <dfn id=algorithm-to-validate-a-name title="validate a Name">validate a
349  <code>Name</code> (<dfn id=var-name-s><var>s</var></dfn>)</dfn> is defined  <code>Name</code> (<dfn id=var-name-s><var>s</var></dfn>)</dfn>, the following
350  as following:</p>  algorithm <em class=rfc2119>MUST</em> be used:</p>
351  <ol>  <ol>
352    <li>If <var>s</var> is an empty string, then raise an
353    <a href="#xml-well-formedness-error" id=wfe-name-empty><code>xml-well-formedness-error</code></a>.
354    Abort these steps.</li>
355    <li><a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML string">Validate
356    <var>s</var> as an <abbr>XML</abbr> string</a>.</li>
357    <li>If the first character in <var>s</var> is a character that is
358    <em>not</em> in the character class
359    <a href="#class-NameStartChar10"><code>NameStartChar10</code></a>, then raise
360    an
361    <a href="#xml-well-formedness-error" id=wfe-name-startchar><code>xml-well-formedness-error</code></a>.</li>
362    <li>If a character other than the first character in <var>s</var> is a
363    character that is <em>not</em> in the character class
364    <a href="#class-NameChar10"><code>NameChar10</code></a>, then raise an
365    <a href="#xml-well-formedness-error" id=wfe-name-char><code>xml-well-formedness-error</code></a>.</li>
366  <li>If <var>s</var> begins with the string <code>xml</code> (in any  <li>If <var>s</var> begins with the string <code>xml</code> (in any
367  case combination), then raise an  case combination), then raise an
368  <a href="#xml-misc-warning" id=xmw-reserved-name><code>xml-misc-warning</code></a>.  <a href="#xml-misc-warning" id=xmw-reserved-name><code>xml-misc-warning</code></a>.
# Line 357  case combination), then raise an Line 371  case combination), then raise an
371  <code>xmlns</code>, <code>xmlns:<var>*</var></code>,  <code>xmlns</code>, <code>xmlns:<var>*</var></code>,
372  pi name <code>xml-stylesheet</code>.</span><!--  pi name <code>xml-stylesheet</code>.</span><!--
373  "names beginning with a match to (('X'|'x')('M'|'m')('L'|'l')) are reserved for standardization in this or future versions of this specification.":  "names beginning with a match to (('X'|'x')('M'|'m')('L'|'l')) are reserved for standardization in this or future versions of this specification.":
374  xml:base and xml:id specifications violate to this sentense!  xmlns, xml-stylesheet, xml:base and xml:id specifications violate to this sentense!
375  --></li>  --></li>
376  <!-- COLON in Name is a lowercase "should not" in a Note of [XML10],  <!-- COLON in Name is a lowercase "should not" in a Note of [XML10],
377  [XML11]. -->  [XML11]. -->
378  <li class=ed>@@</li>  <li class=ed>@@ XML 1.1 support</li>
379  </ol>  </ol>
380    
381  <p>The algorithm  <p>To
382  <dfn id=algorithm-to-validate-an-ncname title="to validate an NCName">to  <dfn id=algorithm-to-validate-an-ncname title="validate an NCName">validate
383  validate an <code>NCName</code> (<dfn id=var-name><var>name</var></dfn>)</dfn>  an <code>NCName</code> (<dfn id=var-ncname-s><var>s</var></dfn>)</dfn>, the
384  is defined as following:</p>  following algorithm <em class=rfc2119>MUST</em> be used:</p>
385  <ol>  <ol>
386    <li><a href="#algorithm-to-validate-a-name" title="validate a Name">Validate
387    <var>s</var> as a <code>Name</code></a>.</li>
388  <li class=ed>@@</li>  <li class=ed>@@</li>
389  </ol>  </ol>
390    
# Line 377  is defined as following:</p> Line 393  is defined as following:</p>
393  a public identifier (<dfn id=var-pid><var>pid</var></dfn>)</dfn>, the  a public identifier (<dfn id=var-pid><var>pid</var></dfn>)</dfn>, the
394  following algorithm <em class=rfc2119>MUST</em> be used:</p>  following algorithm <em class=rfc2119>MUST</em> be used:</p>
395  <ol>  <ol>
396    <li>If <var>pid</var> is <code>null</code>, abort these steps.</li>  <li>If <var>pid</var> is <code>null</code>, abort these steps.</li>
397    <li>If <var>pid</var> contains any character  <li>If <var>pid</var> contains a character that is <em>not</em> in the
398    that is outside of the range of <code>#x20 | #xD | #xA |  character class <a href="#class-PubidChar"><code>PubidChar</code></a>, then
399    [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%]</code><!-- @@ TODO: formal def -->,  raise an
400    then it is an  <a href="#xml-well-formedness-error" id=wfe-pubid-char><code>xml-well-formedness-error</code></a>.</li>
   <a href="#xml-well-formedness-error" id=wfe-pubid-char><code>xml-well-formedness-error</code></a>.</li>  
401    <li>If <var>pid</var> contains one of <code class=char>U+0009</code>    <li>If <var>pid</var> contains one of <code class=char>U+0009</code>
402    <code class=charname>CHARACTER TABULATION</code>,    <code class=charname>CHARACTER TABULATION</code>,
403    <code class=char>U+000A</code> <code class=charname>CARRIAGE RETURN</code>,    <code class=char>U+000A</code> <code class=charname>CARRIAGE RETURN</code>,
# Line 398  following algorithm <em class=rfc2119>MU Line 413  following algorithm <em class=rfc2119>MU
413    <span class=ed>Is this really a roundtripness problem?  XML spec    <span class=ed>Is this really a roundtripness problem?  XML spec
414    does only define the way to match public identifiers in fact, no    does only define the way to match public identifiers in fact, no
415    canonical form.</span></li>    canonical form.</span></li>
   <li class=ed>@@ Should we check formal-public-identifierness?</li>  
416  </ol>  </ol>
417    
418  <p>To  <p>To
# Line 407  a system identifier (<dfn id=var-sid><va Line 421  a system identifier (<dfn id=var-sid><va
421  following algorithm <em class=rfc2119>MUST</em> be used:</p>  following algorithm <em class=rfc2119>MUST</em> be used:</p>
422  <ol>  <ol>
423    <li>If <var>sid</var> is <code>null</code>, abort these steps.</li>    <li>If <var>sid</var> is <code>null</code>, abort these steps.</li>
424    <li><a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML string">Validate
425    <var>sid</var> as an <abbr>XML</abbr> string</a>.</li>
426    <li>If <var>sid</var> contains both <code class=char>U+0022</code>    <li>If <var>sid</var> contains both <code class=char>U+0022</code>
427    <code class=charname>QUOTATION MARK</code> (<code class=char>"</code>) and    <code class=charname>QUOTATION MARK</code> (<code class=char>"</code>) and
428    <code class=char>U+0027</code> <code class=charname>APOSTROPHE</code>    <code class=char>U+0027</code> <code class=charname>APOSTROPHE</code>
# Line 573  following:</p> Line 589  following:</p>
589  <dt>If <var>n</var> is a <code>CDATASection</code> node</dt>  <dt>If <var>n</var> is a <code>CDATASection</code> node</dt>
590    <dd>    <dd>
591      <ol>      <ol>
592      <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the      <li><a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML string">Validate the
593      <code>data</code> attribute value as an <abbr>XML</abbr> character      <code>data</code> attribute value as an <abbr>XML</abbr> character
594      data</a>.</li>      data</a>.</li>
595      <li>If the <code>data</code> attribute value contains      <li>If the <code>data</code> attribute value contains
# Line 589  following:</p> Line 605  following:</p>
605      <ol>      <ol>
606      <li>Raise an      <li>Raise an
607      <a href="#round-trip-warning" id=rtw-comment><code>round-trip-warning</code></a>.</li>      <a href="#round-trip-warning" id=rtw-comment><code>round-trip-warning</code></a>.</li>
608      <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the      <li><a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML string">Validate the
609      <code>data</code> attribute value as an <abbr>XML</abbr> character      <code>data</code> attribute value as an <abbr>XML</abbr> character
610      data</a>.</li>      data</a>.</li>
611      <li>If the <code>data</code> attribute value contains      <li>If the <code>data</code> attribute value contains
# Line 869  parsed entity)</dt> Line 885  parsed entity)</dt>
885      <li>Otherwise, <a href="#algorithm-to-validate-an-ncname">validate the      <li>Otherwise, <a href="#algorithm-to-validate-an-ncname">validate the
886      <code>target</code> attribute value as an <code>NCName</code></a>.</li>      <code>target</code> attribute value as an <code>NCName</code></a>.</li>
887      <li>Then,      <li>Then,
888      <a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML character data">validate      <a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML string">validate
889      the <code>data</code> attribute value as an <abbr>XML</abbr> character      the <code>data</code> attribute value as an <abbr>XML</abbr> character
890      data</a>.</li>      data</a>.</li>
891      <li>If the <code>data</code> attribute value contains a string      <li>If the <code>data</code> attribute value contains a string
# Line 890  parsed entity)</dt> Line 906  parsed entity)</dt>
906  <dt>If <var>n</var> is a <code>Text</code> node</dt>  <dt>If <var>n</var> is a <code>Text</code> node</dt>
907    <dd>    <dd>
908      <ol>      <ol>
909      <li><a href="#algorithm-to-validate-an-xml-character-data">Validate the      <li><a href="#algorithm-to-validate-an-xml-character-data" title="validate an XML string">Validate the
910      <code>data</code> attribute value as an <abbr>XML</abbr> character      <code>data</code> attribute value as an <abbr>XML</abbr> character
911      data</a>.</li>      data</a>.</li>
912      <li>If the <code>childNodes</code> list of <var>n</var> contains      <li>If the <code>childNodes</code> list of <var>n</var> contains
# Line 974  as amended by Line 990  as amended by
990  <a href="http://www.w3.org/XML/xml-V10-4e-errata#E02">errata</a>.</p>  <a href="http://www.w3.org/XML/xml-V10-4e-errata#E02">errata</a>.</p>
991  </div>  </div>
992    
993    <p>The character class <dfn id=class-NameStartChar10><code>NameStartChar10</code></dfn>
994    contains the following characters:</p>
995    <ul class=ed>
996    </ul>
997    <div class="note memo">
998    <p>This character class contains all characters allowed as the first character
999    of a string matching to the production rule
1000    <a href="http://www.w3.org/TR/2006/REC-xml-20060816/#NT-Name"><code>Name</code></a>
1001    of <abbr>XML</abbr> 1.0
1002    <cite class="bibref normative">[<a href="#ref-XML10">XML10</a>]</cite>.</p>
1003    </div>
1004    
1005    <p>The character class <dfn id=class-NameChar10><code>NameChar10</code></dfn>
1006    contains the following characters:</p>
1007    <ul>
1008    <li>The characters in the character class
1009    <a href="#class-NameStartChar10">NameStartChar10</a>.</li>
1010    <li class=ed></li>
1011    </ul>
1012    <div class="note memo">
1013    <p>This character class contains all characters allowed as the second
1014    character of a string matching to the production rule
1015    <a href="http://www.w3.org/TR/2006/REC-xml-20060816/#NT-Name"><code>Name</code></a>
1016    of <abbr>XML</abbr> 1.0
1017    <cite class="bibref normative">[<a href="#ref-XML10">XML10</a>]</cite>.</p>
1018    </div>
1019    
1020    <p>The character class <dfn id=class-PubidChar><code>PubidChar</code></dfn>
1021    contains the following characters:</p>
1022    <ul>
1023    <li><code class=char>U+0009</code> <code class=charname>CHARACTER
1024    TABULATION</code></li>
1025    <li><code class=char>U+000A</code> <code class=charname>LINE FEED</code></li>
1026    <li><code class=char>U+000D</code> <code class=charname>CARRIAGE
1027    RETURN</code></li>
1028    <li><code class=char>U+0020</code> <code class=charname>SPACE</code></li>
1029    <li><code class=char>U+0021</code> <code class=charname>EXCLAMATION MARK</code>
1030    (<code class=char>!</code>)</li>
1031    <li><code class=char>U+0023</code> <code class=charname>DOLLAR SIGN</code>
1032    (<code class=char>$</code>)</li>
1033    <li><code class=char>U+0024</code> <code class=charname>NUMBER SIGN</code>
1034    (<code class=char>#</code>)</li>
1035    <li><code class=char>U+0025</code> <code class=charname>PERCENT SIGN</code>
1036    (<code class=char>%</code>)</li>
1037    <li><code class=char>U+0027</code> <code class=charname>APOSTROPHE</code>
1038    (<code class=char>'</code>)</li>
1039    <li><code class=char>U+0028</code> <code class=charname>LEFT PARENTHESIS</code>
1040    (<code class=char>(</code>)</li>
1041    <li><code class=char>U+0029</code> <code class=charname>RIGHT
1042    PARENTHESIS</code> (<code class=char>)</code>)</li>
1043    <li><code class=char>U+002A</code> <code class=charname>ASTERISK</code>
1044    (<code class=char>*</code>)</li>
1045    <li><code class=char>U+002B</code> <code class=charname>PLUS SIGN</code>
1046    (<code class=char>+</code>)</li>
1047    <li><code class=char>U+002C</code> <code class=charname>COMMA</code>
1048    (<code class=char>,</code>)</li>
1049    <li><code class=char>U+002D</code> <code class=charname>HYPHEN-MINUS</code>
1050    (<code class=char>-</code>)</li>
1051    <li><code class=char>U+002E</code> <code class=charname>FULL STOP</code>
1052    (<code class=char>.</code>)</li>
1053    <li><code class=char>U+002F</code> <code class=charname>SOLIDUS</code>
1054    (<code class=char>/</code>)</li>
1055    <li><code class=char>U+0030</code> <code class=charname>DIGIT ZERO</code>
1056    (<code class=char>0</code>) .. <code class=char>U+0039</code>
1057    <code class=charname>DIGIT NINE</code> (<code class=char>9</code>)</li>
1058    <li><code class=char>U+003A</code> <code class=charname>COLON</code>
1059    (<code class=char>:</code>)</li>
1060    <li><code class=char>U+003B</code> <code class=charname>SEMICOLON</code>
1061    (<code class=char>;</code>)</li>
1062    <li><code class=char>U+003D</code> <code class=charname>EQUAL SIGN</code>
1063    (<code class=char>=</code>)</li>
1064    <li><code class=char>U+003F</code> <code class=charname>QUESTION MARK</code>
1065    (<code class=char>?</code>)</li>
1066    <li><code class=char>U+0040</code> <code class=charname>COMMERCIAL AT</code>
1067    (<code class=char>@</code>)</li>
1068    <li><code class=char>U+0041</code> <code class=charname>LATIN CAPITAL LETTER
1069    A</code> (<code class=char>A</code>) .. <code class=char>U+005A</code>
1070    <code class=charname>LATIN CAPITAL LETTER Z</code>
1071    (<code class=char>Z</code>)</li>
1072    <li><code class=char>U+005F</code> <code class=charname>LOW LINE</code>
1073    (<code class=char>_</code>)</li>
1074    <li><code class=char>U+0061</code> <code class=charname>LATIN CAPITAL LETTER
1075    A</code> (<code class=char>A</code>) .. <code class=char>U+007A</code>
1076    <code class=charname>LATIN CAPITAL LETTER Z</code>
1077    (<code class=char>Z</code>)</li>
1078    </ul>
1079    <div class="note memo">
1080    <p>This character class contains all characters allowed in the production rule
1081    <a href="http://www.w3.org/TR/2006/REC-xml-20060816/#NT-PubidChar"><code>PubidChar</code></a>
1082    of <abbr>XML</abbr> 1.0
1083    <cite class="bibref normative">[<a href="#ref-XML10">XML10</a>]</cite>.</p>
1084    </div>
1085    
1086  </div>  </div>
1087    
1088  <div id="references" class="section reference">  <div id="references" class="section reference">

Legend:
Removed from v.1.18  
changed lines
  Added in v.1.21

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24