Ejercicio XML para Crear un XSD

Documento XML

Consideremos el siguiente documento XML que describe una tienda con información sobre productos y sus detalles. Tu tarea es crear un archivo XSD que valide la estructura de este XML.

<store>
    <product id="P001" category="Electronics">
        <name>Smartphone</name>
        <price>599.99</price>
        <quantity>50</quantity>
    </product>
    <product id="P002" category="Home Appliances">
        <name>Vacuum Cleaner</name>
        <price>129.99</price>
        <quantity>30</quantity>
    </product>
</store>

Instrucciones para Crear el XSD

  1. Define el elemento raíz store.
  2. Cada product debe tener un atributo id de tipo string y un atributo category de tipo string.
  3. Cada product debe contener los elementos name (string), price (decimal) y quantity (integer).

Solución en XSD

A continuación se presenta una posible solución en XSD para validar el documento XML anterior:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

    <!-- Definición del elemento raíz -->
    <xs:element name="store">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="product" maxOccurs="unbounded">
                    <xs:complexType>
                        <xs:sequence>
                            <xs:element name="name" type="xs:string"/>
                            <xs:element name="price" type="xs:decimal"/>
                            <xs:element name="quantity" type="xs:integer"/>
                        </xs:sequence>
                        <xs:attribute name="id" type="xs:string" use="required"/>
                        <xs:attribute name="category" type="xs:string" use="required"/>
                    </xs:complexType>
                </xs:element>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

</xs:schema>

Explicación de la Solución

  1. Elemento store: Es el elemento raíz que contiene múltiples product.
  2. Elemento product: Cada product tiene dos atributos id y category, ambos de tipo string y requeridos.
  3. Elementos Internos:
  • name: Es una cadena (xs:string).
  • price: Es un decimal (xs:decimal).
  • quantity: Es un entero (xs:integer).

Este XSD valida la estructura del XML, asegurando que todos los elementos y atributos estén presentes y tengan los tipos de datos correctos.

white ceramic mug between apple magic keyboard and two flat screen computer monitors
Photo by Picography on Pexels.com

Deja un comentario

Información básica sobre protección de datos Ver más

  • Responsable: Tomas Gonzalez.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

error: Content is protected !!

Descubre más desde Tomás González: Formador y Desarrollador Web

Suscríbete ahora para seguir leyendo y obtener acceso al archivo completo.

Seguir leyendo

Este sitio web utiliza cookies, si necesitas más información puedes visitar nuestra política de privacidad    Ver
Privacidad