5. Introducción
Publicación de documentos
Publicar un documento en Internet consiste en aplicar a unos contenidos (texto, imágenes,
video, audio…) una serie de formatos para que puedan ser visualizados por un navegador.
La existencia de distintos formatos origina la llamada "Paradoja de la compatibilidad"
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
8. Introducción
El camino hacia la normalización
Los formatos se complementan
La evolución ha favorecido a los formatos:
Simples
Con mayores posibilidades de interacción entre aplicaciones e intercambio de información
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
11. Introducción
¿Qué es SGML?
Se basa en el "marcado descriptivo" o "generalizado", que indica cómo se deben intercalar
marcas en un documento para diferenciar sus componentes estructurales.
Las marcas NO señalan cómo se debe presentar el documento en pantalla ni cómo se tiene
que formatear el documento al imprimirlo.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
15. SGML
¿Qué es SGML?
HTML
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
16. HTML
HTML: Lo bueno
El hipertexto funciona (es navegable)
Es multiplataforma
Tiene una curva de aprendizaje muy plana
Es barato (muchos editores, visores, verificadores,… tanto gratuitos como comerciales).
Base de información grande.
Los navegadores son baratos, sencillos de construir y de usar y poderosos.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
17. HTML
HTML: Lo malo
Herramienta pobre de presentación:
Poco control de espaciado
Problemas con el control de guiones, justificación y otras manipulaciones del texto.
El uso de columnas es problemático
Herramienta pobre de marcado
No se pueden agregar etiquetas nuevas
No es modular, poca oportunidad de reciclar
Hay demasiado código inválido publicado actualmente
Es una representación de un documento, no de información.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
18. HTML
Resumen de problemas de HTML
Define más la presentación que el contenido
Escasa flexibilidad y extensibilidad
No es fácilmente procesable por "máquinas"
Problemas de internacionalización
Estructura caótica
Interpretación ambigua según el software
Sólo tiene un uso: páginas Web
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
20. Hacia un nuevo lenguaje
Se requiere algo nuevo
Barato, veloz y sencillo:
Para crear documentos
Para procesar documentos
Para presentar documentos
Extensible:
Un conjunto de reglas, no un conjunto de etiquetas
Compatible con HTML:
Debe tener una manera sencilla de convertir en y desde HTML
Capaz de representar información en cualquier forma, no solo documentos.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
21. Hacia un nuevo lenguaje
Requisitos del nuevo lenguaje
Debe ser utilizable a través de Internet.
Debe soportar muchos escenarios de aplicación.
Debe ser compatible con el SGML.
Los programas que procesen documentos en este lenguaje tienen que ser fáciles de
crear.
Los documentos en este lenguaje deben ser legibles por los humanos y razonablemente
claros.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
22. Hacia un nuevo lenguaje
Requisitos del nuevo lenguaje
El diseño con este lenguaje debe ser rápido
El diseño de documentos en este lenguaje debe ser formal y conciso.
Los documentos en este lenguaje deben ser fáciles de crear
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
23. Hacia un nuevo lenguaje
Requisitos del nuevo lenguaje
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
24. Hacia un nuevo lenguaje
Requisitos del nuevo lenguaje
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
29. XML: Introducción
¿Qué es XML?
Un metalenguaje de marcado
Una sintaxis utilizada para crear lenguajes declarativos
Una recomendación técnica del W3C
Es un estándar del W3C, no de una compañía
Multiplataforma, simple, fácil de aprender
Es fácil de construir herramientas para XML.
Libre (¡y gratuito!)
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
30. XML: Introducción
¿Qué NO es XML?
Un lenguaje de marcado
NO: Es un estándar que especifica una sintaxis para crear lenguajes de marcado.
Sólo para la web
NO: Puede ser usado para describir y comunicar cualquier información estructurada
Un invento de una compañía
NO: XML es un estándar creado por el W3C y soportado por compañías e instituciones de todo el
mundo.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
31. XML: Introducción
¿Para qué sirve XML?
Representación y distribución de documentos e información textual
Intercambio de datos e información estructurada a través de Internet
Integración de datos procedentes de fuentes heterogéneas
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
32. XML: Introducción
Ejemplo:
Cliente
Nombre Dirección
Calle
Ciudad
CodigoPostal
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
33. XML: Introducción
Ejemplo:
<Cliente ID = "HVet948756">
<Nombre>Hospital Veterinario Hermit</Nombre>
<Dirección verificada="si">
<Calle>La Carrera 15</Calle>
<Ciudad>La Laguna</Ciudad>
<CodigoPostal>38200</CodigoPostal>
</Direccion>
</Cliente>
•
•
•
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
34. XML
HTML vs XML
<table> <libros>
<tr> <libro>
<td>XML Schema</td> <titulo>XML Schema</titulo>
<td>Eric van der Vlist</td> <autor>Eric van der
<td>369</td> Vlist</autor>
<td>41,57</td> <paginas>369</paginas>
</tr> <precio>41,57</precio>
<tr> </libro>
… <libro>
</tr> …
</table> </libro>
</libros>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
35. XML: Introducción
El XML sirve para…
Hacer publicación electrónica independiente del medio.
Crear protocolos para el intercambio de datos entre miembros de una communidad.
Facilitar el procesamiento de datos usando software barato.
Permite a las personas visualizar la información de la manera que quieran.
Proporcionar metadatos que mejoran la calidad de la búsqueda de información.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
36. XML: Introducción
Dos versiones
XML bien formado:
Las etiquetas de inicio y final coinciden
Los elementos vacíos tienen una forma especial.
Los atributos van entrecomillados
XML válido:
Es código bien formado con funciones adicionales.
Se adhiere a una estructura predefinida dictada por un esquema
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
38. XML: Sintaxis
Un documento XML es …
Una colección de piezas llamdas "entidades"
Texto y etiquetas en Unicode.
Válido, o por lo menos bien formado
Representa una jerarquía de datos
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
39. XML: Sintaxis
Jerarquía de datos
Empleado
Localización Identificación Cargo
División Nombre
Primer
Departamento
apellido
Segundo
Oficina
apellido
Nombre de
pila
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
40. XML: Sintaxis
Creando documentos bien formados…
Un único elemento raíz
Los elementos en la raíz aparecen secuencialmente o anidados.
Todos los elementos tienen una etiqueta de inicio y una de final.
Inicia con <Nombre_elemento>
Termina con </Nombre_elemento>
Los elementos vacios inician y terminan con <Nombre_elemento/>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
41. XML: Sintaxis
Etiquetas
El XML diferencia entre mayúsculas y minúsculas.
<Libro> ≠ <libro> ≠ <LIBRO> ≠ <LiBrO>
Los nombres de elementos:
Deben comenzar con una letra, subrayado o dos puntos (:).
Los caracteres siguientes pueden ser letras, números, puntos, guiones, subrayados o dos puntos.
El nombre “XML” y sus variaciones están reservadas.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
42. XML: Sintaxis
La declaración XML
Dice: "¡Soy un documento XML!"
Tiene partes específicas:
<?xml version="1.0" encoding="" standalone="" ?>
Apertura Versión Codificación Doc. Independiente Fin
(yes / no)
Cada entidad XML que no esté en UTF-8 o UTF-16 debe contener la declaración de
codificación (encoding).
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
43. XML: Sintaxis
Ejemplos de declaraciones XML
(ninguna)
<?xml version="1.0"?>
<?xml version="1.0" encoding ="UTF-8"?>
<?xml version="1.0" standalone = "yes"?>
<?xml version="1.0" encoding ="UTF-8" standalone = "no"?>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
44. XML: Sintaxis
Ejemplos bien formados I
<Bienvenida> ¡Hola mundo! </Bienvenida> Ejemplo 01
<?xml version="1.0"?>
<Configuracion>
<Impresora>
<Nombre>HP LaserJet 5SI</Nombre>
<Controlador>hplj5si.dll</Controlador>
<Opciones>
Ejemplo 02
<AlimentadorSobres/>
<Scanner/>
</Opciones>
</Impresora>
</Configuracion>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
45. XML: Sintaxis
Ejemplo mal formado
<?xml version=1.0?>
<Configuracion>
<Impresora>
<Nombre>HP LaserJet 5SI</Controlador>
<Controlador>hplj5si.dll</Nombre>
<Opciones>
<AlimentadorSobres>
<Scanner/>
</Opciones
</Impresora>
</configuracion>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
46. XML: Sintaxis
Entidades carácter
Para documentos bien formados:
> > ; (mayor que)
< < ; (menor que)
& & (ampersand)
„ ' (apóstrofe)
“ " (comillas dobles)
Ejemplo:
Nombre=“Mario Moreno 'Cantinflas'”
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
47. XML: Sintaxis
Atributos
Propiedades (adjetivos)
Contienen información acerca del elemento.
Información sobre gráficos
Fechas, nombres, colores, …
Aparecen en la etiqueta de inicio
<Nombre_elemento Nombre_atributo=‚valor‛>
<Nombre_elemento Nombre_atributo=‘valor’>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
48. XML: Sintaxis
Ejemplo con atributos
<?xml version="1.0"?>
<Configuracion>
<Impresora local="si">
<Nombre>HP LaserJet 5SI</Nombre>
<Controlador Instalado="si">hplj5si.dll</Controlador>
<Opciones>
<AlimentadorSobres/>
<Scanner/>
<Color Colores="256"/>
</Opciones>
</Impresora>
</Configuracion>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
49. XML: Sintaxis
La necesidad de guias de uso y estilo
Si quieremos que todos en nuestra organización (personas y máquinas) usen las mismas
etiquetas de la misma manera, entonces necesitaremos...
Guías de uso y estilo para las estructuras de datos:
Listas de etiquetas válidas
Relaciones entre etiquetas
Valores predeterminados para los atributos
Tipos de datos que no sean XML estandarizados
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
50. XML: Sintaxis
Reglas: La DTD del XML
Una Definición de Tipo de Documento (DTD) permite:
Definir un conjunto específico de etiquetas con relaciones específicas.
Definir valores predeterminados para los atributos.
Definir entidades de texto y binarias adicionales junto con sus notaciones.
Indicar el elemento raíz
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
51. XML: Sintaxis
El control de la DTD
La DTD proporciona:
Una sintaxis formal que sirve de guía a un intérprete / analizador (parser)
La habilidad de definir valores predeterminados para los atributos.
Especificaciones para la estructura.
Una DTD es una buena manera (pero no la única) de controlar la creación de datos.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
54. XML: Esquemas (XSD)
Introducción a Esquemas XML
Los esquemas son una alternativa a los DTD basada en XML.
Un esquema define la estructura de un documento XML.
Un esquema se denomina XSD (XML Schema Definition)
Define atributos que pueden aparecer en un documento
Define cuales de los elementos son elementos hijos
Define el orden de los elementos hijos
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
55. XML: Esquemas (XSD)
Introducción a esquemas XML
Define el número de elementos hijos.
Define si un elemento está vacío o si tiene texto.
Define los tipos de datos para los elementos y los atributos.
Define valores por defecto o fijos para elementos y atributos.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
56. XML: Esquemas (XSD)
XSD vs DTD
Los esquemas son más ricos y útiles que los DTD.
Los esquemas se escriben en XML.
Los esquemas soportan tipos de datos.
Los esquemas soportan espacio de nombres.
Los esquemas son más utilizados que los DTDs y los reemplazarán.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
57. XML: Esquemas (XSD)
Mapa conceptual
XSD
Elemento raíz Tipos
Simples Complejos
Para Referencia a los
Restricciones Indicadores
elementos… tipos
Derivaciones Vacíos De orden De ocurrencia De grupo Directa
Que sólo
Valores fijos y
contienen All minOccurs group Anónima
por defecto
elementos
Con sólo texto Choice maxOccurs Por nombre
Con texto y
Sequence Por referencia
elementos
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
58. XML: Esquemas (XSD)
Partes de un esquema
Elemento raíz
Tipos simples
Tipos complejos
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
59. XML: Esquemas (XSD)
Partes de un esquema: Elemento raíz
<?xml version="1.0"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
…
</xsd:schema>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
60. XML: Esquemas (XSD)
Partes de un esquema: Tipos Simples
Describen elementos XML que sólo tienen texto.
<nombre>Mahy Yánez</nombre> XML
<xsd:element name=‚nombre‛ type=‚xsd:string‛/> XSD
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
61. XML: Esquemas (XSD)
Partes de un esquema: Tipos Complejos
Describen elementos XML que contienen elementos y/o atributos y/o texto.
<propietario>
<nombre>Mahy Yánez</nombre>
<email>mahy@gmail.com</email>
XML
</propietario>
<xsd:complexType name=‚propietario‛>
<xsd:sequence>
<xsd:element name=‚nombre‛ type=‚xsd:string‛/>
<xsd:element name=‚email‛ type=‚xsd:string‛/>
XSD
</xsd:sequence>
<xsd:complexType>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
62. XML: Esquemas (XSD)
Tipos simples
Básicos
Restricciones
Derivaciones
Valores fijos y por defecto
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
63. XML: Esquemas (XSD)
Tipos simples: Básicos
string
integer
decimal
float
boolean
time
date
ID
NMTOKEN
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
64. XML: Esquemas (XSD)
Tipos Simples: Restricciones
<value>99.99</value> XML
<xsd:simpleType name=‘value’>
<xsd:restriction base=‘xsd:decimal’>
<xsd:precision value=‘4’/>
<xsd:scale value=‘1’/> XSD
<xsd:minInclusive value=’97.0’/>
<xsd:maxInclusive value=‘105.0’/>
<xsd:restriction/>
</xsd:simpleType>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
65. XML: Esquemas (XSD)
Tipos Simples: Derivaciones
Tipo derivado
<xsd:simpleType name=‘healthBodytemp’>
<xsd:restriction base=‘bodytemp’>
<xsd:maxInclusive value=‘99.5’/>
<zsd:restriction/>
</xsd:simpleType>
Derivado por numeración
<xsd:simpleType name=‘miSemana’>
<xsd:restriction base=‘xsd:string’>
<xsd:enumeration value=‘lunes’/>
<xsd:enumeration value=‘martes’/>
…
<zsd:restriction/>
</xsd:simpleType>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
66. XML: Esquemas (XSD)
Tipos simples: valores fijos y por defecto
Valor por defecto
Se le asigna al elemento si no se especifica otro valor.
<xsd:element name=‘color’ type=‘xsd:string’ default=‘blanco’/>
Valor fijado
Se le asigna automáticamente al elemento
<xsd:element name=‘color’ type=‘xsd:string’ fixed=‘blanco’/>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
67. XML: Esquemas (XSD)
Tipos complejos
Para elementos vacíos
Para elementos que sólo contienen elementos
Para elementos que sólo contienen textos
Para elementos con textos y elementos
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
68. XML: Esquemas (XSD)
Tipos Complejos: Para elementos vacíos
<img src=‚xmlj.gif‛ alt =‚Icono de programando en Java‛/> XML
<xsd:element name = ‚img‛>
<xsd:complexType>
<xsd:attribute name=‚src‛ type=‚xsd:NMTOKEN‛/>
XSD
<xsd:attribute name=‚alt‛ type=‚xsd:string‛/>
</xsd:complexType>
</xsd:element>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
69. XML: Esquemas (XSD)
Tipos Complejos: Para elementos que sólo contienen elementos
<persona>
<nombre>Rita</nombre>
<apellido>Diaz</apellido> XML
</persona>
<xsd:element name = ‚persona‛>
<xsd:complexType>
<xsd:sequence>
<xsd:element name=‚nombre‛ type =‚xsd:string‛/> XSD
<xsd:element name=‚apellido‛ type =‚xsd:string‛/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
70. XML: Esquemas (XSD)
Tipos Complejos: Para elementos que sólo contienen textos
<mostrarTamanio pais=‚francia‛>35</mostrarTamanio> XML
<xsd:element name = ‚mostrarTamanio‛>
<xsd:complexType>
<xsd:simpleContent>
<xsd:extension base=‚xsd:integer‛>
<xsd:attribte name=‚pais‛ type=‚xsd:string‛/> XSD
</xsd:extension>
</xsd:simpleContent>
</xsd:complexType>
</xsd:element>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
71. XML: Esquemas (XSD)
Tipos Complejos: Para elementos con texto y elementos
<p>Esto es texto <b>resaltado</b></p> XML
<xsd:complexType name=‚textoResaltado‛ mixed=‚true‛>
<xsd:sequence>
<xsd:element name=‚b‛ type=‚xsd:string‛
minOccurs=‚0‛ maxOccurs=‚unbounded‛/>
</xsd:sequence> XSD
</xsd:complexType>
<xsd:element name=‚p‛ type=‚textoResaltado‛>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
72. XML: Esquemas (XSD)
Indicadores de tipos complejos
De orden
De ocurrencia
De grupo
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
73. XML: Esquemas (XSD)
Indicadores de tipos complejos: de Orden
All
Los elementos hijos pueden aparecer en cualquier orden pero sólo una vez
<xsd:element name=‚persona‛>
<xsd:complexType>
<xsd:all>
<xsd:element name=‚nombre‛ type=‚xsd:string‛/>
<xsd:element name=‚apellidos‛ type=‚xsd:string‛/>
</xsd:all>
</xsd:complexType>
</xsd:element>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
74. XML: Esquemas (XSD)
Indicadores de tipos complejos: de Orden
Choice
Los elementos hijos pueden aparecer uno u otro
<xsd:complexType name=‚itemTipo‛>
<xsd:sequence>
<xsd:element ref=‚PRODUCTO‛/>
<xsd:element ref=‚NUMERO‛/>
<xsd:choice>
<xsd:element ref=‚PRECIO‛/>
<xsd:element ref=‚MUESTRA‛/>
</xsd:choice>
</xsd:sequence>
</xsd:complexType>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
75. XML: Esquemas (XSD)
Indicadores de tipos complejos: de Orden
Sequence
Los elementos hijos deben aparecer en el orden indicado
<xsd:complexType name=‚libro‛>
<xsd:sequence>
<xsd:element name=‚titulo‛/>
<xsd:element name=‚autor‛/>
<xsd:element name=‚editorial‛/>
</xsd:sequence>
</xsd:complexType>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
76. XML: Esquemas (XSD)
Indicadores de tipos complejos: de Ocurrencia
minOccurs y maxOccurs
Indican la frecuencia de los elementos, por defecto 1.
<xsd:complexType name=‚persona‛>
<xsd:complexType>
<xsd:sequence>
<xsd:element name=‚nombreCompleto‛ type=‚xsd:string‛/>
<xsd:element name=‚apodo‛ type=‚xsd:string
maxOccurs=‚10‛ minOccurs=‚0‛/>
</xsd:sequence>
</xsd:complecType>
</xsd:complexType>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
77. XML: Esquemas (XSD)
Indicadores de tipos complejos: de Grupo
Group
Permiten declarar conjuntos de elementos
(PRODUCTO, NUMERO, (PRECIO | MUESTRA)) XML
<xsd:group name=‚grupoEleccion‛>
<xsd:choice>
<xsd:element ref=‚PRECIO‛/>
<xsd:element ref=‚MUESTRA‛/> XSD
</xsd:choice>
</xsd:group>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
78. XML: Esquemas (XSD)
Referencia a los tipos
Directa
Anónima
Por nombre
Por referencia
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
79. XML: Esquemas (XSD)
Referencia a los tipos: Directa
<xsd:element name=‚nombre‛ type=‚xsd:string‛/>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
80. XML: Esquemas (XSD)
Referencia a los tipos: Anónima
<xsd:element name=‚propietario‛>
<xsd:complexType>
<xsd:sequence>
<xsd:element name=‚nombre‛ type=‚xsd:string‛/>
<xsd:element name=‚email‛ type=‚xsd:string‛/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
81. XML: Esquemas (XSD)
Referencia a los tipos: por Nombre
<xsd:complexType nombre=‚registro‛>
<xsd:sequence>
<xsd:element nombre=‚nombre‛ type=‚xsd:string‛/>
<xsd:element nombre=‚email‛ type=‚xsd:string‛/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name=‚propietario‛ type=‚registro‛/>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
82. XML: Esquemas (XSD)
Atributos
Pueden declararse atributos con valor fijo y por defecto.
<xsd:attribute name=‚idioma‛ type=‚xsd:string‛ default=‚SP‛/>
<xsd:attribute name=‚idioma‛ type=‚xsd:string‛ fixed=‚SP‛/>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
83. XML: Esquemas (XSD)
Atributos
Su uso puede ser opcional (por defecto) u obligatorio.
<xsd:attribute name=“idioma” type=“xsd:string” use=“optional”/>
<xsd:attribute name=“idioma” type=“xsd:string” use=“required”/>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
84. XML: Esquemas (XSD)
Atributos
Se pueden aplicar restrcicciones como a los tipos simples
<xsd:attribute name=‚semana‛>
<xsd:restriction base=‚xsd:string‛>
<xsd:enumeration value=‚lunes‛>
<xsd:enumeration value=‚martes‛>
…
</xsd:restriccion>
</xsd:attribute>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
85. XML: Esquemas (XSD)
Grupos de Atributos
<xsd:attributeGroup name=‚atributosImagen‛>
<xsd:attribute nombre=‚alto‛ type=‚xsd:string‛/>
<xsd:attribute nombre=‚largo‛ type=‚xsd:string‛/>
<xsd:attribute nombre=‚src‛ type=‚xsd:string‛ use=‚required‛/>
<xsd:attribute nombre=‚nombre‛ type=‚xsd:string‛ use=‚required‛/>
</xsd:attributeGroup>
<xsd:element name=‚imagen‛>
<xsd:complexType>
<xsd:attributeGroup ref=‚atributosImagen‛>
</xsd:complexType>
</xsd:element>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
87. XML: XSL
¿Por qué XSL?
HTML: Formato sin estructura
Lenguaje e composición
No extensible
XML: Estructura sin formato
Define los elementos.
Crea una estructura jerárquica de un conjunto de información
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
88. XML: XSL
XSL
Un lenguaje para expresar hojas de estilo
Proporciona semántica de visualización para el XML
Relaciona elementos XML con HTML o con otros lenguajes de formato (PDF, LaTeX, PostScript,
…).
Soporte funcional para CSS.
• Simple, sintaxis conocida.
• Los principiantes pueden aprender rápido.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
89. XML: XSL
¿Cómo funciona el XSL?
XSL
Arbol resultado Intérprete
Arbol fuente (xmlsn:fo)
(XML)
Transform. Intérprete
XSL
Hoja de estilo Intérprete
(xmlns:xsl)
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
90. XML: XSL
XML + XSL
Un documento XML referencia a un documento XSL por medio de un fragmento de código
como este:
<?xml-stylsheet type=‚text/xsl‛ href=‚clima.xsl‛?>
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
92. XML: Aplicaciones
Aplicaciones XML
RDF: Resource Description Framework
Catalogación de recursos de Internet
CDF: Channel Description Format
Envío de información mediante el método push
OSD: Open Software Description
Descripción de paquetes de actualización de software
OFX: Open Financial Exchange
Intercambio de datos financieros para aplicaciones de contabilidad doméstica
JORNADAS FORMATIVAS METAMAC I – Introducción a XML
93. XML: Aplicaciones
Aplicaciones XML
XER: XML Encoding Rules
Codificación de mensajes
MARTIF: Machine Readable Terminology Interchange Format
Codificar registros terminológicos
TMX: Translation Memory eXchange
Codificar Memorias de traducción
DOCBOOK:
DTD para manuales y guías técnicas de documentación de software.
JORNADAS FORMATIVAS METAMAC I – Introducción a XML