Fecha de edición: Septiembre 2005

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Fecha de edición: Septiembre 2005"

Transcripción

1 XML!"#$ % #&'()* Fecha de edición: Septiembre 2005

2 Índice Índice...2 Lenguaje de Marcas...4 HTML...4 XML...5 Un Documento XML...6 Prologo...7 Declaración de XML...7 Comentarios...7 Instrucciones de procesamiento...7 Declaración de tipo de documento...7 Elemento Raiz...7 Elementos...8 Referencias...9 Secciones CDATA...9 Namespaces...9 Resumen de reglas para documentos bien-formados...10 DTD...10 Declaración de elementos...11 Declaración de atributos...14 Tipos de Atributos...14 Modificadores de atributos...15 Ejemplos de declaraciones de atributos...15 Declaración de entidades...15 Declaración de entidades parametro...16 DTD ejemplo...16 Resumen de reglas...16 Problemas de los DTD...17 XML Schema...17 Declaración de elementos y atributos...18 Declaración de elementos...19 Declaración de atributos...19 Declaración de elementos simples y complejos...19 Declaración de elementos simples...20 Declaración de elementos complejos...21 Definicion de nuevos tipos...22 Definición de tipos mediante extension...24 Declaracion de elementos de contenido mixto...25 Declaración de elementos unicos...25 Declaración de referencias a elementos...26 Inclusión de otros schemas...28 Redefinir schemas...28 Comentarios en schemas...29 XPATH...29 Relacion...29

3 Tipo-nodo...30 Ejemplos XPath...30 Predicados...31 Ejemplos XPath con predicados...32 Arbol XPath...32 Arbol XPath de ejemplo...32 Parsers XML...34 DOM...34 Limitaciones de DOM...34 SAX...34 Limitaciones de SAX...35 DOM o SAX?...35 Tecnologías relacionadas con XML...36 XSL...36 Seguridad...36 Servicios Web...37 XLink...38 RSS...38 MathML...38 SVG...38 XBRL...39 XHTML...39 RDF...39 FOAF...40 DOAC...40 XUL...40 Otros...40

4 Lenguaje de Marcas En los años 60, IBM intentó resolver sus problemas asociados al tratamiento de documentos en diferentes plataformas a través de GML (Generalized markup Language). El principal problema era que cada aplicación utilizaba sus propias marcas para describir los diferentes elementos. Las marcas son códigos que indican a un programa cómo debe tratar su contenido y así, si se desea que un texto aparezca con un formato determinado, dicho texto debe ir delimitado por la correspondiente marca que indique como debe ser mostrado en pantalla o impreso. Y lo mismo ocurre con todas las demás características de cualquier texto. Ejemplos pueden tenerlos en mente los usuarios de WordPerfect. Conociendo este sistema y conociendo a la perfección el sistema de marcas de cada aplicación sería posible pasar información de un sistema a otro sin necesidad de perder el formato indicado. La forma que IBM creó para solventar esto se basaba en tratar las marcas como texto accesible desde cualquier sistema, texto plano, código ASCII. Y la norma se denominó GML (General Modeling Language). Más tarde GML pasó a manos de ISO y se convirtió en SGML ( ISO 8879), Standart Generalized Markup Language. Esta norma es la que se aplica desde entonces a todos los lenguajes de marcas, cuyos ejemplos más conocidos son el HTML y el RTF. Los lenguajes de marcas no son equivalentes a los lenguajes de programación aunque se definan igualmente como "lenguajes". Son sistemas complejos de descripción de información, normalmente documentos, que si se ajustan a SGML, se pueden controlar desde cualquier editor ASCII. Las marcas más utilizadas suelen describirse por textos descriptivos encerrados entre signos de "menor" (<) y "mayor" (>), siendo lo más usual que existan una marca de principio y otra de final. Se puede decir que existen tres utilizaciones básicas de los lenguajes de marcas: los que sirven principalmente para describir su contenido, los que sirven más que nada para definir su formato y los que realizan las dos funciones indistintamente. Las aplicaciones de bases de datos son buenas referencias del primer sistema, los programas de tratamiento de textos son ejemplos típicos del segundo tipo, y aunque no lo parezca, el HTML es la muestra más conocida del tercer modelo. HTML El lenguaje HTML es originariamente un subconjunto del más completo SGML. HTML nació como un estándar para modelado de datos en la web. En principio, la intención de HTML era que las etiquetas fueran capaces de marcar la información de acuerdo con su significado, sin importar cómo se mostraban en la pantalla. Lo importante era el contenido y no la forma, o sea, que era un lenguaje de marcas orientado a describir los contenidos. En otras palabras: el título del documento, los títulos de los apartados, el autor del documento, los textos resaltados,..., eran marcados por las etiquetas TITLE, Hx, ADDRESS, STRONG, etc., dejando a cada visualizador (browser) la tarea de formatear el documento según su criterio. Esto daba lugar a que una aplicación podía presentar una etiqueta H2 como texto centrado, con tamaño de 20 puntos y color rojo, mientras otra lo podía mostrar alineado a la izquierda, con tipo de letra Arial de 16 puntos y color Azul, por ejemplo. Una etiqueta

5 STRONG podría tomarse como cursiva, negrita o color verde, por ejemplo, según la interpretase el visualizador empleado. Esto producía presentaciones diferentes, pero permitía controlar fácilmente su contenido. Si una persona o un motor de búsqueda querían conocer el título del documento, el autor de la página o las cabeceras de los capítulos, siempre buscaba en el código las etiquetas TITLE, ADDRESS o Hx. Además, si a alguien no le gustaba la idea de dejar a cada aplicación la decisión de cómo mostrar el contenido de las etiquetas, siempre le quedaba la posibilidad de controlar el formato del documento con descripciones particulares, como es el caso de las hojas de estilo en cascada (CSS). Por diversos motivos, los creadores de los navegadores fueron añadiendo más etiquetas HTML dirigidas a controlar la presentación, como FONT, I, CENTER, xcolor, etc., y los usuarios las utilizaron para que sus documentos estuviesen perfectamente formateados, sin permitir diferencias importantes entre visualizadores distintos, por lo que HTML pasó a ser un lenguaje de marcas más dirigido al control de la presentación. Ahora es más difícil encontrar al autor o las cabeceras de los capítulos de un documento, pues todos los textos se describen con P y FONT, sobre todo si se utilizan los editores WYSIWYG (Microsoft FrontPage, Netscape Composer) que proliferan por doquier. El resultado fue que aparecieron páginas web que contenían tags (etiquetas) escritos para una versión especifica de browser y una resolución de pantalla especifica. Estas páginas son poco legibles en otros browser distintos para el cual fue diseñada y directamente inaccesibles para personas con capacidades distintas, como ciegos o gente con problemas visuales que necesitan fuentes grandes, o para personas que estén utilizando browser no gráficos. Esto ocasiono que HTML se convirtiera en un lenguaje para la presentación de datos. Si a esto le añadimos que para facilitar la vida a los usuarios, los analizadores sintácticos de las marcas que incluyen los navegadores permitieron saltarse algunas normas sin que el propio usuario lo notase (por ejemplo, permiten trabajar solo con la etiqueta <P>, cuando lo correcto es que se necesite las etiquetas de principio y de final: <P> y </P>), dando como resultado que HTML ya no es un lenguaje que sigue las normas estrictas del SGML. Llegados a un punto en el que HTML dejó de servir para su función inicial, no le ha quedado más remedio al Consorcio World Wide Web (W3C) la descripción de un nuevo subconjunto del SGML que sirva para describir contenidos de documentos, al que ha denominado XML, publicando las especificaciones de la versión 1.0 en XML XML (Lenguaje Extensible de Marcas) es un conjunto de reglas para definir etiquetas semánticas que organizan un documento en diferentes partes. XML es un metalenguaje para el modelado de datos, que define la sintaxis utilizada para definir otros lenguajes de etiquetas estructurados. Los objetivos de diseño para XML son: XML debe ser utilizable directamente sobre Internet. XML debe soportar una amplia variedad de aplicaciones.

