ESPECIFICACIÓN XML 1.0 Alberto Gimeno Arnal

Slides:



Advertisements
Presentaciones similares
La experiencia del seguimiento en la Universidad de Salamanca
Advertisements

MACROPROCESO D GESTIÓN DE LA CALIDAD DEL SERVICIO EDUCATIVO EN EDUCACIÓN PREESCOLAR, BÁSICA Y MEDIA.
(eXtensible Mark-up Language)
Agregar Paciente (CU-13)
WEB 2.0: EDUWIKIS ¿Qué es un Wiki? 02 Ventajas de los Wiki 03 Ejemplos de Wikis 04 Es lo mismo una página Web que un Wiki 05 Diferencia con los.
Módulo de XML Facilitador: Ing. María de los A. Ugas N.
CASTELLANO 8º “A” “C” OBJ. 1.1 TRABAJO ESCRITO 15% 06/10 Al 10/10
MANEJO DE DOCUMENTOS XML EN MHP Leire Urriza Oiz.
CALIDAD EN DESARROLLO DE SOFTWARE
INFORME DE ANÁLISIS DE ACCIDENTE
Análisis y Diseño de Software
Modelo Entidad Relación E-R
SISTEMA DE CALIDAD LECCIÓN # 2
XML y Servicios Web David Salgado MVP C#
Curso: XML, de los datos a la presentación CAPTIVA ·
Resolución de Problemas Algoritmos y Programación
Ing. Esp. Ricardo Cujar. El computador: es una máquina que permite hacer tareas aritmético y lógicas de una manera fácil, consta de software y hardware.
INSTITUTO TECNOLOGICO DE MINATITLAN
Conceptos Generales XML.
PROCEDIMIENTOS OBLIGATORIOS MANUAL DE CALIDAD Y OPERACIONES
Lenguaje de Marcado Extensible XML
Concepto, Importancia, Estrategias y Tipos de Planeació
ANALISIS DE DISCONTINUIDADES
ACCIONES CORRECTIVAS Y ACCIONES PREVENTIVAS
Entornos de programación
Introducción XML y WebServices.
© Manuel ColladoEntornos de Programación-1 Entornos de programación Concepto, funciones y tipos.
JORNADA 1 DEL 24 DE MARZO AL 30 DE MARZO EQUIPO 01 VS EQUIPO 02 EQUIPO 03 VS EQUIPO 06 EQUIPO 05 VS EQUIPO 10 EQUIPO 07 DESCANSA EQUIPO 08 VS EQUIPO 13.
Metodología para la Construcción de Programas
Modelo Entidad-Relación
JORNADA 1 DEL 24 DE MARZO AL 30 DE MARZO EQUIPO 01 VS EQUIPO 07 EQUIPO 03 VS EQUIPO 06 EQUIPO 04 VS EQUIPO 05 EQUIPO 02 VS EQUIPO 08.
PROGRAMA DE ASISTENCIA TÉCNICA INSTITUCIONAL Y JURISDICCIONAL 2014
Introducción a la Computación
SISTEMAS DE INFORMACION
“CONSORCIO COSTA DULCE II” MINISTERIO DE TRANSPORTE Y COMUNICACIONES
NORMA APA (SEXTA EDICIÓN)
Planeación de la Investigación
Espacios de nombres de XML (Namespaces)
XML DEFINICIÓN DE ESQUEMAS
Título Características y elementos fundamentales J.M. Morales-del-Castillo.
DOCUMENT TYPE DEFINITION DTD
Características y elementos fundamentales J.M. Morales-del-Castillo
Definition Type Document (DTD)
Lenguaje de Marcado.
 El primer navegador Web incluía un lenguaje de estilo interno que utilizaba dicho navegador para mostrar las páginas HTML.  Sin embargo estos primeros.
