Está en la página 1de 6

- Lenguajes de marcas y sistemas de

gestión de información -

Centro Integrado de Enseñanzas Reglada


a Distancia

Unidad de Trabajo 4.- Definición de


esquemas y vocabularios en xml.

Autor: Alejandro Expósito Revenaque

Curso 2023/2024
Lenguajes de marcas y sistemas de gestión de información Tarea 04
Alejandro Exposito Revenaque Curso 2023/24

ÍNDICE

EJERCICIO 2 2
SOLUCIÓN EJERCICIO 2: 3
Todos los atributos son obligatorios. 4
El atributo idP hace de identificador. 4
El atributo pareja es el identificador de otro participante que forzosamente debe estar
presente en el fichero. 4
El elemento cabezaDeSerie es opcional, los demás son obligatorios. 4
En cada fichero hay datos para un solo torneo. 5
El torneo tiene que tener participantes. 5

1
Lenguajes de marcas y sistemas de gestión de información Tarea 04
Alejandro Exposito Revenaque Curso 2023/24

EJERCICIO 2
2.- Un asociación de jugadores de mus utiliza ficheros XML para almacenar la
información de los torneos que organiza. Para cada torneo se quiere guardar el año en
que se realizó, el anterior ganador (su id) y la información de los participantes. De los
participantes se quiere almacenar su identificador, el de su pareja, su nombre completo,
edad, país y también si es cabeza de serie o no.

Un ejemplo de estos ficheros sería:

<torneo edicion="2020" anteriorGanador="j02">


<participante idP="j01" pareja="j02">
<nombre>Manuel Pérez</nombre>
<edad>23</edad>
<pais> España</pais>
<cabezaDeSerie/>
</participante>
<participante idP="j02" pareja="j01">
<nombre>Manuel Gómez Pérez</nombre>
<edad>25</edad>
<pais>España</pais>
</participante>
<participante idP="j03" pareja="j04">
<nombre>Ana Puertas González</nombre>
<edad>22</edad>
<pais> E5spaña</pais>
<cabezaDeSerie/>
</participante>
<participante idP="j04" pareja="j03">
<nombre>Paco Fraile León</nombre>
<edad>45</edad>
<pais>España</pais>
</participante>
</torneo>
Escribe un DTD externo adecuado para estos ficheros, teniendo en cuenta que:

● Todos los atributos son obligatorios.


● El atributo idP hace de identificador.
● El atributo pareja es el identificador de otro participante que forzosamente debe
estar presente en el fichero.
● El elemento cabezaDeSerie es opcional, los demás son obligatorios.
● En cada fichero hay datos para un solo torneo.
● El torneo tiene que tener participantes.

2
Lenguajes de marcas y sistemas de gestión de información Tarea 04
Alejandro Exposito Revenaque Curso 2023/24

SOLUCIÓN EJERCICIO 2:

Primer paso definimos todos los elementos que aparecen en el archivo xml.

A continuacion sus atributos. Los atributos se definen con ATTLIST.

3
Lenguajes de marcas y sistemas de gestión de información Tarea 04
Alejandro Exposito Revenaque Curso 2023/24
Siguiente paso, especificaremos el tipo de datos y las restricciones que debemos aplicar.

Todos los atributos son obligatorios.


Para cumplir esta restricción en los atributos de los elementos se escribe #REQUIRED en
cada uno de ellos.

<!ELEMENT torneo (participante)>


<!ATTLIST torneo
edicion CDATA #REQUIRED
anteriorGanador IDREF #REQUIRED>

El atributo idP hace de identificador.


En el atributo idP se especifica el tipo de dato ID para asegurar que sea único dentro del
documento XML.

<!ATTLIST participante
idP ID #REQUIRED
pareja IDREF #REQUIRED>

El atributo pareja es el identificador de otro participante que


forzosamente debe estar presente en el fichero.
En el atributo pareja se nombra como tipo IDREF para hacer referencia al ID definido en el
documento XML.

<!ATTLIST participante
idP ID #REQUIRED
pareja IDREF #REQUIRED>

El elemento cabezaDeSerie es opcional, los demás son


obligatorios.
Para que el elemento cabezaDeSerie sea opcional se escribe en paréntesis y a
continuación un interrogante.

<!ELEMENT participante (nombre, edad, país, cabezaDeSerie)?>

4
Lenguajes de marcas y sistemas de gestión de información Tarea 04
Alejandro Exposito Revenaque Curso 2023/24

En cada fichero hay datos para un solo torneo.


Utilizando el atributo edición #REQUIRED definimos el fichero del torneo.

El torneo tiene que tener participantes.


Para esta restricción utilizamos el simbolo ‘+’ junto al elemento, que indica que debe haber
uno o mas dentro del torneo.

<!ELEMENT torneo (participante+)>

Si quisiéramos especificar que para el torneo debe haber 4 participantes mínimo, entonce:

<!ELEMENT torneo (participante(4,))>

Finalmente el archivo DTD externo se ve así:

También podría gustarte