SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
Android de la A a la Z
                                           Unidad 5 “XML y Android”


¿Qué es XML?
El lenguaje eXtensible Markup Language, XML, es una tecnología o lenguaje de etiquetado útil para una
serie de tareas informáticas algunas relacionadas con la programación en ciertos lenguajes de
programación, por ejemplo Java. XML no es sólo un lenguaje, es una forma de especificar lenguajes
(metalenguaje), de ahí lo de extensible.

XML fue creado al amparo del Word Wide Web Consortium (W3C) organismo que vela por el desarrollo de
WWW. Su desarrollo se comenzó en 1996 y la primera versión salió a la luz el 10 de febrero de 1998.

Para entenderlo bien hay que olvidarse un poco, sólo un poco de HTML. En teoría HTML es un subconjunto
de XML especializado en presentación de documentos para la Web, mientras que XML es un subconjunto
de SGML especializado en la gestión de información para la Web. En la práctica XML contiene a HTML
aunque no en su totalidad. La definición de HTML contenido totalmente dentro de XML y por lo tanto que
cumple del todo la especificación SGML es XHTML (Extensible, Hypertext Markup Language).

Por tanto, no debe uno pensarse que XML es para crear páginas web, o algo parecido a las páginas web.
XML es un lenguaje que cambia el paradigma de programación: de basada en funciones u objetos a la
programación basada en el documento.

XML se puede usar para cambiar totalmente el paradigma de publicación; de un programa que recibe unas
entradas y produce unas salidas, se pasa a un documento que genera otro documento, o bien programas
que toman documentos y producen otros documentos.




Características
          Transmite contenido y estructura.
          No transmite presentación ni comportamiento. Para que lo haga se le debe asociar mecanismos
           adicionales.
          XML aplicado a los sitios web: permite separar contenido y presentación, y que los mismos datos se
           puedan mostrar de varias formas distintas sin demasiado esfuerzo.
                                                                                                           1
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                           Unidad 5 “XML y Android”

          XML para la comunicación entre aplicaciones: representación de los datos muy simple, fácil de
           transmitir por la red, estándar. En los últimos tiempos este uso se está haciendo muy popular con
           el surgimiento de los Servicios web.
          XML para la configuración de programas: representación de los datos simple y estándar, en
           contraposición con los crípticos formatos propietarios.




SGML y XML especifican el contenido y la estructura, permitiendo generar distintas presentaciones según
se requiera.

Objetivos y usos de XML
El XML se creó para que cumpliera varios objetivos:

                                                       • Que fuera idéntico a la hora de servir, recibir, y
                                                   procesar la información del HTML para aprovechar toda la
                                                   tecnología implantada de este.
                                                       • Que fuera normal y conciso desde el punto de
                                                   vista de los datos y la manera de guardarlos.
                                                       • Que fuera extensible, para que lo puedan utilizar
                                                   en todos los campos del conocimiento.
                                                       • Que fuese fácil de leer y editar.
                                                       • Que fuese fácil de implantar, programar y aplicar


                                                                                                          2
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                           Unidad 5 “XML y Android”

           a los distintos sistemas

Ventajas del XML
Comunicación de datos. Si la información se transfiere en XML 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.

Migración de datos. Si trabajamos en formato XML sería muy sencillo mover datos de una base de datos a
otra.

Aplicaciones Web. Con XML hay una sola aplicación que maneja los datos y para cada navegador podemos
tener una hoja de estilo o similar para aplicarle el estilo adecuado.




