/[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.8 by wakaba, Sun Dec 2 10:20:25 2007 UTC revision 1.10 by wakaba, Mon Dec 3 09:51:56 2007 UTC
# Line 10  Line 10 
10    
11  <div class="header">  <div class="header">
12  <h1>DOM Document Type Definition Module</h1>  <h1>DOM Document Type Definition Module</h1>
13  <h2>Working Draft <time datetime=2007-12-01>1 December 2007</time></h2>  <h2>Working Draft <time datetime=2007-12-03>3 December 2007</time></h2>
14    
15  <dl class="versions-uri">  <dl class="versions-uri">
16  <dt>This Version</dt>  <dt>This Version</dt>
# Line 542  reflected by that of the object. Line 542  reflected by that of the object.
542  <div class=section id=section-elementtypedefinition>  <div class=section id=section-elementtypedefinition>
543  <h3>The <code>ElementTypeDefinition</code> Interface</h3>  <h3>The <code>ElementTypeDefinition</code> Interface</h3>
544    
545  <pre class=idl><code>interface <dfn id=ElementTypeDefinition><code>ElementTypeDefinition</code></dfn> {  <pre class=idl><code>interface <dfn id=ElementTypeDefinition><code>ElementTypeDefinition</code></dfn> : <a href="#Node">Node</a> {
546        readonly attribute <a href="#ownerDocumentTypeDefinition">ownerDocumentTypeDefinition</a>;
547    
548      <span class=ed>@@ more</span>
549  }</code></pre>  }</code></pre>
550    
551  <pre class=ed>** Modifications to [CODE(DOMi)@en[[[Node]]]] members  <pre class=ed>** Modifications to [CODE(DOMi)@en[[[Node]]]] members
# Line 586  interface is defined in [[manakai//DOM E Line 588  interface is defined in [[manakai//DOM E
588  <div class=section id=section-attributedefinition>  <div class=section id=section-attributedefinition>
589  <h3>The <code>AttributeDefinition</code> Interface</h3>  <h3>The <code>AttributeDefinition</code> Interface</h3>
590    
591  <pre class=idl><code>interface <dfn id=AttributeDefinition><code>AttributeDefinition</code></dfn> {  <pre class=idl><code>interface <dfn id=AttributeDefinition><code>AttributeDefinition</code></dfn> : <a href="#Node">Node</a> {
592      <span class=comment>// <a href="#DeclaredValueType">DeclaredValueType</a></span>
593      const unsigned short <a href="#NO_TYPE_ATTR">NO_TYPE_ATTR</a> = 0;
594      const unsigned short <a href="#CDATA_ATTR">CDATA_ATTR</a> = 1;
595      const unsigned short <a href="#ID_ATTR">ID_ATTR</a> = 2;
596      const unsigned short <a href="#IDREF_ATTR">IDREF_ATTR</a> = 3;
597      const unsigned short <a href="#IDREFS_ATTR">IDREFS_ATTR</a> = 4;
598      const unsigned short <a href="#ENTITY_ATTR">ENTITY_ATTR</a> = 5;
599      const unsigned short <a href="#ENTITIES_ATTR">ENTITIES_ATTR</a> = 6;
600      const unsigned short <a href="#NMTOKEN_ATTR">NMTOKEN_ATTR</a> = 7;
601      const unsigned short <a href="#NMTOKENS_ATTR">NMTOKENS_ATTR</a> = 8;
602      const unsigned short <a href="#NOTATION_ATTR">NOTATION_ATTR</a> = 9;
603      const unsigned short <a href="#ENUMERATION_ATTR">ENUMERATION_ATTR</a> = 10;
604      const unsigned short <a href="#UNKNOWN_ATTR">UNKNOWN_ATTR</a> = 11;
605        
606      readonly attribute <a href="#ElementTypeDefinition">ElementTypeDefinition</a> <a href="#ownerElementTypeDefinition">ownerElementTypeDefinition</a>;
607    
608      readonly attribute unsigned short <a href="#declaredType">declaredType</a>;
609      readonly attribute unsigned short <a href="#defaultType">defaultType</a>;
610    
611      <span class=ed>...</span>
612  }</code></pre>  }</code></pre>
613    
614  <pre class=ed>** Modifications to [CODE(DOMi)@en[[[Node]]]] members  <pre class=ed>** Modifications to [CODE(DOMi)@en[[[Node]]]] members
# Line 631  object is read-only, then throw an Line 652  object is read-only, then throw an
652  then create a [CODE(DOMi)@en[[[Text]]]] node  then create a [CODE(DOMi)@en[[[Text]]]] node
653  whose [CODE(DOMa)@en[[[data]]]] is the new value  whose [CODE(DOMa)@en[[[data]]]] is the new value
654  and append it to the [CODE(DOMi)@en[[[AttributeDefinition]]]].  and append it to the [CODE(DOMi)@en[[[AttributeDefinition]]]].
655    </pre>
656    
657  ** Definition groups  <p>The definition group
658    <dfn id=DeclaredValueType><code>DeclaredValueType</code></dfn> contains
659  [6] The  integers indicating the declared type of attributes.</p>
660  [DFN@en[definition group [CODE(DOM)@en[[[DeclaredValueType]]]]]]  
661  contains integers indicating the type of  <table>
662  attribute value:  <thead>
663  ,[CODE(DOMc)@en[[[NO_TYPE_ATTR]]]],[CODE(IDL)[[[0]]]],The attribute value type corresponding to [[no value]] in XML Information Set.  <tr><th scope=col>Name<th scope=col>Value<th scope=col>Description</tr>
664  ,[CODE(DOMc)@en[[[CDATA_ATTR]]]],[CODE(IDL)[[[1]]]],The attribute value type is [CODE(XML)@en[[[CDATA]]]].  </thead>
665  ,[CODE(DOMc)@en[[[ID_ATTR]]]],[CODE(IDL)[[[2]]]],The attribute value type is [CODE(XML)@en[[[ID]]]].  <tbody>
666  ,[CODE(DOMc)@en[[[IDREF_ATTR]]]],[CODE(IDL)[[[3]]]],The attribute value type is [CODE(XML)@en[[[IDREF]]]].  <tr>
667  ,[CODE(DOMc)@en[[[IDREFS_ATTR]]]],[CODE(IDL)[[[4]]]],The attribute value type is [CODE(XML)@en[[[IDREFS]]]].  <th scope=row><dfn id=NO_TYPE_ATTR class=dom-const><code>NO_TYPE_ATTR</code>
668  ,[CODE(DOMc)@en[[[ENTITY_ATTR]]]],[CODE(IDL)[[[5]]]],The attribute value type is [CODE(XML)@en[[[ENTITY]]]].  <td><code>0</code><td>No value <span class=ed>[INFOSET]</span>.</tr>
669  ,[CODE(DOMc)@en[[[ENTITIES_ATTR]]]],[CODE(IDL)[[[6]]]],The attribute value type is [CODE(XML)@en[[[ENTITIES]]]].  <tr>
670  ,[CODE(DOMc)@en[[[NMTOKEN_ATTR]]]],[CODE(IDL)[[[7]]]],The attribute value type is [CODE(XML)@en[[[NMTOKEN]]]].  <th scope=row><dfn id=CDATA_ATTR class=dom-const><code>CDATA_ATTR</code>
671  ,[CODE(DOMc)@en[[[NMTOKENS_ATTR]]]],[CODE(IDL)[[[8]]]],The attribute value type is [CODE(XML)@en[[[NMTOKENS]]]].  <td><code>1</code><td><code>CDATA</code> <span class=ed>[XML]</span>.</tr>
672  ,[CODE(DOMc)@en[[[NOTATION_ATTR]]]],[CODE(IDL)[[[9]]]],The attribute value type is [CODE(XML)@en[[[NOTATION]]]].  <tr>
673  ,[CODE(DOMc)@en[[[ENUMERATION_ATTR]]]],[CODE(IDL)[[[10]]]],The attribute value is enumeration type.  <th scope=row><dfn id=ID_ATTR class=dom-const><code>ID_ATTR</code>
674  ,[CODE(DOMc)@en[[[UNKNOWN_ATTR]]]],[CODE(IDL)[[[11]]]],"The attribute value type is unknown, because no declaration for the attribute has been read but not [CODE(InfoProp)@en[[[all declarations processed]]]] property would be false."  <td><code>2</code><td><code>ID</code> <span class=ed>[XML]</span>.</tr>
675    <tr>
676  The type of these constants are  <th scope=row><dfn id=IDREF_ATTR class=dom-const><code>IDREF_ATTR</code>
677  [CODE(IDL)@en[[[unsigned]] [[short]]]].  <td><code>3</code><td><code>IDREF</code> <span class=ed>[XML]</span>.</tr>
678    <tr>
679  If no attribute type information is provided,  <th scope=row><dfn id=IDREFS_ATTR class=dom-const><code>IDREFS_ATTR</code>
680  or if the source of that information does not  <td><code>4</code><td><code>IDREFS</code> <span class=ed>[XML]</span>.</tr>
681  distinguish [[no value]] and [[unknown]] as in  <tr>
682  XML Information Set, then the  <th scope=row><dfn id=ENTITY_ATTR class=dom-const><code>ENTITY_ATTR</code>
683  [CODE(DOMc)@en[[[NO_TYPE_ATTR]]]] value  <td><code>5</code><td><code>ENTITY</code> <span class=ed>[XML]</span>.</tr>
684  [['''MUST''']] be used.  <tr>
685    <th scope=row><dfn id=ENTITIES_ATTR class=dom-const><code>ENTITIES_ATTR</code>
686    <td><code>6</code><td><code>ENTITIES</code> <span class=ed>[XML]</span>.</tr>
687    <tr>
688    <th scope=row><dfn id=NMTOKEN_ATTR class=dom-const><code>NMTOKEN_ATTR</code>
689    <td><code>7</code><td><code>NMTOKEN</code> <span class=ed>[XML]</span>.</tr>
690    <tr>
691    <th scope=row><dfn id=NMTOKENS_ATTR class=dom-const><code>NMTOKENS_ATTR</code>
692    <td><code>8</code><td><code>NMTOKENS</code> <span class=ed>[XML]</span>.</tr>
693    <tr>
694    <th scope=row><dfn id=NOTATION_ATTR class=dom-const><code>NOTATION_ATTR</code>
695    <td><code>9</code><td><code>NOTATION</code> <span class=ed>[XML]</span>.</tr>
696    <tr>
697    <th scope=row><dfn id=ENUMERATION_ATTR class=dom-const><code>ENUMERATION_ATTR</code>
698    <td><code>10</code><td>Enumeration <span class=ed>[XML]</span>.</tr>
699    <tr>
700    <th scope=row><dfn id=UNKNOWN_ATTR class=dom-const><code>UNKNOWN_ATTR</code>
701    <td><code>11</code><td>Unknown, because no declaration for the attribute
702    has been read but the [all declaration processed] property
703    <span class=ed>[INFOSET]</span> would be false.</tr>
704    </tbody>
705    </table>
706    
707    <p>If no attribute type information is available, or if the source
708    of the information does not distinguish <q>no value</q> and <q>unknown</q>
709    <span class=ed>[INFOSET]</span>, then the value
710    <a href="#NO_TYPE_ATTR"><code>NO_TYPE_ATTR</code></a>
711    <em class=rfc2119>MUST</em> be used.</p>
712    
713  ;; A newly created [CODE(DOMi)@en[[[AttributeDefinition]]]]  <div class="note memo">
714  object by [CODE(DOMm)@en[[[createAttributeDefinition]]]]  <p>An <a href="#AttributeDefinition"><code>AttributeDefinition</code></a> node
715  method has [CODE(DOMa)@en[[[declaredType]]]] attribute  created by the
716  set to [CODE(DOMc)@en[[[NO_TYPE_ATTR]]]].  <a href="#createAttributeDefinition"><code>createAttributeDefinition</code></a>
717    method has its <a href="#declaredType"><code>declaredType</code></a> attribute
718  If the source of the attribute type information  set to <a href="#NO_TYPE_ATTR"><code>NO_TYPE_ATTR</code></a>.</p>
719  does not distinguish [[no value]] and / or [[unknown]]  </div>
720  and [CODE(XML)@en[[[CDATA]]]], then the  
721  [CODE(DOMc)@en[[[CDATA_ATTR]]]] value [['''MUST''']]  <p>If the source of the information does not distinguish <q>no value</q>
722  be used.  and/or <code>unknown</code> <span class=ed>[INFOSET]</span> and
723    <code>CDATA</code> <span class=ed>[XML]</span>, then the value
724  [11]  <a href="#CDATA_ATTR"><code>CDATA_ATTR</code></a> <em class=rfc2119>MUST</em>
725  In Perl binding, the objects implementing the  be used.</p>
726  [CODE(DOMi)@en[[[Attr]]]] interface [['''MUST''']]  
727  also implement the [CODE(DOM)@en[[[DeclaredValueType]]]]  <p>In Perl binding <span class=ed>[PERLBINDING]</span>, the
728  constant group.  <code>Attr</code> nodes <em class=rfc2119>MUST</em> implement the
729    <a href="#DeclaredValueType"><code>DeclaredValueType</code></a>
730    constant group.</p>
731    
732    <pre class=ed>
733  [7] The  [7] The
734  [DFN@en[definition group [CODE(DOM)@en[[[DefaultValueType]]]]]]  [DFN@en[definition group [CODE(DOM)@en[[[DefaultValueType]]]]]]
735  contains integers indicating the type of  contains integers indicating the type of
# Line 701  default and unknown default, then the Line 753  default and unknown default, then the
753  object by [CODE(DOMm)@en[[[createAttributeDefinition]]]]  object by [CODE(DOMm)@en[[[createAttributeDefinition]]]]
754  method has [CODE(DOMa)@en[[[declaredType]]]] attribute  method has [CODE(DOMa)@en[[[declaredType]]]] attribute
755  set to [CODE(DOMc)@en[[[NO_TYPE_ATTR]]]].  set to [CODE(DOMc)@en[[[NO_TYPE_ATTR]]]].
756    </pre>
757    
758    <dl>
759    <dt><dfn id=ownerElementTypeDefinition class=dom-attr><code>ownerElementTypeDefinition</code></dfn>
760    of type
761    <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a>,
762    read$B!>(Bonly</dt>
763      <dd><p>The
764      <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> to
765      which the <a href="#AttributeDefinition"><code>AttributeDefinition</code></a>
766      node belongs.</p>
767    
768      <p>On getting, the attribute <em class=rfc2119>MUST</em> return an
769      <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> node.
770      It <em class=rfc2119>MUST</em> be such a node that whose
771      <a href="#attributeDefinitons"><code>attributeDefinitions</code></a>
772      attribute contains the <code>NamedNodeMap</code> object that contains
773      the <a href="#AttributeDefinition"><code>AttributeDefinition</code></a>
774      node.  If there is no such an
775      <a href="#ElementTypeDefinition"><code>ElementTypeDefinition</code></a> node,
776      then <code>null</code> <em class=rfc2119>MUST</em> be returned.</p>
777    <dt><dfn id=declaredType class=dom-attr><code>declaredType</code></dfn> of type
778    <code>unsigned short</code></dt>
779      <dd><p>The declared type <span class=ed>@@ ref</span> of the attribute.
780      It is expected that this attribute contains a value from the definition group
781      <a href="#DeclaredValueType"><code>DeclaredValueType</code></a>.</p>
782    
783  ** Tree-relationship Attributes    <p>On getting, the attribute <em class=rfc2119>MUST</em> return the
784      value associated to this attribute.</p>
785    
786      <p>On setting, the attribute <em class=rfc2119>MUST</em> raise a
787      <code>NO_MODIFICATION_ALLOWED_ERR</code> <span class=ed>@@ ref</span>
788      exception if the
789      <a href="#AttributeDefinition"><code>AttributeDefinition</code></a> node
790      is read$B!>(Bonly <span class=ed>@@ ref</span>.  Otherwise, it
791      <em class=rfc2119>MUST</em> set the specified value as the value
792      associated to this attribute.</p>
793    
794      <p>If the <code>AttributeDefinition</code> node is created during the process
795      to create a <abbr>DOM</abbr> from an <abbr>XML</abbr> document, an
796      appropriate value from the
797      <a href="#DeclaredValueType"><code>DeclaredValueType</code></a> constant
798      group <em class=rfc2119>MUST</em> be set to the attribute.</p></dd>
799    <dt><dfn id=defaultType class=dom-attr><code>defaultType</code></dfn> of
800    type <code>unsigned short</code></dt>
801      <dd><p>The type of the default for the attribute.  It is expected that this
802      attribute contains a value from the definition group
803      <a href="#DefaultValueType"><code>DefaultValueType</code></a>.</p>
804    
805      <p>On getting, the attribute <em class=rfc2119>MUST</em> return
806      the value associated to this attribute.</p>
807    
808      <p>On setting, the attribute <em class=rfc2119>MUST</em> raise a
809      <code>NO_MODIFICATION_ALLOWED_ERR</code> <span class=ed>@@ ref</span>
810      exception if the
811      <a href="#AttributeDefinition"><code>AttributeDefinition</code></a> node
812      is read$B!>(Bonly <span class=ed>@@ ref</span>.  Otherwise, it
813      <em class=rfc2119>MUST</em> set the specified value as the value
814      associated to this attribute.</p>
815    
816      <p>If the <code>AttributeDefinition</code> node is created during the process
817      to create a <abbr>DOM</abbr> from an <abbr>XML</abbr> document, an
818      appropriate value from the
819      <a href="#DefaultValueType"><code>DefaultValueType</code></a> constant
820      group <em class=rfc2119>MUST</em> be set to the attribute.</p></dd>
821    </dl>
822    
 [10]  
 The  
 [DFN@en[[CODE(DOMa)@en[[[ownerElementTypeDefinition]]]] attribute]]  
 of the [CODE(DOMi)@en[[[AttributeDefinition]]]] interface  
 is read-only and of type  
 [CODE(DOMi)@en[[[ElementTypeDefinition]]]].  
 It is the [CODE(DOMi)@en[[[ElementTypeDefinition]]]] node  
 which the [CODE(DOMi)@en[[[AttributeDefinition]]]] node  
 belong to.  
   
 If the [CODE(DOMi)@en[[[AttributeDefinition]]]] node  
 is included in the [CODE(DOMa)@en[[[attributeDefinitions]]]]  
 list of an [CODE(DOMi)@en[[[ElementTypeDefinition]]]] node,  
 then the attribute [['''MUST''']] return the  
 [CODE(DOMi)@en[[[ElementTypeDefinition]]]] node.  
 Otherwise, it [['''MUST''']] return [CODE(DOM)@en[[[null]]]].  
   
 ;; This attribute is analogue to the  
 [CODE(DOMa)@en[[[ownerDocumentTypeDefinition]]]] attribute  
 for [CODE(DOMi)@en[[[ElementTypeDefinition]]]],  
 [CODE(DOMi)@en[[[Entity]]]], and [CODE(DOMi)@en[[[Notation]]]]  
 nodes, or the [CODE(DOMa)@en[[[ownerElement]]]]  
 attribute for [CODE(DOMi)@en[[[Attr]]]] nodes.  
   
 ** Attributes  
   
 [5]  
 The [DFN@en[[CODE(DOMa)@en[[[declaredType]]]] attribute]]  
 of an [CODE(DOMi)@en[[[AttributeDefinition]]]] object  
 represents the type of the attribute value.  
   
 This attribute is read-write.  
 The type of the attribute is  
 [CODE(IDL)@en[[[unsigned]] [[short]]]].  It is expected  
 that this attribute has a value from the definition group  
 [CODE(DOM)@en[[[DeclaredValueType]]]].  
   
 The getter [['''MUST''']] return a value associated  
 to this attribute.  
   
 The setter [['''MUST''']]  
 throw a [CODE(DOMc)@en[[[NO_MODIFICATION_ALLOWED_ERR]]]]  
 [CODE(DOMi)@en[[[DOMException]]]] if the  
 [CODE(DOMi)@en[[[AttributeDefinition]]]] object is read-only.  
 Otherwise, the setter [['''MUST''']] set the specified  
 value as the value associated to this attribute.  
   
 If a parser create an [CODE(DOMi)@en[[[AttributeDefinition]]]]  
 object, then it [['''MUST''']] set a value  
 from the [CODE(DOM)@en[[[DeclaredValueType]]]]  
 definition group.  
   
 [8]  
 The [DFN@en[[CODE(DOMa)@en[[[defaultType]]]] attribute]]  
 of an [CODE(DOMi)@en[[[AttributeDefinition]]]] object  
 represents the type of the attribute default value.  
   
 This attribute is read-write.  
 The type of the attribute is  
 [CODE(IDL)@en[[[unsigned]] [[short]]]].  It is expected  
 that this attribute has a value from the definition group  
 [CODE(DOM)@en[[[DefaultValueType]]]].  
   
 The getter [['''MUST''']] return a value associated  
 to this attribute.  
   
 The setter [['''MUST''']]  
 throw a [CODE(DOMc)@en[[[NO_MODIFICATION_ALLOWED_ERR]]]]  
 [CODE(DOMi)@en[[[DOMException]]]] if the  
 [CODE(DOMi)@en[[[AttributeDefinition]]]] object is read-only.  
 Otherwise, the setter [['''MUST''']] set the specified  
 value as the value associated to this attribute.  
   
 If a parser create an [CODE(DOMi)@en[[[AttributeDefinition]]]]  
 object, then it [['''MUST''']] set a value  
 from the [CODE(DOM)@en[[[DefaultValueType]]]]  
 definition group.</pre>  
823  </div>  </div>
824    
825  </div>  </div>

Legend:
Removed from v.1.8  
changed lines
  Added in v.1.10

admin@suikawiki.org
ViewVC Help
Powered by ViewVC 1.1.24