6 XML debe ser compatible con SGML. Debe ser 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 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 deben ser fáciles de crear. La brevedad en la marcación es de mínima importancia. La particularidad más importante del XML es que no posee etiquetas prefijadas con anterioridad, ya que es el propio diseñador el que las crea a su antojo, dependiendo del contenido del documento. De esta forma, los documentos XML con información sobre libros tienen etiquetas como <AUTOR>, <EDITORIAL>, <Nº_DE_PÁGINAS>, <PRECIO>, <ISBN>, etc., mientras que los documentos XML relacionados con educación incluyen etiquetas del tipo de <ASIGNATURA>, <ALUMNO>, <CURSO>, <NOTA>, etc. Esto produce documentos más fáciles de entender por cualquiera, permitiendo también mejores búsquedas en los mismos, permitiendo especificar no solo qué buscar sino además en qué contexto debe aparecer. XML es un subconjunto de SGML y XHTML (HTML que cumple las normas XML) es un subconjunto de XML. Un objeto de datos es un Documento XML si es bien formado, tal y como es definido en la especificación de XML. Un documento XML bien formado puede ser adicionalmente válido si cumple con algunas restricciones adicionales. Un Documento XML <?xml version="1.0" encoding="utf-8"?> <!-- Documento XML de ejemplo --> <?open libros.dat?> <!DOCTYPE libros SYSTEM "libros.dtd"> <libros> <libro ISBN=" "> <titulo>sistemas Operativos</titulo> <autor>tanenbaum</autor> <descripcion>libro de sistemas operativos</descripcion> </libro> <libro ISBN=" "> <titulo>redes de Computadoras</titulo> <autor>&autor;</autor> <descripcion>libro de redes de computadoras</descripcion> </libro>

7 </libros> Prologo Al comienzo del documento se encuentra el prologo: <?xml version="1.0" encoding="utf-8"?> <!-- Documento XML de ejemplo --> <?open libros.dat?> <!DOCTYPE libros SYSTEM "libros.dtd"> Declaración de XML La primera linea es la declaracion de XML, donde se indica la versión de XML (solo existe la 1.0 actualmente) y la codificación del documento. La declaración comienza con un signo de interrogación y la palabra reservada xml. No se obligatoria esta declaración, pero si existe, debe ser lo primero del documento. Comentarios En el prologo podemos tener comentarios, como el que se encuentra en la segunda linea. Los comentarios se delimitan entre <!-- y -->. Instrucciones de procesamiento En la tercera linea tenemos una instrucción de procesamiento (PI), utilizada para enviar intrucciones a la aplicación que utilizara el documento xml. Las PI se delimitan entre <? y?>. Podemos tener tantas PI como sea necesario. Declaración de tipo de documento Ademas podemos tener la declaración del tipo de documento (la cuarta linea), donde se indica la estructura del documento para considerarlo valido. En el prologo tambien pueden existir espacios en blanco, que pueden ser espacios, tabuladores o lineas en blanco. Elemento Raiz

8 Luego del prologo, se encuentra el elemento raiz. En este caso el elemento libros. Todo documento xml debe tener un unico documento raiz, que contenga a todos los demas elementos del documento. Elementos Los elementos se delimitan por una etiqueta de comienzo de elemento y por una etiquetea de fin de elemento. La etiqueta de comienzo de elemento consta del signo <, seguida del nombre del elemento, luego opcionalmente una lista de atributos separada por un espacio en blanco, y el signo > al final de la etiqueta ( <libros> en el documento de ejemplo). La etiqueta de fin de elemento consta del signo <, luego una /, seguida del nombre del elemento y el signo > ( </libros> ). Todo lo que se encuentre entre estas dos etiquetas se considera el contenido del elemento. Por ejemplo: <elemento atributo1= valor1 atributo2= valor2 > Este es el contenido del elemento, que podria contener otros elementos. </elemento> Toda etiqueta de comienzo debe tener su correspondiente etiquete de fin y todos los elementos deben estar correctamente anidados, no permitiendo solapar etiquetas. Por ejemplo, la siguiente estructura esta prohibida: <a> </b> <b> </a> Un elemento puede contener otros elementos, texto, comentarios, instrucciones de procesamiento, referencias y secciones CDATA. Existe un caso especial de elemento, el elemento vacio. Un elemento vacio no posee ningun contenido y solo puede tener atributos. Los elementos vacios se pueden modelar de dos maneras. La primera es con una etiqueta de comienzo, seguida de una etiqueta de fin. La otra es un con una etiqueta (etiqueta de elemento vacio), que posee el signo <, seguida del nombre del elemento, luego puede tener atributos, y por ultimo un espacio opcional y los caracteres /> ( <vacio /> ). Los nombres de los elementos deben tener la características de un nombre de xml. El primer carácter debe ser una letra, un guion bajo ( _ ) o un dos puntos ( : ). Los demas caracteres pueden ser una letra, un digito, un punto (. ), un guion ( - ), un guion bajo ( _ ) o un dos puntos ( : ). Los atributos de un elemento se colocan en la etiqueta de comienzo de elemento, colocando el nombre del atributo, luego el signo = y luego el valor del atributo entre comillas simples o dobles, las mismas en los dos extremos. El nombre de un atributo debe tener las características de un nombre de xml descriptas anteriormente. No pueden existir dos

9 atributos con el mismo nombre en un mismo elemento y cada atributo debe tener asignado un valor. XML es sensible a las mayúsculas, por ende, no el lo mismo el elemento elemento que el elemento ELEMENTO, ni tampoco es lo mismo el atributo atributo que el atributo ATRIBUTO. Para que un documento XML sea considerado como tal, debe cumplir con cada restricción detallada en la especificación de XML. Si no cumple con alguna restricción, se considera que no es un documento bien formado, y por ende, no es un documento XML. La especificación completa de XML se puede encontrar en Referencias Un elemento tambien puede contener referencias. Existen las referencias a carácter y las referencias a entidad. Con las referencias a carácter se puede representar cualquier carácter mediante su codificación y con las referencias a entidad se puede representar cualquier cantidad de caracteres mediante el nombre definido para esa entidad. Existen entidades previamente definidas, como por ejemplo, amp ( & ), gt ( > ), lt ( < ), quot ( ), apos ( ). Tambien se pueden definir otras entidades en la declaración del tipo de documento. Las entidades se referencias mediante la adicion del carácter & antes de su nombre, seguidas de ;. Cada vez que aparezca una referencia, ya sea a carácter o a entidad, el parser de xml reemplazara a la referencia por su contenido referenciado. Los caracteres &, >, <, y no pueden aparecer como texto de un elemento y deben utilizarse las entidades predefinidas. Secciones CDATA Las secciones CDATA pueden aparecer como contenido de un elemento. Se declaran con <![CDATA [, luego el contenido y ]]> para finalizar la seccion CDATA. Dentro de las secciones CDATA puede aparecer cualquier carácter, sin necesidad de utilizar las entidades predefinidas para hacer referencias a los caracteres no permitidos. Se debe tener precaucion al colocar contenido binario en las secciones CDATA, debido a que la combinación ]]> puede estar contenida en el mismo, cerrando la seccion CDATA y destruyendo la estructura del documento. Namespaces Para permitir la reusabilidad de los elementos de un documento xml, existen los Namespaces (espacios de nombres). Con las Namespaces se puede hacer referencia a elementos que pertenecen a distintos espacios de nombres, permitiendo que existan elementos con el mismo nombre pero que corresponden a nombres de espacio diferentes, haciendo referencia a significados distintos. Por ejemplo, puede existir el elemento nombre perteneciente al Namespace persona y el elemento nombre perteneciente al

10 Namespace producto. Los dos poseen el mismo nombre ( nombre ), pero tienen significados distintos. Un Namespace se define en el atributo xmlns:referencia de un elemento, donde referencia es la referencia al espacio de nombres que se esta declarando. Por ejemplo: <libros xmlns:persona= xmlns= > En este ejemplo se declara el Namespace con la referencia persona. Cuando se quiere hacer referencia a un elemento de ese espacio de nombres, se coloca la referencia al espacio de nombres ( persona ), luego : y luego el nombre del elemento. En el ejemplo luego se declara otro Namespace, donde no se especifica ninguna referencia para ese espacio de nombres. De este modo, se declara a un Namespace, como el espacio de nombres por defecto. Cuando un elemento no posee una referencia a un espacio de nombres determinado, el Namespace correspondiente es el espacio de nombres por defecto. Un espacio de nombres puede ser utilizado en el elemento que se lo declara y en todos los elementos que contiene el mismo. Resumen de reglas para documentos bien-formados Resumen de reglas para que un documento este bien-formado: Debe tener un unico elemento raiz. Los elementos deben estar correctamente anidados. Todos los elementos deben tener un tag de comienzo y fin. No se pueden repetir nombres de atributos en un mismo elemento. Los nombres de los atributos y elementos deben seguir la definicion dada. Los atributos deben tener un valor. Los valores de los atributos deben estar entre comillas (dobles o simples). DTD El DTD es la declaración del tipo de documento. En el se declara la estructura que debe poseer un documento para ser considerado valido. No debe confundirse el termino valido con el termino bien formado. Un documento es bien formado cuando cumple con la especificación de XML. Un documento XML es valido cuando cumple con la estructura definida en el DTD que posee asociado. Por ende, un documento XML puede ser valido con un DTD especifico y no serlo con otro, pero sigue siendo un documento XML bien formado. El DTD se declara en el prologo del documento XML. Existen tres formas: 1_ <!DOCTYPE libros SYSTEM "libros.dtd"> 2_ <!DOCTYPE libros PUBLIC "http://libros.org/libros.dtd"> 3_ <!DOCTYPE libros [ contenido del DTD ]>