Estructura del lenguaje XML
El metalenguaje XML consta de cuatro especificaciones (el propio XML sienta las bases sintácticas y el
alcance de su implementación):




                                                                                                    3
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                           Unidad 5 “XML y Android”

     1. DTD (Document Type Definition):. Si queremos tener la seguridad de que un fichero XML pueda
        ser perfectamente interpretado por cualquier herramienta, podemos (aunque no es obligatorio)
        incluir una definición de su construcción que preceda a los datos propiamente dichos. Este
        conjunto de metadatos recibe el nombre de DTD ó Definición de Tipo de Documento. Así una
        herramienta es capaz de interpretar XML, eso significa que posee un analizador sintáctico (Parser)
        que es capaz de contrastar la definición dada por el autor del documento contra la especificada por
        la normativa, indicando si hay errores, y, de no ser así, presentando el documento de la forma
        adecuada.

     2. XSL (eXtensible Stylesheet Language): Define o implementa el lenguaje de estilo de los
        documentos escritos para XML. Desde el verano de 1997 varias empresas informáticas como
        Arbortext, Microsoft e Inso vienen trabajando en una propuesta de XSL (antes llamado "xml-style")
        que presentaron a W3C. Permite modificar el aspecto de un documento. Se puede lograr múltiple
        columnas, texto girado, orden de visualización de los datos de una tabla, múltiples tipos de letra
        con amplia variedad en los tamaños. Este estándar está basado en el lenguaje de semántica y
        especificación de estilo de documento (DSSSL, Document Style Semantics and Specification
        Language, ISO/IEC 10179) y, por otro lado, se considera más potente que las hojas de estilo en
        cascada (CSS, Cascading Style Sheets), usado en un principio con el lenguaje DHTML. "Se espera que
        el CSS sea usado para visualizar simples estructuras de documentos XML (actualmente se ha
        conseguido mayor integración en XML con el protocolo CSS2 (Cascading Style Sheets, level 2)
        ofreciendo nuevas formas de composición y una más rápida visualización) y, por otra parte, XSL
        pueda ser utilizado donde se requiera más potencia de diseño como documentos XML que
        encierran datos estructurados (tablas, organigramas, etc.).

     3. XLL (eXtensible Linking Language): Define el modo de enlace entre diferentes enlaces. Se considera
        que es un subconjunto de HyTime (Hipermedia/Timed-based structuring Language o Lenguaje de
        estructuración hipermedia/basado en el tiempo, ISO 10744) y sigue algunas especificaciones del TEI
        (Text Encoding Initiative o Iniciativa de codificación de texto). Desde marzo de 1998 el W3C trabajo
        en los enlaces y direccionamientos del XML. Provisionalmente se le renombró como Xlink y a partir
        de junio se le denomina XLL. Este lenguaje de enlaces extensible tiene dos importantes
        componentes: Xlink y el Xpointer. Va más allá de los enlaces simples que sólo soporta el HTML.

     4. XUA (XML User Agent): Estandarización de navegadores XML. Todavía está en proceso de creación
        de borradores de trabajo. Se aplicará a los navegadores para que compartan todas las
        especificaciones XML.



Estructura de un documento XML

Un documento XML posee los siguientes elementos:




                                                                                                          4
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                           Unidad 5 “XML y Android”




     1. El prólogo puede contener la siguiente información: declaración XML (opcional en XML 1.0,
        obligatoria en XML 1.1), la definición de tipo de documento (DTD), que sólo es necesario para
        validar la estructura de documento, las instrucciones de procesamiento y comentarios (opcionales).
     2. El contenido o elemento raíz, que también se llama el “elemento de documento".
     3. Un epílogo, que contiene las instrucciones de procesamiento y los comentarios.

Las instrucciones de procesamiento permiten dar órdenes o información a una aplicación para que procese
los datos XML. Las instrucciones de procesamiento tiene el formato <? instrucciones objetivo?>, donde el
objetivo es el nombre de la aplicación que se espera que haga el tratamiento, y las instrucciones consisten
en una cadena de caracteres que representa la información o los comandos de la aplicación para procesar.


Declaración XML
En general se recomienda que se inicie un documento XML con una declaración XML. Si está presente, debe
ser la primera línea en el documento. A pesar de que la declaración XML se parece a una instrucción de
procesamiento, en realidad es una simple declaración.

La declaración debe estar denotada entre los símbolos (<?) y (>?),

El único atributo que se exige en la declaración es la versión. Los atributos adicionales que se puede añadir
a la declaración XML son:

          El atributo de codificación (encoding attribute), que es opcional. De forma predeterminada, los
           documentos XML están codificados en UTF-8 formato del juego de caracteres Unicode.
          El atributo independiente (standalone attribute) es opcional y se puede establecer con un valor
           “yes”, “no” o ningún valor. Si se omite, el valor se supone como un “no”.


                                                                                                           5
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                           Unidad 5 “XML y Android”

                o    El valor “no” se coloca si una aplicación requiere una DTD externo para determinar la
                     estructura del documento.
                o    El valor “yes” se coloca cuando el documento no tiene DTD o si el DTD es interno.




