PDF de programación - Lenguaje XML - Tecnologías Web y XML

Imágen de pdf Lenguaje XML - Tecnologías Web y XML

Lenguaje XML - Tecnologías Web y XMLgráfica de visualizaciones

Publicado el 18 de Junio del 2018
244 visualizaciones desde el 18 de Junio del 2018
2,5 MB
26 paginas
Creado hace 10a (21/10/2009)
Lenguaje XML

Jose Emilio Labra Gayo

Departamento de Informática

Universidad de Oviedo

Marcado de documentos

Sólo texto

ALBA Abril de 1915 Granada Mi corazón oprimido
siente junto a la alborada el dolor de sus
amores y el sueño de las distancias.

Título, negrita, centrado, 14pt

SubTítulo, negrita, centrado

SubTítulo cursiva, centrado

Texto marcado
]ALBA[
]Abril de 1915[
]Granada[
]Mi corazón oprimido [
]siente junto a la alborada [
]el dolor de sus amores [
Verso
]y el sueño de las distancias. [

Verso, 10pt

Verso

Verso

Resultado

ALBA

Abril de 1915

Granada

Mi corazón oprimido
siente junto a la alborada
el dolor de sus amores
y el sueño de las distancias.

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Marcado Descriptivo

El marcado no es la información que contiene el documento

Marcado = información acerca del documento = meta-información

Lenguajes de Marcado descriptivo: Incluyen marcas que describen cómo

procesar el documento

Ejemplo: HTML

<html>
<head><title>Poema</title></head>
<body lang=“es”>
<h1>Alba</h1>
<h2>Abril de 1915 </h2>
<h2><i>Granada</i></h2>
<p>Mi corazón oprimido</p>
<p>siente junto a la alborada</p>
<p>el dolor de sus amores</p>
<p>y el sueño de las distancias. </p>
</body>
</html>

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Marcado Generalizado

Marcado generalizado = Sintaxis común que facilita la creación de

lenguajes descriptivos

HTML

<html>
<head><title>Poema</title></head>
<body lang=“es”>
<h1>Alba</h1>
<h2>Abril de 1915 </h2>
<h2><i>Granada</i></h2>
<p>Mi corazón oprimido</p>
<p>siente junto a la alborada</p>
<p>el dolor de sus amores</p>
<p>y el sueño de las distancias.</p>
</body>
</html>

Otras marcas...(misma sintaxis)

<poema fecha="Abril de 1915"

lugar="Granada">

<titulo>Alba</titulo>

<verso>Mi corazón oprimido</verso>
<verso>siente junto a la alborada</verso>
<verso>el dolor de sus amores</verso>
<verso>y el sueño de las distancias. </verso>
</poema>

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Marcado Generalizado
SGML

1970s GML desarrollado en IBM – Generalized Markup Language

(Goldfarb, Mosher, Lorie)

1986 SGML Standard Generalized Markup Language (Estándar ISO)

Utilizado para el intercambio de documentos

Principio: Separar contenido de la forma de representarlo

Muy flexible (permite definir vocabularios específicos para cada

aplicación)

HTML era un vocabulario de SGML

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Marcado Generalizado
XML

Desarrollado por T. Bray, J. Paoli, C. M. Sperberg-McQueen (1995)

T. Bray: Consultor de Textuality para Netscape (ahora en Sun)

C. M. Sperberg-McQueen (TEI, SGML)

J. Paoli (Microsoft)

Objetivos:

Crear una versión simplificada de SGML para la Web

20% de características de SGML

80% de funcionalidad de SGML

Detalle (Especificación de XML = 26 páginas, de SGML > 500

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

XML y el comercio electrónico

XML aparece en pleno apogeo del comercio electrónico

Formato que permita transmitir información semiestructurada

"…necesito 20 rotuladores RX2 de código R23, que
escriban y 2 grapadoras Lin de código G56 envueltas
para regalo"

XML

<pedido>
<producto codigo="R23">
<nombre>Rotulador RX2</nombre>
<cantidad>20</cantidad>
<comentarios>Comprobad que escriben</comentarios>
</producto>
<producto codigo="G56">
<nombre>Grapadora Lin</nombre>
<cantidad>2</cantidad>
<comentarios>Envuelta para regalo</comentarios>
</producto>
</pedido>

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

HTML y la información semiestructurada

HTML es un lenguaje para presentaciones de hipertexto

No está pensado para representar información semiestructurada

<html>
<head><title>Pedido</title></title>
<body>
<h1>Pedido de material</h1>
<table>
<tr><th>Codigo</th><th>Nombre</th><th>Cantidad</th><th>Comentarios</th></tr>
<tr><td>R23</td><td>Rotulador RX2</td><td>20</td><td>Color negro</td></tr>
<tr><td>G56</td><td>Grapadora Lin</td><td>2</td><td>Envuelta para
regalo</td></tr>
</table>
</html>

Problema: ¿cómo identificar los campos?
Técnicas de Screen scrapping

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

XML

<?xml version=“1.0” ?>

<!DOCTYPE raíz[



]>

<raíz>

<elemento>



</elemento>

</raíz>

Declaración de

XML

Declaración de

Tipo DTD
Opcional

Documento

Declaración de XML

<?xml version=“1.0”

encoding=“iso-8859-1”
standalone=“yes”?>

version: Actual = 1.0

También existe la versión 1.1
Mayor compatibilidad con Unicode
Identificadores: Permite cualquier carácter Unicode

encoding: UTF-8, UTF-16, iso-8859-1, etc.
standalone: Indica si se puede gestionar el documento sin

hacer uso de recursos externos

Documentos y elementos XML

Los documentos consisten en una serie de datos marcados

mediante etiquetas

Las etiquetas describen la estructura del documento

Un elemento = etiqueta inicial, etiqueta final y contenido entre

ambas.

La etiqueta inicial puede incluir atributos.

<etiqueta attributo=“valor”>……</etiqueta>

Distinción

minúsculas/mayúsculas

Documentos XML
Elementos vacíos

Elementos vacío: elementos que no incluyen información

Habitualmente, incluyen atributos

Ejemplo:

<img src=“foto.jpg” alt=“Foto de Paisaje” ></img>

Sintaxis abreviada:

<etiqueta attributo=“valor”></etiqueta>

<etiqueta atributo=“valor”/>

<img src=“foto.jpg” alt=“Foto de Paisaje” />

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Anidamiento

Se pueden anidar elementos

<externo>

<interno>texto</interno>

</externo>

...pero no se pueden entrelazar:

<externo>

<interno>texto</externo>

</interno>





Árbol del documento XML

Sólo puede haber un único elemento raíz

Cualquier documento puede representarse como un árbol

<poema fecha="Abril de 1915"

lugar="Granada">

<titulo>Alba</titulo>

<verso>Mi corazón oprimido</verso>
<verso>siente junto a la alborada</verso>
<verso>el dolor de sus amores</verso>
<verso>y el sueño de las distancias. </verso>
</poema>

<root>

Poema

Raíz

Elemento

Atributo

Texto

fecha

Lugar

Título

Verso

Verso

Verso

Abril de 1915

Granada

Alba

Mi corazon ...

siente ...

el dolor ...

Árbol del documento

Los documentos HTML también se pueden representar como un

árbol

Ejercicio: Dibujar el árbol del siguiente documento HTML

<html>
<head>
<title>Pagina</title></head>
<body>
<h1>Ejemplo</h1>
<p>Este párrafo tiene un

<a href="http://www.uniovi.es">enlace</a>
y un texto <em>enfatizado</em></p>

</body>
</html>

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

DOM

El árbol DOM puede manipularse dinámicamente

<html>

<head><title>Prueba</title>
<script type="text/javascript"><!--

function clona() {

var raiz=document.documentElement;
var cuerpo=raiz.getElementsByTagName("body")[0];
var texto=cuerpo.firstChild;
var textoNuevo=texto.cloneNode(true);
cuerpo.appendChild(textoNuevo);

}
--></script>

</head>
<body>

Hola
<input type="button" name="Clona" value="Saluda!" onclick="clona();" />
</body>

</html>

://www.di.uniovi.es/~labra/cursos/XML/ejemplos/cambiaDOM.html

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Atributos

Cada elemento puede contener atributos en la etiqueta inicial

<poema fecha=“Abril de 1915” lugar=“Granada”>

. . .

</poema>

El orden de los atributos no es significativo

No puede haber 2 atributos con el mismo nombre

Las comillas dobles y simples pueden mezclarse

<autor frase=“Juan dijo „Hola‟ ”>

. . .

</autor>

<autor frase=„Juan dijo “Hola” ‟>

. . .

</autor>

Atributos predefinidos

xml:lang especifica el idioma. Ejemplo: en (inglés), es (español)

xml:space especifica cómo tratar el espacio en blanco.

preserve = Mantenerlo

default = Permitir a la aplicación que lo trate como quiera.
xml:base: Especifica URL de base en las referencias relativas

<doc xml:base=“http://www.ejemplo.org”>

<link url=“friends.xml”>Amigos</link>

</doc>

xmlns:a Declara a como un alias para un espacio de nombres

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Comentarios

Mediante <!-- y -->

<poema fecha="Abril de 1915"

lugar="Granada">

<!-- Este poema es divertido -->
<titulo>Alba</titulo>
<verso>Mi corazón oprimido</verso>
<!-- Cuando me inspire escribiré

más versos -->

</poema>

NOTA: Dentro de los comentarios no pueden aparecer dos caracteres - seguidos

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Caracteres especiales

Mediante &#nº; se puede incluir un carácter Unicode

Ejemplo: &#x2200; incluye

&nombre; permite referenciar macros (se definen en una DTD)

Algunas macros predefinidas

&lt; <

&gt; >

&quot; “

&apos; „

&amp; &

Para incluir los caracteres especiales, se utilizan las macros

<código>

if x &lt; 4 then x:=x + 1;

</código>

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Secciones CDATA

Las secciones CDATA permiten escribir texto literal que no será

procesado

<código>

if x < 3 && x > 4 then

print “Hola”

</código>

<código>

if x &lt; 3
&amp;&amp; x &gt; 4 then

print &quot;Hola&quot;

</código> 

<código>
<![CDATA[
if x < 3 && x > 4 then

print “Hola”

]]>
</código>

Jose Emilio Labra Gayo - Universidad de Oviedo (http://www.di.uniovi.es/~labra )

Instrucciones de Procesamiento

Es posible incluir instrucciones que indican al procesador alguna

acción a realizar

Sintaxis: <?aplicación datos ?>

Pueden utilizarse para asociar una hoja de estilos al documento:

<?xml-stylesheet type="text/xsl" href=“hoja.xsl"?>

...o para otros propósitos especiales

<?php ... ?>

En realidad la declaración de documento es una instrucción de

procesamiento

<?xml version=“1.0” ?>

Documento bien form
  • Links de descarga
http://lwp-l.com/pdf11965

Comentarios de: Lenguaje XML - Tecnologías Web y XML (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad