extensible Markup Language (XML)



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

Fundamentos de las tecnologías de la información

Correspondencias entre taxonomías XBRL y ontologías en OWL Unai Aguilera, Joseba Abaitua Universidad de Deusto, EmergiaTech

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

Transformación de documentos XML con

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B)

Análisis de esquemas XML [1]

El proceso de edición digital en Artelope y CTCE

Comercial Cartas de Fidelización

Práctica 4 Manejo avanzado de Bison

Índice 1 Instalación de la herramienta 2 Descripción de la herramienta 2 Arranque de la aplicación 3 Proyecto 4 Diagrama de clases 5

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

1 Introducción a XML

Microsoft Access 2007 (Completo)

M. Carmen Fernández Panadero

Práctica de introducción a

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

XML Namespaces. Sergio Luján Mora.

Departamento de Informática Tributaria Subdirección General de Aplicaciones de Aduanas e II.EE. C/ Santa María Magdalena 16, Madrid

RESOLUCIÓN DE ERRORES EN MOODLE CAMPUS VIRTUAL-BIRTUALA UPV-EHU

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

Sistema de Mensajería Empresarial para generación Masiva de DTE

MICROSOFT ACCESS 2003

Guía de uso de Moodle para participantes

MICROSOFT ACCESS 2010

LEER Y ESCRIBIR ARCHIVOS O FICHEROS EN C. FOPEN, FCLOSE, MODOS DE ACCESO READ, WRITE Y APPEND (CU00536F)

XML para FP : Introducción

Datos Estadísticos y el Lenguaje XML

XML. Necesitamos un formato de datos: Posibles usos. Estandard Robusto Extensible

BASES DE DATOS TEMA 3 MODELO ENTIDAD - RELACIÓN

Sistema de Gestión Académica TESEO. Revisión 1.0. Servicio de Informática Área de Gestión (GESTIÓN DE RESÚMENES DE TESIS DOCTORALES)

MATERIAL 2 EXCEL 2007

Proyectos de Innovación Docente

Importador Universal - Operaciones

EXTENSIÓN DE UML PARA APLICACIONES WEB

Creación de documentos XML

FeriaOnline.com C/Llamaquique Nº 4 Tfno: Oviedo mail: info@feriaonline.com Url:

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web.

Capítulo 11. Conclusiones y trabajo futuro

P/. Factura Electrónica D/. Manual de Usuario Proveedores

OBJETIVO: Introducción al editor de páginas web Macromedia Dreamweaver.

Instructivo Asesoría Básica Comunidad Virtual SharePoint 2010

Usuarios y Permisos. Capítulo 12

UML, ejemplo sencillo sobre Modelado de un Proyecto

Formularios HTML. Elementos de Programación y Lógica

SiteAudit Knowledge Base Programación de Reportes en SiteAudit

SISTEMAS OPERATIVOS AVANZADOS

GASTOS DE PERSONAL Libro de Operatividad. Solución WEB

Los requisitos de accesibilidad en un proyecto software. Implicaciones de usuarios discapacitados en el proceso software

Servicio de groupware

OBTENER DATOS EXTERNOS

UTILIZACION DE ESQUEMAS XML DE LA AGENCIA TRIBUTARIA PARA CALCULO RETENCIONES

GLOSARIO. Arquitectura: Funcionamiento, estructura y diseño de una plataforma de desarrollo.

Manual del estudiante

MANUAL DE USUARIO DE OFICINA CONECTADA

Introducción a la plataforma Moodle Aníbal de la Torre Plataforma Moodle. Accediendo a los contenidos

Manual de ayuda para la utilización del Correo Interno en el Campus Virtual

CIMA. MANUAL DE USUARIO

13.2 WORLD WIDE WEB (www)

EDICIÓN Y FORMATO (II)

PASOS PARA CREAR UNA PÁGINA WEB

MANUAL COPIAS DE SEGURIDAD

Desarrollo de Aplicaciones Web con JAVA: J2EE y Struts

Manual de Usuario. Facturandote Corporativo Mérida, Yucatán, México

La utilización de las diferentes aplicaciones o servicios de Internet se lleva a cabo respondiendo al llamado modelo cliente-servidor.

