Você está na página 1de 38

DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

UF2 – Acceso a datos en


aplicaciones web del
entorno servidor

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

UD4 – Lenguajes de marcas de uso


común en el servidor
1. Origen e historia de los lenguajes
de marcas. El estándar XML.
2. Características de XML
3. Estándares basados en XML
4. Análisis XML.
5. Uso de XML en el intercambio de
información
Profesor: Diego Zamora Torrecillas
DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

1. Origen e historia de los lenguajes de marcas.


El estándar XML.

Padre de los lenguajes de marcas es Charles


Goldfard, investigador de IBM, quien participó
en la creación del lenguaje GML

Posteriormente partición en la creación del


estándar SGML, del que parte XML.

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

1. Origen e historia de los lenguajes de marcas.


El estándar XML.

La información mediante XML se organiza en


objetos, documentos XML almacenados como
ficheros

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Partes de un


documento XML: marcas, elementos,
atributos, etc.

etiquetas, referencias de entidad y


declaraciones se denominan marcas.
Las marcas son entendidas por los parser.

Los contenidos restantes son los que tienen


sentido para el hombre

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Partes de un


documento XML: marcas, elementos,
atributos, etc.

Elementos:
- con contenido: <nombre>Antonio</nombre>
empieza con etiqueta de apertura y termina con la
de cierre y puede contener atributos o no
- sin contenido: <elemento sin contenido />
también puede tener o no atributos
<identificador DNI=“12345678A” />
Profesor: Diego Zamora Torrecillas
DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Partes de un


documento XML: marcas, elementos,
atributos, etc.

Atributos:
Los atributos incorporan carácterísticas o
propiedades de los elementos del documento.

<alumno nota=“4”
asistencia=“nula”>Paco</alumno>
En el DTD se especifica los atributos que puede tener
cada tipo de elemento
Profesor: Diego Zamora Torrecillas
DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Sintaxis y semántica


de documentos XML: documentos válidos y
bien formados.

Un documento bien formado debe cumplir:


- Si no DTD, documento empieza con
declaración de documento Standalone
- etiquetas deben estar balanceadas,
elementos de tipo carácter deben tener
etiquetas de principio y fin

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Sintaxis y semántica


de documentos XML: documentos válidos y
bien formados.

- Valores de atributos entrecomillados


- Los elementos vacíos deben terminar por />
- no etiquetas aisladas (<, &)
- elementos anidan dentro de si, sus propiedades
- Los ficheros sin DTD pueden utilizar atributos en sus
elementos pero deben ser de tipo CDATA, es decir,
caracter

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Sintaxis y semántica


de documentos XML: documentos válidos y
bien formados.

Según W3C:
- Tomado como un todo el documento, debe cumplir
la regla denominada document
- Respeta todas las restricciones de buena formación
dadas en la especificación
- Las entidades están bien formadas

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

2. Características de XML. Sintaxis y semántica


de documentos XML: documentos válidos y
bien formados.

Cumplir con la regla document significa que:


- contiene uno o más elementos
- hay un elemento raiz, el cual no aparece en el
contenido de ningún otro elemento
- para el resto de elementos, si la etiqueta de
comienzo está dentro del contenido de otro, la de fin
estará dentro el mismo elemento

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Esquemas XML: DTD y


XML Schema

XML da solución a expresar información de


forma abstracta y reutilizable. La información
consta de elementos que a su vez contiene
otros. Los elementos se señalan mediante
etiquetas <nombre>, donde nombre hace
referencia al nombre del elemento que señala

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Esquemas XML: DTD y


XML Schema

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Esquemas XML: DTD y


XML Schema

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Esquemas XML: DTD y


XML Schema

Las partes del documento


- Prólogo
- Cuerpo

Prólogo: (opcional)
- declaración xml
- declaración tipo documento, enlaza con DTD
- comentarios e instrucciones de procesamiento

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Esquemas XML: DTD y


XML Schema

Cuerpo: (obligatorio)
- empezará con un elemento raiz, indispensable
para ser un documento bien formado

Ej prologo: <?xml version="1.0" encoding="UTF-8"?>


Ej cuerpo: <Edit_Mensaje>

</Edit_Mensaje>

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Esquemas XML: DTD y


XML Schema

Los XML Schemas son similares a los DTD,


definiendo que elementos puede tener un
documento XML pero con notación XML, a diferencia
de los DTD.
También permiten especificar los tipos de datos y
son extensibles

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Hojas de estilo XML: El


estándar XSLT Y XSL

XSL es una familia de lenguajes que permiten


describir como los archivos codificados en
XML serán formateados (para mostrarlos) o
transformados.

XSLT es un lenguaje perteneciente a la familia


XSL.

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Hojas de estilo XML: El


estándar XSLT Y XSL

<?xml version="1.0" encoding='ISO-8859-1'?>


<?xml-stylesheet href="tienda0.xsl"
type="text/xsl"?>
<tienda>
<nombre>La tiendecilla </nombre>
<telefono>953 87 12 23 </telefono>
</tienda>

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Hojas de estilo XML: El