Trabajando con XML
Al igual que otros lenguajes de marcas, XML se apoya en tres bloques fundamentales: elementos, atributos
y valores. Un elemento se emplea para describir o contener una pieza de información; un conjunto de
elementos constituye un documento XML. Los elementos consisten de dos etiquetas: una de apertura y
otra de cierre; las de apertura están constituidas por una palabra entre paréntesis angulares (<>), tales
como <resources> e <ítem>, y las de cierre también con paréntesis angulares, pero precedidas por una
barra oblicua hacia delante (/) antes del nombre de la etiqueta, por ejemplo </resources> e </ítem>. Los
elementos siempre aparecen después de una etiqueta de apertura, seguida por una serie opcional de
datos, seguidos por una etiqueta de cierre, por ejemplo:

<resources>
…
…
…
</resources>

Incluso en el mismo renglón:

<ítem>… …             …</ítem>

En caso de etiquetas vacías:

<ítem />

Puede existir elementos vacíos, pero con atributos. Estos son pequeñas piezas de información
inmediatamente posteriores a una etiqueta de apertura. Un atributo consiste de un nombre y su valor
correspondiente, separados por un signo de igualdad (=). El valor de un atributo aparece a la derecha del
símbolo de igualdad y entrecomillado. Un ejemplo de un atributo llamado name asociado con un elemento
amigo:

<amigo name=”Juan” />

Cuando un elemento contiene otros elementos, estos se denominan elementos anidados, por ejemplo,
representar una casa en XLM puede ser:

<casa>
    <cuarto tipo=”sala” >
        <mueble tipo=”sofá” />
    </cuarto>
                                                                                                        6
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                                Unidad 5 “XML y Android”

    <cuarto tipo=”comedor”>
        <mueble tipo=”vitrina”>
            <contenido tipo=”jarrón” color=”blanco” />
            <contenido tipo=”vajilla” marca=”Alfaro” precio=”cara” />
        </mueble>
     </cuarto>
     <cuarto tipo=”recámara”>
          <mueble tipo=”cama” />
          <mueble tipo=”sillón” />
     </cuarto>
</casa>
El código anterior anida elementos diferentes según su ubicación física en la casa, entre ellos algunos son
vacíos, por ejemplo, <mueble tipo=”sofá” />, empleando la etiqueta final vacía, />. Las reglas que rigen XML
son:
    1.      Los nombres de etiquetas son sensibles a ser mayúsculas o minúsculas.
    2.      A cada etiqueta de apertura corresponde una de cierre, a menos que sea una etiqueta de cierre
            abreviada.
    3.      Un par de etiquetas anidadas no puede sobreponerse a otra.
    4.      Los valores de atributos deben estar entrecomillados.
    5.      Cada documento debe contener un elemento raíz.




                                 Ejemplo que muestra el uso de ELEMENTOS VS ATRIBUTOS

En un documento XLM existen unos pocos símbolos especiales que deben manejarse de forma diferente a
otros caracteres: (<), (>), (“), (‘) y (&), ya que tienen un significado especial en XLM, de ahí que para
emplearlos se requieran símbolos predefinidos, denominados entidades, los cuales son como sigue:

                                           &lt;                 para         <
                                           &gt;                 para         >
                                           &quot;               para         “

                                                                                                          7
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2
Android de la A a la Z
                                                Unidad 5 “XML y Android”

                                           &apos;               para ‘
                                           &amp;                para &

Algunos ejemplos de su utilización son los siguientes:

          <película nombre=”All the King&apos;s Men” />

          <película nombre=”Pride &amp; Prejudice”                           />

Con todo lo mencionado previamente es fácil ahora diseñar uno de los componentes de una aplicación
Android: el documento “Manifest.xml”, el cual describe cada uno de dichos componentes, así como su
interacción.




                                                                                                8
Elaborado por: J. Ulises González Medina
android.unam@gmail.com
Noviembre 2011
Versión 1.2

Más contenido relacionado

La actualidad más candente

12j sistemaandroid texto
12j sistemaandroid texto12j sistemaandroid texto
12j sistemaandroid textoHenry Ortiz
 
"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2Android UNAM
 
Unidad 2 Primeros pasos con android
Unidad 2 Primeros pasos con androidUnidad 2 Primeros pasos con android
Unidad 2 Primeros pasos con androidLorena García Arnau
 
"Android de la A a la Z" -- Unidad 8
"Android de la A a la Z" -- Unidad 8"Android de la A a la Z" -- Unidad 8
"Android de la A a la Z" -- Unidad 8Android UNAM
 
Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...
Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...
Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...José Antonio Sandoval Acosta
 
Taller de prog. en android
Taller de prog. en androidTaller de prog. en android
Taller de prog. en androidKarla Silva
 
trabajo Android
trabajo Androidtrabajo Android
trabajo Android3104359589
 
Fundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para AndroidFundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para Androidandresuarezz26
 
