Académique Documents
Professionnel Documents
Culture Documents
Lenguaje de Marcas
DTD - Ejercicio 1 - Elementos sin atributos - Corregir errores en los elementos Los siguientes documentos no son vlidos porque contienen uno o dos errores (los errores no estn en la DTD interna). Corrija los errores y comprubalo con Dreamwaver o notepad++ que ya son documentos vlidos.
1. Nmeros (dtd_01.xml) He borrado la etiqueta nmero ya que nmeros no
tiene ningn hijo, solo datos
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE numeros [ <!ELEMENT numeros (#PCDATA)> ]> <numeros>25</numeros>
2. Letras (dtd_02.xml) He borrado una de las etiquetas letra, ya que solo puede
aparecer una vez
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE letras [ <!ELEMENT letras (letra)> <!ELEMENT letra (#PCDATA)> ]> <letras> <letra>m</letra> </letras>
3. Colores (dtd_03.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE colores [ <!ELEMENT colores (color*)> <!ELEMENT color (#PCDATA)> ]> <colores> <color>azul marino</color> <color>negro<color> <color>amarillo</color> </colores>
4. Flores (dtd_04.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE flores [ <!ELEMENT flores (flor+)> <!ELEMENT flor (#PCDATA)> ]> <flores> <flor>camomila</flor> </flores>
Lenguaje de Marcas
5. Animales (dtd_05.xml)
<?xml version="1.0" encoding="UTF-8"?> <DOCTYPE animales [ <!ELEMENT animales (animal*)> <!ELEMENT animal (#PCDATA)> ]> <animales> <animal>Caniche</animal> <animal>Siams</animal> </animales>
6. Escritores (dtd_06.xml) El orden de los hijos tiene que ser igual que el orden
en el que aparece en el DTD
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE escritores [ <!ELEMENT escritores (escritor*)> <!ELEMENT escritor (nombre, nacimiento)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT nacimiento (#PCDATA)> ]> <escritores> <escritor> <nombre>Mario Vargas LLosa</nombre> <nacimiento>28 de marzo de 1936</nacimiento> </escritor> <escritor> <nombre>Milan Kundera</nombre> <nacimiento>1 de abril de 1929</nacimiento> </escritor> </escritores>
Lenguaje de Marcas
Lenguaje de Marcas
Lenguaje de Marcas
DTD - Ejercicio 2 - Elementos sin atributos - Corregir errores en la DTD Los siguientes documentos no son vlidos porque contienen errores (los errores estn en la DTD interna). Corrija los errores y comprueba en Dreamwaver que ya son documentos vlidos. Casi siempre habr varias maneras de corregir la DTD, intente elegir la ms sencilla.
1. Marcadores (dtd_11.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE favoritos [ <!ELEMENT marcadores (marcador)> <!ELEMENT marcador (nombre, uri)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT uri (#PCDATA)> ]> <marcadores> <marcador> <nombre>W3C</nombre> <uri>http://www.w3.org/</uri> </marcador> <marcador> <nombre>Web Hypertext Application Technology Working Group (WHATWG) </nombre> <uri>http://www.whatwg.org/</uri> </marcador> </marcadores>
2. Efemrides (dtd_12.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE efemerides [ <!ELEMENT efemerides (efemride*)> <!ELEMENT efemeride (fecha, hecho)> <!ELEMENT fecha (#PCDATA)> <!ELEMENT hecho (#PCDATA)> ]> <efemerides> <efemeride> <fecha>20 de julio de 1969</fecha> <hecho>Llegada del hombre a la Luna</hecho> </efemeride> <efemeride> <fecha>12 de octubre de 1492</fecha> <hecho>Llegada de Coln a Amrica</hecho> </efemeride> <efemeride> <fecha>6 de abril de 1909</fecha> <hecho>llegada de Robert Peary al Polo Norte</hecho> </efemeride> </efemerides>
Lenguaje de Marcas
3. Aeropuertos (dtd_13.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE aeropuertos [ <!ELEMENT aeropuertos (aeropuerto*)> <!ELEMENT aeropuerto (nombre, cerrado?)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT cerrado (#PCDATA)> ]> <aeropuertos> <aeropuerto> <nombre>Berln Schnefeld (SFX)</nombre> </aeropuerto> <aeropuerto> <nombre>Berln Tempelhof (THF)</nombre> <cerrado /> </aeropuerto> </aeropuertos>
4. Vuelos (dtd_14.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE vuelos [ <!ELEMENT vuelos (vuelo*)> <!ELEMENT vuelo ((origen, destino)|(destino,origen))> <!ELEMENT origen (#PCDATA)> <!ELEMENT destino (#PCDATA)> ]> <vuelos> <vuelo> <origen>Valencia (VLC)</origen> <destino>Londres Heathrow (LHR)</destino> </vuelo> <vuelo> <destino>Berln Schnefeld (SFX)</destino> <origen>Paris Charles de Gaulle (CDG)</origen> </vuelo> </vuelos>
Lenguaje de Marcas
6. Pases (dtd_16.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE paises [ <!ELEMENT paises (pais*)> <!ELEMENT pais (nombre, unionEuropea?, otan?)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT unionEuropea EMPTY> <!ELEMENT otan EMPTY> ]> <paises> <pais> <nombre>Espaa</nombre> <unionEuropea /> <otan /> </pais> <pais> <nombre>Noruega</nombre> <otan /> </pais> <pais> <nombre>Austria</nombre> <unionEuropea /> </pais> </paises>
Lenguaje de Marcas
8. Contabilidad (dtd_18.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE contabilidad [ <!ELEMENT contabilidad (apunte*)> <!ELEMENT apunte ((ingreso|gasto), fecha, cantidad, concepto)> <!ELEMENT ingreso (#PCDATA)> <!ELEMENT gasto (#PCDATA)> <!ELEMENT fecha (#PCDATA)> <!ELEMENT cantidad (#PCDATA)> <!ELEMENT concepto (#PCDATA)> ]> <contabilidad> <apunte> <ingreso /> <fecha>24 de febrero de 2011</fecha> <cantidad>1800,00 </cantidad> <concepto>Salario</concepto> </apunte> <apunte> <gasto /> <fecha>28 de febrero de 2011</fecha> <cantidad>74,25 </cantidad> <concepto>Recibo luz</concepto> </apunte> </contabilidad>
Lenguaje de Marcas
9. Mensajes (dtd_19.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mensajes [ <!ELEMENT mensajes (mensaje)> <!ELEMENT mensaje* (de, para, hora, texto) > <!ELEMENT de (#PCDATA)> <!ELEMENT para (#PCDATA)> <!ELEMENT hora (#PCDATA)> <!ELEMENT texto (#PCDATA|strong)*> <!ELEMENT strong (#PCDATA) ]> <mensajes> <mensaje> <de>Pepe (pepe@example.com)</de> <para>Juan (juan@example.com)</para> <hora>28/02/2011 17:48:23,61</hora> <texto>Hola, Juan, qu haces?</texto> </mensaje> <mensaje> <de>Juan (juan@example.com)</de> <para>Pepe (pepe@example.com)</para> <hora>28/02/2011 17:54:20,87</hora> <texto>Aqu, aprendiendo <strong>XML</strong></texto> </mensaje> </mensajes>
Lenguaje de Marcas
DTD - Ejercicio 3 - Elementos con atributos - Corregir errores en los elementos Los siguientes documentos no son vlidos porque contienen uno o dos errores (los errores no estn en la DTD interna). Corrija los errores y compruebe con XML Copy Editor que ya son documentos vlidos. 1. Datos personales (dtd_31.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE persona [ <!ELEMENT persona EMPTY> <!ATTLIST persona nombre CDATA #IMPLIED> <persona nombre="03141592E" />
3. Cuadros (dtd_33.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE cuadros [ <!ELEMENT cuadros (cuadro*)> <!ELEMENT cuadro EMPTY> <!ATTLIST cuadro titulo ID #REQUIRED> <!ATTLIST cuadro autor CDATA #REQUIRED> ]> <cuadros> <cuadro titulo="Adn y Eva" autor="Alberto Durero" /> <cuadro titulo="Adn y Eva" autor="Lucas Cranach, el viejo" /> </cuadros>
Lenguaje de Marcas
Lenguaje de Marcas
DTD - Ejercicio 4 - Elementos con atributos - Corregir errores en la DTD Los siguientes documentos no son vlidos porque contienen errores (los errores estn en la DTD interna). Corrija los errores y compruebe con XML Copy Editor que ya son documentos vlidos. Casi siempre habr varias maneras de corregir la DTD, intente elegir la ms sencilla. 1. Libro (dtd_41.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE libro [ <!ELEMENT libro EMPTY> <!ATTLIST libro autor CDATA #REQUIRED> ]> <libro autor="Mario Vargas Llosa" />
2. Inventores (dtd_42.xml)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE inventores [ <!ELEMENT inventores EMPTY> <!ELEMENT inventor EMPTY> <!ATTLIST inventor nombre ID #implied> <!ATTLIST inventor invento CDATA #REQUIRED> ]> <inventores> <inventor nombre="Robert Adler" invento="Mando a distancia" /> <inventor nombre="Laszlo Josef Biro" invento="Bolgrafo" /> <inventor nombre="Josephine Garis Cochran" invento="Lavaplatos" /> <inventor invento="Fuego" /> </inventores>
Lenguaje de Marcas
Lenguaje de Marcas
DTD - Ejercicio 5 - DTDs alternativos Se quiere definir un lenguaje de marcas para representar los resultados de una liga de ftbol. La informacin que se quiere almacenar de cada partido es: el nombre del equipo local el nombre del equipo visitante los goles marcados por el equipo local los goles marcados por el equipo visitante
Escribe tres documentos que incluyan los siguientes resultados: Nottingham Presa: 0 - Inter de Mitente: 1 Vodka Juniors: 3 - Sparta da Risa: 3 Water de Munich: 4 - Esteaua es del grifo: 2 Cada documento incluir un DTD diferente para representar ese lenguaje de marcas: una DTD en la que no haya atributos, si no nicamente etiquetas una DTD en la que los goles sean atributos
Lenguaje de Marcas
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ligaDeFutbol [ <!ELEMENT ligaDeFutbol (partido*)> <!ELEMENT partido (local, visitante)> <!ELEMENT local (nombre, goles)> <!ELEMENT visitante (nombre, goles)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT goles (#PCDATA)> ]> <ligaDeFutbol> <partido> <local> <nombre>Nottingham Presa</nombre> <goles>0</goles> </local> <visitante> <nombre>Inter de Mitente</nombre> <goles>1</goles> </visitante> </partido> <partido> <local> <nombre>Vodka Juniors</nombre> <goles>3</goles> </local> <visitante> <nombre>Sparta da Risa</nombre> <goles>3</goles> </visitante> </partido> <partido> <local> <nombre>Water de Munich</nombre> <goles>4</goles> </local> <visitante> <nombre>Esteaua es del grifo</nombre> <goles>2</goles> </visitante> </partido> </ligaDeFutbol>
Lenguaje de Marcas
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE ligaDeFutbol [ <!ELEMENT ligaDeFutbol (partido*)> <!ELEMENT partido (local, visitante)> <!ELEMENT local (#PCDATA)> <!ELEMENT visitante (#PCDATA)> <!ATTLIST local goles CDATA #REQUIRED> <!ATTLIST visitante goles CDATA #REQUIRED> ]> <ligaDeFutbol> <partido> <local goles="0">Nottingham Presa</local> <visitante goles="1">Inter de Mitente</visitante> </partido> <partido> <local goles="3">Vodka Juniors</local> <visitante goles="3">Sparta da Risa</visitante> </partido> <partido> <local goles="4">Water de Munich</local> <visitante goles="2">Esteaua es del grifo</visitante> </partido> </ligaDeFutbol>
Lenguaje de Marcas