11 En la primera y en la segunda, se hace referencia a un archivo externo que posee la definición del DTD a utilizar. Las dos son similares, pero la PUBLIC se utiliza para DTDs de libre acceso para el publico, que definen standars para documentos XML de diferentes materias. En la tercera, la definición del DTD se realiza en el mismo archivo donde se encuentra el documento XML. Declaración de elementos Para declarar la estructura de un elemento se utiliza: <!ELEMENT nombre contenido> Donde nombre es el nombre del elemento que se esta definiendo su estructura y contenido es el contenido permitido para dicho elemento. Como contenido del elemento se indican los nombres de los elementos que este puede contener. Con, se indican la secuencia de elementos, y con se indica la elección entre varios elementos. Por ejemplo: <!ELEMENT nombre (e1,e2)> Indica que el elemento nombre posee al elemento e1, seguido del elemento e2. No cumple con la declaración del elemento si el elemento nombre posee al elemento e2 y luego al e1. El elemento nombre posee un solo elemento e1, y luego un solo elemento e2. Se puede utilizar los modificadores para indicar la cantidad. Mediante + se indica que puede haber un elemento o mas; con * se indica que puede haber cero o mas elementos; con? se indica que el elemento es opcional, o sea que puede haber cero o una ocurrencia del elemento. Si no se indica ningún modificador de cantidad, se considera que el elemento debe ocurrir una y solo una vez. Por ejemplo: <!ELEMENT nombre (e1?,e2*,e3+,e4)> Indica que el elemento nombre posee uno o ningún elemento e1, seguido de cero o mas elementos e2, seguido de uno o mas elementos e3, y por ultimo un elemento e4. Las siguientes estructuras serian validas: <nombre> <e3 /> <e4 /> </nombre <nombre>

12 <e1 /> <e2 /> <e2 /> <e3 /> <e4 /> </nombre> <nombre> <e1 /> <e3 /> <e3 /> <e4 /> </nombre> Las siguientes estructuras no serian validas: <nombre> <e4 /> </nombre> Por lo menos debe existir un elemento e3. <nombre> <e3 /> </nombre> Por lo menos debe existir un elemento e4. <nombre> <e1 /> <e1 /> <e3 /> <e4 /> </nombre> El elemento e1 puede aparecer cero o una vez. <nombre> <e3 /> <e4 /> <e2 /> <e1 /> </nombre> El orden de los elementos no es el correcto. Otro ejemplo: <!ELEMENT nombre (e1 e2 e3)>

13 Indica que el elemento nombre posee un elemento e1 o un elemento e2 o un elemento e3, pero solo uno de ellos. Se pueden utilizar las secuencias, las elecciones y los modificadores, todos juntos en la declaración de un elemento. Por ejemplo: <!ELEMENT nombre (e1?,(e2 e3)+)*> Indica que el elemento nombre posee un elemento e1 opcional, luego un elemento e2 o un elemento e3, y esta elección puede ocurrir mas de una vez. Todo el conjunto puede ocurrir cero o mas veces. Las siguientes estructuras serian validas: <nombre> </nombre> <nombre> <e1 /> <e2 /> <e2 /> </nombre> <nombre> <e2 /> <e3 /> </nombre> <nombre> <e3 /> <e1 /> <e2 /> </nombre> La siguiente estructura no seria valida: <nombre> <e1 /> </nombre> Existe un contenido especial que es ANY que permite cualquier elemento como contenido. <!ELEMENT nombre ANY> Permite que el elemento nombre contenga cualquier elemento. Tambien existe EMPTY que indica que el elemento es vacio. <!ELEMENT nombre EMPTY>

