Tema IV. XML III. Document Type Definitions

Documentos relacionados
2. DTD. (Document Type Definition)

X M L QUÉ ES XML. Un documento puede ser correcto a dos niveles bien formado y válido. DOCUMENTO BIEN FORMADO

LENGUAJE DE MARCAS Y SISTEMAS DE GESTIÓN DE LA INFORMACIÓN - XML

DTDs Declaraciones de tipo de documentos. Departamento de Informática Universidad de Oviedo

Tema IV. XML IV. XML Schemas

DOCUMENT TYPE DEFINITION (DTD)

DTD (Document Type Defini0on)

Documentación Electrónica

TEMA 6 LENGUAJE XML. 1 Negocios y Dirección

XML básico. Fundamentos de la Web Semántica. Qué es XML? XML básico. Documento XML. Pablo R. Fillottrani. Entidades. Elementos y Atributos

3.1 Tipos de DTDs. ! Si queremos validar un documento XML (para comprobar si cumple las normas de un dialecto) tendremos que validarlo contra el DTD.

Unidad 6: DTD. JJ Taboada León IES San Sebastián, Departamento de Informática LENGUAJE DE MARCAS Y SGI Curso 2011 / 2012

Tecnología XML. Unidad: 3 Laboratorio de Programación. Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos

XML. Programación en Internet Curso Contenidos

Capítulo 2. Introducción a XML

Tema IV. XML II. XML Bien Formado

DTD (Document Type Definition ) y validación.

XML, Servicios Web y Web Semántica

Documento conocimientos básicos en XML Schema

Tema 4 Metadatos. Eduardo Martínez Graciá Humberto Martínez Barberá

extensible Markup Language

XML. María Consuelo Franky. Universidad Javeriana 2009

XML y Bases de datos Modelado de datos XML usando DTDs

Unidad IV. Introducción a XML

XML: extensible Markup Language (Parte I) Ingeniería de la Información

Lugar: CENTRO DE FORMACIÓN FREMM. Curso de Prácticas?: No Estado: No programado Precio:

índice (1) (2.1) documentos XML bien formados y validación 7 (2.2) validación por DTD 8 (2.3) Validación por XML Schema 22

PREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA)

Introducción a XML Tecnólogo en Informática. Ing. Montserrat López -

Sistemas de Información 12/13 XML (extensible Mark-up Language)

TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES

XML y Bases de datos XML

Arquitecturas Distribuidas 09/10

DTD - Ejercicio 1 - Elementos sin atributos - Corregir errores en los elementos

1. Introducción a los lenguajes de marcas

Fundamentos de las tecnologías de la información

Formalización: Qué dejamos fuera?

Documentos XML bien formados

Tecnologías XML y Web Semántica. Departamento de Informática Universidad de Oviedo

Características de JavaScript

Laboratorio de Aplicaciones Telemáticas (Curso 2009/2010)

UIT-T Z.314 SECTOR DE NORMALIZACIÓN DE LAS TELECOMUNICACIONES DE LA UIT

Validación de un XML

Tema IV. XML V. APIs (DOM & SAX)

qué es XML? por qué es necesario XML? XML vs. SGML y HTML Hacía la estandarización de los datos

XML DBD XML(eXtensible Markup Language) Metadatos. Lenguajes de marcas. XML: Origen. 1. Características Generales (Metadatos)

ESOFT 3 Nice Screen Scraper: A simple scraper

XML: HTML y XHTML. Sergio Luján Mora XML-03

XML Bien Formado. <nombre> José </nombre> y también puede ser un elemento el siguiente:

XML. (Extensible Markup Language) Una herramienta multiplataforma para el almacenamiento e intercambio de información.

Introducción a XML. Alberto Molina Coballes. Lenguajes de Marcas y Sistemas de Gestión de la Información

2. Lenguajes de marcado: XML

2. Principales componentes de XML

XML y esquemas XML. Servicio de Administración Tributaria

Primeros pasos con XML y XSL Ricardo Borillo Domenech

UF2217 Lenguaje XML (Online)

Computación Aplicada. Universidad de Las Américas. Aula virtual de Computación Aplicada. Módulo de Excel 2013 LIBRO 2

XML. Historia [editar]

Tipos de documentos XML

XML (Extensible Markup Language)

Versión 1.5 Marzo 2017

