XML

Proviene de eXtensible Markup Language (“Lenguaje de Marcas Extensible”). Se trata de un metalenguaje (un lenguaje que se utiliza para decir algo sobre otro lenguaje) extensible de etiquetas que fue desarrollado por el Word Wide Web Consortium (W3C), un consorcio internacional que elabora recomendaciones para la World Wide Web. El XML es una adaptación del SGML (Standard Generalized Markup Language), un lenguaje que permite la organización y el etiquetado de documentos. Esto quiere decir que el XML no es un lenguaje en sí mismo, sino un sistema que permite definir lenguajes de acuerdo a las necesidades. El XHTML, el MathML y el SVG son algunos de los lenguajes que el XML está en condiciones de definir. Las bases de datos, los documentos de texto, las hojas de cálculo y las páginas web son algunos de los campos de aplicación del XML. El metalenguaje aparece como un estándar que estructura el intercambio de información entre las diferentes plataformas. Los expertos nombran varias ventajas que derivan de la utilización del XML. Es extensible (se pueden añadir nuevas etiquetas tras el diseño del documento), su analizador es estándar (no requiere de cambios para cada versión del metalenguaje) y facilita el análisis y procesamiento de los documentos XML creados por terceros. Entre los lenguajes creados con XML, se destacan el XSL (Extensible Stylesheet Language) y el XLINK (que intenta trascender las limitaciones de los enlaces de hipertexto en HTML). XML es interesante en el mundo de Internet y el e-bussiness, ya que existen muchos sistemas distintos que tienen que comunicarse entre sí, 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. La validez de los documentos (es decir, que su estructura sintáctica se encuentre desarrollada correctamente) depende la relación especificada entre los distintos elementos a partir de una definición o documento externo. XML es un sistema estándar de codificación de información. Los programas que utilizan el formato XML pueden intercambiar fácilmente sus datos, ya que responden a una misma lógica interna. Los documentos XML son ficheros de texto que contienen la información organizada en forma de árbol: cada rama puede tener unos atributos propios y servir de base para otras ramas. Además, los documentos XML se pueden transformar (por ejemplo, a formato HTML, para mostrar la información en una página web), o combinar: un tronco con todas sus ramas puede pasar a ser una rama de otro árbol mayor.

. .   SINTAXIS Las normas que tiene son muy simples.. Por ejemplo.  Comunicación de datos. si deseamos guardar la información relacionada con una película en un documento XML podríamos utilizar un esquema con las siguientes etiquetas.. aunque tenemos que tener en cuenta que el XML tiene muchos otros lenguajes y tecnologías trabajando alrededor de él. cualquier aplicación podría escribir un documento de texto plano con los datos que estaba manejando en formato XML y otra aplicación recibir esta información y trabajar con ella.OBJETIVOS El XML se puede usar para infinidad de trabajos y aporta muchas ventajas en amplios escenarios. En el resto del documento se deben escribir etiquetas como las de HTML... las etiquetas que nosotros queramos.. Si tenemos que mover los datos de una base de datos a otra sería muy sencillo si las dos trabajasen en formato XML.0"?>. Sin embargo. Veamos algunas ventajas del XML en algunos campos prácticos.Comentario --> Y esto es todo lo que es el lenguaje XML en si. igual que el HTML y en la cabecera del documento se tiene que poner el texto: <?xml version="1. lenguaje de etiquetas extendido. Hasta ahora cada navegador interpreta la información a su manera y los programadores del web tenemos que hacer unas cosas u otras en función del navegador del usuario. Si mañana nuestra aplicación debe correr en WAP solo tenemos que crear una nueva hoja de estilo o similar.. Con XML tenemos una sola aplicación que maneja los datos y para cada navegador o soporte podremos tener una hoja de estilo o similar para aplicarle el estilo adecuado.. no cabe duda que la sintaxis XML es realmente reducida y sencilla. <ETIQ atributo1="valor1" atributo2="valor2". Se escribe en un documento de texto ASCII. Aplicaciones web.</ETIQ1> Cualquier etiqueta puede tener atributos. Las etiquetas se escriben anidas. Si la información se transfiere en XML.</ETIQ2>. <ETIQ1>. por eso el lenguaje se llama XML.<ETIQ2>. Le podemos poner los atributos que queramos. Migración de datos.> Los comentarios de XML se escriben igual que los de HTML. <!-. Para definir qué etiquetas y atributos debemos utilizar al escribir en XML tenemos que fijarnos en la manera de guardar la información de una forma estructurada y ordenada. unas dentro de otras.

