6
XML Con todas las tecnologías relacionadas, representa una manera distinta de hacer las cosas, más avanzada, cuya principal novedad consiste en permitir compartir los datos con los que se trabaja a todos los niveles, por todas las aplicaciones y soportes. Así pues, el XML juega un papel importantísimo en este mundo actual, que tiende a la globalización y la compatibilidad entre los sistemas, ya que es la tecnología que permitirá compartir la información de una manera segura, fiable, fácil. Además, XML permite al programador y los soportes dedicar sus esfuerzos a las tareas importantes cuando trabaja con los datos, ya que algunas tareas tediosas como la validación de estos o el recorrido de las estructuras corre a cargo del lenguaje y está especificado por el estándar, de modo que el programador no tiene que preocuparse por ello. Vemos que XML no está sólo, sino que hay un mundo de tecnologías alrededor de él, de posibilidades, maneras más fáciles e interesantes de trabajar con los datos y, en definitiva, un avance a la hora de tratar la información, que es en realidad el objetivo de la informática en general. XML, o mejor dicho, el mundo XML no es un lenguaje, sino varios lenguajes, no es una sintaxis, sino varias y no es una manera totalmente nueva de trabajar, sino una manera más refinada que permitirá que todas las anteriores se puedan comunicar entre si sin problemas, ya que los datos cobran sentido. Todo esto lo veremos con calma en la Introducción a XML. XML es interesante en el mundo de Internet y el e-bussiness, ya que existen muchos sistemas distintos que tienen que comunicarse entre si, pero como se ha podido imaginar, interesa por igual a todas las ramas de la informática y el tratamiento de datos, ya que permite muchos avances a la hora de trabajar con ellos. Así pues, os recomendamos seguir esta lectura en la introducción a XML. A lo largo de los siguientes capítulos, vamos a ver algunas características importantes de la tecnología que nos permitirán comprender mejor el mundo XML y cómo soluciona nuestros problemas a la hora de trabajar con los datos. XML son las siglas de Extensible Markup Language, una especificación/lenguaje de programación desarrollada por el W3C . XML es una versión de SGML, diseñado especialmente para los documentos de la web. Permite que los diseñadores creen sus propias etiquetas, permitiendo la definición, transmisión, validación e interpretación de datos entre aplicaciones y entre organizaciones. xml permite realizar funciones que no pueden realizarse con EJEMPLOS DE XML Aplicación XML

Xml

  • Upload
    narcesy

  • View
    92

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Xml

XML

Con todas las tecnologías relacionadas, representa una manera distinta de hacer las cosas,

más avanzada, cuya principal novedad consiste en permitir compartir los datos con los que

se trabaja a todos los niveles, por todas las aplicaciones y soportes. Así pues, el XML juega un

papel importantísimo en este mundo actual, que tiende a la globalización y la compatibilidad

entre los sistemas, ya que es la tecnología que permitirá compartir la información de una

manera segura, fiable, fácil. Además, XML permite al programador y los soportes dedicar sus

esfuerzos a las tareas importantes cuando trabaja con los datos, ya que algunas tareas

tediosas como la validación de estos o el recorrido de las estructuras corre a cargo del

lenguaje y está especificado por el estándar, de modo que el programador no tiene que

preocuparse por ello.

Vemos que XML no está sólo, sino que hay un mundo de tecnologías alrededor de él, de

posibilidades, maneras más fáciles e interesantes de trabajar con los datos y, en definitiva,

un avance a la hora de tratar la información, que es en realidad el objetivo de la informática

en general. XML, o mejor dicho, el mundo XML no es un lenguaje, sino varios lenguajes, no es

una sintaxis, sino varias y no es una manera totalmente nueva de trabajar, sino una manera

más refinada que permitirá que todas las anteriores se puedan comunicar entre si sin

problemas, ya que los datos cobran sentido. Todo esto lo veremos con calma en

la Introducción a XML.

XML es interesante en el mundo de Internet y el e-bussiness, ya que existen muchos

sistemas distintos que tienen que comunicarse entre si, pero como se ha podido imaginar,

interesa por igual a todas las ramas de la informática y el tratamiento de datos, ya que

permite muchos avances a la hora de trabajar con ellos.

Así pues, os recomendamos seguir esta lectura en la introducción a XML. A lo largo de los

siguientes capítulos, vamos a ver algunas características importantes de la tecnología que

nos permitirán comprender mejor el mundo XML y cómo soluciona nuestros problemas a la

hora de trabajar con los datos.

XML son las siglas de Extensible Markup Language, una

especificación/lenguaje de programación desarrollada por el W3C. XML es una

versión de SGML, diseñado especialmente para los documentos de la web.

Permite que los diseñadores creen sus propias etiquetas, permitiendo la

definición, transmisión, validación e interpretación de datos entre aplicaciones y

entre organizaciones.

xml permite realizar funciones que no pueden realizarse con

EJEMPLOS DE XML

Aplicación XML

Aplicación no significa un programaque utilice XML.Aplicación

significa el uso de XMLpara un dominio específico.

Aplicación XML =Lenguaje de marcado = Vocabulario

Page 2: Xml

DocBookChemical Markup LanguageKeyhole Markup

LanguageMathematical Markup LanguageOpen DocumentOpen

XML FormatScalable Vector GraphicsSystems Byology Markup

Language

Chemical Markup Language• Estructura química de moléculas•

Reacciones químicas• Información de espectros y análisis• Datos

de química computacional• Datos cristalografía y materiales

<?xml version="1.0" ?><cml

xmlns="http://www.xml-cml.org/schema/cml2/core"

xmlns:xsi="http://www.w3.org/2001/XMLSchema- instance"

xsi:schemaLocation="http://www.xml-

cml.org/schema/cml2/core/cmlCore.xsd"><molecule

title="Water"> <atomArray> <atom id="a1" elementType="H"

hydrogenCount="0" /> <atom id="a2" elementType="O"

hydrogenCount="2" /> <atom id="a3" elementType="H"

hydrogenCount="0" /> </atomArray> <bondArray> <bond

atomRefs2="a1 a2" order="1" /> <bond atomRefs2="a2 a3"

order="1" /> </bondArray></molecule></cml>

<?xml version="1.0" standalone="no"?><!DOCTYPE book

PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"

"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"><boo

k lang="es" id="simple_libro"> <title>Un libro muy simple</title>

<chapter id="capitulo_1"> <title>Capitulo 1</title> <para>Hola

mundo!</para> <para>¡Yo espero que tu día sea bueno!</para>

</chapter> <chapter id="capitulo_2"> <title>Capitulo 2</title>

<para>Hola otra vez, mundo!</para> </chapter></book>

<?xml version="1.0" standalone="no"?><!DOCTYPE article

PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"

"http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"><arti

cle lang="es"> <title>Creando Documentación Técnica con

DocBook</title> <articleinfo> <author>

<firstname>Leonardo</firstname>

<surname>Caballero</surname> </author> </articleinfo>

Page 3: Xml

<section id="art-intro"> <title>Introducción</title>

<para>DocBook es un aplicación del estándar SGML/XML e

incluye una DTD propia y que se utiliza de manera más

destacada el área de la documentación técnica. </para>

</section></article>

<?xml version="1.0" encoding="UTF-8"?><kml

xmlns="http://www.opengis.net/kml/2.2"><Document><Placemar

k> <name>New York City</name> <description>New York

City</description> <Point> <coordinates>-

74.006393,40.714172,0</coordinates>

</Point></Placemark></Document></kml>

Mathematical Markup Language• XHTML + MathML•

Intercambio de información: Maple, Matlab, etc.

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE math

PUBLIC "-//W3C//DTD MathML 2.0//EN"

"http://www.w3.org/Math/DTD/mathml2/mathml2.dtd"><math

mode="display" xmlns="http://www.w3.org/1998/Math/MathML">

<mrow> <mi>x</mi> <mo>=</mo> <mfrac> <mrow> <mo

form="prefix">&#x2212;<!-- &minus; --></mo> <mi>b</mi>

<mo>&#x00B1;<!-- &PlusMinus; --></mo> <msqrt> <msup>

<mi>b</mi> <mn>2</mn> </msup>

<mo>&#x2212;<!-- &minus; --></mo> <mn>4</mn>