Presentación1 bases de datos
Presentación1 bases de datosPresentación1 bases de datos
Presentación1 bases de datosAurora Fuentes
 
Presentación no numerica ii
Presentación no numerica iiPresentación no numerica ii
Presentación no numerica iiCarlos Ordaz
 
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...José Antonio Sandoval Acosta
 
R esume libro el gran libro de android
R esume libro el gran libro de androidR esume libro el gran libro de android
R esume libro el gran libro de androidwiliam lliulli herrera
 
Introdución a aplicaciones web en java
Introdución a aplicaciones web en java Introdución a aplicaciones web en java
Introdución a aplicaciones web en java Rodrigo Zottola Pareja
 

La actualidad más candente (20)

12j sistemaandroid texto
12j sistemaandroid texto12j sistemaandroid texto
12j sistemaandroid texto
 
"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2"Android de la A a la Z" -- Unidad 2
"Android de la A a la Z" -- Unidad 2
 
Unidad 2 Primeros pasos con android
Unidad 2 Primeros pasos con androidUnidad 2 Primeros pasos con android
Unidad 2 Primeros pasos con android
 
"Android de la A a la Z" -- Unidad 8
"Android de la A a la Z" -- Unidad 8"Android de la A a la Z" -- Unidad 8
"Android de la A a la Z" -- Unidad 8
 
Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...
Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...
Bases de Datos para Dispositivos Móviles - Unidad I Introducción a la Progra...
 
Taller de prog. en android
Taller de prog. en androidTaller de prog. en android
Taller de prog. en android
 
trabajo Android
trabajo Androidtrabajo Android
trabajo Android
 
La configuración CLDC
La configuración CLDCLa configuración CLDC
La configuración CLDC
 
Fundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para AndroidFundamentos desarrollo de Apps para Android
Fundamentos desarrollo de Apps para Android
 
Ediciones de java
Ediciones de javaEdiciones de java
Ediciones de java
 
Presentación1 bases de datos
Presentación1 bases de datosPresentación1 bases de datos
Presentación1 bases de datos
 
Presentación no numerica ii
Presentación no numerica iiPresentación no numerica ii
Presentación no numerica ii
 
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
Bases de Datos para Dispositivos Móviles - Unidad II: Arquitectura de Base de...
 
Tema SISTEMA OPERATIVO ANDROID
Tema SISTEMA OPERATIVO ANDROIDTema SISTEMA OPERATIVO ANDROID
Tema SISTEMA OPERATIVO ANDROID
 
R esume libro el gran libro de android
R esume libro el gran libro de androidR esume libro el gran libro de android
R esume libro el gran libro de android
 
U7 postgre sql
U7 postgre sqlU7 postgre sql
U7 postgre sql
 
Introdución a aplicaciones web en java
Introdución a aplicaciones web en java Introdución a aplicaciones web en java
Introdución a aplicaciones web en java
 
Visual studio.net
Visual studio.netVisual studio.net
Visual studio.net
 
Software
SoftwareSoftware
Software
 
Sistema Operativo Android
Sistema Operativo AndroidSistema Operativo Android
Sistema Operativo Android
 

Similar a "Android de la A a la Z" -- Unidad 5 (20)

Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5Android de la A a la Z - Unidad 5
Android de la A a la Z - Unidad 5
 
FORMATO XML
FORMATO XMLFORMATO XML
FORMATO XML
 
Xml
XmlXml
Xml
 
Xml
XmlXml
Xml
 
Xml
XmlXml
Xml
 
Fundamentos XML
Fundamentos XMLFundamentos XML
Fundamentos XML
 
Xml
XmlXml
Xml
 
Xml 1
Xml 1Xml 1
Xml 1
 
Xml 1
Xml 1Xml 1
Xml 1
 
Exposicion dora, alex y eric
Exposicion dora, alex y ericExposicion dora, alex y eric
Exposicion dora, alex y eric
 
Que es el xml
Que es el xmlQue es el xml
Que es el xml
 
Xml
XmlXml
Xml
 
Xml 1
Xml 1Xml 1
Xml 1
 
Que es el xml alexhis
Que es el xml alexhisQue es el xml alexhis
Que es el xml alexhis
 
Htmlvaleria
HtmlvaleriaHtmlvaleria
Htmlvaleria
 
Xm ljosue castro
Xm ljosue castroXm ljosue castro
Xm ljosue castro
 
El lenguaje XML y su uso
El lenguaje XML y su usoEl lenguaje XML y su uso
El lenguaje XML y su uso
 
