XML DTD and XML Schema Discussion Sessions 1A and 1B Session 2.
7a XML 3 EsquemasConceptuales DTD
-
Upload
oscar-sanchez -
Category
Documents
-
view
26 -
download
1
Transcript of 7a XML 3 EsquemasConceptuales DTD
![Page 1: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/1.jpg)
Documentos XML
a) Bien formados
b)Válidos
1 Esquemas Conceptuales
![Page 2: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/2.jpg)
A PERSON WHO NEVER MADE A MISTAKE
NEVER TRIED ANYTHING NEW [ALBERT EINSTEIN]
RECORDANDO
Esquemas Conceptuales
2
![Page 3: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/3.jpg)
Documentos XML
• a) Bien formados
• b) Válidos
3 Esquemas Conceptuales
![Page 4: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/4.jpg)
Documentos XML
• a) Bien formados
• Se apegan a la sintaxis del lenguaje
• Requerimos Editores texto plano
Navegadores
4 Esquemas Conceptuales
![Page 5: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/5.jpg)
Documentos XML
DTD
Define:
Elementos
Atributos
Entidades
Notación
b) Válidos según un esquema conceptual (estructura del documento, tipo de datos permitidos, repeticiones)
Esquemas XML
•Define
• Elementos, atributos
• Siguen sintaxis XML
• Permiten mayor expresividad: nuevos tipos de datos
5 Esquemas Conceptuales
![Page 6: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/6.jpg)
Validación
6
DTD/XSD
DTD/ XSD
XML
XML
XML
XML
XML
DTD/XSD
XML
Diseño rígido, hay que apegarse a lo que dice la DTD
Diseño “flexible”, depende de la interpretación del XML por el diseñador
![Page 7: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/7.jpg)
Esquemas Conceptuales
DTDs, Esquemas XML
Esquemas Conceptuales
7
![Page 8: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/8.jpg)
DTD
Document Type Definition
Esquemas Conceptuales
8
![Page 9: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/9.jpg)
DTD (Definición de Tipo de Documento )
• Es un conjunto de reglas que permiten describir la estructura (elementos, orden, atributos) y tipos de datos permitidos en un documento XML
• Usada como un mecanismo de “validación” de documentos.
Esquemas Conceptuales
9
![Page 10: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/10.jpg)
DTD (Definición de Tipo de Documento )
• Define: – Elementos (ELEMENT)
– Atributos (ATTLIST)
– Entidades (ENTITY)
– Notaciones (NOTATION)
Sintaxis:
<! DOCTYPE nombre[
….
]>
Referenciado
en los
documentos
XML junto con
la URI que
indique donde
localizarla
Esquemas Conceptuales
10
![Page 11: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/11.jpg)
DTD
ELEMENTOS
Esquemas Conceptuales
11
![Page 12: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/12.jpg)
Elemento
• Los elementos de una DTD son los bloques primarios de todo documento XML.
Esquemas Conceptuales
12
![Page 13: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/13.jpg)
Declaración Elemento
<!ELEMENT nombre (modelo de contenido)>
Contenido
permitido
P/e
•¿Cuántas repeticiones son permitidas para un
ELEMENTO?.
Identificador
Esquemas Conceptuales
13
![Page 14: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/14.jpg)
Modelo de contenido
• Podemos tener:
• Tipos predefinidos : #PCDATA, EMPTY, MIXED, ANY
• Subelementos con determinados símbolos de frecuencia (+,*,?)
Esquemas Conceptuales
14
![Page 15: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/15.jpg)
Ejemplo
DTD en un XML
Esquemas Conceptuales
15
![Page 16: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/16.jpg)
Ejemplo1: Agenda.xml
<?xml version=“1.0”?>
<!DOCTYPE Agenda[
<!ELEMENT Agenda (persona+)>
<!ELEMENT persona
(nombreC,dirección,teléfono+,correo_e?)>
<!ELEMENT nombreC (nombrePila, apat, amat)>
<!ELEMENT nombrePila (#PCDATA)>
<!ELEMENT apat (#PCDATA)>
<!ELEMENT amat (#PCDATA)>
Subelementos
Esquemas Conceptuales
16
![Page 17: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/17.jpg)
Ejemplo
<!ELEMENT dirección (#PCDATA)>
<!ELEMENT teléfono (#PCDATA)>
<!ELEMENT correo_e (#PCDATA)>
<!ATTLIST teléfono tipo
(Casa|fijo|celular)
#REQUIRED>
]>
<!-- Aquí vienen los datos -->
Esquemas Conceptuales
17
![Page 18: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/18.jpg)
<Agenda>
<persona>
<nombreC>
<nombrePila>Rodrigo Eduardo</nombrePila>
<apat>Sanchez</apat>
<amat>Martinez</amat>
</nombreC>
<dirección>Juan Escutia numero 128 colonia Guadalupe del Moral, Deleg. Iztapalapa, México D.F.</dirección>
<teléfono tipo="casa">5556667</teléfono>
<teléfono tipo="celular">55667788</teléfono>
<correo_e>[email protected]</correo_e>
</persona> 18
![Page 19: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/19.jpg)
<persona>
<nombreC>
<nombrePila>Amelie</nombrePila>
<apat>Poulain-Buzet</apat>
</nombreC>
<dirección>Juan Escutia numero 129 colonia Guadalupe del Moral, Deleg. Iztapalapa, México D.F.</dirección>
<teléfono tipo="casa">55566789</teléfono>
<teléfono tipo="celular">55990099</teléfono>
<correo_e>[email protected]</correo_e>
<persona>
</Agenda> 19
![Page 20: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/20.jpg)
Ejemplo2: receta.xml
<!DOCTYPE receta[
<!ELEMENT receta (plato,autor?,ingredientes,
preparación, foto*)>
<!ELEMENT plato (#PCDATA)>
<!ELEMENT autor (nombre, apat, amat)>
<!ELEMENT nombre (#PCDATA)>
<!ELEMENT apat (#PCDATA)>
<!ELEMENT amat (#PCDATA)>
Subelementos
Esquemas Conceptuales
20
![Page 21: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/21.jpg)
Ejemplo
<!ELEMENT ingredientes (ingrediente+)>
<!ELEMENT ingrediente (#PCDATA)>
<!ELEMENT preparación (#PCDATA)>
<!ELEMENT foto EMPTY>
]>
<!-- Aquí vienen los datos -->
<receta>
<plato>huevos con jamón</plato>
<autor>
<nombre>Carolina</nombre>
Esquemas Conceptuales
21
![Page 22: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/22.jpg)
<apat>Medina</apat>
<amat>Ramírez</amat>
</autor>
<ingredientes>
<ingrediente>huevos c/n </ingrediente>
<ingrediente>jamón c/n </ingrediente>
<ingrediente>aceite c/n </ingrediente>
</ingredientes>
<preparación>Poner en un sartén el aceite, freir el jamón, agregar el huevo batido, cocinar hasta que este cocido
</preparación>
</receta>
Esquemas Conceptuales
22
![Page 23: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/23.jpg)
Modelos de contenido
• #PCDATA “Parser Character Data” <!ELEMENT plato (#PCDATA)>
plato debe contener un tipo de dato analizable
Otro elemento o elementos
<!ELEMENT clase (profesor, alumno, aula)>
<!ELEMENT profesor (#PCDATA)> Esquemas Conceptuales
23
![Page 24: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/24.jpg)
Modelos de contenido
• EMPTY El elemento no tiene contenido y se
llama elemento vacío.
<!ELEMENT foto EMPTY>
Any
Indica que el elemento puede tener contenido variado: PCDATA, elementos, combinación de ambos, vacío.
Esquemas Conceptuales
24
![Page 25: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/25.jpg)
Ejemplo
<!ELEMENT articulo ANY>
Esquemas Conceptuales
25
![Page 26: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/26.jpg)
Modelos de contenido
• MIXED
Indica que el elemento puede tener caracteres de tipo dato o una mezcla de caracteres y subelementos.
Los contenidos deben estar debidamente
especificados.
<!ELEMENT enfasis (#PCDATA)>
<!ELEMENT parrafo (#PCDATA | enfasis)>
Esquemas Conceptuales
26
![Page 27: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/27.jpg)
Modelos de contenido
Ejemplo:
<parrafo>Texto que tiene algo <enfasis>
enfatizado</enfasis>
</parrafo>
Esquemas Conceptuales
27
![Page 28: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/28.jpg)
Símbolos de frecuencia
Símbolo Descripción Ninguno El elemento aparece
una sola vez [1]
+ Aparece una o más veces [1..n]
* Cero veces o puede aparecer muchas veces [0..n]
? Opcional y aparece sólo una vez [0,1]
Esquemas Conceptuales
28
![Page 29: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/29.jpg)
DTD (Definición de Tipo de Documento )
Define: –Elementos (ELEMENT)
–Atributos (ATTLIST)
–Entidades (ENTITY)
–Notaciones (NOTATION)
Esquemas Conceptuales
29
![Page 30: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/30.jpg)
Atributos
• Permite añadir información a los elementos de un documento.
• Un elemento puede tener: atributos *
• Se utiliza una lista (ATTLIST).
Esquemas Conceptuales
30
![Page 31: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/31.jpg)
Atributos: ATTLIST
<!ATTLIST elemento nombre_del_atributo Tipo Palabra_Clave>
Identificador del
elemento
#FIXED
Obligatorio especificar el
atributo. Atributo opcional. Valor constante a lo
largo del documento
#IMPLIED #REQUIRED
CDATA NMTOKEN ID Enumeración
Esquemas Conceptuales
31
![Page 32: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/32.jpg)
Ejemplos
<!ELEMENT texto (#PCDATA)>
<!ATTLIST texto idioma CDATA #REQUIRED>
Obligatorio especificar el
atributo.
Puede contener “casi”
cualquier carácter
Esquemas Conceptuales
32
![Page 33: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/33.jpg)
Tipos de atributos
1. Cadenas CDATA (Datos de caracteres) Pueden ser cualquier secuencia de
caracteres a excepción de los símbolos con significado especial: <,> !, &, ´,”.
2. ID Indica que el atributo tiene un nombre
definido y un valor para cada instancia del elemento al que se aplica.
El valor debe ser único en todo el documento. Esquemas Conceptuales
33
![Page 34: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/34.jpg)
Ejemplo: ID
<!ELEMENT empleado (#PCDATA)>
<!ATTLIST empleado nss ID #REQUIRED>
Indica que cada empleado tiene un nss y que dos
empleados no pueden tener el mismo
Esquemas Conceptuales
34
![Page 35: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/35.jpg)
Tipos de atributos
3. IDREF
Representa un atributo cuyo valor debe coincidir con el de otro atributo del documento.
Esquemas Conceptuales
35
![Page 36: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/36.jpg)
Ejemplo
<!ATTLIST autor codigo ID #REQUIRED>
<!ATTLIST autorPremiado codigo IDREF #REQUIRED>
. . .
<autor codigo="A21">...</autor>
<autor codigo="A45">...</autor>
...
<autorPremiado codigo="A45" />
Esquemas Conceptuales
36
![Page 37: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/37.jpg)
Tipos de atributos
4. Enumeraciones Atributos que solo pueden contener un
valor de entre un número reducido de opciones proporcionados en una lista.
<!ELEMENT teléfono (#PCDATA)>
<!ATTLIST teléfono lugar
(oficina | celular |particular)
oficina>
Proporciona la localización de un
núm_tel. No se da, se asume (por
defecto) que es el de la oficina.
Esquemas Conceptuales
37
![Page 38: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/38.jpg)
Tipos de atributos
5. NMTOKEN (Autentificaciones) • Imponen restricciones sobre los valores de los
atributos. • Sólo acepta cadenas de caracteres: (letras ,
números, puntos, guiones, y los :)
<!ELEMENT país EMPTY>
Nota:
“500 000” No aceptado
por la presencia del
espacio en blanco
<!ATTLIST país población NMTOKEN #REQUIRED>
En XML:
<país población=“500000”/>
Esquemas Conceptuales
38
![Page 39: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/39.jpg)
Ejercicios
1. Definir el elemento <foto> con los siguientes
atributos: src (nombre de la foto), fecha (DD-MM-AA).
2. Dar un ejemplo en XML
Esquemas Conceptuales
39
![Page 40: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/40.jpg)
Posibles soluciones
Podemos tener las siguientes estructuras:
a) <foto src=“acapulco.jpg” fecha=“12-01-09”/>
b) <foto src=“acapulco.jpg” fecha=“12-01-09”>Vacaciones
en Acapulco en el 2009</foto>
c)
<foto src=“acapulco.jpg” fecha=“12-01-09”>
<comentario autor=“Cmed”>Vacaciones en Acapulco en el 2009
</comentario>
</foto>
Esquemas Conceptuales 40
![Page 41: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/41.jpg)
a) Vacío con atributos
<!ELEMENT foto EMPTY>
<!ATTLIST foto src CDATA #REQUIRED>
<!ATTLIST foto fecha CDATA #IMPLIED>
src: obligatorio
fecha: opcional sin
valor por defecto
Ejemplo: <foto src=“acapulco.jpg”/>
Esquemas Conceptuales
41
![Page 42: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/42.jpg)
HACER LAS DEFINICIONES DE LOS INCISOS B) Y C)
Ejercicio
Esquemas Conceptuales
42
![Page 43: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/43.jpg)
b) No vacío (texto) con atributos
<!ELEMENT foto (#PCDATA)>
<!ATTLIST foto src CDATA #REQUIRED>
<!ATTLIST foto fecha CDATA #IMPLIED>
b) <foto src=“acapulco.jpg” fecha=“12-01-09”>Vacaciones
en Acapulco en el 2009</foto>
Esquemas Conceptuales
43
![Page 44: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/44.jpg)
c) Con subelemento y atributos
c) <foto src=“acapulco.jpg” fecha=“12-01-09”>
<comentario autor=“Cmed”>Vacaciones en Acapulco en el 2009
</comentario>
</foto>
<!ELEMENT foto (comentario)>
<!ELEMENT comentario (#PCDATA)>
<!ATTLIST foto src CDATA #REQUIRED
fecha CDATA #IMPLIED>
<!ATTLIST comentario autor CDATA #IMPLIED> Esquemas Conceptuales
44
![Page 45: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/45.jpg)
EJEMPLOS
Esquemas Conceptuales
45
![Page 46: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/46.jpg)
Ejemplo:vacío con atributo
<!ELEMENT código EMPTY>
<!ATTLIST código postal #FIXED “09340”>
Indica que 09340 es el único código postal a
utilizar
Esquemas Conceptuales
46
![Page 47: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/47.jpg)
Ejemplo: no vacío con atributo
<!ELEMENT mensaje (de, a, texto)>
<!ATTLIST mensaje prioridad (normal | urgente) normal>
Valor normal o urgente
Por defecto es normal
Esquemas Conceptuales
47
![Page 48: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/48.jpg)
ALGUNAS OBSERVACIONES
ELEMENTOS, ATRIBUTOS
Esquemas Conceptuales
48
![Page 49: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/49.jpg)
Elementos vs atributos
• Muchos atributos hacen difícil de leer el documento XML.
• Los atributos son adecuados para representar información simple
• Datos -> elementos
• Metadatos-> atributos
Esquemas Conceptuales
49
![Page 50: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/50.jpg)
DTD (Definición de Tipo de Documento )
Define: –Elementos (ELEMENT)
–Atributos (ATTLIST)
–Entidades (ENTITY)
–Notaciones (NOTATION)
Esquemas Conceptuales
50
![Page 51: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/51.jpg)
ENTIDADES
• Permiten guardar un contenido que puede usarse varias veces.
• Con lo anterior, un documento grande puede descomponerse en contenidos más manejables.
Esquemas Conceptuales
51
![Page 52: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/52.jpg)
ENTIDADES
• Una entidad tiene un nombre que sirve como referencia a ésta.
• Existen entidades
1. Internas
2. Externas
3. Generales
4. Paramétricas
Esquemas Conceptuales
52
![Page 53: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/53.jpg)
1. ENTIDADES Internas
Esquemas Conceptuales
53
![Page 54: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/54.jpg)
1. ENTIDADES internas • Son abreviaturas definidas en la DTD. • No se maneja ningún objeto físico diferente
al del propio documento. • Su contenido coincide con el dado en la
declaración.
<!ENTITY nombre “valor”>
Dónde:
nombre - nombre de la entidad
valor – es la cadena de sustitución correspondiente Esquemas Conceptuales
54
![Page 55: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/55.jpg)
Ejemplo
<!ENTITY derechos “Copyright 2007”>
En una entidad interna:
•Se llama Texto de reemplazamiento al contenido de la
entidad.
•Después del reemplazamiento, el valor de la entidad
pasa a ser parte del documento y como tal es
analizada.
Esquemas Conceptuales
55
![Page 56: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/56.jpg)
2. ENTIDADES Externas
Esquemas Conceptuales
56
![Page 57: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/57.jpg)
2. ENTIDADES externas
• Su contenido está fuera de la DTD: otro sitio, archivo,...
• Se hace referencia a su contenido mediante una URI precedida de la palabra PUBLIC o SYSTEM.
Esquemas Conceptuales
57
![Page 58: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/58.jpg)
Sintaxis
<!ENTITY nombre SYSTEM “URI”>
El Texto de reemplazamiento correspondiente al
nombre lo indica SYSTEM o PUBLIC para dirigirse al
recurso externo nombrado por el URI (valor de la
entidad).
Esquemas Conceptuales
58
![Page 59: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/59.jpg)
Ejemplo
<!ENTITY sitio SYSTEM “uam.dtd”>
En el XML:
<sitio_uam>&sitio;</sitio_uam>
Esquemas Conceptuales
59
En la DTD uam.dtd debe estar definida la
entidad:
<!ENTITY sitio “http://www.uam.mx”>
![Page 60: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/60.jpg)
3. ENTIDADES paramétricas
Esquemas Conceptuales
60
![Page 61: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/61.jpg)
3. ENTIDADES paramétricas
• Permiten agrupar datos dentro de la DTD para escribirlos de forma abreviada.
• Diseñadas para contener listas de atributos y modelos de contenido.
• Se caracterizan por un nombre que comienza por %.
• Para referenciarla se coloca el nombre entre % y el ;. Esquemas
Conceptuales 61
![Page 62: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/62.jpg)
Sintaxis <!ENTITY % nombre “contenido”>
Esquemas Conceptuales
62
![Page 63: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/63.jpg)
Ejemplo
<!ENTITY % tallas “pequeña|mediana|grande”>
Esquemas Conceptuales
63
![Page 64: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/64.jpg)
Ejemplo
<!ELEMENT calcetin (%tallas;)>
<!ELEMENT tobillera (%tallas;)>
<!ELEMENT media (%tallas;)>
Equivale a:
<!ELEMENT calcetin
(pequeña|mediana|grande)>
Esquemas Conceptuales
64
![Page 65: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/65.jpg)
Entidades en Atributos
También podemos definir entidades para atributos.
Esquemas Conceptuales
65
![Page 66: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/66.jpg)
Ejemplo
<!ELEMENT calcetin (%tallas;)>
<!ELEMENT tobillera (%tallas;)>
<!ELEMENT media (%tallas;)>
<!ATTLIST calcetin %att.comun;>
<!ENTITY % att.comun "color (rojo|negro|blanco) #IMPLIED
precio CDATA #REQUIRED "
>
Esquemas Conceptuales
66
![Page 67: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/67.jpg)
67
Entidades especiales
< <
> >
& &
" “
' ‘
Esquemas Conceptuales
![Page 68: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/68.jpg)
Entidades caracter
• Es posible definir una entidad caracter, para cualquier símbolo, utilizando el código hexadecimal del mismo.
• Sintaxis: <!ENTITY nom_entidad “&#codeHexadecimal;”>
Ejemplo: <!ENTITY ccedilla “�E7;”>
Esquemas Conceptuales
68
![Page 69: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/69.jpg)
DTD INTERNA (EN DOCUMENTO XML)
Esquemas Conceptuales
69
![Page 70: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/70.jpg)
DTD en documento XML <?xml version="1.0"?> <!DOCTYPE mensaje [ <!ELEMENT mensaje (para+,de, titulo,cuerpo)> <!ELEMENT para (#PCDATA)> <!ELEMENT de (#PCDATA)> <!ELEMENT titulo (#PCDATA)> <!ELEMENT cuerpo (#PCDATA)> ]> <mensaje> <para>[email protected]</para> <para>toñ[email protected]</para> <de>[email protected]</de> <titulo>Aviso</titulo> <cuerpo>La clase del miércoles esta disponible en el
aula virtual</cuerpo> </mensaje>
70
![Page 71: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/71.jpg)
Agregar el atributo prioridad (urgente|normal) a mensaje
Esquemas Conceptuales
71
![Page 72: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/72.jpg)
DTD en documento XML <?xml version="1.0"?> <!DOCTYPE mensaje [ <!ELEMENT mensaje (para+,de, titulo,cuerpo)> <!ELEMENT para (#PCDATA)> <!ELEMENT de (#PCDATA)> <!ELEMENT titulo (#PCDATA)> <!ELEMENT cuerpo (#PCDATA)> <!ATTLIST mensaje prioridad (urgente|normal) #IMPLIED
]> <mensaje> <para>[email protected]</para> <para>toñ[email protected]</para> <de>[email protected]</de> <titulo>Aviso</titulo> <cuerpo>La clase del miércoles esta disponible en el aula
virtual</cuerpo> </mensaje>
72
![Page 73: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/73.jpg)
DTD EXTERNA
Esquemas Conceptuales
73
![Page 74: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/74.jpg)
<?xml version="1.0"?> <!DOCTYPE mensaje SYSTEM “Estructura_mensaje.dtd"> <mensaje> <para>[email protected]</para> <de>Carolina</de> <titulo>Aviso</titulo> <cuerpo>La clase del miércoles esta disponible en el aula
virtual</cuerpo> </mensaje>
DTD fuera de documento XML
Esquemas Conceptuales 74
![Page 75: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/75.jpg)
mensaje.dtd
<!ELEMENT mensaje (para+,de, titulo,cuerpo)>
<!ELEMENT para (#PCDATA)>
<!ELEMENT de (#PCDATA)>
<!ELEMENT titulo (#PCDATA)>
<!ELEMENT cuerpo (#PCDATA)>
<!ATTLIST mensaje prioridad (urgente|normal) #IMPLIED>
Esquemas Conceptuales
75
![Page 76: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/76.jpg)
Ejercicio
XML-DTD
Esquemas Conceptuales
76
![Page 77: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/77.jpg)
Dado el código XML siguiente, realizar las actividades:
1.- ¿Es un documento bien formado?
Si no lo es, haga las modificaciones correspondientes
2. Haga el árbol XML correspondiente a la estructura del documento
3. Proponga la DTD externa “planeacion.dtd”. Utilizar entidades.
Esquemas Conceptuales
77
![Page 78: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/78.jpg)
Proponer la DTD para el XML siguiente <?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE planeacion SYSTEM "planeacion.dtd">
<planeacion trimestre="">
<datos_gral>
<datos_profesor>
<nom>
<nombre></nombre>
<apat></apat>
<amat></amat>
</nom>
<email></email>
<oficina></oficina>
<pageweb></pageweb>
78
<asesoria></asesoria> </datos_profesor> <datos_uea> <clave></clave> <objetivos> <objetivo></objetivo> </objetivos> <aulavirtual></aulavirtual> <horario_teoria> <dia></dia> <hora></hora> <lugar></lugar> </horario_teoria> <horario_practica> <dia></dia> <hora></hora> <lugar></lugar> </horario_practica> </datos_uea> </datos_gral> </planeacion trimestre>
![Page 79: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/79.jpg)
Aquí su propuesta
Duración: 30-40 minutos
Esquemas Conceptuales
79
![Page 80: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/80.jpg)
¿Bien formado?
Esquemas Conceptuales
80
![Page 81: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/81.jpg)
2.-Sol. Árbol
81
planeación @trimestre
datos_gral
datos_profesor
email nom
datos_uea
asesoria pageweb oficina
completar
![Page 82: 7a XML 3 EsquemasConceptuales DTD](https://reader031.fdocuments.in/reader031/viewer/2022013121/5532983755034631798b4641/html5/thumbnails/82.jpg)
3.- Planeacion.dtd • Utilizar una entidad paramétrica
Esquemas Conceptuales
82