14 Para permitir que un elemento contenga texto o texto y otros elementos se debe declarar como de contenido mixto. Para declarar un elemento que solo puede contener texto: <!ELEMENT nombre (#PCDATA)> Para declarar un elemento que puede contener texto y otros elementos : <!ELEMENT nombre (#PCDATA e1 e2)*> Indica que el elemento nombre puede contener texto, al elemento e1 y al elemento e2. Cuando se define un elemento de contenido mixto no se puede determinar la secuencia de los elementos y siempre se debe colocar un * al final de la declaración del contenido. Declaración de atributos Para declarar los atributos de un elemento se utiliza: <!ATTLIST elemento atributo1 tipo1 modificador1 atributo2 tipo2 modificador2...> Donde elemento es el nombre del elemento para el cual se esta declarando la lista de atributos, atributo1 es el nombre del primer atributo, tipo1 es el tipo y modificador1 es el modificador. A continuación se pueden declarar otros atributos para el mismo elemento, hasta finalizar con >. Tipos de Atributos Los tipos de atributos pueden ser: CDATA: texto. ID: identifica univocamente al elemento y debe emparejar con el significado de nombre. IDREF: hace referencia a un elemento que posee el mismo valor en un atributo de tipo ID. IDREFS: lista de IDREF separada por espacios. NMTOKEN: debe emparejar con el significado de nmtoken (todos sus caracteres deben letras, digitos, puntos (. ), guiones ( - ), guiones bajo ( _ ) o dos puntos ( : )). NMTOKENS: lista de NMTOKEN separada por espacios. ENTITY: debe emparejar con el significado de nombre y con el nombre de una entidad declarada. ENTITIES: lista de ENTITY separada por espacios. (en1 en2...): enumeración de valores posibles (deben ser nmtoken).

15 Modificadores de atributos Los modificadores pueden ser: Valor: valor por defecto del atributo. #REQUIRED: indica que el atributo es obligatorio. #IMPLIED: indica que el atributo es opcional. #FIXED valor: indica que el valor del atributo siempre debe ser valor. Ejemplos de declaraciones de atributos Algunos ejemplos: <!ATTLIST foo color (verde azul) verde> <!ATTLIST persona documento CDATA #REQUIRED tipo (DNI CI LE) DNI> <!ATTLIST combo visible (yes no) yes> <!ATTLIST foo a CDATA #IMPLIED> Declaración de entidades En el DTD tambien se pueden declarar las entidades, que luego pueden ser referenciadas en todo el documento XML. Se declaran de este modo: <!ENTITY nombre valor> Donde nombre es el nombre de la entidad y valor es el valor de dicha entidad, entre comillas dobles o simples. Ejemplo: <!ENTITY autor Lewis Carrol > Cada vez que aparezca &autor; en el documento XML, sera reemplazado por Lewis Carrol. No puede declararse una entidad que posea un referencia recursiva a si misma, provocando un error de mal formación. Ademas puede definirse una entidad externa del siguiente modo: <!ENTITY nombre SYSTEM "URI/URL"> Donde se indica el URI o la URL donde se encuentra el texto de reemplazo de la entidad. Tambien puede utilizarse PUBLIC en cambio de SYSTEM.

16 Declaración de entidades parametro Ademas existen las entidades parámetros, que a diferencia de las entidades anteriores, solo pueden ser referenciadas dentro del DTD y se utiliza % en cambio de &. Es un error de mal formación referenciar una entidad parámetro fuera del DTD. Se declaran de este modo: <!ENTITY % nombre valor> Por ejemplo: <!ENTITY % tipos_doc (DNI CI LE) > Luego podriamos declarar los atributos del elemento persona de este modo: <!ATTLIST persona documento CDATA #REQUIRED tipo %tipos_doc; DNI> DTD ejemplo La declaración de DTD para el archivo XML de libros podria ser: <!DOCTYPE libros [ <!ENTITY autor Tanenbaum > <!ENTITY % isbn ISBN CDATA #REQUIRED > <!ELEMENT libros (libro)+> <!ATTLIST libros cantidad CDATA #IMPLIED> <!ELEMENT libro (titulo,autor,descripcion?)> <!ATTLIST libro %isbn;> <!ELEMENT titulo (#PCDATA)*> <!ELEMENT autor (#PCDATA)*> <!ELEMENT descripcion (#PCDATA)*> ]> Resumen de reglas Resumen de reglas para que un documento sea valido: Debe cumplir las especificaciones del DTD mediante el cual se valida. El nombre en la declaracion del tipo de documento debe ser igual al nombre del elemento raiz. No se puede declarar mas de una vez un elemento. No puede aparecer mas de una vez el mismo elemento en las declaraciones de elementos mixtos. No es un error declarar atributos para elementos no declarados.

17 Si existen varias declaraciones de atributos para un mismo elemento, son concatenadas. Si existen varias definiciones de atributos para el mismo atributo se utiliza la primera definición encontrada. Si se declara mas de una vez una entidad, la primera es utilizada. Problemas de los DTD Los DTD no permiten definir tipos de datos, ni herencia o derivación de nuevos tipos. Posee un modelo de elementos pobre, con la carencia de poder indicar el contenido de un elemento que no sea en un orden especifico (se puede hacer pero de forma no elegante). Tampoco permite la restricción de los valores que puede tomar un atributo, como la validación de un rango en un atributo numérico. Tampoco posee valores por defecto para los elementos. Además no esta escrito en sintaxis de XML. Existen Alternativas a los DTD, como ser: XML Schema RelaxNG Schematron XML Schema En reemplazo de los modestos DTD, surge XML Schema. Schema permite definir la estructura de un documento XML y luego validarlos contrastándolos con la estructura definida. Con XML Schema se posee un mayor poder para definir la estructura de un documento XML válido. Algunas ventajas sobre los DTDs: Los esquemas usan sintaxis XML: un esquema XML es un documento XML. Esto significa que se puede procesar un esquema igual que cualquier otro documento XML. Los esquemas XML soportan tipos de datos: en los esquemas existen varios tipos de datos definidos. Los esquemas XML son extensibles: además de los tipos de datos ya definidos, se pueden crear tipos de datos propios y se pueden derivar nuevos tipos de datos a partir de otros. Los esquemas XML permite restricciones en los valores de los atributos. Mediante la adición del atributo xmlns:xsi (donde se declara el espacio de nombres xsi, XML Schema Instance) y el atributo xsi:nonamespaceschemalocation, que indica la

18 ubicación del archivo donde se especifica el schema, se indica que su contenido debe corresponder con la estructura declarada en un Schema. Por ejemplo: <libro ISBN= 123 xmlns:xsi= xsi:nonamespaceschemalocation= libro.xsd > <titulo>so</titulo> <autor>tanenbaum</autor> </libro> Tambien se puede definir un namespace propio y utilizar el atributo xsi:schemalocation para indicar el URI donde se encuentra el archivo de schema. Por ejemplo: <libros:libro xmlns:xsi= xmlns:libros= xsi:schemalocation= > Luego en el archivo libro.xsd se define la estructura del documento xml con Schema. Un posible Schema seria: <xsd:schema xmlns:xsd= > <xsd:element name= libro > <xsd:complextype> <xsd:sequence> <xsd:element name= titulo type= xsd:string /> <xsd:element name= autor type= xsd:string /> </xsd:sequence> <xsd:attribute name= ISBN type= xsd:string use= required /> </xsd:complextype> </xsd:element> </xsd:schema> En la etiqueta de inicio del elemento schema se define el espacio de nombres xsd (XML Schema Definition), al cual pertenece el elemento schema mismo. Dentro del mismo se definen los distintos elementos y atributos de cada elemento que posee un documento xml que sera validado por ese schema. Declaración de elementos y atributos Mediante los elementos xsd:element y xsd:attribute se declaran los elementos y los atributos respectivamente. Cuando se declara un elemento se indica su nombre mediante el atributo name y se puede definir el tipo de elemento mediante el atributo type. Cuando se

19 declara un atributo se indica su nombre mediante el atributo name, el tipo mediante el atributo type y si es obligatorio o no, mediante el atributo use. Existen 40 tipos predifinidos como string, integer, decimal, float, boolean, time, date, etc. Declaración de elementos Para definir el tipo de un elemento especifico se utiliza: <xsd:element name= nombre type= tipo /> Donde nombre es el nombre del elemento que se esta declarando su tipo y tipo, su tipo. Los tipos predefinidos comienzan con el prefijo xsd:, correspondiente al namespace xsd, y luego el nombre del tipo predefinido. Por ejemplo: <xsd:element name= titulo type= xsd:string /> Declara al elemento titulo de tipo string. Declaración de atributos Para definir el tipo de un atributo se utiliza: <xsd:attribute name= nombre type= tipo use= uso /> Donde nombre es el nombre del atributo que se esta declarando su tipo, tipo es el tipo de atributo y uso indica si el atributo es obligatorio o no. Los valores posibles del atributo use son: required = obligatorio optional = opcional prohibited = prohibido Un ejemplo de la declaracion de un atributo es: <xsd:attribute name= ISBN type= xsd:string use= required /> Declara al atributo ISBN de tipo string y que su uso es obligatorio. En los elementos xsd:element y xsd:attribute tambien existe el atributo default, que indica el valor por defecto, y el atributo fixed, que indica que el valor es siempre el mismo. Declaración de elementos simples y complejos

20 Ademas de los tipos predefinidos, Schema permite definir tipos de elementos. Exiten dos tipos generales de elementos: Elemento Simple: no puede contener otros elementos ni atributos. Para definir estos elementos se utiliza el elemento xsd:simpletype. Elemento Complejo: puede contener otros elementos y/o atributos. Para definir estos elementos se utiliza el elemento xsd:complextype. Declaración de elementos simples Ejemplo de declaracion de un elemento simple: <xsd:element name= stock > <xsd:simpletype> <xsd:restriction base= xsd:integer > <xsd:mininclusive value= 1 /> <xsd:maxinclusive value= 10 /> </xsd:restriction> </xsd:simpletype> <xsd:element> Declara al elemento stock como de tipo simple. Luego utiliza al elemento xsd:restriction para establecer una restricción en los valores de un tipo de elemento base, en este caso entero. Luego se indica el posible rango de valores mediante los elementos xsd:mininclusive y xsd:maxinclusive. Tambien se pueden definir restricciones mediante enumeraciones de los valores posibles utilizando el elemento xsd:enumeration, definir restricciones mediante patrones de expresiones regulares utilizando el elemento xsd:pattern o definir restricciones mediante longitudes minimas y máximas utilizando el elemento xsd:minlength y xsd:maxlength, respectivamente. Algunos ejemplos de elementos simples: <xsd:element name="car"> <xsd:simpletype> <xsd:restriction base="xsd:string"> <xsd:enumeration value="audi"/> <xsd:enumeration value="golf"/> <xsd:enumeration value="bmw"/> </xsd:restriction> </xsd:simpletype> </xsd:element> <xsd:element name="letter"> <xsd:simpletype> <xsd:restriction base="xsd:string"> <xsd:pattern value="[a-z]"/>

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

XML, parte 3. M. en C. Erika Vilches XML, parte 3 M. en C. Erika Vilches Creando Document Type Definitions Qué es un DTD? Las Document Type Definitions permiten restringir el contenido de los documentos XML Especificar qué tipos de contenido

Más detalles

ESQUEMAS INTRODUCCION A LA VALIDACIÓN DE DOCUMENTOS MEDIANTE ESQUEMAS. 7.3 Partes importantes de los esquemas. 7.3.4 Repeticiones de elementos

ESQUEMAS INTRODUCCION A LA VALIDACIÓN DE DOCUMENTOS MEDIANTE ESQUEMAS. 7.3 Partes importantes de los esquemas. 7.3.4 Repeticiones de elementos Apuntes básicos del Tema 7 ESQUEMAS INTRODUCCION A LA VALIDACIÓN DE DOCUMENTOS MEDIANTE ESQUEMAS Contenidos: 7.0 Introducción y definición 7.1 Comenzando con un ejemplo 7.2 Introducción a los namespace

Más detalles

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

Sistemas de Información 12/13 XML (extensible Mark-up Language) 12/13 XML (extensible Mark-up Language) Departamento Informática e Ingeniería de Sistemas Universidad de Zaragoza (raqueltl@unizar.es) " Guión Introducción Ejemplos Documentos vs apliaciones XML Espacios

Más detalles

TEMA 35: Estándares SGML y XML. Entornos de aplicación.

TEMA 35: Estándares SGML y XML. Entornos de aplicación. Entornos de aplicación TEMA 35: Estándares SGML y. Entornos de aplicación. Índice 1 INTRODUCCIÓN 1 2 SGML 2 2.1 Cómo funciona SGML? 2 2.2 Definición de la sintaxis de un lenguaje SGML 3 2.3 Declaración

Más detalles

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

XML: extensible Markup Language (Parte I) Ingeniería de la Información XML: extensible Markup Language (Parte I) DTDs Ingeniería de la Información Tabla de Contenidos Introducción histórica XML vs. HTML Características de XML Mi primer documento XML El lenguaje XML Entidades

Más detalles

extensible Markup Language

extensible Markup Language extensible Markup Language ISLN ISLN () XML 1 / 26 Librería LWP::Simple Bajarse el archivo de internet Para bajar archivos de internet se puede usar alguno de los módulos del CPAN http://search.cpan.org

Más detalles

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.

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. 3.1 Tipos de DTDs Introducción (I)! El DTD es un documento que nos permite definir un dialecto XML.! DTD " Document Type Definition! Si queremos validar un documento XML (para comprobar si cumple las normas

Más detalles

extensible Markup Language (XML)

extensible Markup Language (XML) extensible Markup Language (XML) 1. INTRODUCCIÓN Jennifer Pérez Benedí Departamento de Sistemas Informáticos y Computación Universidad Politécnica de Valencia C/Camino de Vera s/n E-46071 Valencia- España

Más detalles

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

Tema 4 Metadatos. Eduardo Martínez Graciá Humberto Martínez Barberá Tema 4 Metadatos Eduardo Martínez Graciá Humberto Martínez Barberá Departamento de Ingeniería de la Información y las Comunicaciones Universidad de Murcia Metadatos Definición: datos sobre datos Fichero:

Más detalles

SINTAXIS DE LOS XML SCHEMA

SINTAXIS DE LOS XML SCHEMA SINTAXIS DE LOS XML SCHEMA Introducción Qué es XML Schema: es un conjunto de reglas que sirve para forzar la estructura y las restricciones de los contenidos de los documentos XML de una forma muy precisa

Más detalles

XML. El nuevo lenguaje universal

XML. El nuevo lenguaje universal Tema: XML el nuevo lenguaje universal. Autor: Marlene Melián Montalvo Institución: CITMATEL. Este trabajo consiste en una introducción al lenguaje XML. En el mismo se da a conocer su surgimiento, definiciones

Más detalles

IES Pablo Serrano-ASIR1D/DAM1D-B.Soler XML

IES Pablo Serrano-ASIR1D/DAM1D-B.Soler XML IES Pablo Serrano-ASIR1D/DAM1D-B.Soler Contenidos 1. Introducción 2. Quién ha creado? 3. Definición según W3C 4. Qué es? 5. Objetivos 6. Para qué sirve? 7. Con ya vale? 8. Tecnologías asociadas 9. Familia

Más detalles

XML práctico Bases esenciales, conceptos y casos prácticos (2ª edición)

XML práctico Bases esenciales, conceptos y casos prácticos (2ª edición) Introducción al lenguaje XML 1. De SGML a XML 17 2. Los conceptos básicos del XML 18 2.1 Recordatorio sobre el HTML 18 2.2 Creación de un primer documento XML 19 2.3 Las ventajas del XML 21 3. La sintaxis

Más detalles

Validación de un XML

Validación de un XML Validación de un XML 32 Introducción Se dice que un XML está bien formado cuando esta escrito sintácticamente de forma correcta Como se puede validar sintácticamente un XML? Document Type Definition (DTD)

Más detalles

1 Introducción a XML

1 Introducción a XML 1 Introducción a XML Introducción (I)! Qué es XML?! Últimamente todo el mundo habla sobre XML!! Dicen que es un lenguaje etiquetado...es decir: Es un lenguaje como HTML, pero con nuevas etiquetas?! Dicen

Más detalles

Análisis y Diseño de Sistemas de

Análisis y Diseño de Sistemas de Análisis y Diseño de Sistemas de Información para Internet 1. Introducción a XML Luís Rodríguez Baena (luis.rodriguez@upsam.net) Universidad Pontificia de Salamanca (campus Madrid) Facultad de Informática

Más detalles

XML (Extensible Markup Language)

XML (Extensible Markup Language) José Antonio Echagüe Burgos ja_echague@yahoo.es Tabla de Contenido 1. Lenguajes de marcas - Introducción...1 1.1. HTML...2 2. XML - Introducción...2 3. Estructura y DTD de un documento XML...3 4. Definición

Más detalles

XIII Reunión de Usuarios Aleph México. MarcXML. Egar Arturo Garcia Cárdenas

XIII Reunión de Usuarios Aleph México. MarcXML. Egar Arturo Garcia Cárdenas MarcXML Egar Arturo Garcia Cárdenas Secretaría Técnica de Biblioteca Digital Dirección General de Bibliotecas Universidad Nacional Autonóma de México Septiembre de 2009 1. Antecedentes Lenguajes de Marcado

Más detalles

Primeros pasos con XML y XSL Ricardo Borillo Domenech

Primeros pasos con XML y XSL Ricardo Borillo Domenech Primeros pasos con XML y XSL Ricardo Borillo Domenech Table of Contents 1.Apartadosprincipales...1 2. Introducción al lenguaje de marcas XML... 2 3. Estructura de los documentos: DTDs... 2 3.1. Asociar

Más detalles

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

qué es XML? por qué es necesario XML? XML vs. SGML y HTML Hacía la estandarización de los datos qué es XML? Hacía la estandarización de los datos César Ignacio García Osorio Surgió para superar la complejidad de SGML y la inflexibilidad de HTML. Es un meta lenguaje de etiquetado/marcado que permite

Más detalles

Documentación Electrónica

Documentación Electrónica Modelado de datos: Document Type Definition (DTD) Ofimática Avanzada Curso 2010/2011 Ofimática Avanzada 2010/2011 2 Ofimática Avanzada 2010/2011 3 1 Introducción XML es flexible, permitiendo a los usuarios

Más detalles

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

Unidad 6: DTD. JJ Taboada León IES San Sebastián, Departamento de Informática LENGUAJE DE MARCAS Y SGI Curso 2011 / 2012 Unidad 6: DTD JJ Taboada León IES San Sebastián, Departamento de Informática LENGUAJE DE MARCAS Y SGI Curso 2011 / 2012 Guíon del tema Qué es un DTD? Declaración de DTD Declaración de Elementos Declaración

Más detalles

Introducción a XML. Taller de Producción de Software 2º Semestre 2008 H.Astudillo / P.Inostroza

Introducción a XML. Taller de Producción de Software 2º Semestre 2008 H.Astudillo / P.Inostroza Taller de Producción de Software 2005 Introducción a XML Taller de Producción de Software 2º Semestre 2008 H.Astudillo / P.Inostroza Indice Qué es XML? Breve Historia de XML Anatomía de un Documento XML

Más detalles

DAW LENGUAJES DE MARCAS. Tema 1: Reconocimiento de las características de los Lenguajes de Marcas

DAW LENGUAJES DE MARCAS. Tema 1: Reconocimiento de las características de los Lenguajes de Marcas DAW LENGUAJES DE MARCAS Tema 1: Reconocimiento de las características de los Lenguajes de Marcas Características de los Lenguajes de Marcas 1. Codificación de la información 1.1. Datos binarios 1.2. Datos

Más detalles

Introducción a XML - Validación y Parseo. Huibert Aalbers, Senior Certified Software IT Architect

Introducción a XML - Validación y Parseo. Huibert Aalbers, Senior Certified Software IT Architect Introducción a XML - Validación y Parseo Huibert Aalbers, Senior Certified Software IT Architect IT Insight podcast Este podcast pertenece a la serie IT Insight Pueden suscribirse al podcast a través de

Más detalles

TEMA 5 LA FAMILIA XML EN LA NUEVA WEB

TEMA 5 LA FAMILIA XML EN LA NUEVA WEB TEMA 5 LA FAMILIA XML EN LA NUEVA WEB La Web, tanto cuantitativa como cualitativamente, se ha desarrollado extraordinariamente siendo el objeto de este texto ubicar el papel que XML juega y va a jugar

Más detalles

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

Tecnologías XML y Web Semántica. Departamento de Informática Universidad de Oviedo Tecnologías XML y Web Semántica Departamento de Informática Universidad de Oviedo Sesión 1 Lenguaje XML Departamento de Informática Universidad de Oviedo Esquema de la Sesión (9-11h) Primera parte: Introducción

Más detalles

Visualización y Transformaciones en XML

Visualización y Transformaciones en XML Visualización y Transformaciones en XML 106 Visualización Los archivos XLM pueden ser vistos prácticamente en cualquier browser 107 Visualización Los XML en los web browsers no se despliegan como páginas

Más detalles

Capí tulo IV. Lenguajes de estilo

Capí tulo IV. Lenguajes de estilo Capí tulo IV Lenguajes de estilo Lenguajes de Estilo Hojas de estilos Mecanismos de Hojas de estilos previos a XSL Lenguaje de estilo XSL Comparación entre CSS y XSL Transformación XML/XSL en aplicativos

Más detalles

6.1 APIs para XML. APIs para XML (I) ! Uno de los usos más habituales de XML (y menos esperado) es como formato de intercambio de datos.

6.1 APIs para XML. APIs para XML (I) ! Uno de los usos más habituales de XML (y menos esperado) es como formato de intercambio de datos. 6.1 APIs para XML APIs para XML (I)! Uno de los usos más habituales de XML (y menos esperado) es como formato de intercambio de datos.! En este caso los documentos XML nunca llegan a visualizarse, sino

Más detalles

PREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA)

PREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA) PREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA) El examen constará de 2 partes. Se evaluará sobre 10 puntos y representará el 60% de la nota final de la asignatura. Para que la calificación en esta prueba

Más detalles

Estándares SGML y XML. Entornos de aplicación

Estándares SGML y XML. Entornos de aplicación Índice de contenido Estándares SGML y XML. Entornos de aplicación Estándares SGML y XML. Entornos de aplicación...1 Licencia...1 SGML...1 Introducción...1 Etiquetado...2 Estructura de un documento SGML...2

Más detalles

XML y Bases de datos Modelado de datos XML usando DTDs

XML y Bases de datos Modelado de datos XML usando DTDs XML y Bases de datos Modelado de datos XML usando DTDs Amparo López Gaona Agosto 2008 Amparo López Gaona () XML y Bases de datos Modelado de datos XML usando DTDs Agosto 2008 1 / 52 Documentos bien formados

Más detalles

XML, Servicios Web y Web Semántica

XML, Servicios Web y Web Semántica XML, Servicios Web y Web Semántica Departamento de Informática Universidad de Oviedo Sesión 2 Lenguaje XML Departamento de Informática Universidad de Oviedo Esquema de la Sesión Introducción a XML Definición

Más detalles

XML Schema. Sergio Luján Mora. sergio.lujan@ua.es http://gplsi.dlsi.ua.es/~slujan/

