2014-10-05 1 views
0

У меня есть XML-схема, и я хотел бы знать, можно ли включить условия. Я хотел бы выбрать minInclusive и maxInclusive для каждого месяца. Это можно сделать в схеме xml. Буду признателен за любую помощь. =)XML-схема, как поставить «условия» в ограничения?

Вот мой код:

<xs:element name="correo"> 
    <xs:complexType> 
     <xs:sequence> 

      <xs:element name="emisor"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="nombre" type="xs:string"/> 
         <xs:element name="apellidos" type="xs:string"/> 
         <xs:element name="email" type="xs:string"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 

      <xs:element name="receptor"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="nombre" type="xs:string"/> 
         <xs:element name="apellidos" type="xs:string"/> 
         <xs:element name="email" type="xs:string"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 


      <xs:element name="fecha"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="dia"> 
          <xs:simpleType> 
           <xs:restriction base="xs:integer"> 
            <xs:minInclusive value="1"/> 
            <xs:maxInclusive value="31"/> 
           </xs:restriction> 
          </xs:simpleType> 
         </xs:element> 
         <xs:element name="mes"> 
          <xs:simpleType> 
           <xs:restriction base="xs:string"> 
            <xs:enumeration value="Enero"/> 
            <xs:enumeration value="Febrero"/> 
            <xs:enumeration value="Marzo"/> 
            <xs:enumeration value="Abril"/> 
            <xs:enumeration value="Mayo"/> 
            <xs:enumeration value="Junio"/> 
            <xs:enumeration value="Julio"/> 
            <xs:enumeration value="Agosto"/> 
            <xs:enumeration value="Septiembre"/> 
            <xs:enumeration value="Octubre"/> 
            <xs:enumeration value="Noviembre"/> 
            <xs:enumeration value="Diciembre"/> 
           </xs:restriction> 
          </xs:simpleType> 
         </xs:element> 
         <xs:element name="año"> 
          <xs:simpleType> 
           <xs:restriction base="xs:integer"> 
            <xs:minInclusive value="0"/> 
           </xs:restriction> 
          </xs:simpleType> 
         </xs:element> 
         <xs:element name="hora"> 
          <xs:complexType> 
           <xs:sequence> 
            <xs:element name="horas"> 
             <xs:simpleType> 
              <xs:restriction base="xs:integer"> 
               <xs:minInclusive value="0"/> 
               <xs:maxInclusive value="23"/> 
              </xs:restriction> 
             </xs:simpleType> 
            </xs:element> 
            <xs:element name="minutos"> 
             <xs:simpleType> 
              <xs:restriction base="xs:integer"> 
               <xs:minInclusive value="0"/> 
               <xs:maxInclusive value="59"/> 
              </xs:restriction> 
             </xs:simpleType> 
            </xs:element> 
           </xs:sequence> 
          </xs:complexType> 
         </xs:element> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 

      <xs:element name="adjuntos"> 
       <xs:complexType> 
        <xs:sequence> 

         <xs:element name="archivo"> 
          <xs:complexType> 
           <xs:sequence> 
            <xs:element name="extension" type="xs:string"/> 
            <xs:element name="tamaño"> 
             <xs:complexType> 
              <xs:sequence> 
               <xs:element name="valor"> 
                <xs:simpleType> 
                 <xs:restriction base="xs:double"> 
                  <xs:minInclusive value="0."/> 
                 </xs:restriction> 
                </xs:simpleType> 
               </xs:element> 
               <xs:element name="unidades" type="xs:string"/> 
              </xs:sequence> 
             </xs:complexType> 
            </xs:element> 
           </xs:sequence> 
           <xs:attribute name="nombre" type="xs:string"/> 
          </xs:complexType> 
         </xs:element> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element> 

      <xs:element name="mensaje"> 
       <xs:complexType> 
        <xs:sequence> 
         <xs:element name="cuerpo" type="xs:string"/> 
         <xs:element name="firma" type="xs:string"/> 
        </xs:sequence> 
       </xs:complexType> 
      </xs:element>     

     </xs:sequence> 
     <xs:attribute name="asunto" type="xs:string"/>  
    </xs:complexType> 
</xs:element> 

ответ

0

Вы можете сделать такого рода вещи с утверждениями в XSD 1.1. Это не может быть сделано в XSD 1.0.

Смежные вопросы