Exemple XML IDREF --> XML ID (establir relacions entre atributs)

<!-- Los atributos de tipo ID debe ser unicos Son atributos que serán referenciados por otros atributos de tipo IDREF. Un atributo de tipo ID puede ser refernciado más de una vez. No pueden empezar por un número!

Si se cambia coddir="CE" por coddir="ABC" todoss los IDREF que apuntaban a CE dejarán de ser válidos-->

<!-- Los atributos de tipo IDREF apuntan a atributos de tipo ID. El valor de un IDREF debe ser un ID que sí exista. Si el IDREF apunta a un valor no existente el documento no será  válido (probad a cambiar "direccion" por XYZ-->

Para ver listas de ID (IDREFS) mirar aquí: https://www.quackit.com/xml/tutorial/dtd_attribute_types_idrefs.cfm

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE cine [
<!ELEMENT cine (directores, peliculas)>
<!ELEMENT directores (director)+>
<!ELEMENT director (#PCDATA)>
<!ATTLIST director coddir ID #REQUIRED>
<!ELEMENT peliculas (pelicula)+>
<!ELEMENT pelicula (#PCDATA)>
<!ATTLIST pelicula direccion IDREF #REQUIRED>
]>

<cine>
<directores>
<director coddir="CE">Clint Eastwood</director> <!-- coddir es de tipo ID (Es apuntado por un atributo de tipo IDREF) -->
<director coddir="JP">jose pedro</director> <!-- coddir es de tipo ID (Es apuntado por un atributo de tipo IDREF) -->
<director coddir="JC">James Cameron</director> <!-- coddir es de tipo ID (Es apuntado por un atributo de tipo IDREF) -->
</directores>
<peliculas>
<pelicula direccion="CE">Avatar</pelicula> <!-- direcion de tipo IDREF apunta a un atributo de tipo ID -->
<pelicula direccion="CE">Mystic River</pelicula><!-- direcion de tipo IDREF apunta a un atributo de tipo ID -->
<pelicula direccion="JC">Titanic</pelicula> <!-- direcion de tipo IDREF apunta a un atributo de tipo ID -->
</peliculas>
</cine>


Última modificación: martes, 26 de octubre de 2021, 08:36