Saltar al contenido

🧾 Apuntes base — Crear Schema XML (cupon.xsd) para cupon.xml


📌 Estructura del archivo XML

<oferta>
	<empresa>Freidor Neptuno</empresa>
	<titulo>Menú con entrante, pescado frito y bebida</titulo>
	<emision>2017-11-10</emision>
	<precio>14.95</precio>
	<emitidos>25</emitidos>
	<num_personas>2</num_personas>
	<activo>true</activo>
	<foto>d9ba714af95ea7cc7bdd8de5432387e4caab6d7cb1</foto>
</oferta>

📐 Elementos y tipos de datos recomendados

ElementoTipo XSDObservaciones
empresaxs:stringNombre de la empresa
tituloxs:stringDescripción textual
emisionxs:dateFormato YYYY-MM-DD
precioxs:decimalUsa decimales
emitidosxs:positiveIntegerNúmeros positivos (>0)
num_personasxs:positiveIntegerNúmeros positivos (>0)
activoxs:booleanPuede ser true o false, valor por defecto true
fotoxs:stringHash o identificador de imagen

🧩 Estructura base del archivo XSD (cupon.xsd)

<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:element name="oferta">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="empresa" type="xs:string"/>
        <xs:element name="titulo" type="xs:string"/>
        <xs:element name="emision" type="xs:date"/>
        <xs:element name="precio" type="xs:decimal"/>
        <xs:element name="emitidos" type="xs:positiveInteger"/>
        <xs:element name="num_personas" type="xs:positiveInteger"/>
        <xs:element name="activo" type="xs:boolean" default="true"/>
        <xs:element name="foto" type="xs:string"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

</xs:schema>

✅ Cosas a tener en cuenta para el ejercicio

  1. Valida el XML: Puedes usar un editor como XML Validator o herramientas como Oxygen XML o plugins de VSCode.
  2. activo con default: Aunque el XML original lo tiene presente, si algún día falta, el esquema aplicará true automáticamente.
  3. Fechas y decimales: Asegúrate de que los datos estén bien formateados (por ejemplo 14.95 y no 14,95).
  4. Ajuste adicional: Si el foto fuera un hash de 40 caracteres, podrías usar restricciones con xs:pattern.

¿Te gustaría que te genere también un ejemplo de validación o un esquema con restricciones adicionales?

Etiquetas:

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

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.

¿Atascado con tu proyecto? Presupuesto GRATIS

X
error: Content is protected !!
Este sitio web utiliza cookies, si necesitas más información puedes visitar nuestra política de privacidad    Ver
Privacidad