XHTML. Tecnologías Web

XML, parte 3. M. en C. Erika Vilches

La función Send_SMS envía un SMS a uno o dos móviles de destino. Se usa una vez por cada SMS diferente que se desea enviar.

Estructura. Elementos Elemento: Premios Diagrama. Complemento para expresar los premios obtenidos en un periodo o ejercicio.

XML, DTD y hojas de estilo

Estudio de un caso Análisis de esquemas XML [2]

Introducción a XML. Simon Pickin Ingeniería Telemática. Basado en una presentación de M. Carmen Fernández Panadero <mcfp@it.uc3m.

Estructura Elementos Elemento: obrasarteantiguedades Diagrama

XML Schema. Definición y validación

Práctica 4 Manejo Avanzado de Bison

Aparte de lo que había ido leyendo por Internet, la primera vez que pensé

XML Schema. Sergio Luján Mora.

XML Schema. Departamento de Informática Universidad de Oviedo

XML Namespaces. Sergio Luján Mora.

Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Departamento de Computación. JSON Schema. Author: Gerardo Rossel

1 Introducción a XML

Creación de documentos XML

TIPO CÓDIGO DESCRIPCIÓN

FORMATO INFORMACIÓN ELECTRÓNICA DE COMPRAS Y VENTAS PARA ENTREGA DETALLADA SEGÚN RESOLUCIÓN 42 DEL

XML y Comercio Electrónico

Estructura Elementos Elemento: Arrendamientoenfideicomiso Diagrama

Introducción a las tecnologías y estándares XML

Lenguaje XML. Departamento de Informática Universidad de Oviedo

Colegio Diocesano San José de Carolinas

Los tipos de datos primitivos

HTML: Organización del Documento

XHTML. Sergio Luján Mora.

XML-Schema. XML-Schema. XML-Schema. XML-Schema. Ventajas de XML-Schema con respecto a las DTD s:

Laboratorio de Arquitectura de Redes. Entrada y salida estándar

1. Funcionamiento de lex

PROPIEDADES DE LOS CAMPOS. Cada campo de una tabla dispone de una serie de características que proporcionan un control

2 PROTOCOLOS, LENGUAJES Y ESTÁNDARES

Informática Ingeniería en Electrónica y Automática Industrial

XML para FP : Introducción

Fecha de edición: Septiembre 2005

UNIDAD 1 GENERALIDADES HTML

Diseño web. Fundamentos de CSS. Informática 4º ESO

Introducción al desarrollo web (idesweb)

CSS. Rogelio Ferreira Escutia

Transcripción:

Tema IV. XML III. Document Type Definitions Desarrollo de Aplicaciones para Internet Curso 12 13

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

Introducción Las DTDs permiten definir tipos de documentos Si un documento cumple las definiciones de una DTD se dice que es válido para dicha DTD Una DTD permite definir: Un vocabulario (etiquetas) Los atributos asociados a cada etiqueta La estructura de un documento (la jerarquía de los elementos)

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

Documentos XML con DTDs Un DTD puede asociarse a un documento XML de dos formas Embebiéndolo en el propio documento En un documento externo Mediante identificadores de sistema Mediante identificadores públicos En todos los casos se emplea el comando DOCTYPE Estructura base: <!DOCTYPE persona [ ]>