Universidad Tecnologica Oteima DISEÑO DE MEDIOS Y MATERIALES MULTIMEDIOS Rigoberto Quintana M. Hojas de estilo en cascada.
INSTITUTO DE ESTUDIOS SUPERIORES DE CHIHUAHUA COMPUTACION Ciclo: segundo cuatrimestre Lic. Roberto Servando Roque Corona.
Unidad VI Documentación
Análisis del sistema.
Oscar Bedoya. XML. Bookstore A continuación puede encontrar la información de los libros en inventario The Adventures of.
XML Corporación Universitaria de Ciencia y Desarrollo Ing. Andrés Vargas - W3C: XML es un.
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Curso: XML, de los datos a la presentación Julio de 2005 CAPTIVA · Introducción al mundo XML.
FUNDAMENTOS DE PROGRAMACION
Desarrollo del tipo de documentos VB1 Objetivo Entender los conceptos básicos de una DTD XML Entender los conceptos básicos de una DTD XML Entender.
Introducción a XML por Joel Candia C Universidad Técnica Federico Santa María Departamento de Electrónica ELO-330 Programación de Sistemas.
XML. La vida antes de XML ► Comunicación ► Persistencia ► Armado de Documentos.
Tema 3: Estructura de los documentos XML, DTD Ricardo Eíto Brun Sevilla, de octubre 2002.
PROGRAMAS INFORMATICOS
LÓGICA DE PROGRAMACIÓN LSC. Susana Alejandra López Jiménez.
1 Sebastián Argüello A60490 semana 3 Autómatas y compiladores CI-1322.
Estilo de Publicación de la APA
Ingeniería de Requisitos
Facultad de Ingeniería y Tecnologías Memoria de Grado Geolocalización de documentos en el marco GIS.
¿Q UÉ ES XML? XML (eXtensible Markup Language)es un meta-lenguaje de codificación de información. Los programas que utilizan el formato XML pueden intercambiar.
Introduccióna Dreamweaver Licenciatura en Tecnología Educativa LEIVA HÉCTOR RUBEN.
PR4203 REGISTROS DE LA CALIDAD Sevilla OBJETO Definir el procedimiento para gestionar los registros del sistema de la calidad ÁMBITO DE APLICACIÓN.
GUIA DE CSS 3 BASICA AUTOR: CARLOS BERBECI QUE ES CSS3 ? CSS es un lenguaje para definir el estilo o la apariencia de las páginas web, escritas con HTML.
¿QUÉ ES EL MODELO ENTIDAD-RELACIÓN?  Como ya he comentado este modelo es solo y exclusivamente un método del que disponemos para diseñar estos esquemas.
LENGUAJES DE MARCAS Y SISTEMAS DE GESTIÓN DE INFORMACIÓN Bloque XML: UD4: espacios de nombres.
Transcripción de la presentación:

Alberto Gimeno Arnal alberto.gimeno@gmail.com ESPECIFICACIÓN XML 1.0 Alberto Gimeno Arnal alberto.gimeno@gmail.com Área de Lenguajes y Sistemas Informáticos Dpto. de Informática e Ingeniería de Sistemas Universidad de Zaragoza

XML: Reglas. XML debe ser utilizable directamente sobre Internet. XML debe soportar una amplia variedad de aplicaciones. XML debe ser compatible con SGML. Ha de resultar fácil escribir programas que procesen documentos XML. El número de características opcionales en XML debe ser mantenido en un mínimo, idealmente cero. Los documentos XML deben ser legibles por un ser humano y razonablemente claros. El diseño de XML debe ser preparado rápidamente. El diseño de XML debe ser formal y conciso. Los documentos XML han de ser fáciles de crear. La brevedad en la marcación reviste mínima importancia. Alberto Gimeno Arnal XML 1.0 2

XML: Soporta. Etiquetas de elemento Instrucciones de procesamiento Declaraciones de tipos de documentos Referencia de entidades Comentarios Secciones marcadas Alberto Gimeno Arnal XML 1.0

XML: Estructura. <?xml version=“1.0” encoding=“iso-8859-1” standalone=“yes|no”?> <!DOCTYPE documento SYSTEM "Prueba.dtd"> <documento> <titulo> Prueba </titulo> <contenido> <parrafo> <lista> <elemento atributo=“valor1”> Primer elemento </elemento> <elemento atributo=“valor2”> Segundo elemento </lista> </parrafo> </contenido> </documento> Alberto Gimeno Arnal XML 1.0

XML: Elementos. Alberto Gimeno Arnal XML 1.0

XML: Instruc. de procesamiento. Los documentos XML deben empezar con la directiva <?xml version=“1.0” ?>, opcionalmente: standalone encoding XML: Declaración de tipo de documento(DTD) Especificar el elemento raiz del documento. Definir elementos, atributos y entidades especificas del documento (DTD interno). Identificar una DTD externa en el documento. <!DOCTYPE documento SYSTEM "Prueba.dtd"> Alberto Gimeno Arnal XML 1.0 6

