Tutoriales de informática - Abrirllave.com

Abrirllave.com

Ejercicio de XSD - Mensaje entre personas

Dado el siguiente archivo "mensaje.xsd":

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

  <xs:element name="mensaje">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="origen" type="me:datosOrigenDestino"/>
        <xs:element name="destino" type="me:datosOrigenDestino"/>
        <xs:element ref="me:asunto"/>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

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

  <xs:complexType name="datosOrigenDestino">
    <xs:sequence>
      <xs:element name="nombre" type="xs:string"/>
      <xs:element name="ciudad" type="xs:string"/>
    </xs:sequence>
  </xs:complexType>

</xs:schema>

Corregir los errores cometidos en el siguiente documento XML, para que sea válido. Para ello, no modificar la cuarta línea de código:

<?xml version="1.0"?>
<mensaje xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.abrirllave.com/mensaje mensaje.xsd"
xmlns:men="http://www.abrirllave.com/mensaje">
   <origen>
      <nombre>Ana Sanz Tin</nombre>
      <ciudad>Pamplona</ciudad>
   </origen>
   <destino>
      <nombre>Iker Rubio Mol</nombre>
      <ciudad>Sevilla</ciudad>
   </destino>
   <asunto>¡Vuelve pronto!</asunto>
</mensaje>

Solución:

<?xml version="1.0"?>
<men:mensaje xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.abrirllave.com/mensaje mensaje.xsd"
xmlns:men="http://www.abrirllave.com/mensaje">
   <origen>
      <nombre>Ana Sanz Tin</nombre>
      <ciudad>Pamplona</ciudad>
   </origen>
   <destino>
      <nombre>Iker Rubio Mol</nombre>
      <ciudad>Sevilla</ciudad>
   </destino>
   <men:asunto>¡Vuelve pronto!</men:asunto>
</men:mensaje>