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

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

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

revision 1.15 by wakaba, Tue Dec 4 10:43:12 2007 UTC revision 1.17 by wakaba, Tue Dec 4 11:01:49 2007 UTC
# Line 540  define it for <code>Document</code> meth Line 540  define it for <code>Document</code> meth
540    
541  </div>  </div>
542    
543    
544    <div class=section id=section-documenttype>
545    <h3>Modifications to the <code id=DocumentType>DocumentType</code>
546    Interface</h3>
547    
548    <p>A <a href="#DocumentType"><code>DocumentType</code></a> interface
549    <em class=rfc2119>MAY</em> contain zero or more
550    <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a>
551    nodes in the <code>NodeList</code> object contained in the
552    <code>childNodes</code> attribute of the
553    <a href="#DocumentType"><code>DocumentType</code></a> node.</p>
554    
555    <p>If the <a href="#DocumentType"><code>DocumentType</code></a> node is created
556    during the process to create a <abbr>DOM</abbr> from an <abbr>XML</abbr>
557    document, the <code>NodeList</code> object in the <code>childNodes</code>
558    object <em class=rfc2119>MUST</em> contains the
559    <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a>
560    nodes representing the processing instructions in the document type
561    definition of the document processed <span class=ed>@@ ref</span> by
562    the <abbr>XML</abbr> processor.  If the
563    <a href="#DocumentType"><code>DocumentType</code></a> node is marked
564    as read$B!>(Bonly, then all the child nodes <em class=rfc2119>MUST</em>
565    also be marked as read$B!>(Bonly.</p>
566    
567    <p>If a <a href="#DocumentType"><code>DocumentType</code></a> node is created
568    from a document type declaration information item <span class=ed>@@ ref</span>,
569    the <code>NodeList</code> object in the <code>childNodes</code> attribute
570    of the node <em class=rfc2119>MUST</em> contain the
571    <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a> nodes
572    created from the processing instruction information items in the list in the
573    [children] property of the document type declaration item in the same
574    order.</p>
575    
576    <p>If a <a href="#DocumentType"><code>DocumentType</code></a> node is mapped to
577    a document type declaration information item, the list in the [children]
578    property <em class=rfc2119>MUST</em> contain the processng instruction
579    information items created from the
580    <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a> nodes
581    in the <code>NodeList</code> object in the <code>childNodes</code> attribute
582    of the <a href="#DocumentType"><code>DocumentType</code></a> node.</p>
583    
584    <p>The implementation of the
585    <a href="#DocumentType"><code>DocumentType</code></a> interface
586    <em class=rfc2119>MUST</em> be modified as following:</p>
587    <pre class=idl><code>// Modifications to the DocumentType interface
588      attribute DOMString <a href="#publicId">publicId</a>;
589      attribute DOMString <a href="#systemId">systemId</a>;
590    
591      attribute DOMString <a href="#internalSubset">internalSubset</a>;
592    </code></pre>
593    
594    <p>The <code id=publicId>publicId</code> attribute and the
595    <code id=systemId>systemId</code> attribute of
596    <a href="#DocumentType"><code>DocumentType</code></a>,
597    <a href="#Entity"><code>Entity</code></a>, and
598    <a href="#Notation"><code>Notation</code></a> interfaces are no longer
599    read$B!>(Bonly.</p>
600    
601    <p>On setting, the attribute <em class=rfc2119>MUST</em> raise a
602    <code>NO_MODIFICATION_ALLOWED_ERR</code> <span class=ed>@@ ref</span>
603    exception if the node is read$B!>(Bonly <span class=ed>@@ ref</span>.  
604    Otherwise, it <em class=rfc2119>MUST</em> set the specified value as the value
605    associated to the attribute.  No normalization, relative reference resolution,
606    or lexical validation is performed. <span class=ed>@@ If the new
607    value is <code>null</code>, ...</span></p>
608    
609    <div class="note memo">
610    <p>Setting an invalid identifier might make the node unserializable.
611    Setting a public identifier while leaveing system identifier unspecified
612    would also make the <a href="#DocumentType"><code>DocumentType</code></a>
613    or <a href="#Entity"><code>Entity</code></a> node unserializable.</p>
614    </div>
615    
616    <div class=ed>
617    <p>ISSUE: In HTML5, Firefox 1.5, and Opera 9, not specifying public or system identifier results in empty strings.</p>
618    </div>
619    
620    <p>The <code id=internalSubset>internalSubset</code> attribute of the
621    <a href="#DocumentType"><code>DocumentType</code></a> interface is no longer
622    read$B!>(Bonly.</p>
623    
624    <p>On setting, the attribute <em class=rfc2119>MUST</em> raise a
625    <code>NO_MODIFICATION_ALLOWED_ERR</code> <span class=ed>@@ ref</span>
626    exception if the node is read$B!>(Bonly <span class=ed>@@ ref</span>.  
627    Otherwise, it <em class=rfc2119>MUST</em> set the specified value as the value
628    associated to the attribute.  No normalization, or lexical validation is
629    performed. <span class=ed>@@ If the new value is <code>null</code>,
630    ...</span></p>
631    
632    </div>
633    
634  <div class=section id=section-documenttypedefinition>  <div class=section id=section-documenttypedefinition>
635  <h3>The <code>DocumentTypeDefinition</code> Interface</h3>  <h3>The <code>DocumentTypeDefinition</code> Interface</h3>
636    
637    <div class="note memo">
638    <p>This interface is a separated interface from the
639    <a href="#DocumentType"><code>DocumentType</code></a>, not a set of extensions
640    to the <a href="#DocumentType"><code>DocumentType</code></a>,
641    for the historical reason.</p>
642    </div>
643    
644  <p>The  <p>The
645  <a href="#DocumentTypeDefinition"><code>DocumentTypeDefinition</code></a>  <a href="#DocumentTypeDefinition"><code>DocumentTypeDefinition</code></a>
646  interface <em class=rfc2119>MUST</em> be implemented as following:</p>  interface <em class=rfc2119>MUST</em> be implemented as following:</p>
# Line 693  reflected by that of the object. Line 791  reflected by that of the object.
791  <div class=section id=section-elementtypedefinition>  <div class=section id=section-elementtypedefinition>
792  <h3>The <code>ElementTypeDefinition</code> Interface</h3>  <h3>The <code>ElementTypeDefinition</code> Interface</h3>
793    
794    <p>The nodes of type
795    <a href="#ELEMENT_TYPE_DEFINITION_NODE"><code>ELEMENT_TYPE_DEFINITION_NODE</code></a>
796    represents an element type definition.  Such a node implements the
797    <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a>
798    interface, which extends the <a href="#Node"><code>Node</code></a>
799    interface.</p>
800    
801    <p>An element type definition represents a definition of the element type.
802    It is corresponding to the element type declaration in <abbr>DTD</abbr>.
803    However, an
804    <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> node
805    does not represent the element type definition in <abbr>DTD</abbr> itself.  
806    Even if there are more than one element type declarations for an element type
807    in <abbr>DTD</abbr>, the result <abbr>DOM</abbr> will contain only an
808    <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a>
809    node for that element type.  In addition, if there are attribute definition
810    declarations for an element type, even when there is no element type
811    declaration for that element type, the <abbr>DOM</abbr> will contain an
812    <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a>
813    node for that element type.</p>
814    
815  <p>The <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a>  <p>The <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a>
816  interface <em class=rfc2119>MUST</em> be implemented as following:</p>  interface <em class=rfc2119>MUST</em> be implemented as following:</p>
817  <pre class=idl><code>interface <dfn id=ElementTypeDefinition><code>ElementTypeDefinition</code></dfn> : <a href="#Node">Node</a> {  <pre class=idl><code>interface <dfn id=ElementTypeDefinition><code>ElementTypeDefinition</code></dfn> : <a href="#Node">Node</a> {
# Line 710  interface is defined in [[manakai//DOM E Line 829  interface is defined in [[manakai//DOM E
829  <div class=section id=section-attributedefinition>  <div class=section id=section-attributedefinition>
830  <h3>The <code>AttributeDefinition</code> Interface</h3>  <h3>The <code>AttributeDefinition</code> Interface</h3>
831    
832    <p>The nodes of type
833    <a href="#ATTRIBUTE_DEFINITION_NODE"><code>ATTRIBUTE_DEFINITION_NODE</code></a>
834    represents an attribute definition.  Such a node implements the
835    <a href="#AttributeDefinition"><code>AttributeDefinition</code></a> interface,
836    which extends the <a href="#Node"><code>Node</code></a> interface.</p>
837    
838    <p>An attribute definition represents a definition of the attribute
839    associated to an element type.  It is corresponding to the attribute definition
840    in the attribute list declaration in <abbr>DTD</abbr>.  However, an
841    <a href="#AttributeDefinition"><code>AttributeDefinition</code></a> node does
842    not represent the attribute definition in <abbr>DTD</abbr> itself.  Even if
843    there are more than one attribute definitions for an attribute of an element
844    type in <abbr>DTD</abbr>, the result <abbr>DOM</abbr> will contain only an
845    <a href="#AttributeDefinition"><code>AttributeDefinition</code></a> node for
846    that attribute.</p>
847    
848  <p>The <a href="#AttributeDefinition"><code>AttributeDefinition</code></a>  <p>The <a href="#AttributeDefinition"><code>AttributeDefinition</code></a>
849  interface <em class=rfc2119>MUST</em> be implemented as following:</p>  interface <em class=rfc2119>MUST</em> be implemented as following:</p>
850  <pre class=idl><code>interface <dfn id=AttributeDefinition><code>AttributeDefinition</code></dfn> : <a href="#Node">Node</a> {  <pre class=idl><code>interface <dfn id=AttributeDefinition><code>AttributeDefinition</code></dfn> : <a href="#Node">Node</a> {
# Line 726  interface <em class=rfc2119>MUST</em> be Line 861  interface <em class=rfc2119>MUST</em> be
861    const unsigned short <a href="#NOTATION_ATTR">NOTATION_ATTR</a> = 9;    const unsigned short <a href="#NOTATION_ATTR">NOTATION_ATTR</a> = 9;
862    const unsigned short <a href="#ENUMERATION_ATTR">ENUMERATION_ATTR</a> = 10;    const unsigned short <a href="#ENUMERATION_ATTR">ENUMERATION_ATTR</a> = 10;
863    const unsigned short <a href="#UNKNOWN_ATTR">UNKNOWN_ATTR</a> = 11;    const unsigned short <a href="#UNKNOWN_ATTR">UNKNOWN_ATTR</a> = 11;
864    
865      <span class=comment>// <a href="#DefaultValueType">DefaultValueType</a></span>
866      const unsigned short <a href="#UNKNOWN_DEFAULT">UNKNOWN_DEFAULT</a> = 0;
867      const unsigned short <a href="#FIXED_DEFAULT">FIXED_DEFAULT</a> = 1;
868      const unsigned short <a href="#REQUIRED_DEFAULT">REQUIRED_DEFAULT</a> = 2;
869      const unsigned short <a href="#IMPLIED_DEFAULT">IMPLIED_DEFAULT</a> = 3;
870      const unsigned short <a href="#EXPLICIT_DEFAULT">EXPLICIT_DEFAULT</a> = 4;
871        
872    readonly attribute <a href="#ElementTypeDefinition">ElementTypeDefinition</a> <a href="#ownerElementTypeDefinition">ownerElementTypeDefinition</a>;    readonly attribute <a href="#ElementTypeDefinition">ElementTypeDefinition</a> <a href="#ownerElementTypeDefinition">ownerElementTypeDefinition</a>;
873    
# Line 927  type <code>unsigned short</code></dt> Line 1069  type <code>unsigned short</code></dt>
1069    
1070  </div>  </div>
1071    
 <div class=section id=section-documenttype>  
 <h3>Modifications to the <code id=DocumentType>DocumentType</code>  
 Interface</h3>  
   
 <p>A <a href="#DocumentType"><code>DocumentType</code></a> interface  
 <em class=rfc2119>MAY</em> contain zero or more  
 <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a>  
 nodes in the <code>NodeList</code> object contained in the  
 <code>childNodes</code> attribute of the  
 <a href="#DocumentType"><code>DocumentType</code></a> node.</p>  
   
 <p>If the <a href="#DocumentType"><code>DocumentType</code></a> node is created  
 during the process to create a <abbr>DOM</abbr> from an <abbr>XML</abbr>  
 document, the <code>NodeList</code> object in the <code>childNodes</code>  
 object <em class=rfc2119>MUST</em> contains the  
 <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a>  
 nodes representing the processing instructions in the document type  
 definition of the document processed <span class=ed>@@ ref</span> by  
 the <abbr>XML</abbr> processor.  If the  
 <a href="#DocumentType"><code>DocumentType</code></a> node is marked  
 as read$B!>(Bonly, then all the child nodes <em class=rfc2119>MUST</em>  
 also be marked as read$B!>(Bonly.</p>  
   
 <p>If a <a href="#DocumentType"><code>DocumentType</code></a> node is created  
 from a document type declaration information item <span class=ed>@@ ref</span>,  
 the <code>NodeList</code> object in the <code>childNodes</code> attribute  
 of the node <em class=rfc2119>MUST</em> contain the  
 <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a> nodes  
 created from the processing instruction information items in the list in the  
 [children] property of the document type declaration item in the same  
 order.</p>  
   
 <p>If a <a href="#DocumentType"><code>DocumentType</code></a> node is mapped to  
 a document type declaration information item, the list in the [children]  
 property <em class=rfc2119>MUST</em> contain the processng instruction  
 information items created from the  
 <a href="#ProcessingInstruction"><code>ProcessingInstruction</code></a> nodes  
 in the <code>NodeList</code> object in the <code>childNodes</code> attribute  
 of the <a href="#DocumentType"><code>DocumentType</code></a> node.</p>  
   
 <p>The implementation of the  
 <a href="#DocumentType"><code>DocumentType</code></a> interface  
 <em class=rfc2119>MUST</em> be modified as following:</p>  
 <pre class=idl><code>// Modifications to the DocumentType interface  
   attribute DOMString <a href="#publicId">publicId</a>;  
   attribute DOMString <a href="#systemId">systemId</a>;  
   
   attribute DOMString <a href="#internalSubset">internalSubset</a>;  
 </code></pre>  
   
 <p>The <code id=publicId>publicId</code> attribute and the  
 <code id=systemId>systemId</code> attribute of  
 <a href="#DocumentType"><code>DocumentType</code></a>,  
 <a href="#Entity"><code>Entity</code></a>, and  
 <a href="#Notation"><code>Notation</code></a> interfaces are no longer  
 read$B!>(Bonly.</p>  
   
 <p>On setting, the attribute <em class=rfc2119>MUST</em> raise a  
 <code>NO_MODIFICATION_ALLOWED_ERR</code> <span class=ed>@@ ref</span>  
 exception if the node is read$B!>(Bonly <span class=ed>@@ ref</span>.    
 Otherwise, it <em class=rfc2119>MUST</em> set the specified value as the value  
 associated to the attribute.  No normalization, relative reference resolution,  
 or lexical validation is performed. <span class=ed>@@ If the new  
 value is <code>null</code>, ...</span></p>  
   
 <div class="note memo">  
 <p>Setting an invalid identifier might make the node unserializable.  
 Setting a public identifier while leaveing system identifier unspecified  
 would also make the <a href="#DocumentType"><code>DocumentType</code></a>  
 or <a href="#Entity"><code>Entity</code></a> node unserializable.</p>  
 </div>  
   
 <div class=ed>  
 <p>ISSUE: In HTML5, Firefox 1.5, and Opera 9, not specifying public or system identifier results in empty strings.</p>  
 </div>  
   
 <p>The <code id=internalSubset>internalSubset</code> attribute of the  
 <a href="#DocumentType"><code>DocumentType</code></a> interface is no longer  
 read$B!>(Bonly.</p>  
   
 <p>On setting, the attribute <em class=rfc2119>MUST</em> raise a  
 <code>NO_MODIFICATION_ALLOWED_ERR</code> <span class=ed>@@ ref</span>  
 exception if the node is read$B!>(Bonly <span class=ed>@@ ref</span>.    
 Otherwise, it <em class=rfc2119>MUST</em> set the specified value as the value  
 associated to the attribute.  No normalization, or lexical validation is  
 performed. <span class=ed>@@ If the new value is <code>null</code>,  
 ...</span></p>  
   
 </div>  
   
1072  </div>  </div>
1073    
1074    

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.17

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24