La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Características y elementos fundamentales J.M. Morales-del-Castillo

Presentaciones similares


Presentación del tema: "Características y elementos fundamentales J.M. Morales-del-Castillo"— Transcripción de la presentación:

1 Características y elementos fundamentales J.M. Morales-del-Castillo
Título Características y elementos fundamentales  J.M. Morales-del-Castillo

2 Tipos de documentos XML
Título Documentos bien formados: Aquellos que cumplen las normas sintácticas pero no tienen reglas sobre su estructura y contenido. Documentos válidos: Aquellos que cumplen con las normas sintácticas de XML y los requerimientos de estructura y contenido definidos por el desarrollador. Documentos no válidos: Aquellos que no cumplen con las reglas sintácticas de la especificación, ó que no se adaptan a los requerimientos de estructura y contenido impuestos por el desarrollador.

3 Introducción Título ¿Qué reglas debería de seguir un documento que contenga la siguiente información para ser válido? <Libro> <Titulo>El capitán Alatriste</Titulo> <Autor tipo=“autor_principal”>Arturo Pérez-Reverte</Autor> <Fecha>2005</Fecha> <ISBN> </ISBN> </Libro>

4 Introducción Título <Libro> <Titulo>El capitán Alatriste</Titulo> <Autor tipo=“autor principal”>Arturo Pérez-Reverte</Autor> <year>2005</year> <ISBN> X</ISBN> </Libro> Según esta descripción el elemento Libro (entendido como una monografía independiente) debería contener: Un único título principal. Su valor debe ser una cadena de caracteres. Uno o varios autores. Su valor debe ser una cadena de caracteres. Tiene un atributo denominado tipo cuyo valor puede ser autor principal ó colaborador. Un año de publicación único. Debe ser un valor numérico entero no negativo de 4 cifras. Un único ISBN. Su valor debe ser una cadena de 10 dígitos separados por guiones, pudiendo ser el último el carácter X.

5 Introducción Título Las DTD (Document Type Definitions) permiten definir, tal y como su nombre indica, tipos de documentos. Es decir: los elementos y atributos que se pueden usar. el orden en que aparecen. el número de veces que aparecen. la forma que tienen de anidarse unos en otros. otros detalles referentes a la estructura del documento XML (por ejemplo, si un elemento o atributo es obligatorio ó no). Permiten diferenciar los documentos XML válidos de los que no lo son.

6 Validador DTD en línea:
Título !El fichero es válido! Validador DTD en línea:

7 Estructura de las DTD’s
Título Existen dos formas de asociar una DTD a un documento XML: Definiéndola dentro del documento Definiéndola como un elemento externo La primera opción es idónea para validar documentos aislados. La segunda opción es más apropiada cuando lo que pretendemos es validar más de un documento con la misma DTD.

8 DTD Interna Título Para referenciar y definir una DTD dentro de un documento XML usaremos la siguiente sintaxis (la declaración la consignaremos debajo de la orden de procesamiento de XML): <?xml version="1.0" encoding="UTF-8" standalone=“no"?> <!DOCTYPE nombre [...]> Standalone en la declaración de XML indica si el documento tiene DTD asociada (“no”) o no la necesita (“yes”). Doctype nos permite definir el nombre del tipo de documento que estamos definiendo. Se debe corresponder con el elemento raíz. Entre los corchetes incluiremos la definición de los elementos y atributos que componen este tipo de documento concreto (la DTD en sí).

9 <!DOCTYPE tipo SYSTEM "MiDTD.dtd">
DTD Externa Título Para referenciar una DTD externa a nuestro documento debemos incluir la declaración (debajo de la orden de procesamiento de XML con el atributo standalone=“no”): <!DOCTYPE tipo SYSTEM " Doctype nos permite definir el nombre del tipo de documento que estamos definiendo. Debe corresponderse con el elemento raíz. System tiene como valor una URI (Universal Resource Identifier) que caracteriza la DTD, ó la ruta relativa de la DTD en el caso de trabajar en un entorno local. <!DOCTYPE tipo SYSTEM "MiDTD.dtd">

10 Elementos (1) Tenemos 3 tipos de elementos:
Título Tenemos 3 tipos de elementos: Los que contienen otros elementos. Los que contienen datos. Los elementos vacíos.

11 Elementos (2) Título Los elementos que contienen a otros elementos tienen la siguiente sintaxis: <!ELEMENT nombElemento (elementoAnidado1, elementoAnidado2, ..., elementoAnidadoN)> Dentro del paréntesis podemos definir tantos paréntesis como queramos para agrupar conjuntos de elementos. A su vez, estos elementos anidados deberán ser definidos en la DTD como elementos que contienen otros elementos o datos.

