Diff for /modules/damieng/clean_xml/loncapa.xsd between versions 1.8 and 1.19

version 1.8, 2015/05/04 20:59:30 version 1.19, 2017/01/05 16:55:16
Line 1 Line 1
 <?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="en">  <?xml version="1.0" encoding="UTF-8"?>
   <!--
     This schema was created for LON-CAPA.
     Element documentation often comes from the Mozilla Developer Network.
     MDN wiki documents are created by Mozilla Contributors and licensed under CC-BY-SA 2.5.
     Links:
         https://developer.mozilla.org/en-US/docs/Web/HTML/Element
         https://developer.mozilla.org/en-US/docs/MDN/About$history
         http://creativecommons.org/licenses/by-sa/2.5/
   -->
   <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xml:lang="en">
   <xs:annotation>    <xs:annotation>
     <xs:documentation>      <xs:documentation>
       XML schema for LON-CAPA 2 documents.        XML schema for LON-CAPA documents.
     </xs:documentation>      </xs:documentation>
   </xs:annotation>    </xs:annotation>
       
Line 137 Line 147
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
       <xs:choice maxOccurs="unbounded" minOccurs="0">        <xs:choice maxOccurs="unbounded" minOccurs="0">
           <xs:element ref="head"/>
         <xs:group ref="text-with-parts"/>          <xs:group ref="text-with-parts"/>
         <xs:group ref="inserts"/>          <xs:group ref="inserts"/>
         <xs:element ref="allow"/>          <xs:element ref="allow"/>
Line 229 Line 240
       <xs:element ref="standalone"/>        <xs:element ref="standalone"/>
       <xs:element ref="script"/>        <xs:element ref="script"/>
       <xs:element ref="languageblock"/>        <xs:element ref="languageblock"/>
       <xs:element ref="translated"/>  
       <xs:element ref="window"/>        <xs:element ref="window"/>
       <xs:element ref="windowlink"/>        <xs:element ref="windowlink"/>
       <xs:element ref="togglebox"/>        <xs:element ref="togglebox"/>
Line 326 Line 336
       <xs:element ref="textline"/>        <xs:element ref="textline"/>
       <xs:element ref="displayweight"/>        <xs:element ref="displayweight"/>
       <xs:element ref="displaystudentphoto"/>        <xs:element ref="displaystudentphoto"/>
         <xs:element ref="translated"/>
               
       <xs:element ref="span"/>        <xs:element ref="span"/>
       <xs:element ref="a"/>        <xs:element ref="a"/>
Line 718 Line 729
     <xs:attribute name="texoptions">      <xs:attribute name="texoptions">
       <xs:annotation>        <xs:annotation>
         <xs:documentation>          <xs:documentation>
           Print options            Set to "nochoice" to avoid the display of the list of option values when printing.
         </xs:documentation>          </xs:documentation>
       </xs:annotation>        </xs:annotation>
       <xs:simpleType>        <xs:simpleType>
Line 754 Line 765
         </xs:union>          </xs:union>
       </xs:simpleType>        </xs:simpleType>
     </xs:attribute>      </xs:attribute>
       <xs:attribute name="noprompt">
         <xs:annotation>
           <xs:documentation>
             Set to "nochoice" to omit "Select all that are ... ".
           </xs:documentation>
         </xs:annotation>
         <xs:simpleType>
           <xs:union memberTypes="perl">
             <xs:simpleType>
               <xs:restriction base="xs:string">
                 <xs:enumeration value="nochoice"/>
               </xs:restriction>
             </xs:simpleType>
           </xs:union>
         </xs:simpleType>
       </xs:attribute>
       <xs:attribute name="mincheck" type="xs:int">
         <xs:annotation>
           <xs:documentation>
             Minimum boxes required to check.
           </xs:documentation>
         </xs:annotation>
       </xs:attribute>
       <xs:attribute name="maxcheck" type="xs:int">
         <xs:annotation>
           <xs:documentation>
             Maximum boxes permitted to check.
           </xs:documentation>
         </xs:annotation>
       </xs:attribute>
   </xs:complexType>    </xs:complexType>
   <xs:complexType name="optionresponse--conceptgroup">    <xs:complexType name="optionresponse--conceptgroup">
     <xs:annotation>      <xs:annotation>
Line 1057 Line 1098
   <xs:element name="imageresponse">    <xs:element name="imageresponse">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Query for the selection of an image in a list.          Query for positions on images.
           
           Each foil must contain a reference to an image, at least one rectangle or polygon specifying the correct region, and a text describing what should be selected. Students have to click on the foil image, and their answer is correct if they clicked inside the correct region.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