FUNDACION EDUCATIVA OBRERA FUNEDO TECNICO EN SECRETARIADO EJECUTIVO SISTEMATIZADO

QUÉ ES UNA BASE DE DATOS Y CUÁLES SON LOS PRINCIPALES TIPOS? EJEMPLOS: MYSQL, SQLSERVER, ORACLE, POSTGRESQL, INFORMIX (DV00204A)

Manejo y gestión del Campus Virtual para tareas colaborativas

XML Schema. Sergio Luján Mora.

IDENTIFICACIÓN DE LA ACTIVIDAD PEDAGÓGICA

Google Calendar. Google Calendar

Manual para Empresas Prácticas Curriculares

Funcionamiento del Correo Electrónico

BÚSQUEDA AVANZADA EN INTERNET

InfoPath forma parte del paquete ofimático de Microsoft desde la versión XP (2003).

SEGUIMIENTO EDUCATIVO. Comunicaciones

El catálogo y los listados

Ficheros Electrónicos

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

BASE DE DATOS RELACIONALES

GUÍA PARA MANEJAR GOOGLE DRIVE

MANUAL DE USUARIO DEL SISTEMA PARA EL REDACTOR

Guía rápida Factura Electrónica Versión para proveedores de Sacyr

Manual de ayuda para crear y gestionar Tareas, como actividad evaluable

Diseño y desarrollo de una aplicación informática para la gestión de laboratorios

Mi propuesta consiste en crear un portal Web que contemple las siguientes funcionalidades:

Conceptos SOA: XSD, Estructurando XML Por Medio de Esquemas

Microsoft Excel 2010 (Completo)

Guía rápida de la Oficina Virtual Área Web y Administración Electrónica

MANUAL PARA CREAR USUARIOS. Guía para crear, desactivar e inmovilizar Usuarios de Salesforce

Base de datos relacional

Combinar comentarios y cambios de varios documentos en un documento

Menús. Gestor de Menús

MICROSOFT EXCEL 2007

Manual de usuario para Android de la aplicación PORTAFIRMAS MÓVIL

NOTIFICACIÓN DE MOVIMIENTOS DE ESTUPEFACIENTES POR PARTE DE LOS LABORATORIOS FARMACÉUTICOS Y ALMACENES MAYORISTAS DE DISTRIBUCIÓN

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS

Transcripción:

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 jeperez@dsic.upv.es El estándar XML surge como una necesidad de estandarizar la definición de lenguajes de marcas. En la actualidad se ha convertido en la forma ideal de realizar el intercambio de información. A partir de XML han surgido otras iniciativas, como el protocolo SOAP (Simple Object Access Protocol), que habilita a XML para llamar a métodos de un computador remoto en Internet, incluso a través de firewalls 1 y diferentes plataformas. 2. QUÉ ES XML? Es un lenguaje de marcado que permite la definición de tus propias marcas y el intercambio de datos a través de la red. Puede considerarse una ampliación de HTML, ya que aprovecha sus ventajas e incrementa su funcionalidad. El que sea un lenguaje de marcado quiere decir que a ciertas partes del documento se le asocian unas marcas. La mejora que proporciona un lenguaje de marcado es que define un documento diciendo, por ejemplo: las cabeceras que eran en negrita cambiarlas a negrita y cursiva, consiste únicamente en acceder al tipo de cabecera y añadir cursiva. De este modo, se evita acudir a cada una de las cabeceras y realizar el cambio una a una. XML es el mejor lenguaje de marcado que hay en la actualidad para cumplir los objetivos de creación de mensajes con formato estándar, la separación de datos, la presentación de datos en páginas web y la llamada a métodos a través de firewalls y diferentes plataformas. XML está compuesto por cuatro partes: - Documentos XML - XML DTD / XML Schemas - XML parser - Aplicaciones XML 1 Software que funciona en un servidor, generalmente conectado a un router que, a su vez, está conectado a una red externa. La función del cortafuegos es proteger una Intranet evitando que entren en ella transmisiones de red no deseadas, aplicando la filosofía de lo que no está permitido expresamente es negado. 1