XML Schema. Sergio Luján Mora. sergio.lujan@ua.es http://gplsi.dlsi.ua.es/~slujan/ XML Schema Sergio Luján Mora sergio.lujan@ua.es http://gplsi.dlsi.ua.es/~slujan/ 1 XML SCHEMA... 3 Introducción... 3 Ventajas... 3 Qué necesito para usar XML Schema... 4 Diseño de un documento XML... 5

Más detalles

XML Schema. Definición y validación

XML Schema. Definición y validación XML Schema. Definición y validación Está claro que XML es una revolución dentro de la tecnología. Un dicho dice, lo bueno si sencillo, dos veces bueno. En concepto de XML es muy sencillo aunque poco a

Más detalles

M. Carmen Fernández Panadero

M. Carmen Fernández Panadero <mcfp@it.uc3m.es> Introducción n a XML M. Carmen Fernández Panadero Introducción a XML 1 Objetivos Familiarizarse con conceptos y herramientas básicas de XML Conocer la estructura de un documento XML Ser capaz de diseñar

Más detalles

Agenda XML XML XML XML XML. 1.1 Conceptos básicos de XML. 1.2 Ejemplos de lenguajes basados en XML. 1.3 Estructura de un documento XML

Agenda XML XML XML XML XML. 1.1 Conceptos básicos de XML. 1.2 Ejemplos de lenguajes basados en XML. 1.3 Estructura de un documento XML Agenda 1.1 Conceptos básicos de 1.2 Ejemplos de lenguajes basados en M.C. Juan Carlos Olivares Rojas 1.3 Estructura de un documento 1.4 Tecnologías extensible Markup Language (Lenguaje de Marcado extensible)

Más detalles

Tabla de Contenidos. Rho-Sigma S.A.

Tabla de Contenidos. Rho-Sigma S.A. Tabla de Contenidos 1 INTRODUCCIÓN A XML...1 1.1 ORÍGENES Y MOTIVACIÓN...2 1.2 ESTADO ACTUAL...3 1.3 LIMITACIONES...5 1.4 CARACTERÍSTICAS PRINCIPALES DE LOS ESTÁNDARES XML...5 2 SINTAXIS DE XML...9 2.1

Más detalles

XML, DTD y hojas de estilo