Line 1431 Line 1474
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute name="libraries" type="xs:string"/>        <xs:attribute name="libraries" type="xs:string">
           <xs:annotation>
             <xs:documentation>
               Comma-separated list of libraries.
               
               The following libraries can be used with Maxima:
               absimp, affine, atensor, atrig1, augmented_lagrangian,
               contrib_ode, ctensor, descriptive, diag, eigen, facexp, fft,
               fourie, functs, ggf, grobner, impdiff, ineq, interpol,
               itensor, lapack, lbfgs, lindstedt, linearalgebra, lsquares,
               makeOrders, mnewton, mchrpl, ntrig, orthopoly,
               quadpack, rducon, romberg, scifac, simplex, solve_rec,
               sqdnst, stats, sterling, sym, units, vect, zeilberger
               
               The following libraries can be used with R:
               alr3, boot, car, class, cluster, datasets, Hmisc,
               KernSmooth, leaps, lmtest, MASS, methods, mgcv,
               nlme, nnet, qAnalyst, quadprog, rpart, SuppDists,
               spatial, splines, stats, stats4, survival, tseries, zoo
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:complexType mixed="true" name="mathresponse--answer">    <xs:complexType mixed="true" name="mathresponse--answer">
Line 2124 Line 2188
       </xs:choice>        </xs:choice>
       <xs:attributeGroup ref="response-identification"/>        <xs:attributeGroup ref="response-identification"/>
       <xs:attribute default="autoez" name="options">        <xs:attribute default="autoez" name="options">
           <xs:annotation>
             <xs:documentation>
               Comma-separated list of options:
               
               - autoez: Auto E,Z stereochemistry
               - multipart: Multipart Structures
               - nostereo: No stereochemistry
               - reaction: Is a reaction
               - number: Able to number atoms
             </xs:documentation>
           </xs:annotation>
         <xs:simpleType>          <xs:simpleType>
           <xs:union memberTypes="perl">            <xs:union memberTypes="perl">
             <xs:simpleType>              <xs:simpleType>
Line 2137 Line 2212
       <xs:attribute name="molecule" type="xs:string">        <xs:attribute name="molecule" type="xs:string">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
             Starting Molecule              Starting Molecule.
               Syntax: JME.
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute name="answer" type="xs:string">        <xs:attribute name="answer" type="xs:string">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
             Correct Answer              Correct Answer.
               Syntax: SMILES (Simplified Molecular Input Line Entry System).
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
Line 2174 Line 2251
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Query for a chemical reaction.          Query for a chemical reaction.
           An internal textline element is necessary for the student's response to go in.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
Line 2186 Line 2264
         <xs:group ref="text-only"/>          <xs:group ref="text-only"/>
       </xs:choice>        </xs:choice>
       <xs:attributeGroup ref="response-identification"/>        <xs:attributeGroup ref="response-identification"/>
       <xs:attribute name="answer" type="xs:string" use="required"/>        <xs:attribute name="answer" type="xs:string" use="required">
           <xs:annotation>
             <xs:documentation>
               The correct answer.
               Chemical reactions use the following syntax:
               - Reactants are separated from products by '-&gt;'.
               - Individual reactants and products are separated by ' +' (leading space is obligatory).
               - Numbers preceding the first symbol of a chemical specie are considered to be stoichiometric coefficients.
               - Numbers appearing after the first symbol of a chemical specie are considered to be subscripts.
               - Superscripts are initialized by '^' and terminated by a space.
               - Ionic charges are superscripts composed of a number followed by a sign (i.e. '^2+').
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
       <xs:attribute name="initial" type="xs:string">        <xs:attribute name="initial" type="xs:string">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
             Initial Reaction              Initial reaction displayed to students. See the answer attribute for the syntax.
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
Line 2274 Line 2365
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
       <xs:choice maxOccurs="unbounded" minOccurs="0">        <xs:choice maxOccurs="unbounded" minOccurs="0">
           <xs:element ref="responseparam"/>
         <xs:element ref="textfield"/>          <xs:element ref="textfield"/>
         <xs:element ref="hiddensubmission"/>          <xs:element ref="hiddensubmission"/>
         <xs:element ref="hiddenline"/>          <xs:element ref="hiddenline"/>
Line 2432 Line 2524
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
         <xs:attribute name="id" type="xs:string">
           <xs:annotation>
             <xs:documentation>
               Id that will be part of the HTML input element id.
               This can be used to get a reference to the input element in Javascript.
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
       <xs:attribute default="20" name="size" type="int-or-perl">        <xs:attribute default="20" name="size" type="int-or-perl">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
Line 2501 Line 2601
   <xs:element name="hintgroup">    <xs:element name="hintgroup">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         The first part of the hint is the condition, which includes a specification of the foil(s) and foil answer(s) required to trigger the hint. The answers specified in the hint condition are compared with the user's submission, and if the condition is met, the hint action included in the conditional hint block will be executed (for example this could be the display of a block of text). You can set multiple hint conditions for a particular problem. Hint conditions are identified by a name. The corresponding hint action includes this hint condition name in the "on" parameter. When a hint condition evaluates to true, the corresponding hint action is triggered. Besides providing hint actions within &lt;hintpart on="NAME"&gt; &lt;/hintpart&gt; tags for each named (NAME) hint condition, a hint can be designated for display if none of the conditional hints evaluate to true. The default hint is not displayed if the conditions were met for any of the conditional hints. The default hint action is included between &lt;hintpart on="default"&gt; &lt;/hintpart&gt; tags.          This element can either contain a simple hint displayed when the submitted answer for the part is not correct, or a more complex structure to display different hints for different submitted answers.
           
           To display different hints based on the submitted answer, the hint group has to contain hint conditions (&lt;*hint&gt; elements) and conditional hints (&lt;hintpart&gt; elements).
           A hint condition defines the foil(s) and foil answer(s) required to trigger a hint, and has a name attribute to identify it.
           A conditional hint (&lt;hintpart&gt;) defines what will be displayed if a particular hint condition is met. It includes a reference to the hint condition in the "on" attribute.
           A default conditional hint can be defined by using on="default" in a &lt;hintpart&gt;. The contents of this hint will be displayed if none of the other conditional hints is triggered.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