estándar XSLT Y XSL

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


<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match='/'>
<html>
<head><title>Generado con tienda-html.xsl</title>
</head>
<body>
<h1> <xsl:apply-templates /> </h1>
</body>
</html>
</xsl:template>
</xsl:stylesheet>

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Enlaces: XLL

Lenguaje de Enlaces extendido, abarca un


conjunto de tecnologías relacionadas con los
enlaces y el direccionamiento en lenguaje
XML.

XLL (ahora xlink) determina el documento al


que se debe acceder (similar a la etiqueta a)

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

3. Estructura de XML. Agentes de usuario: XUA

Los agentes de usuario son aplicaciones


clientes en un protocolo de red, normalmente
las que acceden a la world wide web
(navegadores).

Agente de usuario XML: estandarización de


navegadores XML.

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Presentación de


páginas: XHTML

Especificación del W3C que define HTML en


forma que cumpla las normas sintácticas XML.

Diseñado para ser portable

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Selección de


elementos XML: Xpath y Xquery

Xpath es un lenguaje que permite construir


expresiones que recorren y procesan un
documento XML.

El documento XML es leido por un analizador


o parser construyendo un arbol de nodos.

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Selección de


elementos XML: Xpath y Xquery

El lenguaje Xpath consta de operadores que


leen este arbol nodos referenciando a raiz,
hijo, ancestro, descendiente…

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Selección de


elementos XML: Xpath y XQuery

XQuery lenguaje de consulta similar a SQL,


pero diseñado para colecciones de datos XML

ejemplos de uso:
- extraer información bases de datos
- generar resumen de la información
almacenada en una base de datos XML

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Selección de


elementos XML: Xpath y XQuery

- Realizar busquedas en la web


- transformar datos de xml a xhtml
- obtener datos desde diferentes fuentes
- dividir xml de multiples transacciones en
varios representando a una transacción cada
uno

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Firma


electrónica: XML-Signature y Xades

XML signature: Recomendación de W3C que


define sintaxis XML para la firma digital.

Xades especifica perfiles precisos de XML-DSig


para ser usados con firma electrónica
reconocida con directiva de la Unión Europea.

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Firma


electrónica: XML-Signature y Xades

Un beneficio importante es que los


documentos firmados pueden seguir siendo
válidos durante largos periodos incluso en el
caso de los algoritmos de encriptación hayan
sido rotos

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Cifrado: XML-


Encryption

XML Encryption es una recomendación de


W3C que especifica proceso para codificar
datos y representar esa información cifrada
en formato XML

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Cifrado: XML-


Encryption

Ejemplo:
<?xml version='1.0'?>
<PaymentInfo xmlns='http://example.org/paymentv2'>
<Name>John Smith</Name>
<CreditCard Limit='5,000' Currency='USD'>
<Number>4019 2445 0277 5567</Number>

<Issuer>Example Bank</Issuer> cifrar


<Expiration>04/02</Expiration>
</CreditCard>
</PaymentInfo>
Profesor: Diego Zamora Torrecillas
DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Cifrado: XML-


Encryption

<?xml version='1.0'?>
<PaymentInfo xmlns='http://example.org/paymentv2'>
<Name>John Smith</Name>
<EncryptedData
Type='http://www.w3.org/2001/04/xmlenc#Element'
xmlns='http://www.w3.org/2001/04/xmlenc#'>
<CipherData>
<CipherValue>A23B45C56</CipherValue>
</CipherData>
</EncryptedData>
</PaymentInfo>
Profesor: Diego Zamora Torrecillas
DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

4. Estándares basados en XML. Otros


estándares de uso común.

- JDOM: Biblioteca de código abierto para


manipulaciones de datos XML optimizados
para Java
- SAX: API para usar XML en Java
- StAX: API para leer y escribir documentos
XML
- VTD-XML: virtual token descriptor xml

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

5. Análisis XML. Herramientas y utilidades de


análisis

Los ficheros XML son ficheros de texto plano de datos


estructurados (bien formados) que deben ser
interpretados por el parser

leen el documento, lo interpretan y generan una salida


basada en sus contenidos y en la marca utilizada para su
descripción. El resultado se muestra en un dispositivo de
visualización, como una ventana de navegación o una
impresora.
Profesor: Diego Zamora Torrecillas
DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

5. Análisis XML. Programación de análisis XML


mediante lenguajes en servidor

En PHP existe parser XML para poder leer e


interpretar los documentos con el formato
XML mediante funciones específicas para tal
fin

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

5. Análisis XML. Programación de análisis XML


mediante lenguajes en servidor

Algunas de las funciones son:


- xml_parse_into_struct: Interpreta datos XML
en una estructura de array
- xml_parse: Inicia un intérprete sobre un
documento xml
- xml_parse_create: crea un intérprete xml

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

6. Uso de XML en el intercambio de


información. Codificación de parámetros

Profesor: Diego Zamora Torrecillas


DESARROLLO DE APLICACIONES CON TECNOLOGÍA WEB Módulo 2 – Programación web en el entorno servidor

Profesor: Diego Zamora Torrecillas