Introducción a XMLTecnólogo en Informática
Ing. Montserrat López - [email protected]
1
Acerca de la asignaturaa● Asignatura: Introducción a XML y estándares
asociados.● Materia: Programación● Créditos: 4● Objetivo de la asignatura
○ Introducir al estudiante en el estándar XML, lenguajes afines tales como DTD, XSD, XPath, XQuery, XSLT; y tecnologías relacionadas.
2
Acerca de la asignatura (2)● Forma de evaluación
○ Trabajos obligatorios○ Participación en clase○ Presentaciones grupales
● Previas○ Base de Datos 2 ○ Programación Avanzada
3
Contenido del Curso
● Introducción a XML○ ¿Qué es XML?○ ¿Para qué se usa?○ Árbol XML○ Sintáxis○ Elementos○ Atributos
● Validación de un XML○ DTD○ XDS
4
Contenido del Curso● Visualización y transformación de XML
○ XML CSS○ XSLT
● Consultas sobre XML○ XPath○ Xquery○ DOM y SAX
● Conceptos avanzados○ Namespaces○ CDATA○ Encoding○ Editores XML○ Extensiones y usos de XML: JAXB, XHTML, SOAP, RDF, RSS, SVG
5
Bibliografía
● An Introduction to XML and Web Technologies. Anders Moller, Michael Schwartzbach. Ed. Pearson. ISBN: 978-81-317-2607-5
● Material de Internet○ Estándares de http://www.w3.org/
6
Introducción
7
Introducción
● XML = Extensible Markup Language (Lenguaje de Marcas extensible)
● Diseñado para transportar y almacenar datos
● Recomendación de la W3C (World Wide Web Consortium) desde Febrero de 2004
● Lenguaje de plataforma-independiente8
Ejemplo de XML
Juan Pedro Créditos asignatura XML Son 4 créditos
9
Nomenclatura de principales elementos en un XML
ENCABEZADO
Juan Pedro Créditos asignatura XML Son 4 créditos
10
Nomenclatura de principales elementos en un XML
TAGS/ETIQUETAS
Juan TAGS NO PREDEFINIDOS Pedro Créditos asignatura XML Son 4 créditos
11
APERTURA Y CIERRE
Nomenclatura de principales elementos en un XML
Juan Pedro Créditos asignatura XML Son 4 créditos
12
DATOS
Usos de XML● Desacoplar datos (XML) de la capa de presentación
(HTML)○ XML/CSS○ JavaScript
● Simplifica compartir datos● Simplifica transportar datos● Favorece la portabilidad de las plataformas● XML es la base de otros lenguajes
13
● RSS● WAP
● XHTML● WSDL
Árbol XML
Juan
Pedro
Créditos asignatura XML
Son 4 créditos
Juan
María
Sábado
¿Salimos a tomar algo?
14
ENCABEZADOELEMENTO RAIZ
ELEMENTOS HIJOS DE 1ER NIVEL
ELEMENTOS HIJOS DE 2DO NIVEL
Árbol XML
15
Árbol XML
16
es padre (parent) de
es hermano (sibling) de
es hijo (child) de
Árbol XML
17
Atributo
Contenido
Algunas Restricciones
● Todos los tags se deben cerrar○ En HTML
■
Esto es un párrafo○ En XML
■
Esto es un párrafo
● XML es case sensitive
○ inválido: ... ○ válido: ...
18
Algunas Restricciones (2)
● Todos los elementos deben estar correctamente anidados○ En HTML esto es válido:
■ Este texto está en negrita e italic ○ En XML es válido solamente:
■ Este texto está en negrita e italic ■ Este texto está en negrita e italic
19
Algunas Restricciones (3)
● Todos los documentos XML deben tener un nodo raíz
● Los atributos deben estar entre comillas dobles
● Comentarios○
20
Algunas Restricciones (4)
● Caracteres especiales○ ¿Por qué la siguiente línea de un documento XML
es incorrecta?■ if salary < 1000 then
21
Algunas Restricciones (5)
● Caracteres especiales○ ¿Por qué la siguiente línea de un documento XML
es incorrecta?■ if salary < 1000 then
○ Los parsers no pueden identificar el carácter de menor como un carácter normal, sino como el inicio de un nuevo tag■ if salary < 1000 then
22
Algunas Restricciones (6)● Tabla de caracteres especiales
● Oficialmente, sólo los carácteres ‘ Mayor que
& & ampersand
' ‘ Comilla simple
" “ Comilla doble
Algunas Restricciones (7)
● Espacios○ HTML
■ Hola como estás ??● Se visualiza como “Hola como estás??”
○ XML■ Hola como estás ??
● Se visualiza como “Hola como estás ??”■ XML mantiene los espacios en blanco
24
Elementos XML
● Un elemento es todo lo que va desde el tag de inicio (inclusive) hasta el tag correspondiente de fin (inclusive)
● Un elemento puede contener○ Elementos○ Atributos○ Texto○ Una combinación de las anteriores
25
Elementos XML (2)
● Reglas de nomenclatura○ Nombres de los tags
■ pueden contener letras, números y otros caracteres
■ no pueden empezar con números■ no pueden empezar con XML, Xml, xml o
ninguna combinación de mayúsculas-minúsculas que refiera a XML
■ no pueden contener espacios en blanco 26
Elementos XML (3)● Mejores prácticas
○ Utilizar tags descriptivos○ Para nombres compuestos (Ej. Primer Nombre) utilizar “_”:
primer_nombre○ No utilizar:
■ “-” : algunos parsers pueden interpretar que se le quiere substraer nombre a primer
■ “.” : algunos parsers pueden interpretar que nombre es una propiedad de primer
■ “:” : están reservados para namespaces
27
Atributos XML● Los atributos son parte de un elemento
○ Proveen información extra del mismo○ Se utilizan sólo en tags de apertura
Juan Clara Créditos asignatura XML Son 4 créditos
28
Atributos XML (2)● Reglas de nomenclatura
○ Los valores de los atributos deben estar comprendidos entre comillas dobles ”attrValue”, o comillas simples ‘attrValue’ ■ Si el contenido contiene comillas
● ‘attrValue “con” comillas’● ‘attrValue "con" comillas’● “attrValue "con" comillas”
29
Elementos vs. Atributos
María Montserrat Femenino
María Montserrat
30
vs.
Elementos vs. Atributos (2)
● Metadatos guardados como atributos, información de elementos como elementos○ Ej.: ID de un elemento
● ¿Por qué no atributos?○ No pueden contener valores múltiples○ No son estructurados○ No son facilmente expandibles
31