Line 2532 Line 2637
       <xs:documentation>        <xs:documentation>
         Conditional Hint          Conditional Hint
                   
         When a hint element named the same as the on attribute evaluates to be correct, the hintpart will show.          When a hint condition named the same as the on attribute evaluates to be correct, the contents of this element will be displayed.
         If no other hintpart is to show then all hintparts with an on value set to “default” will show.          If no other hintpart is to show then all hintparts with an on value set to “default” will show.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
Line 2600 Line 2705
       <xs:documentation>        <xs:documentation>
         Radiobutton Hint Condition          Radiobutton Hint Condition
                   
         The radiobutton hint element takes two parameters: answer and name. The name is the name of the hint condition, and the answer is an array. The first element of the array will be 'foil'; the remaining elements are the names of the foils that you require to have been checked by the student for the hint to be displayed. For example, if you create a radiobutton response problem with six foils named: granite, gabbro, gneiss, shale, sandstone and schist, and you want your hint named: igneous to be displayed when either granite or basalt had been checked your radiobutton hint would be as follows:          The radiobutton hint element takes two attributes: answer and name. The name is the name of the hint condition, and the answer is an array. The first element of the array will be 'foil'; the remaining elements are the names of the foils that you require to have been checked by the student for the hint to be displayed. For example, if you create a radiobutton response problem with six foils named: granite, gabbro, gneiss, shale, sandstone and schist, and you want your hint named: igneous to be displayed when either granite or basalt had been checked your radiobutton hint would be as follows:
                   
         &lt;radiobuttonhint answer="('foil','granite','gabbro')" name="igneous"&gt;&lt;/radiobuttonhint&gt;          &lt;radiobuttonhint answer="('foil','granite','gabbro')" name="igneous"&gt;&lt;/radiobuttonhint&gt;
                   
         In order to trigger display of this hint you also need to create a &lt;hintpart&gt; &lt;/hintpart&gt; block that will include a textblock that contains the text of the actual hint.          In order to trigger display of this hint you also need to create a hint condition (&lt;hintpart&gt;) that will include the text of the actual hint.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
Line 2619 Line 2724
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute name="answer" type="xs:string">        <xs:attribute name="answer">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
             should be at least a two element list: first the type (foil or concept) and then either the foil name(s) or the concept string(s), e.g., “(’foil’,’greaterthan’,’equal’)” if the condition should be triggered by the foils named “greaterthan” or “equal”              should be at least a two element list: first the type (foil or concept) and then either the foil name(s) or the concept string(s), e.g., “(’foil’,’greaterthan’,’equal’)” if the condition should be triggered by the foils named “greaterthan” or “equal”
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:pattern value="\(\s*'.*'\s*\)"/>
             </xs:restriction>
           </xs:simpleType>
       </xs:attribute>        </xs:attribute>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
Line 2633 Line 2743
       <xs:documentation>        <xs:documentation>
         Option Response Hint Condition          Option Response Hint Condition
                   
         There are two types of option response hint conditions: one for standalone foils and one for concept groups. In both cases the option hint element includes two parameters: answer and name for standalone foils, and concept and name for foils grouped together in a concept group. For the answer parameter, the names and submitted values for each of the foils that are being included in the hint condition are provided in a hash, i.e., in the format: ('Foil1'= &gt; 'True','Foil2'= &gt; 'False'). In the case of a conditional hint for a concept group, the format of the concept parameter is also a hash that links the name of each concept group included in the hint condition to either 'correct' or 'incorrect' - e.g., &lt; optionhint concept="('buoyancy'= &gt; 'correct','density'= &gt; 'correct')" name="fluids" / &gt; If 'correct' is specified for a named concept then when the conditional hint is evaluated answers for each of the foils selected by a student must be correct for the hint action to be triggered. If anything other than 'correct' is provided in the concept hash in the optionhint element then then students answers will be compared with the set answers for the foils in the concept group and as long as at least one answer is incorrect (i.e., the concept group was not correctly answered) then the corresponding hint action will be triggered.           There are two types of option response hint conditions: one for standalone foils and one for concept groups. In both cases the option hint element includes two parameters: answer and name for standalone foils, and concept and name for foils grouped together in a concept group.
           For the answer parameter, the names and submitted values for each of the foils that are being included in the hint condition are provided in a hash, i.e., in the format: ('Foil1'=&gt; 'True','Foil2'=&gt; 'False').
           In the case of a conditional hint for a concept group, the format of the concept parameter is also a hash that links the name of each concept group included in the hint condition to either 'correct' or 'incorrect' - e.g., &lt;optionhint concept="('buoyancy'=&gt; 'correct','density'=&gt; 'correct')" name="fluids" /&gt;.
           If 'correct' is specified for a named concept then when the conditional hint is evaluated answers for each of the foils selected by a student must be correct for the hint action to be triggered. If anything other than 'correct' is provided in the concept hash in the optionhint element then then students answers will be compared with the set answers for the foils in the concept group and as long as at least one answer is incorrect (i.e., the concept group was not correctly answered) then the corresponding hint action will be triggered.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