HTML5 - XHTML - XML
HTML5 - XHTML - XMLHTML5 - XHTML - XML
HTML5 - XHTML - XML
 
Html para subir a slideshare
Html para subir a slideshareHtml para subir a slideshare
Html para subir a slideshare
 
Lenguaje XML
Lenguaje XMLLenguaje XML
Lenguaje XML
 

Más de Android UNAM

Móviles, fuerza de cambio
Móviles, fuerza de cambioMóviles, fuerza de cambio
Móviles, fuerza de cambioAndroid UNAM
 
Todo trabajo es temporal
Todo trabajo es temporalTodo trabajo es temporal
Todo trabajo es temporalAndroid UNAM
 
Android de la A a la Z Actividades ulises gonzalez
Android de la A a la Z   Actividades ulises gonzalezAndroid de la A a la Z   Actividades ulises gonzalez
Android de la A a la Z Actividades ulises gonzalezAndroid UNAM
 
Android de la A a la Z PARTE 3 de 3 ulises gonzalez
Android de la A a la Z  PARTE 3 de 3 ulises gonzalezAndroid de la A a la Z  PARTE 3 de 3 ulises gonzalez
Android de la A a la Z PARTE 3 de 3 ulises gonzalezAndroid UNAM
 
Android de la A a la z componentes de una aplicacion ulises gonzalez
Android de la A a la z   componentes de una aplicacion ulises gonzalezAndroid de la A a la z   componentes de una aplicacion ulises gonzalez
Android de la A a la z componentes de una aplicacion ulises gonzalezAndroid UNAM
 
Android de la A a la Z XML Ulises Gonzalez
Android de la A a la Z  XML Ulises GonzalezAndroid de la A a la Z  XML Ulises Gonzalez
Android de la A a la Z XML Ulises GonzalezAndroid UNAM
 
Android de la A a la Z PARTE 2 de 3 ulises gonzalez
Android de la A a la Z  PARTE 2 de 3 ulises gonzalezAndroid de la A a la Z  PARTE 2 de 3 ulises gonzalez
Android de la A a la Z PARTE 2 de 3 ulises gonzalezAndroid UNAM
 
Android de la A a la Z PARTE 1 de 3 ulises gonzalez
Android de la A a la Z PARTE 1 de 3 ulises gonzalezAndroid de la A a la Z PARTE 1 de 3 ulises gonzalez
Android de la A a la Z PARTE 1 de 3 ulises gonzalezAndroid UNAM
 
"Android de la A a la Z" -- Unidad 11
"Android de la A a la Z" -- Unidad 11"Android de la A a la Z" -- Unidad 11
"Android de la A a la Z" -- Unidad 11Android UNAM
 
"Android de la A a la Z" -- Unidad 10
"Android de la A a la Z" -- Unidad 10"Android de la A a la Z" -- Unidad 10
"Android de la A a la Z" -- Unidad 10Android UNAM
 
"Android de la A a la Z" -- Unidad 9
"Android de la A a la Z" -- Unidad 9"Android de la A a la Z" -- Unidad 9
"Android de la A a la Z" -- Unidad 9Android UNAM
 
"Android de la A a la Z" -- Unidad 6
"Android de la A a la Z" -- Unidad 6"Android de la A a la Z" -- Unidad 6
"Android de la A a la Z" -- Unidad 6Android UNAM
 

Más de Android UNAM (12)

Móviles, fuerza de cambio
Móviles, fuerza de cambioMóviles, fuerza de cambio
Móviles, fuerza de cambio
 
Todo trabajo es temporal
Todo trabajo es temporalTodo trabajo es temporal
Todo trabajo es temporal
 
Android de la A a la Z Actividades ulises gonzalez
Android de la A a la Z   Actividades ulises gonzalezAndroid de la A a la Z   Actividades ulises gonzalez
Android de la A a la Z Actividades ulises gonzalez
 
Android de la A a la Z PARTE 3 de 3 ulises gonzalez
Android de la A a la Z  PARTE 3 de 3 ulises gonzalezAndroid de la A a la Z  PARTE 3 de 3 ulises gonzalez
Android de la A a la Z PARTE 3 de 3 ulises gonzalez
 
Android de la A a la z componentes de una aplicacion ulises gonzalez
Android de la A a la z   componentes de una aplicacion ulises gonzalezAndroid de la A a la z   componentes de una aplicacion ulises gonzalez
Android de la A a la z componentes de una aplicacion ulises gonzalez
 