XML, DTD y hojas de estilo XML, DTD y hojas de estilo Introducción XML existe porque HTML ha tenido mucho éxito. Pero con objeto de corresponder a este éxito, se le ha extendido introduciéndose muchas etiquetas nuevas (más de 100

Más detalles

Topicos Avanzados de Bases de Datos en la Web

Topicos Avanzados de Bases de Datos en la Web Topicos Avanzados de Bases de Datos en la Web Introducción a XML Profesor: Alejandro Vaisman 1er. Cuatrimestre, 2007 4/16/2007 1 XML XML es el lenguaje estándar para intercambiar información en la Web.

Más detalles

XML. Introducción. Cómo se usa? XML Tree. Sintaxis XML

XML. Introducción. Cómo se usa? XML Tree. Sintaxis XML XML Introducción XML(eXtensible Markup Language) es un lenguaje de etiquetas. Hay que tener en cuenta que no es un lenguaje de programación y como tal no ejecuta instrucciones, XML se creó para estructurar,

Más detalles

Realizar un esquema para el almacenamiento de CD musicales con las

Realizar un esquema para el almacenamiento de CD musicales con las Ejemplos Realizar un esquema para el almacenamiento de CD musicales con las especificaciones detalladas en el ejemplo del tema 2. Escriba también un documento de instancia para ese esquema. Diseñar un

Más detalles

Depto de Cs e Ing. de la Computación Universidad Nacional del Sur

Depto de Cs e Ing. de la Computación Universidad Nacional del Sur XML XML es el lenguaje de marcado extensible. (extensible Markup Language) Es extensible porque los tags son definibles por el usuario Es la evolución de SGML: Standar Generalized Markup Language. Es la

Más detalles

LOS LENGUAJES DE MARCADO APLICADOS A LOS REGISTROS BIBLIOGRÁFICOS. XML MARC DTD; XML MARC SCHEMA.

LOS LENGUAJES DE MARCADO APLICADOS A LOS REGISTROS BIBLIOGRÁFICOS. XML MARC DTD; XML MARC SCHEMA. LOS LENGUAJES DE MARCADO APLICADOS A LOS REGISTROS BIBLIOGRÁFICOS. XML MARC DTD; XML MARC SCHEMA. I. INTRODUCCIÓN A LOS LENGUAJES DE MARCADO Los lenguajes de marcado, también denominados lenguajes de marcas,

Más detalles

Fundamentos de las tecnologías de la información

Fundamentos de las tecnologías de la información Fundamentos de las tecnologías de la información la guerra de los formatos Diego Martín 2016 1 Definiciones W3C HTML CSS XML Introducción histórica HTML vs XML JSON XML vs JSON DTDsy XML SCHEMAs Qué formato

Más detalles

Tabla de Contenidos. xii

Tabla de Contenidos. xii Tabla de contenidos Capítulo 1. Introducción...1 1.1 MOTIVACIÓN...2 1.2 NOVEDADES APORTADAS POR ESTE LIBRO...3 1.3 ESTRUCTURA DE LA OBRA...4 1.4 CONOCIMIENTOS RECOMENDADOS...8 1.5 CONVENCIONES DE ESTILO

Más detalles

2 Estructura de un Documento XML

2 Estructura de un Documento XML 2 Estructura de un Documento XML Introducción (I)! Un documento XML contiene texto, nunca datos binarios.! Documento XML Fichero XML! Un documento XML puede estar en un registro de una base de datos,

Más detalles

XML. Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos. Marzo de 2016. gsyc-profes (arroba) gsyc.urjc.

XML. Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos. Marzo de 2016. gsyc-profes (arroba) gsyc.urjc. XML Escuela Técnica Superior de Ingeniería de Telecomunicación Universidad Rey Juan Carlos gsyc-profes (arroba) gsyc.urjc.es Marzo de 2016 GSyC - 2016 XML 1 c 2016 GSyC Algunos derechos reservados. Este

Más detalles

[CONVERSIÓN Y ADAPTACIÓN DE DOCUMENTOS XML]

[CONVERSIÓN Y ADAPTACIÓN DE DOCUMENTOS XML] TEMA 5 Contenido Técnicas de transformación de documentos XML.... 2 XPath.... 3 Términos básicos.... 3 Expresiones.... 4 Cuáles son los resultados que da la evaluación de una expresión Xpath?... 4 Cuáles

Más detalles

NORMA DE DIGITALIZACIÓN ADADA018 ADICIONALES EXPEDIENTESTRU

NORMA DE DIGITALIZACIÓN ADADA018 ADICIONALES EXPEDIENTESTRU NORMA DE DIGITALIZACIÓN ADADA018 ADICIONALES EXPEDIENTESTRU La información estará soportada en DVD's que incluyan los datos alfanuméricos e imágenes asociadas. El DVD irá identificado con una etiqueta,

Más detalles

Datos Estadísticos y el Lenguaje XML

Datos Estadísticos y el Lenguaje XML Datos Estadísticos y el Lenguaje XML Como Mejorar el Intercambio de Datos Estadísticos y la Adecuación de los Ficheros para su Carga en Bases de Datos, a través del Lenguaje XML Jorge Rubio Navarro 1 José

Más detalles

XML Schema. Departamento de Informática Universidad de Oviedo

XML Schema. Departamento de Informática Universidad de Oviedo XML Schema Departamento de Informática Universidad de Oviedo Lenguajes de Esquemas Esquema = definición de estructura de un conjunto de documentos XML Validar = Chequear que un documento sigue un esquema

Más detalles

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

XML-Schema. XML-Schema. XML-Schema. XML-Schema. Ventajas de XML-Schema con respecto a las DTD s: Es una tecnología creada inicialmente por Microsoft basándose en los trabajos y recomendaciones del W3C: XML-Data: vocabulario XML para describir la estructura de los documentos DCD (Document Content Description)

Más detalles

Tema IV. XML. VI. XSL (XPath & XSLT) Desarrollo de Aplicaciones para Internet Curso 12 13

Tema IV. XML. VI. XSL (XPath & XSLT) Desarrollo de Aplicaciones para Internet Curso 12 13 Tema IV. XML VI. XSL (XPath & XSLT) Desarrollo de Aplicaciones para Internet Curso 12 13 Índice 1.Introducción 2.XPath i. Introducción ii. Rutas y Expresiones 1. Nodos 2. Ejes 3. Predicados iii.tipos de

Más detalles

Unidad II: Lenguaje de marcado

Unidad II: Lenguaje de marcado Unidad II: Lenguaje de marcado 2.1 Introducción Un lenguaje de marcado o lenguaje de marcas es una forma de codificar un documento que, junto con el texto, incorpora etiquetas o marcas que contienen información

Más detalles

2.3 Declaraciones de listas de atributos para los tipos de elementos... 8

2.3 Declaraciones de listas de atributos para los tipos de elementos... 8 TEMA 4 Contenido 1 Documento XML. Estructura y sintaxis.... 2 1.1 Declaración de tipo de documento.... 3 1.2 Definición de la sintaxis de documentos XML.... 4 2 Definiciones de tipo de documento, DTD....

Más detalles

Esquemas XML para intercambio de documentos electrónicos y expedientes electrónicos

Esquemas XML para intercambio de documentos electrónicos y expedientes electrónicos SECRETARÍA DE ESTADO PARA LA FUNCIÓN PÚBLICA DIRECCIÓN GENERAL PARA EL IMPULSO DE LA ADMINISTRACIÓN ELECTRÓNICA MANUAL DE USUARIO Esquemas XML para intercambio de documentos electrónicos y expedientes

Más detalles

XML. María Consuelo Franky. Universidad Javeriana 2009

XML. María Consuelo Franky. Universidad Javeriana 2009 XML María Consuelo Franky Universidad Javeriana 2009 1 XML: meta-lenguaje para definir lenguajes de etiquetas 2 Origen de XML SGML: Standard Generalized Markup Language: demasiado complejo para definir

Más detalles

2. Lenguajes de marcado: XML

2. Lenguajes de marcado: XML 2. Lenguajes de marcado: XML El lenguaje de marcado XML (extensible Mark-Up Language) 2.2. Marcado de documentos con XML El documento XML Marcado y notación de marca Creación y visualización de documentos

Más detalles

Qué es XML? XML (extensible Markup Language) Lenguaje de tags (similar en sintaxis a HTML) Estandarizado por el W3C (http://www.w3.

Qué es XML? XML (extensible Markup Language) Lenguaje de tags (similar en sintaxis a HTML) Estandarizado por el W3C (http://www.w3. 2.1 El lenguaje XML Qué es XML? XML (extensible Markup Language) Lenguaje de tags (similar en sintaxis a HTML) Estandarizado por el W3C (http://www.w3.org) Es extensible: XML no impone un conjunto de tags,

Más detalles

XML y XQuery. Qué es XML? Qué es XML? (II) Ejemplo de fichero XML. Cuerpo de un documento XML. Estructura de un documento XML

XML y XQuery. Qué es XML? Qué es XML? (II) Ejemplo de fichero XML. Cuerpo de un documento XML. Estructura de un documento XML Qué es XML? XML y XQuery BDSI 2008/09 Rafael Caballero Conjunto de reglas para definir lenguajes de marcado específicos No se trata de un lenguaje, sino de un metalenguaje XML no es: HTML: : Lenguaje de

Más detalles

INDICE 1. Estructura, Sintaxis y Usos de XML 1. Fundamentos de XML 2. DTD: Características y Técnicas

INDICE 1. Estructura, Sintaxis y Usos de XML 1. Fundamentos de XML 2. DTD: Características y Técnicas INDICE Introducción XV 1. Estructura, Sintaxis y Usos de XML 1 1. Fundamentos de XML 3 Introducción 4 Desmitificación de la marcación 4 Qué es la marcación? 4 Definición de XML 10 Una definición estricta

Más detalles

17º Concurso de Trabajos Estudiantiles, EST 2014

17º Concurso de Trabajos Estudiantiles, EST 2014 CXML: Intérprete para XML Concha Medina Edgard José, Del Corro Gonzalo, Leiva Mario Dpto. de Informática. Facultad de Ciencias Exactas y Tecnologías, Universidad Nacional de Santiago del Estero. {edgard.007.85,

Más detalles

í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

í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 (3) índice (2.1) documentos XML bien formados y validación 7 (2.2) validación por DTD 8 (2.2.1) introducción 8 (2.2.2) posibilidades de uso de DTD 8 (2.2.3) definiciones en un DTD 10 (2.2.4) elementos

Más detalles

XSL. Introducción. Introducción. Introducción

XSL. Introducción. Introducción. Introducción Introducción XSL 1 XSL (extensible Stylesheet Language)» XSLT (XSL Transformations)» XSL-FO (XSL Formatting Objects) XSLT:» Documento XML que especifica reglas para transformar un documento XML en otro

Más detalles

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII

GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUÍA Nro. 1 TECNOLOGÍA DE INTERNET. TIII PIII GUIA DISPONIBLE EN: http://preparadorivan.blogspot.com/ - http://preparadormssi.50webs.com/inicio.html La World Wide Web o la Web, es una de las múltiples

Más detalles

Taller de Prof. Hilda Contreras. Departamento de Computación Escuela de Ingeniería de Sistemas ULA

Taller de <?XML> Prof. Hilda Contreras. Departamento de Computación Escuela de Ingeniería de Sistemas ULA Taller de Prof. Hilda Contreras Departamento de Computación Escuela de Ingeniería de Sistemas ULA Contenido 1. Introducción 2. Preparándonos para trabajar con XML 3. Documentos XML bien formados

Más detalles

Índice. HTML HyperText Markup Language. Conceptos básicos. Qué es HTML? Diseño de servicios Web HTML 1

Índice. HTML HyperText Markup Language. Conceptos básicos. Qué es HTML? Diseño de servicios Web HTML 1 Índice HTML HyperText Markup Language Conceptos básicos Historia y evolución de HTML XHTML vs. HTML HTML dinámico Hojas de estilo (CSS) DOM Diseño de servicios Web 2 DATSI Qué es HTML? Lenguaje de publicación

Más detalles

1º ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS EN RED

1º ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS EN RED UT1: Introducción a los Lenguajes de Marcas 1º ADMINISTRACIÓN DE SISTEMAS INFORMÁTICOS EN RED Contenidos Definición y clasificación de lenguajes de marcas Tipos de lenguajes de marcas Evolución de los

Más detalles

Web Services de G-Inside

Web Services de G-Inside Web Services de G-Inside Gestión de Expedientes y Documentos Electrónicos para su intercambio Documento de Integración Sistemas Desarrollo Versión del documento 002 Fecha de revisión 16/01/2013 Realizado

Más detalles

Taller de SABER-ULA. Hilda Contreras hyelitza@ula.ve 3er Evento Teleinformación e Innovación Nov. 2004

Taller de <?XML> SABER-ULA. Hilda Contreras hyelitza@ula.ve 3er Evento Teleinformación e Innovación Nov. 2004 Taller de SABER-ULA Hilda Contreras hyelitza@ula.ve 3er Evento Teleinformación e Innovación Nov. 2004 Contenido 1. Introducción 2. Preparándonos para trabajar con XML 3. Documentos XML bien formados

Más detalles

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006

Bases de Datos XPath - XQuery 1. XML: XPath - XQuery. Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos XPath - XQuery 1 XML: XPath - XQuery Jorge Pérez Rojas Universidad de Talca, II Semestre 2006 Bases de Datos XPath - XQuery 2 XPath - XQuery Ambos son estándares para acceder y obtener datos

Más detalles

Programación del Módulo Profesional. Lenguajes de Marcas y Sistemas de Gestión de Información. Del Ciclo Formativo de Grado Superior

Programación del Módulo Profesional. Lenguajes de Marcas y Sistemas de Gestión de Información. Del Ciclo Formativo de Grado Superior Programación del Módulo Profesional Lenguajes de Marcas y Sistemas de Gestión de Información Del Ciclo Formativo de Grado Superior Administración de Sistemas Informáticos en Red Contenido 1 OBJETIVOS GENERALES

Más detalles

Tema 3. Lenguajes de marcado

Tema 3. Lenguajes de marcado Tema 3. Lenguajes de marcado Ofimática Avanzada Profesor: Víctor Fresno Fernández Un Lenguaje de marcado o lenguaje de marcas se puede definir como una forma de codificar un documento donde, junto con

Más detalles

XML. M. en C. Erika Vilches

XML. M. en C. Erika Vilches XML M. en C. Erika Vilches Motivación Formatos de archivos existentes con los que un programador debe lidiar: RTF.doc PDF Texto delimitado por Tabs... etc... etc... Una verdadera PESADILLA!!! Razones:

Más detalles

Práctica de introducción a

Práctica de introducción a Práctica de introducción a XML El trabajo consiste en una introducción al uso del lenguaje XML y su aplicación en documentos y sistemas de caracteristicas multimedia. 1.- Qué es XML? XML (extensible Markup

Más detalles

Modelado de datos XML: XML-Schema

Modelado de datos XML: XML-Schema Modelado de datos XML: XML-Schema Ofimática Avanzada Profesor: Víctor Fresno Fernández curso 2006/07 Limitaciones de las DTD No permite definir tipos de datos No permite espacios de nombres Las DTD están

Más detalles

ESOFT 3 Nice Screen Scraper: A simple scraper

ESOFT 3 Nice Screen Scraper: A simple scraper ESOFT 3 Nice Screen Scraper: A simple scraper Héctor López Sacanell hlopez1@alumnes.udl.cat 3 de diciembre de 2009 1. Introducción El objetivo de esta segunda entrega es la de crear una primera versión

Más detalles

Transformación de documentos : XSLT

Transformación de documentos : XSLT Transformación de documentos : XSLT XSL : Lenguaje Extensible de Hojas de Estilo, cuyo objetivo principal es mostrar cómo debería estar estructurado el contenido, cómo debería ser diseñado el contenido

Más detalles

Especificación Técnica del WebService de Autenticación y Autorización

Especificación Técnica del WebService de Autenticación y Autorización Especificación Técnica del WebService de Autenticación y Autorización Índice de contenido Introducción...3 Propósito...3 Descripción General del Servicio...3 Referencias...4 Invocación del WSAA...4 Sincronización

Más detalles

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

XML, parte 2. M. en C. Erika Vilches XML, parte 2 M. en C. Erika Vilches Documentos XML Válidos!= Bien formados Siguen reglas de sintáxis que hacen que un parser las pueda parsear sin problemas Un documento XML válido es aquel que ha sido

Más detalles

Creación de documentos XML

Creación de documentos XML Creación de documentos XML 'Exchanger XML edition' es un editor estructurado que facilita la edición de lenguajes de marcas (ej XML). La versión Lite se puede descargar y utilizar libremente en aplicaciones

Más detalles

Capítulo 1 Documentos HTML5

Capítulo 1 Documentos HTML5 Capítulo 1 Documentos HTML5 1.1 Componentes básicos HTML5 provee básicamente tres características: estructura, estilo y funcionalidad. Nunca fue declarado oficialmente pero, incluso cuando algunas APIs

Más detalles

Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en red

Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en red Ciclo Formativo de Grado Superior de Administración de Sistemas Informáticos en red Módulo Profesional: LMSGI Unidad de Trabajo 7.- XML, Extensible Markup Language (lenguaje de marcas extensible). W3C

Más detalles

XML-Schema. XML-Schema. Espacios de Nombre. W3C XML Schema intenta superar las limitaciones de las DTDs con respecto a ellos

XML-Schema. XML-Schema. Espacios de Nombre. W3C XML Schema intenta superar las limitaciones de las DTDs con respecto a ellos Ejemplo. Espacio de nombres con prefijo W3C XML Schema intenta superar las limitaciones de las DTDs con respecto a ellos W3C XML Schema asocia un espacio de nombres a todos los objetos (elementos, atributos,

Más detalles

Tecnología Multimedia

Tecnología Multimedia Tecnología Multimedia Profesor Coordinador: Manuel Castro Antonio Colmenar, UNED Profesores de la asignatura: Manuel Castro, UNED Lenguajes de Marcado Índice LENGUAJES DE MARCADO... 3 Lenguajes de marcado

Más detalles

Transformación de documentos XML con

Transformación de documentos XML con Transformación de documentos XML con X S L T Necesidad de las transformaciones XML se presenta como un estándar para transmitir datos a través de Internet. Ante la posibilidad de que distintos centros

Más detalles

Tecnologías para Desarrollo Orientado a Servicios (posgrado) Desarrollo de Software Orientado a Servicios (pregrado)

Tecnologías para Desarrollo Orientado a Servicios (posgrado) Desarrollo de Software Orientado a Servicios (pregrado) Tecnologías para Desarrollo Orientado a Servicios (posgrado) Desarrollo de Software Orientado a Servicios (pregrado) Mg. Elsa Estévez Universidad Nacional del Sur T.2 Agradecimiento Este curso se ha desarrollado

Más detalles

Tecnologías XML Esquemas XML

Tecnologías XML Esquemas XML Esquemas XML Esquemas XML Problemas de los DTDs Di5ciles de manipular (no son XML) No son extensibles (una vez definido, no es posible añadir nuevos vocabularios a un DTD) No soportan Cpos de datos (ej.

Más detalles

Los esquemas XML (XSD) son medios de representación de estructuras mas expresivos que las DTD. Presentan las siguientes características:

Los esquemas XML (XSD) son medios de representación de estructuras mas expresivos que las DTD. Presentan las siguientes características: Página 1 de 8 Esquemas XML (XSD) Los esquemas XML (XSD) son medios de representación de estructuras mas expresivos que las DTD. Presentan las siguientes características: Son documentos bien formados y

Más detalles

Curso XHTML/HTML/HTML5. Curso XHTML/HTML/HTML5

Curso XHTML/HTML/HTML5. Curso XHTML/HTML/HTML5 Curso XHTML/HTML/HTML5 Curso XHTML/HTML/HTML5 Página Web del curso Pagina del curso www.bbsoftpy.net/cursohtml2013 Repaso Clase Anterior Curso XHTML/HTML/HTML5-2013 Listas Curso XHTML/HTML/HTML5-2013 Listas

Más detalles

Especificación Técnica del Web Service de Autenticación y Autorización WSAA Para el desarrollo de Clientes de Entidades Externas

Especificación Técnica del Web Service de Autenticación y Autorización WSAA Para el desarrollo de Clientes de Entidades Externas Servicio Nacional de Aduanas Subdirección de Informática Departamento de Desarrollo de Sistemas Especificación Técnica del Web Service de Autenticación y Autorización WSAA Para el desarrollo de Clientes

Más detalles

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB

TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB TECNOLOGÍAS ASOCIADAS A LAS APLICACIONES WEB Existen varios tipos de tecnologías para los Servidores Web, estas tecnologías se pueden dividir en 4 grupos principales que son: Tecnologías al lado del cliente

Más detalles

Lenguajes de Marcas y Sistemas Gestores de Información

Lenguajes de Marcas y Sistemas Gestores de Información Ciclo Formativo de Grado Superior en Administración y de Sistemas Informáticos en Red IES Valle del Cidacos Calahorra Lenguajes de Marcas y Sistemas Gestores de Información Enrique Rivas Marco Usted es

Más detalles

HTML HTML HTML. Diseño de Sitios Web. Qué es HTML?

HTML HTML HTML. Diseño de Sitios Web. Qué es HTML? Diseño de Sitios Web 5 (I) Qué es? Es un lenguaje descriptivo con el cual se describe la estructura del texto y todos los elementos que se muestran en la página. Es el método más usado para publicar documentos

Más detalles

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

Lugar: CENTRO DE FORMACIÓN FREMM. Curso de Prácticas?: No Estado: No programado Precio: LENGUAJE XML LENGUAJE XML Horas: 80 Teoría: 0 Práctica: 0 Presenciales: 80 A Distancia: 0 Acción: Nº Grupo: Código: UF2217 Plan: CURSOS PRÓXIMOS DE RECICLAJE Materia: Certificados de Profesionalidad -

Más detalles

UTILIZACION DE ESQUEMAS XML DE LA AGENCIA TRIBUTARIA PARA CALCULO RETENCIONES

UTILIZACION DE ESQUEMAS XML DE LA AGENCIA TRIBUTARIA PARA CALCULO RETENCIONES UTILIZACION DE ESQUEMAS XML DE LA AGENCIA TRIBUTARIA PARA CALCULO RETENCIONES INTRODUCCION El conjunto de herramientas de ayuda aportados por la Agencia Tributaria, para facilitar las obligaciones fiscales

Más detalles