3. XML vs HTML(Hypertext Markup Language) HTML es un lenguaje de marcado que describe documentos de hipertexto permitiendo presentar documentos en la Web. Los inconvenientes de este lenguaje son los siguiente: - Estructura no rígida. - Inflexible, las únicas marcas posibles son las predefinidas. - Limitado. - El DTD está fijo. - Sistema de enlaces inadecuado. - No está diseñado para almacenar información. HTML no es rígido en la estructura del documento, no respeta el orden de las etiquetas y permite la inclusión de etiquetas en el cuerpo del documento entre otras cosas. Sin embargo, XML es muy rígido en su estructura y sólo será correcto el documento si las etiquetas son las adecuadas y están usadas de acuerdo con la estructura definida para el documento, es decir, en el orden correcto. La característica que más diferencia XML de HTML es que XML describe el contenido de lo que etiqueta, ya que permite crear nuevas marcas. Pudiendo definir la descripción y estructura de la información que se va a intercambiar, es decir, puede definir sus propios tipos de documentos (sus propias etiquetas) y, por tanto, ya no dependerá de un único e inflexible tipo de documento, tal y como ocurre en HTML. Uno de los problemas de HTML es la forma en la que establece los enlaces entre sus documentos, ya que se incorporan dentro del código del documento y si cambian los enlaces debe modificarse el código del documento. Actualmente se necesita un método de enlace de documentos más sofisticado ya que la Web está sufriendo cambios continuamente. Este inconveniente lo soluciona XML, ya que permite asociar enlaces para cualquier elemento y enlazar con múltiples direcciones. Mientras que XML es ideal para almacenar información, HTML no está diseñado para hacerlo, ya que cuesta mucho almacenar información y no se puede validar la información necesaria y requerida para el documento. Otra diferencia entre ambos es que un fichero XML contiene datos que se autodefinen, es decir, en ningún momento se enfatiza en la presentación de la estructura, sino en el contenido. 4. CARACTERÍSTICAS Y FUNCIONALIDAD XML proporciona una funcionalidad potente y diversificada. Entre sus características podemos destacar la forma tan simple en la que es capaz de combinar información y metainformación 2 en el intercambio de datos por la web. Además, su enlace con la web hace que sea un lenguaje común de etiquetas, rompiendo la necesidad de trabajar obligatoriamente dentro de una única infraestructura. 2 Etiquetas que definen y describen el contenido que hay dentro de ellas 2

Un DTD (Data Type Definition) y un XML Schema permiten definir un conjunto de reglas que especifican la estructura de la información que aparece en un documento. La definición de DTD y un XML Schema consiste en la definición de etiquetas y el lugar que éstas deben ocupar dentro del documento. La definición de la estructura hace que los documentos XML sean poco ambiguos y rígidos sintácticamente. Sin embargo, XML es sencillo y flexible, tanto en la definición de sus etiquetas como en el hecho de poder definir documentos sin DTD o XML Schema asociado. XML esta soportado por una gran variedad herramientas comerciales e industriales (Adobe, ArborText, DSTC, HP(Hewlett Packard), IBM, Microsoft, Nestcape, Oracle, Platium, Unisys, Select, Sun, Xerox Web etc)y tiene un sistema de enlaces a través de la red muy avanzado. La potencia de integración y compartición de datos de XML es debida a que permite crear aplicaciones con datos compartidos, ya que sus documentos pueden ser leídos por aplicaciones mediante el uso de parsers. Otra de las principales características de XML es que etiqueta e identifica el contenido de sus documentos, olvidándose en un principio de la presentación. Después, la información incluida en un documento XML puede ser utilizada por una página XSL (Extensible Style Sheet Language) para presentarla en un navegador. Esto permite tener más de una vista de un documento, porque tiene separado el contenido de la presentación. De este modo, XML va a permitir que un mismo documento se pueda ver de distinta forma desde varias máquinas, sólo con que cada máquina tenga su StyleSheet adecuada. No se cambia ni el contenido ni la estructura, tan sólo su presentación. Al ser un lenguaje tan flexible permite que un documento pueda usarse para una gran variedad de propósitos. Por ejemplo, la información puede utilizarse para leerla y después mostrársela al usuario, para guardarla en una BD, o usarla en otra aplicación. Por otro lado, facilita el desarrollo de aplicaciones para navegar por la Web, buscadores, y el intercambio de datos, generalmente entre BD, basándose en un DTD. Hay que destacar que no pretende reemplazar a los SGBD S, simplemente facilita el intercambio de información y la cooperación entre las empresas mediante el comercio electrónico (business-to-business). 5. DTD(Document Type Definition) Un DTD es el lugar donde se realiza la definición de la estructura y el contenido de un tipo de documento. En un DTD de XML se definen los elementos, atributos y entidades que van a formar un documento, cómo se estructuran y relacionan. De esta forma se especifica los elementos y atributos que pueden usarse dentro de un documento XML y especifica que caracteres se usarán para marcar el texto. Un DTD define las reglas que han de cumplir el conjunto de documentos XML que se han creado usando la plantilla de dicho DTD, esto es posible porque la estructura y el contenido van separados. 3

