El documento presenta una introducción a XML, incluyendo su sintaxis y elementos básicos como etiquetas, atributos y comentarios. Luego explica conceptos como espacios de nombres, validación a través de DTD y esquemas XML, y lenguajes basados en XML como XPath, XQuery, XSLT y su aplicación en la transformación de documentos.
tics en la vida cotidiana prepa en linea modulo 1.pptx
Introducción a XML
1. martes, 07 de noviembre de 2006 XML Conceptos generales. Isaac Ruiz Guerra (RuGI)
2.
3.
4.
5.
6. martes, 07 de noviembre de 2006 <?xml version="1.0" encoding="UTF-8"?> <persona> <nombre>Isaac</nombre> <apellido>Ruiz</apellido> <color>azu</color> </persona> <?xml version="1.0" encoding="UTF-8"?> <persona nombre=“ I saac" apellido="Ruiz" color ="azul“ / >
7. martes, 07 de noviembre de 2006 Introducción III <?xml version="1.0“ ? > <pelicula-favorita> <titulo>La ciudad del pecado</titulo> <director>Robert Rodriguez</director> <duracion>112</duracion> </pelicula-favorita> <?xml version="1.0“ ? > <postulante> <titulo>Ingeniero</titulo> <experiencia>Desde 2001 en Mars SA</experiencia> <idioma>Ingles</idioma> <residencia>Los Angeles CA</residencia> </postulante> <titulo> ¿?
8. martes, 07 de noviembre de 2006 Introducción IV Espacios de nombre ( namespaces ) Espacio de nombres: pelicula-favorita <pelicula-favorita:titulo> <peliculafavorita:director> <pelicula-favorita:duracion> - titulo -director -duracion Espacio de nombres: postulante <postulante:titulo> <postulante:experiencia> <postulante:residencia> -titulo -experiencia -residencia
9. martes, 07 de noviembre de 2006 Introducción V Espacios de nombre ( namespaces ) xmlns:nombre=“url” xmlns: Indica que se esta definiendo un espacio de nombres. nombre : Es el prefijo que se ocupara para referenciar el espacio de nombres. url : un url válido
10. martes, 07 de noviembre de 2006 Introducción VI Espacios de nombre ( namespaces ) <?xml version="1.0“ ? > < pf :pelicula-favorita xmlns : pf =“ http://www.pf.com ”> < pf : pelicula-favorita> < pf : titulo>La ciudad del pecado< pf : /titulo> < pf : director>Robert Rodriguez< / pf : director> < pf : duracion>112</ pf : duracion> </ pf : pelicula-favorita>
11. martes, 07 de noviembre de 2006 Introducción VII Espacios de nombre ( namespaces ) <?xml version="1.0“ ? > < pos :postulante xmlns : pos =“ http://www.esp-p.com ”> < pos : postulante> < pos : titulo>Ingeniero</ pos : titulo> < pos : experiencia>Desde 2001 en Mars SA</ pos : experiencia> < pos : idioma>Ingles</ pos : idioma> < pos : residencia>Los Angeles CA</ pos : residencia> </ pos : postulante>
12.
13. martes, 07 de noviembre de 2006 Introducción IX XPATH XQUERY XLINK XPOINTER XSLT XFORMS SVG WSDL
14. martes, 07 de noviembre de 2006 Introducción X XPATH XQUERY XLINK XPOINTER XSLT XFORMS SVG WSDL
16. martes, 07 de noviembre de 2006 Validación I XML bien formado VS. XML Válido.
17. martes, 07 de noviembre de 2006 Validación II XML bien formado. Un documento XML bien formado es aquel cuyo contenido se encuentra estructurado de forma tal que, por cada etiqueta de inicio, existe una etiqueta de fin. No deben existir traslapes entre etiquetas, es decir, las etiquetas anidadas deben iniciar y terminar dentro de la etiqueta que la contiene.
18. martes, 07 de noviembre de 2006 Validación III XML bien formado. <persona> <nombre> Pedro </nombre> <edad>33 </edad> </persona> <persona> <nombre> Pedro <edad> </nombre> 33 </edad> </persona> Error:
19. martes, 07 de noviembre de 2006 Validación IV XML Válido. Implica que el documento no sólo está bien formado sino que además su estructura está claramente definida en un documento externo.
20. martes, 07 de noviembre de 2006 Validación V DTD Schemas Relax NG NRL
21. martes, 07 de noviembre de 2006 Validación VI DTD Document Type Definition.Definición del tipo de documento. Fue la primera manera para definir el contenido de un archivo XML. Basado en la deficinición de: Elementos, atributos, entidades. No es lo suficientemente flexible para los nuevos roles que ha tomado XML
22. martes, 07 de noviembre de 2006 Validación VII <!Element ficha (datos)+> <!Element datos (nombre, email?, direccion)> <!Element nombre (#PCDATA)> <!Element direccion (#PCDATA)> <!Element email (#PCDATA)>
23.
24.
25. martes, 07 de noviembre de 2006 Validación X RELAX NG y NRL Derivaciones de los Schemas para darles mas flexibilidad, no estan del todo aceptadas y se utilizan más en entornos académicos.
26. martes, 07 de noviembre de 2006 Validación XI DTD Schemas Relax NG NRL
27. martes, 07 de noviembre de 2006 Validación XII XML Schemas. Tipo de datos. Cadena de caracteres xs:string Decimal xs:decimal Booleano xs:boolean Fecha xs:date Y más.......
28. martes, 07 de noviembre de 2006 Validación XIII XML Schemas. Elementos. Sintaxis: <xs:element name=“” type=“” [fixed=“” default=“”]/> Ejemplos: <xs:element name=“nombre” type=“xs:string”/> <xs:element name=“fechaNacimiento” type=“xs:date”/>
29. martes, 07 de noviembre de 2006 Validación XIV XML Schemas. Atributos. Sintaxis: <xs:atribute name=“” type=“” [fixed=“” default=“”] [use=“”]/> Ejemplos: <xs:atribute name=“color” type=“xs:string” use=“required”> <xs:atribute name=“sexo” type=“xs:string” default:”M” use=“optional”>
30. martes, 07 de noviembre de 2006 Validación XV XML Schemas. Restricciones xs:enumeration Define una lista de valores posibles para un elemento. xs:fractionDigits Define el número máximo de dígitos decimales permitidos
31. martes, 07 de noviembre de 2006 Validación XVI XML Schemas. Restricciones xs:minExclusive Define el valor mínimo permitido para el elemento. xs:maxInclusive Define el valor máxico permitido para el elemento.
32. martes, 07 de noviembre de 2006 Validación XVII XML Schemas. Restricciones <xs:element name=“puntaje”> <xs:simpleType> <xs:restriction base=“xs:integer”> <xs:minExclusive value=“0”/> <xs:maxExclusive value=“101”/> </xs:restriction base=“xs:integer”> </xs:simpleType> </xs:element name=“puntaje”>
33. martes, 07 de noviembre de 2006 Validación XVIII Ejemplos
34. martes, 07 de noviembre de 2006 <xs:element name="person"> <xs:annotation> <xs:documentation>Specify information about a person.</xs:documentation> </xs:annotation> <xs:complexType> <xs:sequence> <xs:element ref="name"/> <xs:element ref="email" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="url" minOccurs="0" maxOccurs="unbounded"/> <xs:element ref="link" minOccurs="0" maxOccurs="1"/> </xs:sequence>
35.
36. martes, 07 de noviembre de 2006 XPATH II XSLT XLink XLPointer XQuery XPath
37.
38.
39. martes, 07 de noviembre de 2006 XPATH V Ejes: Atributo /personnel/person[attribute::id="Big.Boss"]/name/family /personnel/person[@id="Big.Boss"]/name/family
40. martes, 07 de noviembre de 2006 XPATH VI Ejes: child /personnel/child::person/child::name /personnel/person/name
41. martes, 07 de noviembre de 2006 XPATH VII Ejes: ancestor /personnel/person/name/family/ancestor::* /personnel/person[@id="Big.Boss"]/name/family/ancestor::*
42.
43. martes, 07 de noviembre de 2006 XPATH IX Funciones Xpath ofrece una serie de funciones para incorporar a las expresiones. sum (dvd/titulo/precio) substring(/dvd/titulo[1]/nombre, 1,3)
44. martes, 07 de noviembre de 2006 XQUERY I Es una propuesta basada en XML para realizar consultas a documentos XML y cualquier repositorio de información que mantenga estructuras similares. Se basa en Xpath, por lo que comparte funciones y los operadores disponibles.
45. martes, 07 de noviembre de 2006 XQUERY II Tipos de datos Si el documento XML tiene schema, cada elemento tendra su tipo de dato en función del definido en el schema. Sino, se tomará según el contexto; “ 123” puede ser cadena o número según quien solicite el valor.
46. martes, 07 de noviembre de 2006 XQUERY II Expresiones FLWOR Las expresiones FLWOR constituyen la base para la creación de consultas XQUERY. ( F )or ( L )et ( W )here ( O )rder by ( R )eturn
47. martes, 07 de noviembre de 2006 XSLT I eXtendible Stylesheet Languaje for Transformations. Lenguaje Extensible de hojas de estilo para transformaciones.
48. martes, 07 de noviembre de 2006 XSLT II XML Procesador XSLT Salida XML Hoja de Estilo
49.
50.
51. martes, 07 de noviembre de 2006 XSLT V Funciones XSLT incorpora sus propias funciones, pero, es posible utilizar las de Xpath.
52. martes, 07 de noviembre de 2006 Web Services I ¿Qué es un Web Service? Un servicio web es un componente de software basado en XML que permite desarrollar aplicaciones que pueden intercambiar datos con otras por medio de una red (Internet), independientemente de la plataforma en la que funcionen.
53. martes, 07 de noviembre de 2006 Aplicación Web Services II Internet Servicio Web Programa Cliente Figura 1. La utilización de un WS es transparente.
54.
55. martes, 07 de noviembre de 2006 Web Services IV Red. El envío y la recepción de mensajes deberá enmarcarse dentro de un ámbito (una red).
56. martes, 07 de noviembre de 2006 Web Services V Transporte. Una vez construido el mensaje, se necesita un conjunto de reglas para enviarlo y recibirlo. En esta capa se utiliza HTTP.
57. martes, 07 de noviembre de 2006 Web Services VI Empaquetamiento. La estructura de las peticiones y las respuestas se define en esta capa, y el protocolo utilizado hoy en día es SOAP (Simple Object Acces Protocol) basado en XML. Programa cliente Internet mensaje SOAP mensaje SOAP Servicio web
58. martes, 07 de noviembre de 2006 Web Services VII Empaquetamiento. Envelope Header Body Cabecera #1 Cabecera #2 Cabecera .... Estructura de un mensaje SOAP
59. martes, 07 de noviembre de 2006 Web Services VIII Empaquetamiento. Emisor Intermediario #1 Intermediario #2 Receptor Mensaje SOAP HTTP SMTP HTTP Un mensaje SOAP puede atravesar varios nodos (y protocolos) antes de llegar a su destino.
60. martes, 07 de noviembre de 2006 Web Services IX Empaquetamiento. <!-- Mensaje SOAP: Petición --> <?xml version="1.0"/> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <soap:Header> <s:identidad xmlns:s="http://identidad.com/ns/" soap:mustUnderstand="1"> <usuario>libreria</usuario> <usuario>calle56</usuario> </s:identidad> </soap:Header> <soap:Body> <x:detalleLibro xmlns:x="http://biblio.com/ns"> <isbn>8435009165</isbn> <sucursal>98-283843</sucursal> </x:detalleLibro> </soap:Body> </soap:Envelope>
61. martes, 07 de noviembre de 2006 Web Services X Descripción. Esta capa ofrece un mecanismo para describir la funcionalidad de un WS. Hoy en día el estándar utilizado para cubrir este proposito es WSDL (Web Service Description Languaje).
62. martes, 07 de noviembre de 2006 Web Services XII Descubrimiento. Para disponer y utilizar un WS, primero hay que encontrarlo UDDI (Universal Description Discovery and Integration) es la iniciativa para crear un directorio global de WS’s.