Line 2648 Line 2761
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute name="answer" type="xs:string"/>        <xs:attribute name="answer">
       <xs:attribute name="concept" type="xs:string"/>          <xs:annotation>
             <xs:documentation>
               Perl hash with foil names as keys and submitted values as values.
               Example: ('foil1'=&gt; 'true', 'foil2'=&gt; 'false')
             </xs:documentation>
           </xs:annotation>
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:pattern value="\(\s*'.*'\s*\)"/>
             </xs:restriction>
           </xs:simpleType>
         </xs:attribute>
         <xs:attribute name="concept">
           <xs:annotation>
             <xs:documentation>
               Perl hash with concept names as keys and either 'correct' or 'incorrect' as values.
               Example: ('buoyancy'=&gt;'correct', 'density'=&gt; 'correct')
             </xs:documentation>
           </xs:annotation>
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:pattern value="\(\s*'.*'\s*\)"/>
             </xs:restriction>
           </xs:simpleType>
         </xs:attribute>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="numericalhint">    <xs:element name="numericalhint">
Line 2803 Line 2940
       <xs:documentation>        <xs:documentation>
         Custom Hint Condition          Custom Hint Condition
                   
         Define the hint condition within an answer block inside of the customhint block. The condition is defined like how an answer is defined in customresponse where you need to return EXACT ANS to indicate when customhint criteria are met.          Define the hint condition within an answer element inside the customhint element. The condition is defined in the same way an answer is defined in customresponse, where you need to return EXACT_ANS to indicate when the customhint criteria are met.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
Line 3060 Line 3197
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute default="noborder" name="box_border">  
         <xs:annotation>  
           <xs:documentation>  
             Draw border for boxes  
           </xs:documentation>  
         </xs:annotation>  
         <xs:simpleType>  
           <xs:union memberTypes="perl">  
             <xs:simpleType>  
               <xs:restriction base="xs:string">  
                 <xs:enumeration value="border"/>  
                 <xs:enumeration value="noborder"/>  
               </xs:restriction>  
             </xs:simpleType>  
           </xs:union>  
         </xs:simpleType>  
       </xs:attribute>  
       <xs:attribute default="on" name="border" type="onoff-or-perl">        <xs:attribute default="on" name="border" type="onoff-or-perl">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
Line 3205 Line 3325
           </xs:union>            </xs:union>
         </xs:simpleType>          </xs:simpleType>
       </xs:attribute>        </xs:attribute>
       <xs:attribute name="pattern">  
         <xs:annotation>  
           <xs:documentation>  
             Pattern value for boxes  
           </xs:documentation>  
         </xs:annotation>  
         <xs:simpleType>  
           <xs:union memberTypes="perl">  
             <xs:simpleType>  
               <xs:restriction base="xs:int">  
                 <xs:minInclusive value="0"/>  
                 <xs:maxInclusive value="6"/>  
               </xs:restriction>  
             </xs:simpleType>  
           </xs:union>  
         </xs:simpleType>  
       </xs:attribute>  
       <xs:attribute default="0" name="solid" type="int-or-perl">  
         <xs:annotation>  
           <xs:documentation>  
             The density of fill style for boxes  
           </xs:documentation>  
         </xs:annotation>  
       </xs:attribute>  
       <xs:attribute default="empty" name="fillstyle">  
         <xs:annotation>  
           <xs:documentation>  
             Filled style for boxes  
           </xs:documentation>  
         </xs:annotation>  
         <xs:simpleType>  
           <xs:union memberTypes="perl">  
             <xs:simpleType>  
               <xs:restriction base="xs:string">  
                 <xs:enumeration value="empty"/>  
                 <xs:enumeration value="solid"/>  
                 <xs:enumeration value="pattern"/>  
               </xs:restriction>  
             </xs:simpleType>  
           </xs:union>  
         </xs:simpleType>  
       </xs:attribute>  
       <xs:attribute default="Cartesian" name="plottype">        <xs:attribute default="Cartesian" name="plottype">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
Line 3348 Line 3426
           </xs:union>            </xs:union>
         </xs:simpleType>          </xs:simpleType>
       </xs:attribute>        </xs:attribute>
         <xs:attribute default="1" name="major_ticscale" type="real-or-perl">
           <xs:annotation>
             <xs:documentation>
               Size of major tic marks (plot coordinates)
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute default="0.5" name="minor_ticscale" type="real-or-perl">
           <xs:annotation>
             <xs:documentation>
               Size of minor tic mark (plot coordinates)
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute default="noborder" name="box_border">
           <xs:annotation>
             <xs:documentation>
               Draw border for boxes
             </xs:documentation>
           </xs:annotation>
           <xs:simpleType>
             <xs:union memberTypes="perl">
               <xs:simpleType>
                 <xs:restriction base="xs:string">
                   <xs:enumeration value="border"/>
                   <xs:enumeration value="noborder"/>
                 </xs:restriction>
               </xs:simpleType>
             </xs:union>
           </xs:simpleType>
         </xs:attribute>
       <xs:attribute name="boxwidth" type="xs:string">        <xs:attribute name="boxwidth" type="xs:string">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