DTDs Embebidos Deben ir al comienzo del documento, justo después de la declaración XML si existe Ejemplo <?xml version= 1.0?> <!DOCTYPE persona [ ]> <!ELEMENT persona (nombre, apellidos) <!ELEMENT nombre (#PCDATA)> <!ELEMENT apellidos (#PCDATA)> <persona> <nombre>pepe</nombre> <apellidos>garcía Pérez</apellidos> </persona>

DTDs de Sistema Un identificador de sistema permite definir el fichero externo que contiene el DTD El DOCTYPE debe incluir la palabra reservada SYSTEM seguida de la URI de la DTD Ejemplos: <!DOCTYPE persona SYSTEM persona.dtd > <!DOCTYPE persona SYSTEM persona.dtd [...]> <!DOCTYPE persona SYSTEM file:///c:/persona.dtd > <!DOCTYPE persona SYSTEM http://www.esei.uvigo.es/persona.dtd >

DTDs de Públicos Un identificador de sistema permite definir la entrada de un catálogo que contiene el DTD El DOCTYPE debe incluir la palabra reservada PUBLIC seguida de un identificador público especializado de la DTD en el catálogo El identificador suele seguir el formato Formal Public Identifiers (FPI): -//Propietario//Clase Descripción//Lenguaje//Version El identificador puede ir seguido de un identificador de sistema que se usará en caso de que falle el identificador público Ejemplos: <!DOCTYPE persona PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN > <!DOCTYPE persona PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN xhtml.dtd > <!DOCTYPE persona PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN xhtml.dtd [ <!ELEMENT adicional (#PCDATA) ]>

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

Declaraciones Un DTD puede contener tres tipos de declaraciones: Elementos (ELEMENT) Atributos (ATTLIST) Entidades (ENTITY)

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

ELEMENT Define los elementos válidos y su contenido La declaración tiene tres partes Palabra reservada ELEMENT Nombre del elemento (etiqueta del elemento) Contenido del elemento Ejemplo: <!ELEMENT persona (nombre, apellidos)>

ELEMENT Contenido del elemento Define los elementos que puede contener Elementos: Se indica su nombre Texto: Se emplea la palabra reservada #PCDATA Los elementos pueden tener una cardinalidad asociada Tipo de contenido Secuencias Opciones Combinación de secuencias y opciones Vacío Cualquiera

ELEMENT Contenido del elemento: Cardinalidad Ninguna: El elemento debe aparecer una única vez?: El elemento debe aparecer cero o una veces +: El elemento debe aparecer una o más veces *: El elemento debe aparecer cero o más veces Ejemplo <!ELEMENT receta (nombre, tiempo?, ingrediente+, instrucción*)> Una receta debe tener un <nombre>, el <tiempo> de elaboración puede aparecer o no, debe tener uno o más <ingrediente> y puede no tener ninguna <instrucción> o tener una o más

ELEMENT Tipo de contenido: Secuencias Los elementos internos se indican en el mismo orden en el que tienen que aparecer en el documento Los elementos se separan con una coma, Ejemplo <!ELEMENT contacto (nombre, apellidos, teléfono, dirección)> En este caso <contacto> debe contener los elementos <nombre>, <apellidos>, <teléfono> y <dirección> en este mismo orden

ELEMENT Tipo de contenido: Opciones Un único elemento indicado debe aparecer como hijo del elemento en el documento Los elementos se separan con una barra vertical Ejemplo <!ELEMENT ubicación (dirección GPS #PCDATA)> En este caso <ubicación> debe contener el elementos <dirección>, el elemento <GPS> o texto libre. Solo uno de ellos

ELEMENT Tipo de contenido: Combinación de secuencias y opciones Las secuencias y opciones pueden combinarse, empleando paréntesis () para agrupar elementos Ejemplo <!ELEMENT ubicación (dirección (latitud, longitud))> En este caso ubicación debe tener un hijo <dirección> o los hijos <latitud> y <longitud> en este mismo orden

ELEMENT Tipo de contenido: Vacío Si el elemento no puede tener ningún contenido se indica con la palabra EMPTY Ejemplo <!ELEMENT br EMPTY> Tipo de contenido: Cualquiera Si el elemento puede tener cualquier contenido se indica con la palabra reservada ANY Ejemplo <!ELEMENT descripción ANY>

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii.attlist iii.entity 4.Limitaciones 5.Referencias

ATTLIST Define los atributos válidos de un elemento La declaración tiene tres partes Palabra reservada ATTLIST Nombre del elemento (etiqueta del elemento) Lista de atributos. Cada atributo está formado por Nombre del atributo Tipo del atributo Declaración del valor Ejemplo: <!ATTLIST noticia fuente CDATA #IMPLIED>

ATTLIST Tipos de atributo CDATA: Texto (Character DATA) ID: El valor debe ser único IDREF: El valor debe ser una referencia a un ID IDREFS: El valor debe ser una lista de referencias a ID separadas por espacios en blanco Lista enumerada: Lista de valores posibles del atributo. Entre paréntesis y separada por una barra vertical. Ejemplo: (Casa Trabajo Móvil) ENTITY: El valor debe ser el nombre de una entidad ENTITIES: El valor debe ser una lista de nombres de entidad separadas por espacios en blanco Otros: NMTOKEN, NMTOKENS

ATTLIST Valor del atributo Por defecto: Si no se asigna un valor se asigna el especificado <!ATTLIST teléfono tipo (Casa Trabajo Móvil) Casa > Fijo: El valor del atributo no se puede modificar <!ATTLIST programa versión CDATA #FIXED 1.0 > Obligatorio: Es obligatorio que el atributo tenga valor <!ATTLIST teléfono tipo (Casa Trabajo Móvil) #REQUIRED> Implícito: No es obligatorio que el atributo tenga valor <!ATTLIST contacto edad CDATA #IMPLIED>

ATTLIST Atributos múltiples Pueden definirse en una única etiqueta o en varias Ejemplo <!ATTLIST programa autor CDATA #IMPLIED versión CDATA #FIXED 1.0 > Es equivalente a <!ATTLIST programa autor CDATA #IMPLIED <!ATTLIST programa versión CDATA #FIXED 1.0 >

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

ENTITY Una entidad es un elemento que forma parte del XML Por ejemplo, & es una entidad, pero el elemento raíz también lo es (se denomina entidad documento) Existen cuatro tipos primarios de entidad Entidades incorporadas (built-in) Entidades carácter Entidades generales Entidades parámetro

ENTITY Entidades incorporadas (built-in) No necesitan ser incorporadas en el documento, puesto que son reconocidas por todos los parsers Son cinco entidades & Carácter & < Carácter < > Carácter > &apos; Carácter ' " Carácter Pueden ser usadas directamente por su nombre en cualquier bloque de texto (contenido de atributos y elementos)

ENTITY Entidades carácter Permiten incluir cualquier carácter usando su valor decimal o hexadecimal en Unicode* Siguen las mismas reglas que las entidades incorporadas Formatos (0 representa un dígito) Decimal: &#000; Hexadecimal: &#x0000; * Se puede encontrar la lista completa en http://www.unicode.org/charts/

ENTITY Entidades generales Permiten crear secciones reutilizables de texto de sustitución (pueden verse como constantes de texto) Los parsers sustituyen las referencias a estas entidades por el valor (texto) asociado La declaración tiene tres partes Palabra reservada ENTITY Nombre de la entidad Texto de reemplazo: Valor de la entidad entre comillas. Si es XML debe estar bien formado, aunque admite varias raíces Ejemplos <!ENTITY obra Sam & Twitch > <!ENTITY modos-silencio <silencio/><vibrar/> >

ENTITY Entidades generales (continuación) El texto de reemplazo puede almacenarse en ficheros externos usando declaraciones de entidad externas Siguen el mismo formato que DOCTYPE <!ENTITY cv SYSTEM currículum.txt > <!ENTITY cv PUBLIC -//Ana//CV//ES cv.txt > Referencia a entidades generales Se usa el nombre de la entidad entre & y ; Ejemplo: <currículum>&cv;</currículum>

ENTITY Entidades parámetro Permiten crear secciones reutilizables de texto de sustitución para su uso exclusivo en la propia DTD (no pueden usarse en el XML) Siguen las mismas reglas que las entidades generales, con dos diferencias La declaración incluye un % antes del nombre Las referencias comienzan con % en lugar de & Ejemplo Declaración: <!ENTITY % TipoTlfPorDefecto Casa > Referencia: <!ATTLIST teléfono tipo (Casa Trabajo Móvil) %TipoTlfPorDefecto; >

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

Limitaciones de las DTDs Sintaxis La sintaxis de las DTDs es una adaptación de la propia sintaxis de DTDs de SGML La sintaxis del propio XML es mucho más potente Namespaces El prefijo y los dos puntos deben incluirse en cada declaración de elemento o atributo Los prefijos deben estar preestablecidos Tipos de datos El soporte de tipos de datos es muy limitado y solo aplicable a atributos Descripción de modelos de datos Las características de los modelos de datos que se pueden definir son muy limitadas Por ejemplo, no se puede usar cardinalidades numéricas, no existe herencia, etc.

Índice 1.Introducción 2.Documentos XML con DTDs 3.Declaraciones i. ELEMENT ii. ATTLIST iii.entity 4.Limitaciones 5.Referencias

Bibliografía Beginning XML, 4th Edition D. Hunter et al. World Wide Web Consortium (W3C) [http://www.w3.org/ - última visita 31/08/2012]