XML: Referencias a entidades. Por ejemplo, podrían ser: <!ENTITY amp “&”> <!– ampersand --> <!ENTITY lt “<”> <!– menor que --> <!ENTITY euro “€”> <!– € --> En el documento xml, bastará con poner < o € Alberto Gimeno Arnal XML 1.0 7

XML: Secciones CDATA. Se evita el análisis sintáctico del texto: <!ENTITY amp “&”> <!– ampersand --> <CODIGO_C> *p=&qcampo; a=(x<y)?33:44; </CODIGO_C> ]]> Alberto Gimeno Arnal XML 1.0 8

XML: Espacios de nombre. Los espacios de nombres son un prefijo que ponemos a las etiquetas de XML para indicar a qué contexto se refiere la etiqueta en cuestión. <pas:direccion>: para uso por los administrativos. <pdi:direccion>: para uso por el profesorado. Para usar los espacios de nombres en un documento, debemos declararlo previamente (xmlns): <?xml version=“1.0” encoding=“iso-8859-1”?> <personal xmlns:alumn=“http://cps.unizar.es/PAS” xmlns:pdi=“http://cps.unizar.es/PDI” Alberto Gimeno Arnal XML 1.0 9

XML: Modelar datos Existen dos tipos: Forma simple: DTD’s (internas /externas) <!DOCTYPE ElementoRaiz SYSTEM|PUBLIC RefDTDExterna [DeclacDTDInterna]> Forma extensa: XML Schema’s <Schema name=“esqAgenda” xmlns=“urn-microsoft-com:xml-data”> <!– Contenido del esquema--> </Schema> Alberto Gimeno Arnal XML 1.0 10

DTD: Estructura. <!ELEMENT agenda (contacto)+> <!ELEMENT contacto (nombre, apellidos, direccion+, cp, ciudad, provincia, tfno, correo)> <!ATTLIST nombre clase (teoria | problemas | practicas) "problemas"> <!ELEMENT tfno (movil, casa?)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT apellidos (#PCDATA)> <!ELEMENT direccion (#PCDATA)> <!ELEMENT cp (#PCDATA)> <!ELEMENT ciudad (#PCDATA)> <!ELEMENT provincia (#PCDATA)> <!ELEMENT movil (#PCDATA)> <!ELEMENT casa (#PCDATA)> <!ELEMENT correo (#PCDATA)> Alberto Gimeno Arnal XML 1.0 11

Ingredientes?, Instrucciones?) Símbolo Descripción () Los paréntesis agrupan subetiquetas <!ELEMENT Ingrediente (Cantidad,Item)> , Ordenación exacta de los elementos (Nombre, Descripcion?, Ingredientes?, Instrucciones?) | Uno sólo de los elementos indicados (Cocer | Freir) Si no indicamos nada los elementos aparecen una sola vez (Cantidad, Item) + Una o más veces Paso+ ? Elemento opcional Instrucciones? * Cero o más veces Ingrediente* #PCDATA Parsed Character Data <!ELEMENT Item (#PCDATA)> DTD: Alberto Gimeno Arnal XML 1.0 12

DTD: Tipos de Declaraciones. Tipos de elementos. (<!ELEMENT) EMPTY #PCDATA ANY Listas de atributos. (<!ATTLIST) <!ATTLIST elemento atributo tipo-atributo valor-defecto> Entidades. (<!ENTITY) Notaciones. (<!NOTATION) Alberto Gimeno Arnal XML 1.0 13

DTD: Atributos. Valor Descripción CDATA El valor son caracteres alfanuméricos (v1 | v2 | ..) El valor será uno de la lista explicitada ID El valor será un identificador único IDREF El valor es el ID de otro elemento IDREFS El valor es una lista de ID otros elementos NMTOKEN El valor es un nombre XML válido NMTOKENS El valor es una lista de nombres XML válidos ENTITY El valor es una entidad ENTITIES El valor es una lista de entidades NOTATION El valor es el nombre de una notación xml: El valor es un valor XML predefinido Alberto Gimeno Arnal XML 1.0 14

DTD: Atributos. Valores Descripción valor El valor por defecto del atributo #REQUIRED El valor del atributo debe aparecer obligatoriamente en el elemento #IMPLIED El atributo no tiene por qué ser incluido #FIXED valor El valor del atributo es fijo Alberto Gimeno Arnal XML 1.0 15

