Saltar al contenido principal

Ejercicio 419

Elabora un documento XSD que permita validar el siguiente documento XML:

<edades>
<edad>11</edad>
<edad>4</edad>
<edad>16</edad>
<edad>0</edad>
<edad>3</edad>
<edad>17</edad>
</edades>

Algunas consideraciones:

  • El documento debe contener, como mínimo, 3 edades. No hay límite máximo.
  • El contenido del elemento <edad> solo puede ser la edad de una persona menor de edad (entre 0 y 17 años).
Solución
XML
<?xml version="1.0" encoding="UTF-8" ?>
<edades
xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xs:noNamespaceSchemaLocation="419.xsd">
<edad>11</edad>
<edad>4</edad>
<edad>16</edad>
<edad>3</edad>
<edad>17</edad>
</edades>
419.xsd
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="edades" type="edades"/>

<xs:complexType name="edades">
<xs:sequence>
<xs:element name="edad" type="menor-edad" minOccurs="3" maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>

<xs:simpleType name="menor-edad">
<xs:restriction base="xs:integer">
<xs:minInclusive value="0"/>
<xs:maxExclusive value="18"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>