Line 3355 Line 3464
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute default="1" name="major_ticscale" type="real-or-perl">        <xs:attribute default="empty" name="fillstyle">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
             Size of major tic marks (plot coordinates)              Fill style for boxes
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
           <xs:simpleType>
             <xs:union memberTypes="perl">
               <xs:simpleType>
                 <xs:restriction base="xs:string">
                   <xs:enumeration value="empty"/>
                   <xs:enumeration value="solid"/>
                   <xs:enumeration value="pattern"/>
                 </xs:restriction>
               </xs:simpleType>
             </xs:union>
           </xs:simpleType>
       </xs:attribute>        </xs:attribute>
       <xs:attribute default="0.5" name="minor_ticscale" type="real-or-perl">        <xs:attribute default="0" name="solid" type="int-or-perl">
         <xs:annotation>          <xs:annotation>
           <xs:documentation>            <xs:documentation>
             Size of minor tic mark (plot coordinates)              Density of fill style for boxes
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
         <xs:attribute name="pattern">
           <xs:annotation>
             <xs:documentation>
               Pattern value for boxes
             </xs:documentation>
           </xs:annotation>
           <xs:simpleType>
             <xs:union memberTypes="perl">
               <xs:simpleType>
                 <xs:restriction base="xs:int">
                   <xs:minInclusive value="0"/>
                   <xs:maxInclusive value="6"/>
                 </xs:restriction>
               </xs:simpleType>
             </xs:union>
           </xs:simpleType>
         </xs:attribute>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:group name="gnuplot-children">    <xs:group name="gnuplot-children">
Line 5003 Line 5140
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
       <xs:attribute default="reaction" name="options">        <xs:attribute name="options">
           <xs:annotation>
             <xs:documentation>
               Comma-separated list of options:
               reaction: is a reaction (note: setting this option is only useful for the editor, it does not change the resulting image)
               border: draws a border around the image
             </xs:documentation>
           </xs:annotation>
         <xs:simpleType>          <xs:simpleType>
           <xs:union memberTypes="perl">            <xs:union memberTypes="perl">
             <xs:simpleType>              <xs:simpleType>
               <xs:restriction base="xs:string">                <xs:restriction base="xs:string">
                 <xs:enumeration value="reaction"/>                  <xs:pattern value="reaction|border|reaction\s*,\s*border|border\s*,\s*reaction"/>
                 <xs:enumeration value="border"/>  
               </xs:restriction>                </xs:restriction>
             </xs:simpleType>              </xs:simpleType>
           </xs:union>            </xs:union>
Line 5365 Line 5508
       <xs:sequence>        <xs:sequence>
         <xs:element ref="head"/>          <xs:element ref="head"/>
         <xs:element ref="body"/>          <xs:element ref="body"/>
           <xs:element ref="allow" minOccurs="0" maxOccurs="unbounded"/>
       </xs:sequence>        </xs:sequence>
       <xs:attributeGroup ref="i18n"/>        <xs:attributeGroup ref="i18n"/>
       <xs:attribute name="id" type="xs:ID"/>        <xs:attribute name="id" type="xs:ID"/>
Line 5375 Line 5519
       <xs:choice maxOccurs="unbounded" minOccurs="0">        <xs:choice maxOccurs="unbounded" minOccurs="0">
         <xs:element ref="script"/>          <xs:element ref="script"/>
         <xs:element ref="style"/>          <xs:element ref="style"/>
         <xs:element name="meta" type="htmlMeta">          <xs:element name="meta" type="htmlMeta"/>
           <xs:annotation>  
             <xs:documentation>  
               generic metainformation  
             </xs:documentation>  
           </xs:annotation>  
         </xs:element>  
         <xs:element ref="link"/>          <xs:element ref="link"/>
         <xs:element ref="import"/>          <xs:element ref="import"/>
       </xs:choice>        </xs:choice>
Line 5396 Line 5534
     <xs:complexType>      <xs:complexType>
       <xs:sequence>        <xs:sequence>
         <xs:group ref="head.misc"/>          <xs:group ref="head.misc"/>
         <xs:choice>          <xs:choice minOccurs="0">
           <xs:sequence>            <xs:sequence>
             <xs:element ref="title"/>              <xs:element ref="title"/>
             <xs:group ref="head.misc"/>              <xs:group ref="head.misc"/>
Line 5408 Line 5546
           <xs:sequence>            <xs:sequence>
             <xs:element ref="base"/>              <xs:element ref="base"/>
             <xs:group ref="head.misc"/>              <xs:group ref="head.misc"/>
             <xs:element ref="title"/>              <xs:sequence minOccurs="0">
             <xs:group ref="head.misc"/>                <xs:element ref="title"/>
                 <xs:group ref="head.misc"/>
               </xs:sequence>
           </xs:sequence>            </xs:sequence>
         </xs:choice>          </xs:choice>
       </xs:sequence>        </xs:sequence>
