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

version 1.8, 2015/05/04 20:59:30 version 1.12, 2015/05/13 19:08:29
Line 718 Line 718
     <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 754
         </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 1087
   <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 2124 Line 2156
       </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 2180
       <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 2274 Line 2319
     </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 2501 Line 2547
   <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 2583
       <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 2651
       <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 2670
           </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 2689
       <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 2707
           </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" type="xs:string">
           <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 2886
       <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 6560 Line 6643
         <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 6714
           </xs:documentation>            </xs:documentation>
         </xs:annotation>          </xs:annotation>
       </xs:attribute>        </xs:attribute>
         <xs:attribute name="uriprint" type="xs:string">
           <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" type="xs:string">
           <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">

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


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