Android de la A a la Z XML Ulises Gonzalez
Android de la A a la Z  XML Ulises GonzalezAndroid de la A a la Z  XML Ulises Gonzalez
Android de la A a la Z XML Ulises Gonzalez
 
Android de la A a la Z PARTE 2 de 3 ulises gonzalez
Android de la A a la Z  PARTE 2 de 3 ulises gonzalezAndroid de la A a la Z  PARTE 2 de 3 ulises gonzalez
Android de la A a la Z PARTE 2 de 3 ulises gonzalez
 
Android de la A a la Z PARTE 1 de 3 ulises gonzalez
Android de la A a la Z PARTE 1 de 3 ulises gonzalezAndroid de la A a la Z PARTE 1 de 3 ulises gonzalez
Android de la A a la Z PARTE 1 de 3 ulises gonzalez
 
"Android de la A a la Z" -- Unidad 11
"Android de la A a la Z" -- Unidad 11"Android de la A a la Z" -- Unidad 11
"Android de la A a la Z" -- Unidad 11
 
"Android de la A a la Z" -- Unidad 10
"Android de la A a la Z" -- Unidad 10"Android de la A a la Z" -- Unidad 10
"Android de la A a la Z" -- Unidad 10
 
"Android de la A a la Z" -- Unidad 9
"Android de la A a la Z" -- Unidad 9"Android de la A a la Z" -- Unidad 9
"Android de la A a la Z" -- Unidad 9
 
"Android de la A a la Z" -- Unidad 6
"Android de la A a la Z" -- Unidad 6"Android de la A a la Z" -- Unidad 6
"Android de la A a la Z" -- Unidad 6
 