Line 5442 Line 5582
   <xs:element name="base">    <xs:element name="base">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Document base URI          The HTML Base Element (&lt;base&gt;) specifies the base URL to use for all relative URLs contained within a document. There can be only one &lt;base&gt; element in a document.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
Line 5451 Line 5591
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:complexType name="htmlMeta">    <xs:complexType name="htmlMeta">
       <xs:annotation>
         <xs:documentation>
           The HTML Meta Element (&lt;meta&gt;) represents any metadata information that cannot be represented by one of the other HTML meta-related elements (&lt;base&gt;, &lt;link&gt;, &lt;script&gt;, &lt;style&gt; or &lt;title&gt;).
   
           Depending on the attributes set, the kind of metadata can be one of the following:
           - If name is set, it is document-level metadata, applying to the whole page.
           - If http-equiv is set, it is a pragma directive, i.e. information normally given by the web server about how the - web page should be served.
           - If charset is set, it is a charset declaration, i.e. the charset used for the serialized form of the webpage. HTML5
           - if the itemprop is set, a user-defined metadata, transparent for the user-agent as the semantics of the metadata is user-specific.
         </xs:documentation>
       </xs:annotation>
     <xs:attributeGroup ref="i18n"/>      <xs:attributeGroup ref="i18n"/>
     <xs:attribute name="id" type="xs:ID"/>      <xs:attribute name="id" type="xs:ID"/>
     <xs:attribute name="http-equiv">      <xs:attribute name="http-equiv">
Line 5663 Line 5814
   <xs:element name="body">    <xs:element name="body">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         The HTML &lt;body&gt; element represents the content of an HTML document. There is only one &lt;body&gt; element in a document.          The HTML Body Element (&lt;body&gt;) represents the content of an HTML document. There can be only one &lt;body&gt; element in a document.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
Line 5723 Line 5874
       <xs:choice maxOccurs="unbounded" minOccurs="0">        <xs:choice maxOccurs="unbounded" minOccurs="0">
         <xs:group ref="text-only"/>          <xs:group ref="text-only"/>
       </xs:choice>        </xs:choice>
         <xs:attributeGroup ref="coreattrs"/>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="footer">    <xs:element name="footer">
Line 5737 Line 5889
       <xs:choice maxOccurs="unbounded" minOccurs="0">        <xs:choice maxOccurs="unbounded" minOccurs="0">
         <xs:group ref="text-only"/>          <xs:group ref="text-only"/>
       </xs:choice>        </xs:choice>
         <xs:attributeGroup ref="coreattrs"/>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="aside">    <xs:element name="aside">
Line 5749 Line 5902
       <xs:choice maxOccurs="unbounded" minOccurs="0">        <xs:choice maxOccurs="unbounded" minOccurs="0">
         <xs:group ref="text-only"/>          <xs:group ref="text-only"/>
       </xs:choice>        </xs:choice>
         <xs:attributeGroup ref="coreattrs"/>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="h1" type="headerContent">    <xs:element name="h1" type="headerContent">
Line 5903 Line 6057
   <xs:complexType name="ul-base">    <xs:complexType name="ul-base">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Unordered list          The HTML unordered list element (&lt;ul&gt;) represents an unordered list of items, namely a collection of items that do not have a numerical ordering, and their order in the list is meaningless. Typically, unordered-list items are displayed with a bullet, which can be of several forms, like a dot, a circle or a squared. The bullet style is not defined in the HTML description of the page, but in its associated CSS, using the list-style-type property.
           
           There is no limitation to the depth and imbrication of lists defined with the &lt;ol&gt; and &lt;ul&gt; elements.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:attributeGroup ref="coreattrs"/>      <xs:attributeGroup ref="coreattrs"/>
Line 5953 Line 6109
   <xs:complexType name="ol-base">    <xs:complexType name="ol-base">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Ordered list          The HTML &lt;ol&gt; Element (or HTML Ordered List Element) represents an ordered list of items. Typically, ordered-list items are displayed with a preceding numbering, which can be of any form, like numerals, letters or Romans numerals or even simple bullets. This numbered style is not defined in the HTML description of the page, but in its associated CSS, using the list-style-type property.
           
           There is no limitation to the depth and overlap of lists defined with the &lt;ol&gt; and &lt;ul&gt; elements.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:attributeGroup ref="coreattrs"/>      <xs:attributeGroup ref="coreattrs"/>
Line 6004 Line 6162
   <xs:complexType mixed="true" name="li-base">    <xs:complexType mixed="true" name="li-base">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         List item          The HTML List Item Element (&lt;li&gt;) is used to represent an item in a list. It must be contained in a parent element: an ordered list (&lt;ol&gt;), an unordered list (&lt;ul&gt;), or a menu (&lt;menu&gt;). In menus and unordered lists, list items are usually displayed using bullet points. In ordered lists, they are usually displayed with an ascending counter on the left, such as a number or letter.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:attributeGroup ref="coreattrs"/>      <xs:attributeGroup ref="coreattrs"/>