<mo>&#x2062;<!-- &InvisibleTimes; --></mo> <mi>a</mi>

<mo>&#x2062;<!-- &InvisibleTimes; --></mo> <mi>c</mi>

</msqrt> </mrow> <mrow> <mn>2</mn> <mo>&#x2062;<!--

&InvisibleTimes; --></mo> <mi>a</mi> </mrow> </mfrac>

</mrow></math>

Otro ejemplo

Veamos un ejemplo muy sencillo de un pequeño lenguaje de etiquetas para definir documentos FAQ:

<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE FAQ SYSTEM "FAQ.DTD"><FAQ><INFO>

Page 4: Xml

<TITULO> WINDOWS98? SOLO SI ME OBLIGAN! </TITULO><AUTOR> Fernando Damián Lorenzo García </AUTOR><EMAIL> [email protected] </EMAIL><VERSION> 1.0 </VERSION><FECHA> 20.MAYO.99 </FECHA></INFO><PART NO="1"><Q NO="1"><QTEXT>¿Por qué tengo que instalar W95?</QTEXT><A> A mi también me parece una buena pregunta.</A></Q><Q NO="2"><QTEXT>Y de que me vale?</QTEXT><A>Otra ingeniosa pregunta.</A></Q></PART></FAQ>

Para el lenguaje de marcas mostrado arriba tenemos el siguiente DTD: <!ELEMENT FAQ (INFO, PART+)>

<!ELEMENT INFO (TITULO, AUTOR, EMAIL?, VERSION?, FECHA?)><!ELEMENT TITULO (#PCDATA)><!ELEMENT AUTOR (#PCDATA)><!ELEMENT EMAIL (#PCDATA)><!ELEMENT VERSION (#PCDATA)><!ELEMENT FECHA (#PCDATA)><!ELEMENT PART (Q+)><!ELEMENT Q (QTEXT, A)><!ELEMENT QTEXT (#PCDATA)><!ELEMENT A (#PCDATA)><!ATTLIST PART NO CDATA #IMPLIED TITLE CDATA #IMPLIED><!ATTLIST Q NO CDATA #IMPLIED>

Veamos ahora un ejemplo de código XML para una librería virtual: <?xml version="1.0"?>

<libro><titulo> Cien años de soledad </titulo><disponible tiempo="24" unidad="horas"/><autor> Gabriel García Márquez </autor><formato> Rústica </formato><publicacion>1967 </publicacion><precio cantidad="9.99" moneda="euro"/><descuento cantidad="5"/><enlacelibro href="/exec/ISBN/84-473-0619-4"/></libro>

Su DTD correspondiente: <!ELEMENT autor ( #PCDATA ) >

<!ELEMENT descuento EMPTY ><!ATTLIST descuento cantidad CDATA #REQUIRED ><!ELEMENT disponible EMPTY ><!ATTLIST disponible tiempo CDATA #REQUIRED ><!ATTLIST disponible unidad CDATA #REQUIRED ><!ELEMENT enlacelibro EMPTY ><!ATTLIST enlacelibro href CDATA #REQUIRED ><!ELEMENT formato ( #PCDATA ) ><!ELEMENT libro ( titulo | disponible | autor | formato | publicacion | precio | descuento | enlacelibro )* ><!ELEMENT precio EMPTY ><!ATTLIST precio cantidad CDATA #REQUIRED ><!ATTLIST precio moneda CDATA #REQUIRED ><!ELEMENT publicacion ( #PCDATA ) ><!ELEMENT titulo ( #PCDATA ) >

Page 5: Xml

COMPONENTES DE XML

Un sistema XML típico consta de tres tipos de archivos:

Los datos XML, que son sus datos, más las etiquetas XML que describen

el significado y la estructura de los datos.

Los esquemas XML, que definen las reglas de lo que puede y no puede

haber en sus archivos de datos. Por ejemplo, un esquema podría servir para

asegurarse de que los usuarios no pueden escribir texto en un campo de

fecha.

Las transformaciones XML, que permiten utilizar los datos en diversos

programas o archivos. Por ejemplo, una transformación podría agregar los

datos relativos a las ventas a un libro de trabajo, mientras que otra

transformación podría insertar la misma información en un documento.