... para leer datos en una película de Flash. Supongamos que queremos generar un documento XML como el siguiente para después poder cargarlo dentro de un visor de imágenes generado con Flash.0"?> <pelicula nombre="el padrino" año=1985> <personal> </director nombre="georgie lucar"> </interprete nombre="marlon brando" interpreta-a="don corleone"> </interprete nombre="al pacino" interpreta-a="michael corleone"> </personal> </argumento descripción="pelicula de mafias sicilianas en estados unidos"> </pelicula> EJEMPLO # 2 <juego nombre="escondite" espacio="exteriores"> <jugadores min="2" max="16" /> <edades min="3" max="indefinido" /> <descripcion> Los jugadores se reparten en dos equipos y. </descripcion> </juego> <juego nombre="ajedrez" espacio="interiores"> . etc. </juego> </juegos> EJEMPLO DE XML CON PHP EJEMPLO # 1 Generar un documento XML a partir de un PHP es relativamente sencillo.jpg</src> <titulo>un coche</titulo> <url>pagina2..jpg</src> <titulo>un barco</titulo> <url>pagina1. Es primordial generar el Content-Type adecuado y a partir de ahí generar una estructura válida de XML que luego podremos utilizar.EJEMPLO # 1 <?xml version="1. <album> <elemento> <src>imagen1.html</url> .html</url> </elemento> <elemento> <src>imagen2. por ejemplo..

//los arrays se podrían alimentar //con datos extraidos de una base de datos $imagenes = array('imagen1.html'). ?> EJEMPLO # 2 SimpleXML es una nueva función introducida con PHP5. echo '<src>'. 'retrato').html'. echo'</elemento>'.</elemento> <elemento> <src>imagen3.jpg <titulo>retrato <url>pagina3.jpg'. 'un coche'. } echo '</album>'. lo que hace es generar un Objeto teniendo como base un documento XML que le indiquemos. echo '<?xml version="1. echo '</img>'. echo $titulos[$pos]. 'imagen3. supongamos que tenemos un documento XML donde tenemos una lista de alumnos y cada item contiene el nombre y la fecha de nacimiento declarada como un atributo: <rss> <alumnos> <alumno fechadenac="30/09/1992"> <nombre>Juan</nombre> . $pos++. echo '<img>'. echo '</src>'. foreach ($imagenes as $valor) { echo '<elemento>'.html'. echo '<titulo>'.jpg').jpg'. <?php header("Content-type: text/xml"). echo $enlaces[$pos].'pagina2. $enlaces = array('pagina1.0"?>'.'pagina3. echo $valor. $pos = 0.html </elemento> </album> El documento php se podría construir con un script similar al siguiente. echo '</titulo>'. $titulos = array('un barco'. 'imagen2. echo '<album>'.

Y si queremos obtener el nombre del tercer alumno.xml').</alumno> <alumno fechadenac="30/09/1992"> <nombre>Jorge</nombre> </alumno> <alumno fechadenac="30/09/1992"> <nombre>Josue</nombre> </alumno> </alumnos> </rss> Lo primero que se tiene que hacer es declarar la ubicación de este XML: <?php $alumnos= simplexml_load_file('alumnos. ?> Y nos resultaría el nombre del primer alumno: Juan Alumno [0] vendría a ser el primer objeto del XML.xml'). ya que en Arrays el índice empieza en 0. solo cambiamos el 0 por el 2: <?php $alumnos= simplexml_load_file('alumnos. echo $alumnos->alumnos->alumno[0]->nombre. ?> Y obtendremos el resultado: Jorge .xml'). //declaramos una variable y llamamos a la funcion simpleXML y declaramos la ubicacion del XML a leer ?> Luego si queremos mostrar el nombre del primer alumno lo que hacemos es mostrar la variable y luego ir navegando entre etiquetas hasta obtener el valor que queremos (alumnos->alumno->nombre): <?php $alumnos= simplexml_load_file('alumnos. echo $alumnos->alumnos->alumno[2]->title.

Sign up to vote on this title
UsefulNot useful