Un elemento de un DTD define una etiqueta para los documentos XML que se basen en él. Las reglas definen la estructura lógica del documento XML y se usan para comprobar la validez de los documentos. La regla es una declaración genérica y uno o más elementos, agrupados o desordenados <!ELEMENT nombre del elemento regla> Un elemento puede contener una definición de tipo texto (PCDATA), correspondiente al valor que va a contener la etiqueta en el documento XML, puede estar compuesto por otros elementos o puede estar vacío. Esto se indica a través de gramáticas. Por ejemplo: <!ELEMENT cliente (DNI, nombre, apellidos, direccion)> <!ELEMENT nombre (#PCDATA)> El DTD es necesario para que los parsers puedan obtener la información que incluyen los documentos XML. Un DTD puede ser interno al documento XML, es decir, el DTD y el propio documento se incluyen en el mismo archivo, o externo, cuando el DTD y el documento están en archivos distintos. Un DTD nos permite controlar aspectos sintácticos, validando los documentos que se basen en él. Entre estos aspectos está el lugar en el que puede incluirse una determinada etiqueta y el número de veces que puede aparecer dicha etiqueta (una vez obligatoriamente, una vez opcionalmente, una vez o más, más de una vez sin necesidad de que aparezca obligatoriamente). También permite expresar composición de elementos, bien por conjunción (y) o bien por disyunción (o) de subelementos. Un ejemplo de DTD es el que se muestra a continuación: <?xml version="1.0" encoding="utf-8"?> <!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com) by JENNIFER PÉREZ BENEDÍ --> <!ELEMENT esquema (clase+, agregacion*, especializacion*)> <!ELEMENT clase (nombre, atributo+, restriccion_integridad*, alias+)> <!ELEMENT nombre (#PCDATA)> <!ELEMENT atributo (nombre, tipo, tipo_dato, nulos, tamaño?, formula_derivacion?)> <!ELEMENT tipo(#pcdata)> <!ELEMENT tipo_dato (#PCDATA)> <!ATTLIST tipo_dato valor (int date bool real string) #REQUIRED > <!ELEMENT nulos (#PCDATA)> <!ELEMENT tamaño (#PCDATA)> <!ELEMENT formula_derivacion (#PCDATA)> <!ELEMENT restriccion_integridad (#PCDATA)> <!ELEMENT alias (#PCDATA)> 6. XML Schema Un XML Schema, al igual que un DTD, define la estructura y el contenido de un tipo de documento. Sin embargo XML Schema mejora la propuesta de los DTD, resolviendo algunas de sus carencias, por ese motivo los XML Schema están reemplazando a los DTDs. 4

Algunos de los inconvenienetes de los DTDs son: - No se ciñen a la sintaxis de XML, utilizan su propio formato de texto para escribirlos. - Limitan el contenido de forma que solamente puede ser textual - El mecanismo de control de repetición de elementos resulta muy complicado. XML schema se caracteriza por usar la sintaxis XML, soporta otros tipos que no son el string, como pueden ser números y fechas, permite especificar tipos de datos y definir rangos de valores para los atributos de los elementos y usa conceptos de la orientación a objetos como la herencia. 7. DOCUMENTOS XML El documento XML es el que incluye toda la información delimitada mediante marcas y que se envía a través de la web. Cuando un documento XML cumple la especificación del lenguaje XML se dice que es un documento XML bien formado, y en caso de que esté asociado a un DTD o XML Schema, si cumple la sintaxis definida en este, se dice que es un documento XML valido. La forma de asociarle a un documento un DTD o XML Schema puede ir implícita en el propio documento o de forma externa, es decir, habiéndola escrito en un fichero distinto. - Implícita: <!DOCTYPE documento[ ]> - Externa: <!DOCTYPE documento SYSTEM nombre del fichero > Los documentos XML pueden construirse usando composición mediante los métodos de enlace (namespaces) de XML, es decir se puede construir documentos por medio de la selección de partes de otros documentos. Un ejemplo de documento XML: <clase > <nombre> <valor>hombre</valor> </nombre> <atributo> <nombre> <valor>doc. Nac. Ident.</valor> </nombre> <tipo> <valor_tipo valor="constante"/> </tipo> <tipo_dato> <valor_tipo_dato valor="int"/> </tipo_dato> <nulos> <valor_nulos valor="false"/> </nulos> </atributo> </clase> 5

9. NAMESPACES Un namespaces es un método de enlace que especifica de dónde proviene una determinada información XML, proporciona un mecanismo de asociación de un elemento y/o atributo con su lugar de origen. Un uso básico de un namespaces es el de especificar en el documento XML la URL dónde se ubica el DTD o el XML Schema que define las etiquetas que utiliza dicho documento. 10. PARSERS XML (PROCESADORES XML) Un parser es la herramienta principal de cualquier aplicación XML. Permite comprobar si los documentos están bien formados o válidos. Es un programa de bajo nivel que lee un documento XML y almacena tanto las etiquetas como el contenido que ha leído en una estructura. El hecho de que las etiquetas de XML tengan una carga semántica, es decir, que proporcionen información sobre el texto que contienen, hace que sirvan para realizar consultas y búsquedas sobre el documento. Hay dos formas de obtener la información: - Objetual: Árbol de objetos (DOM) El XML Document Object Model (DOM) es una plataforma neutral y un lenguaje neutral para la interfaz que permite a los desarrolladores crear aplicaciones y scripts para acceder y modificar el contenido, estilo y estructura de documentos XML. El DOM está compuesto por objetos que incluyen propiedades y métodos que pueden usarse para recoger la información incluida en el árbol del documento y navegar por otros objetos del árbol. Una vez se ha cargado el documento, la aplicación puede procesar, navegar y manipular la información incluida en el documento. - Eventos: Dentro de la aplicación se ejecutan eventos para capturar información del documento XML que se desea leer, una vez obtenida se puede procesar y guardar. Un parser permite hacer búsquedas sobre el documento. Al tener poca ambigüedad por su fuerte estructuración, las búsqueda se mejoran considerablemente, pudiéndolas hacer por una sola etiqueta o por un conjunto de etiquetas. 6

10. XSL(Extensive Style Language) XSL es un lenguaje que proporciona un mecanismo, basado en hojas de estilo, para la manipulación y presentación de documentos XML. Permite transformar un documento XML en otro XML o HTML o en un formato de impresión (PDF), etc. Las hojas de estilos de XSL utilizan plantillas de presentación, manipulan información XML, contienen información del formato de un documento XML y permiten personalizar la presentación. Pueden usarse en aplicaciones cliente, la visualización en este caso es responsabilidad del cliente. Cuando el cliente no soporta XML, el documento XSL ha de estar en el servidor, se utiliza para transformarlo en un documento HTML y se envía al cliente. XSL permite filtrar y enviar sólo lo que interesa y decir cómo se desea ver la información y hacer selecciones sobre el contenido interno.todos los documentos XSL son XML, luego respetan sus reglas. En un documento XML antes de la referencia al DTD o al XMLSchema se ha de incluir: <?xml-stylesheet type= text/xsl href= library.xsl > Este documento se verá tal como especifica library.xsl. Si el cliente quiere verlo de otra forma tendrá que modificar lo especificado en el servidor. 7