Publicado el 24 de Junio del 2017
1.095 visualizaciones desde el 24 de Junio del 2017
391,1 KB
29 paginas
Creado hace 15a (09/12/2009)
Programación en Internet 2009-2010
Departamento de Lenguajes y
Sistemas Informáticos
XML
XML
Programación en Internet
Curso 2009-2010
Programación en Internet – Curso 2009-2010
Contenidos
• Introducción
• Versiones
• Estructura de un documento
• Definición de un DTD
• Validación de un documento
DLSI - Universidad de Alicante
1
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Introducción
• XML
• Versiones
• Ventajas
• Objetivos de diseño
• Qué necesito para usar XML
Programación en Internet – Curso 2009-2010
XML
• Extensible Markup Language
• WorldWideWebConsortium(W3C)
• World Wide Web Consortium(W3C)
• Problema:
– HTML inflexible, mezcla contenido y
presentación
– SGML demasiado complejo
• Subconjunto de SGML
GML (IBM 1969)
GML (IBM, 1969)
⇓
⇓
SGML (ISO 8879, 1986)
XML (W3C, 1998)
DLSI - Universidad de Alicante
2
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
XML
• No es un lenguaje (no etiquetas
predefinidas), es un metalenguaje:
– Definir etiquetas y sus atributos
– Definir relaciones estructurales
• XHTML: híbrido HTML + XML
HTML escrito según XML (aplicación de
– HTML escrito según XML (aplicación de
XML)
– Sustituto de HTML
Programación en Internet – Curso 2009-2010
Versiones
• 10/2/1998: XML 1.0
• 6/10/2000: XML 1.0 Second Edition
• 4/2/2004: XML 1.0 Third Edition
• 16/8/2006: XML 1.0 Fourth Edition
– Las tres ediciones corrigen erratas y
ifi
l
clarifican/detallan el estándar, pero no son
una nueva versión
á d
/d
ll
l
DLSI - Universidad de Alicante
3
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Versiones
• 4/2/2004: XML 1.1
Actualiza 1.0 respecto al juego de caracteres (no depende
– Actualiza 1 0 respecto al juego de caracteres (no depende
de una versión específica de Unicode, permite utilizar
siempre la última), añade verificación de normalización de
caracteres y las normas de final de línea se ajustan más a
Unicode
– W3C: “You are encouraged to create or generate XML 1.0
documents if you do not need the new features in XML 1.1;
XML Parsers are expected to understand both XML 1.0 and
XML 1.1”
XML 1.1
• 16/8/2006: XML 1.1 Second Edition
– Corrige erratas y clarifica/detalla el estándar, pero no es una
nueva versión
Programación en Internet – Curso 2009-2010
Versiones
• Extensible Markup Language (XML)
1.0 (Fourth Edition)
– W3C Recommendation 16 August 2006
– http://www.w3.org/TR/2006/REC-xml-
20060816/
Para obtener siempre la última versión:
– Para obtener siempre la última versión:
• http://www.w3.org/TR/xml/
DLSI - Universidad de Alicante
4
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Ventajas
i t
F ilit
• Mejora búsquedas Metadatos
• Facilita intercambio información Estándar
• Visión estructurada Tratamiento local
• Integración diferentes fuentes
• Actualizaciones granulares División de la
ió E tá d
i f
bi
información
Separación contenido (datos) /
• Separación contenido (datos) /
presentación
– Facilita mantenimiento
– Ofrece múltiples presentaciones
Programación en Internet – Curso 2009-2010
Ventajas
• Permite crear lenguajes de marcado para
i
i
ífi
d
dominios específicos:
– Química: Chemical Markup Language (CML)
– Matemáticas: Mathematical Markup Language
(MathML)
– Música: MusicXML
Información monetaria: Open Financial Exchange
– Información monetaria: Open Financial Exchange
(OFX)
– Recursos humanos (ofertas de trabajo, currículos,
etc.): HR-XML
DLSI - Universidad de Alicante
5
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Ventajas
• El contenido se describe a sí mismo:
<persona id=“p110” sexo=“m”>
<nombre>Pedro López</nombre>
<direccion>de los Palotes, 120</direccion>
<fnacimiento>30/06/1970</fnacimiento>
</persona>
-------------
p110;m;Pedro López;de los Palotes, 120; 30/06/1970
-------------
0A 11 3C 2E 52 78 90 AA BC EA ...
Programación en Internet – Curso 2009-2010
DLSI - Universidad de Alicante
6
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Programación en Internet – Curso 2009-2010
DLSI - Universidad de Alicante
7
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Objetivos de diseño
1. Se debe de poder usar en Internet
•
•
Parte de HTML
Tan fácil de ver como HTML
2. Amplia variedad de aplicaciones
(estructurada, textual, multimedia, etc.)
3. Compatible con SGML (reutilización de
h
)
herramientas)
i
4. Sencillo de emplear (más fácil que SGML)
5. Características opcionales: mínimas (no
dos formas de hacer lo mismo)
Programación en Internet – Curso 2009-2010
Objetivos de diseño
6. Lectura y estructura clara (lectura
por un humano)
7. Diseño rápido (1996-1998)
8. Diseño formal y conciso (reglas)
9. Documentos fáciles de crear (simple
dit
ASCII)
editor ASCII)
10. Concisión etiquetas: mínima
importancia (no ahorro etiquetas)
DLSI - Universidad de Alicante
8
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Qué necesito para usar XML
• Editor ASCII estándar
• Visualización:
Vi
– Microsoft Internet Explorer 5
– Netscape 6
• Ficheros: .xml
li
ió
– Nombres cortos y sencillos
– No caracteres especiales ni espacios en blanco
No caracteres especiales ni espacios en blanco
• Qué vamos a usar:
– Microsoft Internet Explorer con XML/XSL Viewer Tools
– Microsoft XML Notepad 2007
– ezDTD 1.5
– Altova XML Spy 2004
Programación en Internet – Curso 2009-2010
Estructura de un
documento
• Estructura lógica
• Estructura de un documento
• Estructura de un DTD
DLSI - Universidad de Alicante
9
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura lógica
• Plantilla:
– Etiquetas
– Atributos
– Posición
• Estructura definida por un DTD (Document
(grado de división en partes más pequeñas)
Type Definition)
– Opcional
l
– Define jerarquía (organización) y granularidad
O i
Programación en Internet – Curso 2009-2010
Estructura lógica
DLSI - Universidad de Alicante
10
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura lógica
• Documento “bien formado”:
respeta sintaxis de XML
• Documento válido: respeta DTD
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Comentarios:
<!-- Comentario -->
<!-- Comentario -->
• Cabecera (declaración XML) Instrucción de
procesamiento:
<?xml
version=”1.0”
encoding=”ISO-8859-1”
t d l
” ?>
standalone=”yes” ?>
”
• Si no se incluye:
– Versión: 1.0
– Codificación de caracteres: UTF-8
– Entidades externas: sí
DLSI - Universidad de Alicante
11
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Etiquetas Definen un elemento:
<LIBRO></LIBRO>
• Etiquetas vacías (inicial y final):
<LIBRO/>
• Distinción mayúsculas / minúsculas
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Estructura jerárquica
– Organización fija
– No solapamiento
ó
• Elemento raíz único
• Atributos: siempre “” o ‘’
– " y '
• Atributos reservados:
– xml:lang
– xml:space: default | preserve
DLSI - Universidad de Alicante
12
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Ejemplo de xml:lang:
<p xml:lang="en">The quick brown fox jumps over the
lazy dog.</p>
<p xml:lang="en-GB">What colour is it?</p>
<p xml:lang="en-US">What color is it?</p>
<sp who="Faust" desc='leise' xml:lang="de">
<l>Habe nun ach! Philosophie </l>
<l>Habe nun, ach! Philosophie,</l>
<l>Juristerei, und Medizin</l>
<l>und leider auch Theologie</l>
<l>durchaus studiert mit heißem Bemüh'n.</l>
</sp>
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Espacios en blanco:
– Tabulador
– Avance de línea
– Retorno de carro
– Espacio en blanco
• Normalización caracteres final de línea:
M i
– Macintosh CR LF
h CR LF
– MS-DOS / Windows CR+LF LF
– Unix LF
DLSI - Universidad de Alicante
13
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Caracteres especiales:
Programación en Internet – Curso 2009-2010
Estructura de un documento
• Secciones CDATA: permite que el analizador ignore
ciertas secciones del documento
ciertas secciones del documento
• Sintaxis:
<![CDATA[
…
]]>
• Solo la cadena final (]]>) se reconoce como
marcado y se pueden emplear los caracteres
marcado y se pueden emplear los caracteres
especiales
• Las secciones CDATA no se pueden anidar
• Utilidad: incluir código de script que suele contener
los caracteres &, <, >, ‘ y “
DLSI - Universidad de Alicante
14
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura de un documento
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www w3 org/TR/xhtml1/DTD/xhtml1 strict dtd">
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd >
<html>
<head>
<title>Una prueba del CDATA</title>
<script type="text/javascript">
if(a < 5 && a > 1)
</script>
</head>
<body>y
<p>Una prueba del CDATA</p>
</body>
</html>
alert("El valor de a no es correcto");
Programación en Internet – Curso 2009-2010
Estructura de un documento
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www w3 org/TR/xhtml1/DTD/xhtml1 strict dtd">
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd >
<html>
<head>
<title>Una prueba del CDATA</title>
<script type="text/javascript">
<![CDATA[
if(a < 5 && a > 1)
]]>
</script>p
</head>
<body>
<p>Una prueba del CDATA</p>
</body>
</html>
alert("El valor de a no es correcto");
DLSI - Universidad de Alicante
15
Programación en Internet 2009-2010
Programación en Internet – Curso 2009-2010
Estructura de un DTD
Comentarios de: XML (0)
No hay comentarios