DTD. Referencias. Embebido o interna: Enlace externo: <?xml version="1.0"?> <!DOCTYPE Receta [ <!ELEMENT Receta (Nombre, Descripcion?, …….]> Enlace externo: <?xml version=“1.0”?> <!DOCTYPE Receta SYSTEM “receta.dtd”> <Receta> ……. Alberto Gimeno Arnal XML 1.0 16

XML Schema. Ventajas sobre DTD XML Schema se basa en XML, lo cual permite validar los documentos. Soporta una serie de tipos de datos (int, float, boolean, date, etc.). Vocabulario abierto: permite definir nuevos tipos de datos y establecer nuevas relaciones de herencia. Soporta spacenames  asociar nodos individuales con las declaraciones de tipos de esquema. Soporta grupos de atributos  combinación de atributos. Alberto Gimeno Arnal XML 1.0 17

XML Schema: Estructura. <?xml version="1.0"?> <Schema name=“esqPeliculas" xmlns="urn:schemas-microsoft-com:xml-data" xmlns:dt="urn:schemas-microsoft-com:datatypes"> <ElementType name=“titulo" content="textOnly"/> <ElementType name="writer" content="textOnly"/> <ElementType name="producer" content="textOnly"/> <ElementType name="director" content="textOnly"/> <ElementType name="actor" content="textOnly"/> <ElementType name="comments" content="textOnly"/> <AttributeType name=“genero" dt:type=“enumeration " dt:values="drama comedia aventuras sci-fi misterio horror romance documental" default="drama"/> <AttributeType name=“categoria" dt:type="enumeration" dt:values="G PG PG-13 R X" default="PG"/> <AttributeType name=“valoracion" dt:type="enumeration" dt:values="1 2 3 4 5" default="3"/> <AttributeType name=“año" dt:type="int"/> <ElementType name=“peliculas" content="eltOnly"> <element type=“peli" minOccurs="1" maxOccurs="*"/> </ElementType> </Schema> Alberto Gimeno Arnal XML 1.0 18

XML Schema: Tipos de Declaraciones. Describe los tipos de datos en los elementos y los atributos. (<datatype) Describe tipos de elementos. (<ElementType) Identifica un elemento que puede reproducirse dentro de otro. (<element) Organiza los elementos en grupos. (group) Describe un tipo de atributo. (<AttributeType) Identifica un atributo que puede reproducirse dentro de otro. (<attribute) Alberto Gimeno Arnal XML 1.0 19

XML Schema: ElementType. name, nombre del elemento. model content, tipo de contenido (textOnly, eltOnly, empty, mixed) order, orden de los elementos secundarios y grupos que hay en el elemento (one, seg, many) dt:type, tipo de elemento. (coincide con los tipos de datatype) Alberto Gimeno Arnal XML 1.0 20

XML Schema: AttributeType. name, nombre del tipo de atributo. dt:type, tipo de datos del atributo. dt:values, lista de los posibles valores del atributo (dt:type=“enumeration”) default. required. Alberto Gimeno Arnal XML 1.0 21

XML Schema: element/attribute. type, tipo del elemento/atributo. Debe ser el nombre de un tipo de elemento ya declarado. minOccurs, numero mínimo de veces que el elemento/atributo debe producirse. maxOccurs, numero máximo de veces que el elemento/atributo debe producirse Alberto Gimeno Arnal XML 1.0 22

XML Schema: Tipos de datos. Declaración al principio del documento XML Schema  xmlns:dt char boolean int float number i1 fixed 14.4 ui1 bin.hex dateTime i2 r4 ui2 bin.base64 dateTime.tz i4 r8 ui4 date time uuid uri time.tz Alberto Gimeno Arnal XML 1.0 23

Plantilla XSL: Estructura. <?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html><head><title>AGENDA XML</title></head><body > <xsl:for-each select='agenda/contacto'> <xsl:value-of select='nombre' />, <b><xsl:value-of select='apellidos' /></b> <br/> <b><xsl:value-of select='direccion'/></b> <br/> <xsl:value-of select='cp'/> <i><xsl:value-of select='ciudad'/></i> ( <b><xsl:value-of select='provincia'/></b>) <br/> Tfno.:<xsl:value-of select='tfno/movil'/> - <xsl:value-of select='tfno/casa'/> <br/> E-mail: <xsl:value-of select='correo'/> <br/> <hr /> </xsl:for-each > </body></html> </xsl:template> Alberto Gimeno Arnal XML 1.0 24

XSLT: Tipos de elementos. xsl:value-of, insertar el valor de un elemento o atributo (select). xsl:if, establece una ramificación condicionada (match). xsl:for-each, bucle (select, order-by) xsl:apply-templates, aplica plantillas secundarias (select). Alberto Gimeno Arnal XML 1.0 25

XPath. Es un lenguaje no XML. Proporciona una vía abstracta de dirigirse a partes de documentos XML. Sintaxis diseñada para ser usada con URI y valores de atributos XML (máxima simplicidad). Organización del documento en árbol de nodos Recorre el árbol a través de expresiones. Alberto Gimeno Arnal XML 1.0 26

Árbol XPath: Nodos raíz. Nodos de elementos. Nodos de texto. Nodos de atributos. Nodos de espacios de nombres. Nodos de instrucciones de procesamiento. Nodos de comentarios. Alberto Gimeno Arnal XML 1.0 27

XPath: Tipos de datos mode-set, conjunto de datos. boolean, (true|false). number, número de coma flotante. string, cadena de texto. Alberto Gimeno Arnal XML 1.0 28

Vincular documentos: XLink y XPointer. XLink, determina el documento al que se desea enlazar. type(locator, simple, extend, arc, group), href, from, to, show, actuate, role, title. XPointer, marca el lugar exacto de dicho documento. Rutas absolutas: Root(/), id(Name), here(), origin() Rutas relativas: child, parent, descendant, descendant-or-seft, ancestor, ancestor-or-seft, preceding-sibling, following-sibling, preceding, following, seft, attribute. Alberto Gimeno Arnal XML 1.0 29

XLink: Estructura. Extendido: Simple: <AUTOR xlink:href=“autores.xml#juan” xlink:show=“new”> <NOMBRE>Juan Primero Segundo</NOMBRE> </AUTOR> Extendido: <EDITOR_AUTOR xlink:extended> <xlink:locator href=“#ana” id=“editor”/> <xlink:locator href=“autores.xml#juan” id=“autor”/> <xlink:arc from=“editor” to=“autor” show=“replace”/> </EDITOR_AUTOR xlink:extended> Alberto Gimeno Arnal XML 1.0 30

Patrón XSL: Estructura. Search context agenda.xml Query ./tfno Result Set <xql:result> <tfno>56983265</tfno> <tfno>58746912</tfno> <tfno>65229105</tfno> </xql:result> Alberto Gimeno Arnal XML 1.0 31

XSL: Cadenas de consulta. Jerárquicas: Consultas primarias-secundarias, / Ascendiente-Descendiente, // Comodines, * Secuenciales: Precedencias inmediatas, ; Precedencias, ;; Localizar un atributo: Devolver atributos, @ Filtrar, ‘contacto[@clase=‘practicas’]/nombre’ Métodos: text(), value(), nodeType(), nodeName(), index(), end(). Alberto Gimeno Arnal XML 1.0 32

XSL: Consultas. <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"> <xsl:template match="/"> <xsl:apply-templates select=‘//contacto'> </xsl:template> <xsl:template match=" contacto[@clase=‘practicas’]/nombre "> <b><xsl:value-of select=‘nombre'/></b> <br/> </xsl:stylesheet> Alberto Gimeno Arnal XML 1.0 33

Analizadores sintácticos: parser. Validación de los documentos XML, interfaz (API) que proporciona llamadas a funciones y procedimientos que proporcionen métodos y mecanismos para manipular documentos XML, existen dos tipos: DOM, script’s (java, vb, c++, c#,…) SAX, JAVA. Alberto Gimeno Arnal XML 1.0 34

DOM: Modelo de Objeto de Documento. Interfaz (Document, DocumentFragment, Node, NodeList, NamedNodeMap, CharacterData, Attr, Element, Text) Nodos y secciones (CDATASection, Notation, EntityReference, Entity, ProcessingInstruction) Objetos. Métodos. Atributos. Alberto Gimeno Arnal XML 1.0 35

SAX: Simple API para XML. Parser.parser()/HandlerBase() Interfaz DocumentHandler Retrollamadas (elementos, documentos, texto) Procesamiento (instrucciones, plantillas) Objetos (ErrorHandler, InputSource, Locator) Alberto Gimeno Arnal XML 1.0 36