12 Elementos (3) Título Los elementos anidados pueden estar modificados por una serie de caracteres especiales que indican su ocurrencia y el orden en que deben aparecer. Ningún carácter: el elemento debe aparecer obligatoriamente una vez y solo una. + : el elemento debe aparecer como mínimo una vez. * : el elemento puede aparecer una vez, varias o ninguna. ? : el elemento puede aparecer como máximo una vez. | : da la opción de usar un elemento concreto de entre un par de elementos (equivalente al operador OR). Ejemplo: <!ELEMENT ElementoK (Anidado1*, (Anidado2| Anidado3)?)> El elemento ElementoK contiene al elemento Anidado1, que puede aparecer una vez, múltiples veces, ó no aparecer. Como 2º elemento puede contener indistintamente tanto al elemento Anidado2 como al elemento Anidado3. Sea el que sea, como máximo puede aparecer una vez.

13 Elementos (y 4) Título Los elementos que contienen datos (cualquier cadena de caracteres) se definen siguiendo este patrón: <!ELEMENT nombElemento (#PCDATA)> Los elementos vacíos (los que no tienen contenido) se definen así: <!ELEMENT nombElemento EMPTY>

14 <!ATTLIST nombElemento nombAtributo tipoAtributo infoAdicional>
Atributos (1) Título Los atributos se definen según la siguiente sintaxis: <!ATTLIST nombElemento nombAtributo tipoAtributo infoAdicional> El tipo de atributo CDATA indica al procesador XML que el atributo contiene un único valor que es una cadena de caracteres. <!ATTLIST nombElemento nombAtributo CDATA infoAdicional> En lugar de CDATA podemos definir un conjunto de valores cerrado y excluyente. Para ello los agrupamos con paréntesis y aplicamos el operador “|” (OR). <!ATTLIST nombElemento nombAtributo (valor1|valor2|valor3) infoAdicional>

15 <!ATTLIST nombElemento nombAtributo tipoAtributo #REQUIRED>
Atributos (2) Título También es necesario incluir determinada información adicional sobre el atributo como su obligatoriedad ó su valor por defecto. Si el atributo es obligatorio se utiliza la palabra reservada #REQUIRED. Si el atributo por el contrario es opcional se consignará el comando #IMPLIED. <!ATTLIST nombElemento nombAtributo tipoAtributo #REQUIRED>

16 <!ATTLIST nombElemento nombAtributo CDATA #FIXED “459.8”>
Atributos (y 3) Título Cuando el atributo tiene un valor único (CDATA) podemos definir también un valor por defecto (que se asignará al atributo en caso de que no se consigne ningún valor) usando el comando #FIXED seguido del valor por defecto entre comillas. <!ATTLIST nombElemento nombAtributo CDATA #FIXED “459.8”> En el caso de listas cerradas de valores para definir un valor por defecto añadiremos entre comillas la cadena de caracteres elegida. <!ATTLIST nombElemento nombAtributo (valor1|valor2|valor3) “valor2”>

17 Entidades También es posible definir entidades que pueden sustituir cualquier cadena de caracteres en nuestro documento XML (tal y como pasaba con los caracteres especiales reservados). Son útiles para evitar escribir cadenas de caracteres que se repiten frecuentemente en el documento ó que son especialmente complejas o engorrosas de escribir. Cómo las declaramos: <!ENTITY url “ Se definen con el símbolo “&” seguido de su nombre y “;” : <etiqueta atributo=“&url;”/>&url;</etiqueta>

18 Cómo diseñar la DTD Existen varias metodologías para diseñar una DTD:
Título Existen varias metodologías para diseñar una DTD: La primera consistiría en definir las reglas que deben cumplir los documentos XML que vamos a considerar válidos y a partir de estas generar la DTD. La metodología que personalmente recomiendo consiste en diseñar primero un documento XML que vamos a considerar válido y a partir de él definir la DTD correspondiente.

19 La extensión de las DTD es .dtd
Título La extensión de las DTD es .dtd

20 Siguiente módulo: Validando XML con XML-Schema
Título Siguiente módulo: Validando XML con XML-Schema © J.M. Morales-del-Castillo 2007


Descargar ppt "Características y elementos fundamentales J.M. Morales-del-Castillo"

Presentaciones similares


Anuncios Google