Line 6539 Line 6697
   <xs:element name="span">    <xs:element name="span">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Inline style          The HTML &lt;span&gt; element is a generic inline container for phrasing content, which does not inherently represent anything. It can be used to group elements for styling purposes (using the class or id attributes), or because they share attribute values, such as lang. It should be used only when no other semantic element is appropriate. &lt;span&gt; is very much like a &lt;div&gt; element, but &lt;div&gt; is a block-level element whereas a &lt;span&gt; is an inline element.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
Line 6560 Line 6718
         <xs:group ref="inlines"/>          <xs:group ref="inlines"/>
       </xs:choice>        </xs:choice>
       <xs:attributeGroup ref="coreattrs"/>        <xs:attributeGroup ref="coreattrs"/>
       <xs:attribute name="name" type="xs:string"/>        <xs:attribute name="name" type="xs:string">
       <xs:attribute name="href" type="xs:anyURI"/>          <xs:annotation>
       <xs:attribute name="target" type="xs:string"/>            <xs:documentation>
       <xs:attribute name="title" type="xs:string"/>              HTML 4 only, Obsolete since HTML5.
       <xs:attribute name="uriprint" type="xs:string"/>              
       <xs:attribute name="anchorprint" type="xs:string"/>              This attribute is required in an anchor defining a target location within a page. A value for name is similar to a value for the id core attribute and should be an alphanumeric identifier unique to the document. Under the HTML 4.01 specification, id and name both can be used with the &lt;a&gt; element as long as they have identical values.
       <xs:attribute name="rel" type="xs:NMTOKENS"/>              
               Usage note: This attribute is obsolete in HTML5, use global attribute id instead.
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="href" type="xs:anyURI">
           <xs:annotation>
             <xs:documentation>
               This was the single required attribute for anchors defining a hypertext source link, but is no longer required in HTML5. Omitting this attribute creates a placeholder link. The href attribute indicates the link target, either a URL or a URL fragment. A URL fragment is a name preceded by a hash mark (#), which specifies an internal target location (an ID) within the current document. URLs are not restricted to Web (HTTP)-based documents. URLs might use any protocol supported by the browser. For example, file, ftp, and mailto work in most user agents.
               
               Note: You can use the special fragment "top" to create a link back to the top of the page; for example &lt;a href="#top"&gt;Return to top&lt;/a&gt;. This behavior is specified by HTML5.
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="target" type="xs:string">
           <xs:annotation>
             <xs:documentation>
               This attribute specifies where to display the linked resource. In HTML4, this is the name of, or a keyword for, a frame. In HTML5, it is a name of, or keyword for, a browsing context (for example, tab, window, or inline frame). The following keywords have special meanings:
               
               * _self: Load the response into the same HTML4 frame (or HTML5 browsing context) as the current one. This value is the default if the attribute is not specified.
               * _blank: Load the response into a new unnamed HTML4 window or HTML5 browsing context.
               * _parent: Load the response into the HTML4 frameset parent of the current frame or HTML5 parent browsing context of the current one. If there is no parent, this option behaves the same way as _self.
               * _top: In HTML4: Load the response into the full, original window, canceling all other frames. In HTML5: Load the response into the top-level browsing context (that is, the browsing context that is an ancestor of the current one, and has no parent). If there is no parent, this option behaves the same way as _self.
               
               Use this attribute only if the href attribute is present.
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="title" type="xs:string">
           <xs:annotation>
             <xs:documentation>
               Contains a text representing advisory information related to the element it belongs to. Such information can typically, but not necessarily, be presented to the user as a tooltip.
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
         <xs:attribute name="rel" type="xs:NMTOKENS">
           <xs:annotation>
             <xs:documentation>
               For anchors containing the href attribute, this attribute specifies the relationship of the target object to the link object. The value is a comma-separated list of link types values. The values and their semantics will be registered by some authority that might have meaning to the document author. The default relationship, if no other is given, is void. Use this attribute only if the href attribute is present.
             </xs:documentation>
           </xs:annotation>
         </xs:attribute>
       <xs:attribute name="accesskey">        <xs:attribute name="accesskey">
           <xs:annotation>
             <xs:documentation>
               Provides a hint for generating a keyboard shortcut for the current element. This attribute consists of a space-separated list of characters. The browser should use the first one that exists on the computer keyboard layout.
             </xs:documentation>
           </xs:annotation>
         <xs:simpleType>          <xs:simpleType>
           <xs:restriction base="xs:string">            <xs:restriction base="xs:string">
             <xs:length fixed="true" value="1"/>              <xs:length fixed="true" value="1"/>
Line 6585 Line 6789
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
         <xs:attribute name="uriprint">
           <xs:annotation>
             <xs:documentation>
               Attribute specific to LON-CAPA.
               Display the href attribute when printing.
             </xs:documentation>
           </xs:annotation>
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:enumeration value="on"/>
               <xs:enumeration value="uriprint"/>
               <xs:enumeration value="yes"/>
               <xs:enumeration value="1"/>
             </xs:restriction>
           </xs:simpleType>
         </xs:attribute>
         <xs:attribute name="anchorprint">
           <xs:annotation>
             <xs:documentation>
               Attribute specific to LON-CAPA.
               Display the name attribute when printing.
             </xs:documentation>
           </xs:annotation>
           <xs:simpleType>
             <xs:restriction base="xs:string">
               <xs:enumeration value="on"/>
               <xs:enumeration value="anchorprint"/>
               <xs:enumeration value="yes"/>
               <xs:enumeration value="1"/>
             </xs:restriction>
           </xs:simpleType>
         </xs:attribute>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="em" type="inlineBaseType">    <xs:element name="em" type="inlineBaseType">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Emphasis          The HTML Emphasis Element (&lt;em&gt;) marks text that has stress emphasis. The &lt;em&gt; element can be nested, with each level of nesting indicating a greater degree of emphasis.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
   </xs:element>    </xs:element>
   <xs:element name="strong" type="inlineBaseType">    <xs:element name="strong" type="inlineBaseType">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         Strong emphasis          The HTML Strong Element (&lt;strong&gt;) gives text strong importance, and is typically displayed in bold.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
   </xs:element>    </xs:element>
Line 6629 Line 6865
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
   </xs:element>    </xs:element>
   <xs:element name="pre" type="inlineBaseType">    <xs:element name="pre">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         The HTML &lt;pre&gt; Element (or HTML Preformatted Text) represents preformatted text. Text within this element is typically displayed in a non-proportional font exactly as it is laid out in the file. Whitespaces inside this element are displayed as typed.          The HTML &lt;pre&gt; Element (or HTML Preformatted Text) represents preformatted text. Text within this element is typically displayed in a non-proportional font exactly as it is laid out in the file. Whitespaces inside this element are displayed as typed.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
       <xs:complexType mixed="true">
         <xs:choice maxOccurs="unbounded" minOccurs="0">
           <xs:group ref="inlines"/>
         </xs:choice>
         <xs:attribute fixed="preserve" ref="xml:space"/>
       </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="code" type="inlineBaseType">    <xs:element name="code" type="inlineBaseType">
     <xs:annotation>      <xs:annotation>
Line 6961 Line 7203
           <xs:element minOccurs="0" ref="figcaption"/>            <xs:element minOccurs="0" ref="figcaption"/>
         </xs:sequence>          </xs:sequence>
       </xs:choice>        </xs:choice>
         <xs:attributeGroup ref="coreattrs"/>
     </xs:complexType>      </xs:complexType>
   </xs:element>    </xs:element>
   <xs:element name="figcaption">    <xs:element name="figcaption">
Line 7077 Line 7320
   <xs:element name="param">    <xs:element name="param">
     <xs:annotation>      <xs:annotation>
       <xs:documentation>        <xs:documentation>
         param is used to supply a named property value          The HTML &lt;param&gt; element is used to supply a named property value.
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType>      <xs:complexType>
Line 7486 Line 7729
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
       <xs:complexContent>        <xs:complexContent>
         <xs:extension base="inlineBaseType">          <xs:extension base="inlineBaseType">
           <xs:attribute name="for" type="xs:IDREF"/>            <xs:attribute name="for" type="xs:IDREF">
               <xs:annotation>
                 <xs:documentation>
                   The ID of a labelable form-related element in the same document as the label element. The first such element in the document with an ID matching the value of the for attribute is the labeled control for this label element. 
                 </xs:documentation>
               </xs:annotation>
             </xs:attribute>
           <xs:attribute name="accesskey">            <xs:attribute name="accesskey">
               <xs:annotation>
                 <xs:documentation>
                   A shortcut key to access this element from the keyboard.
                 </xs:documentation>
               </xs:annotation>
             <xs:simpleType>              <xs:simpleType>
               <xs:restriction base="xs:string">                <xs:restriction base="xs:string">
                 <xs:length fixed="true" value="1"/>                  <xs:length fixed="true" value="1"/>
               </xs:restriction>                </xs:restriction>
             </xs:simpleType>              </xs:simpleType>
           </xs:attribute>            </xs:attribute>
             <xs:attribute name="form" type="xs:IDREF">
               <xs:annotation>
                 <xs:documentation>
                   The form element that the label element is associated with (its form owner). If specified, the value of the attribute must be the ID of a &lt;form&gt; element in the same document. This attribute enables you to place label elements anywhere within a document, not just as descendants of their form elements.
                 </xs:documentation>
               </xs:annotation>
             </xs:attribute>
           <xs:attribute name="onfocus" type="xs:string"/>            <xs:attribute name="onfocus" type="xs:string"/>
           <xs:attribute name="onblur" type="xs:string"/>            <xs:attribute name="onblur" type="xs:string"/>
         </xs:extension>          </xs:extension>
Line 7754 Line 8015
       </xs:documentation>        </xs:documentation>
     </xs:annotation>      </xs:annotation>
     <xs:complexType mixed="true">      <xs:complexType mixed="true">
         <xs:choice maxOccurs="unbounded" minOccurs="0">
           <xs:group ref="blocks-with-text"/>
         </xs:choice>
       <xs:attributeGroup ref="coreattrs"/>        <xs:attributeGroup ref="coreattrs"/>
       <xs:attribute name="name" type="xs:NMTOKEN"/>        <xs:attribute name="name" type="xs:NMTOKEN"/>
       <xs:attribute name="src" type="xs:anyURI"/>        <xs:attribute name="src" type="xs:anyURI"/>

Removed from v.1.8  
changed lines
  Added in v.1.19


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>