"Android de la A a la Z" -- Unidad 5

  • 1. Android de la A a la Z Unidad 5 “XML y Android” ¿Qué es XML? El lenguaje eXtensible Markup Language, XML, es una tecnología o lenguaje de etiquetado útil para una serie de tareas informáticas algunas relacionadas con la programación en ciertos lenguajes de programación, por ejemplo Java. XML no es sólo un lenguaje, es una forma de especificar lenguajes (metalenguaje), de ahí lo de extensible. XML fue creado al amparo del Word Wide Web Consortium (W3C) organismo que vela por el desarrollo de WWW. Su desarrollo se comenzó en 1996 y la primera versión salió a la luz el 10 de febrero de 1998. Para entenderlo bien hay que olvidarse un poco, sólo un poco de HTML. En teoría HTML es un subconjunto de XML especializado en presentación de documentos para la Web, mientras que XML es un subconjunto de SGML especializado en la gestión de información para la Web. En la práctica XML contiene a HTML aunque no en su totalidad. La definición de HTML contenido totalmente dentro de XML y por lo tanto que cumple del todo la especificación SGML es XHTML (Extensible, Hypertext Markup Language). Por tanto, no debe uno pensarse que XML es para crear páginas web, o algo parecido a las páginas web. XML es un lenguaje que cambia el paradigma de programación: de basada en funciones u objetos a la programación basada en el documento. XML se puede usar para cambiar totalmente el paradigma de publicación; de un programa que recibe unas entradas y produce unas salidas, se pasa a un documento que genera otro documento, o bien programas que toman documentos y producen otros documentos. Características  Transmite contenido y estructura.  No transmite presentación ni comportamiento. Para que lo haga se le debe asociar mecanismos adicionales.  XML aplicado a los sitios web: permite separar contenido y presentación, y que los mismos datos se puedan mostrar de varias formas distintas sin demasiado esfuerzo. 1 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 2. Android de la A a la Z Unidad 5 “XML y Android”  XML para la comunicación entre aplicaciones: representación de los datos muy simple, fácil de transmitir por la red, estándar. En los últimos tiempos este uso se está haciendo muy popular con el surgimiento de los Servicios web.  XML para la configuración de programas: representación de los datos simple y estándar, en contraposición con los crípticos formatos propietarios. SGML y XML especifican el contenido y la estructura, permitiendo generar distintas presentaciones según se requiera. Objetivos y usos de XML El XML se creó para que cumpliera varios objetivos: • Que fuera idéntico a la hora de servir, recibir, y procesar la información del HTML para aprovechar toda la tecnología implantada de este. • Que fuera normal y conciso desde el punto de vista de los datos y la manera de guardarlos. • Que fuera extensible, para que lo puedan utilizar en todos los campos del conocimiento. • Que fuese fácil de leer y editar. • Que fuese fácil de implantar, programar y aplicar 2 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 3. Android de la A a la Z Unidad 5 “XML y Android” a los distintos sistemas Ventajas del XML Comunicación de datos. Si la información se transfiere en XML 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. Migración de datos. Si trabajamos en formato XML sería muy sencillo mover datos de una base de datos a otra. Aplicaciones Web. Con XML hay una sola aplicación que maneja los datos y para cada navegador podemos tener una hoja de estilo o similar para aplicarle el estilo adecuado. Estructura del lenguaje XML El metalenguaje XML consta de cuatro especificaciones (el propio XML sienta las bases sintácticas y el alcance de su implementación): 3 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 4. Android de la A a la Z Unidad 5 “XML y Android” 1. DTD (Document Type Definition):. Si queremos tener la seguridad de que un fichero XML pueda ser perfectamente interpretado por cualquier herramienta, podemos (aunque no es obligatorio) incluir una definición de su construcción que preceda a los datos propiamente dichos. Este conjunto de metadatos recibe el nombre de DTD ó Definición de Tipo de Documento. Así una herramienta es capaz de interpretar XML, eso significa que posee un analizador sintáctico (Parser) que es capaz de contrastar la definición dada por el autor del documento contra la especificada por la normativa, indicando si hay errores, y, de no ser así, presentando el documento de la forma adecuada. 2. XSL (eXtensible Stylesheet Language): Define o implementa el lenguaje de estilo de los documentos escritos para XML. Desde el verano de 1997 varias empresas informáticas como Arbortext, Microsoft e Inso vienen trabajando en una propuesta de XSL (antes llamado "xml-style") que presentaron a W3C. Permite modificar el aspecto de un documento. Se puede lograr múltiple columnas, texto girado, orden de visualización de los datos de una tabla, múltiples tipos de letra con amplia variedad en los tamaños. Este estándar está basado en el lenguaje de semántica y especificación de estilo de documento (DSSSL, Document Style Semantics and Specification Language, ISO/IEC 10179) y, por otro lado, se considera más potente que las hojas de estilo en cascada (CSS, Cascading Style Sheets), usado en un principio con el lenguaje DHTML. "Se espera que el CSS sea usado para visualizar simples estructuras de documentos XML (actualmente se ha conseguido mayor integración en XML con el protocolo CSS2 (Cascading Style Sheets, level 2) ofreciendo nuevas formas de composición y una más rápida visualización) y, por otra parte, XSL pueda ser utilizado donde se requiera más potencia de diseño como documentos XML que encierran datos estructurados (tablas, organigramas, etc.). 3. XLL (eXtensible Linking Language): Define el modo de enlace entre diferentes enlaces. Se considera que es un subconjunto de HyTime (Hipermedia/Timed-based structuring Language o Lenguaje de estructuración hipermedia/basado en el tiempo, ISO 10744) y sigue algunas especificaciones del TEI (Text Encoding Initiative o Iniciativa de codificación de texto). Desde marzo de 1998 el W3C trabajo en los enlaces y direccionamientos del XML. Provisionalmente se le renombró como Xlink y a partir de junio se le denomina XLL. Este lenguaje de enlaces extensible tiene dos importantes componentes: Xlink y el Xpointer. Va más allá de los enlaces simples que sólo soporta el HTML. 4. XUA (XML User Agent): Estandarización de navegadores XML. Todavía está en proceso de creación de borradores de trabajo. Se aplicará a los navegadores para que compartan todas las especificaciones XML. Estructura de un documento XML Un documento XML posee los siguientes elementos: 4 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 5. Android de la A a la Z Unidad 5 “XML y Android” 1. El prólogo puede contener la siguiente información: declaración XML (opcional en XML 1.0, obligatoria en XML 1.1), la definición de tipo de documento (DTD), que sólo es necesario para validar la estructura de documento, las instrucciones de procesamiento y comentarios (opcionales). 2. El contenido o elemento raíz, que también se llama el “elemento de documento". 3. Un epílogo, que contiene las instrucciones de procesamiento y los comentarios. Las instrucciones de procesamiento permiten dar órdenes o información a una aplicación para que procese los datos XML. Las instrucciones de procesamiento tiene el formato <? instrucciones objetivo?>, donde el objetivo es el nombre de la aplicación que se espera que haga el tratamiento, y las instrucciones consisten en una cadena de caracteres que representa la información o los comandos de la aplicación para procesar. Declaración XML En general se recomienda que se inicie un documento XML con una declaración XML. Si está presente, debe ser la primera línea en el documento. A pesar de que la declaración XML se parece a una instrucción de procesamiento, en realidad es una simple declaración. La declaración debe estar denotada entre los símbolos (<?) y (>?), El único atributo que se exige en la declaración es la versión. Los atributos adicionales que se puede añadir a la declaración XML son:  El atributo de codificación (encoding attribute), que es opcional. De forma predeterminada, los documentos XML están codificados en UTF-8 formato del juego de caracteres Unicode.  El atributo independiente (standalone attribute) es opcional y se puede establecer con un valor “yes”, “no” o ningún valor. Si se omite, el valor se supone como un “no”. 5 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 6. Android de la A a la Z Unidad 5 “XML y Android” o El valor “no” se coloca si una aplicación requiere una DTD externo para determinar la estructura del documento. o El valor “yes” se coloca cuando el documento no tiene DTD o si el DTD es interno. Trabajando con XML Al igual que otros lenguajes de marcas, XML se apoya en tres bloques fundamentales: elementos, atributos y valores. Un elemento se emplea para describir o contener una pieza de información; un conjunto de elementos constituye un documento XML. Los elementos consisten de dos etiquetas: una de apertura y otra de cierre; las de apertura están constituidas por una palabra entre paréntesis angulares (<>), tales como <resources> e <ítem>, y las de cierre también con paréntesis angulares, pero precedidas por una barra oblicua hacia delante (/) antes del nombre de la etiqueta, por ejemplo </resources> e </ítem>. Los elementos siempre aparecen después de una etiqueta de apertura, seguida por una serie opcional de datos, seguidos por una etiqueta de cierre, por ejemplo: <resources> … … … </resources> Incluso en el mismo renglón: <ítem>… … …</ítem> En caso de etiquetas vacías: <ítem /> Puede existir elementos vacíos, pero con atributos. Estos son pequeñas piezas de información inmediatamente posteriores a una etiqueta de apertura. Un atributo consiste de un nombre y su valor correspondiente, separados por un signo de igualdad (=). El valor de un atributo aparece a la derecha del símbolo de igualdad y entrecomillado. Un ejemplo de un atributo llamado name asociado con un elemento amigo: <amigo name=”Juan” /> Cuando un elemento contiene otros elementos, estos se denominan elementos anidados, por ejemplo, representar una casa en XLM puede ser: <casa> <cuarto tipo=”sala” > <mueble tipo=”sofá” /> </cuarto> 6 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 7. Android de la A a la Z Unidad 5 “XML y Android” <cuarto tipo=”comedor”> <mueble tipo=”vitrina”> <contenido tipo=”jarrón” color=”blanco” /> <contenido tipo=”vajilla” marca=”Alfaro” precio=”cara” /> </mueble> </cuarto> <cuarto tipo=”recámara”> <mueble tipo=”cama” /> <mueble tipo=”sillón” /> </cuarto> </casa> El código anterior anida elementos diferentes según su ubicación física en la casa, entre ellos algunos son vacíos, por ejemplo, <mueble tipo=”sofá” />, empleando la etiqueta final vacía, />. Las reglas que rigen XML son: 1. Los nombres de etiquetas son sensibles a ser mayúsculas o minúsculas. 2. A cada etiqueta de apertura corresponde una de cierre, a menos que sea una etiqueta de cierre abreviada. 3. Un par de etiquetas anidadas no puede sobreponerse a otra. 4. Los valores de atributos deben estar entrecomillados. 5. Cada documento debe contener un elemento raíz. Ejemplo que muestra el uso de ELEMENTOS VS ATRIBUTOS En un documento XLM existen unos pocos símbolos especiales que deben manejarse de forma diferente a otros caracteres: (<), (>), (“), (‘) y (&), ya que tienen un significado especial en XLM, de ahí que para emplearlos se requieran símbolos predefinidos, denominados entidades, los cuales son como sigue: &lt; para < &gt; para > &quot; para “ 7 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2
  • 8. Android de la A a la Z Unidad 5 “XML y Android” &apos; para ‘ &amp; para & Algunos ejemplos de su utilización son los siguientes: <película nombre=”All the King&apos;s Men” /> <película nombre=”Pride &amp; Prejudice” /> Con todo lo mencionado previamente es fácil ahora diseñar uno de los componentes de una aplicación Android: el documento “Manifest.xml”, el cual describe cada uno de dichos componentes, así como su interacción. 8 Elaborado por: J. Ulises González Medina android.unam@gmail.com Noviembre 2011 Versión 1.2