TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML...

70
Facultad de Estadística e Informática TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Transcript of TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML...

Page 1: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES

Page 2: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11

▪ Tema 2: Tecnologías XML

Page 3: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Bibliografía

▪A. Rodríguez, Publicación en Internet y Tecnología XML, Alfa-Omega Ra-Ma, Madrid. España, 2004

▪ World Wide Web Consortium (W3C). Abril 2000. XML Schema. Consultado el 1 de marzo de 2017 desde https://www.w3.org/XML/Schema.

Page 4: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML

▪Ejemplo XML y XSD

Page 5: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML

▪Ejemplo XML Schema

Page 6: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML

▪Existen varios modelos de lenguaje para la creación de esquemas de documentos XML, los más populares:▪XSD – Basado en las especificaciones de la W3C▪XDR – (XML-Data Reduced Language). Implementado por Microsoft.

Page 7: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML

▪XML Schema Definition (XSD).▪Propuesto por W3C, se convirtió en estándar con las Recomendaciones XML Schema del 2 de mayo de 2001.

Page 8: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML

▪XML Schema Definition (XSD).▪Objetivo: Declarar los diversos objetos que pueden ser usados, definir su contenido y atributos.

Extensión .xsd. ejemploEsquema.xsd

Page 9: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML

▪XML Schema Definition (XSD).

▪Antes de estudiar XSD entenderemos lo que son los:

ESPACIOS DE NOMBRES (namespaces)

Page 10: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).ESPACIOS DE NOMBRES (namespaces)

Se convirtió en estándar con la recomendación del W3C “Namespacesin XML” del 14 de enero de 1999.Última versión: https://www.w3.org/TR/xml-names/

Page 11: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XMLXML Schema Definition (XSD).

Espacios de nombre (Namespaces)▪Permiten utilizar dentro de un mismo documento elementos con el mismo nombre. Asignando un prefijo o identificador

Page 12: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XMLXML Schema Definition (XSD).

Espacios de nombre (Namespaces)▪Tienen asignado un determinado URI (Uniform Resource Identifier - Identificador de Recursos Universal).

Una dirección de Internet que hace referencia a un lenguaje o tecnología XML

Page 13: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XMLXML Schema Definition (XSD).

▪Espacios de nombre (Namespaces)

Un espacio de nombres XML es un conjunto de nombres, identificados por una referencia URI, que se utilizan en documentos XML como tipos de elementos y nombres de atributo.

Page 14: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XMLXML Schema Definition (XSD). ▪Espacios de nombre (Namespaces)

La declaración de un espacio de nombres se realiza mediante el

atributo xmlns y se le proporciona un valor en el documento

(una dirección de Internet – URL Uniform Resource Locator )

Es decir, su valor es una referencia a un URI que representa el nombre del espacio de nombres.

Page 15: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XMLXML Schema Definition (XSD).

La asignación de los espacios de nombre (Namespaces) puede realizarse de dos formas:

a) Nombre del espacio por defecto: xmlns=“URI”

Page 16: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

a) Nombre del espacio por defecto: xmlns=“URI”. Esta asignación establece que todos los elementos que se encuentran dentro, utilizarán ese espacio de nombre. Ejemplo:

Page 17: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). a) Nombre del espacio por defecto: xmlns=“URI”.

<?xml version=“1.0”?>

<html xmlns=‘http://www.w3.org/TR/REC-html40’>

…todos los elementos incluidos aquí pertenecerán al ese espacio de nombre…

</html>

Page 18: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

b) Nombre de espacio con prefijo.

xmlns: prefijo=“URI”

De esta forma, cuando se utilice el elemento en el documento tendrá la sintaxis: prefijo:elemento.

Ejemplo:

Page 19: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

xmlns:xsd=“http://www.w3.org/2001/XMLSchema-datatypes” >

<elemento>Soy elemento Schema, por defecto</elemento>

<xsd:elemento>Soy elemento xsd</xsd:elemento>

</schema>

Espacio de nombre schema, como valor por defecto.

Espacio de nombre con prefijo xsd

Elemento de schema, valor por defectoElementos de espacio de nombre con prefijo xsd

Clase 11. Tecnologías XML.XML Schema Definition (XSD).Ejemplo espacio de nombre:

<schema xmlns=“http://www.w3.org/2001/XMLSchema”

Page 20: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Las recomendaciones de XML Schema se encuentran en tres documentos:a) XML Schema Parte 0. Fundamentos no normativo.

https://www.w3.org/TR/xmlschema-0/b) XML Schema Parte 1. Estructuras, normativo.

https://www.w3.org/TR/xmlschema-1/c) XML Schema Parte 2. Tipos de datos, normativo.

https://www.w3.org/TR/xmlschema-2/

Page 21: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 22: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 23: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos:

▪ La recomendación sobre los tipos de datos y su uso se encuentra en la recomendación XML Schema Part 2. Datatypes.

Page 24: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos:

▪Primitivos.

▪Derivados.

Page 25: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos:

▪Primitivos: Boolean, Float, Double, Decimal, binary, etcétera.

▪String = #PCDATA

Page 26: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos:▪Derivados. Se obtienen de los tipos Primitivos:

CDATA – derivado de string

long- derivado de integer

int – derivado de long, etc.

Page 27: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Page 28: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 29: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Facetas de los datos:

▪ Las “facetas” son propiedades que indican cómo se ha de interpretar el valor de un determinado dato.

Page 30: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Faceta Descripción

maxLength Valor de longitud máxima permitida

minLength Valor de longitud mínima permitida

precision Número máximo de dígitos para derivados de decimal

whiteSpace Qué hacer con los espacios en blanco (preserve, replace, colapse)

……

Ejemplos de facetas son:

Page 31: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 32: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Definición de tipos de datos

▪Nuevos tipos de datos creados por el usuario.

▪ Nuevos tipos de datos simples – simpleType

▪Nuevos tipos de datos complejos –complexType.

Page 33: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos simples <xsd:simpleType>

Utilizado para crear una restricción sobre un tipo de dato existente ya definido (tipo de dato base)

Page 34: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos: Simples personalizados

Page 35: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos: Simples personalizados

Page 36: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Tipos de datos complejos <xsd:complexType>

Su contenido suele ser declaraciones de otros elementos y atributos.

También puede establecer la secuencia en la cual deben ser mostrados los elementos.

A través de la etiqueta <sequence>

Page 37: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Etiqueta <xsd:sequence>… </xsd:sequence>.

Define el orden o secuencia en la cual deben ser mostrados los elementos en el documento XML.

También se puede definir la incardación(número de apariciones del elemento)

Page 38: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Etiqueta <xsd:sequence>… </xsd:sequence>.Incardación:

Page 39: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Además de la Etiqueta <xsd:sequence>… </xsd:sequence>.

xsd: all. Permite a los elementos de un grupo aparecer o no en cualquier orden en el elemento contenido.xsd: choice. Para elegir de una lista de elementos.

Page 40: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 41: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de elementos

1.En su forma más elemental, pueden ser declarados de forma global:

<xsd: element name=“alias” />

1.1 El tipo de contenido se declara mediante type: <xsd: element name=“alias” type=“xsd:string”/>

Page 42: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de elementos

1.2 Se indica el número de apariciones minOccurs, maxOccurs:

<xsd: element name=“alias” type=“xsd:string” minOccurs=“1” maxOccurs=“1”/>

Page 43: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de elementos

2. Cuando el contenido de un elemento son otros elementos, están declarados en un bloque complejo (complexType).

La relación se establece por medio de los atributos type y name. Ejemplo:

Page 44: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de elementos<xsd:element name=“cuenta” type=“datoscuenta” minOccurs=“1” maxOccurs=“1”/>

<xsd:complexType name=“datoscuenta”>

<xsd:element name=“usuario” type=“xsd:string” minOccurs=“1”

maxOccurs=“1”/>

<xsd:element name=“pass” type=“xsd:string” minOccurs=“1”

maxOccurs=“1”/>

</xsd:complexType>

</xsd:element>

Page 45: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de elementos

Mediante complexType también se pueden declarar los atributos del elemento.

Page 46: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de elementos

<xsd:element name=“cuenta” minOccurs=“1” maxOccurs=“1”/>

<xsd:complexType>

<xsd:sequence>

<xsd:element name=“usuario” type=“xsd:string” minOccurs=“1”

maxOccurs=“1”/>

<xsd:element name=“pass” type=“xsd:string” minOccurs=“1”

maxOccurs=“1”/>

</xsd:sequence>

</xsd:complexType>

</xsd:element>

Page 47: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 48: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Atributos.

▪ Es un tipo simple.

▪ Puede ser un tipo simple personalizado.

▪ Aparece en elementos de tipo complejo.

▪ Usa la etiqueta <xsd:attribute>

Page 49: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Atributos.▪ El elemento <xsd:attribute> debe contener uno de los siguientes parámetros:▪ type= “tipo”, es el tipo al que pertenece el atributo.▪ref= “etiqueta”, identifica la definición de un atributo que ya se ha declarado (globalmente).

Page 50: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Atributos.▪ Al definir un atributo debe especificarse:▪Es requerido u opcional?▪Tiene valor predefinido?▪Aparece una o ninguna vez (no aparece mas de una).

▪Para todo ello se utiliza use y value.

Page 51: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Atributos.

Page 52: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de Atributos.

▪ Las normas básicas para la declaración de atributos en XML Schema son:

Page 53: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de Atributos.

I. Declaración Global

Page 54: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de Atributos.

1. Pueden ser declarados de forma global, con el tipo de dato utilizado:

<xsd:attribute name=“id” type=“xsd:string”/>

Page 55: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de Atributos.

II. Referencia a un atributo declarado globalmente.

Page 56: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Declaración de Atributos.

2. Un atributo declarado de forma global es referenciado a través de <xsl:attributeref=“atributo”>

Page 57: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Declaración de Atributos.

<xsd:element name=“CodigoPostal” type= “atribCodPos” minOccurs=“0” maxOccurs=“1”/>

<xsd:complexType name=“atribCodPos”>

<xsd:attribute ref=“id”>

<xsd:attribute name=“cp” type=“xsd:string”/>

</xsd:complexType>

Page 58: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de Atributos.

III. Declaración dentro del elemento que lo utiliza en complexType

Page 59: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Declaración de Atributos.

3. Pueden ser declarados dentro del elemento en el que se utilizan, en un elemento complexType:

Page 60: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Declaración de Atributos.

<xsd:element name=“CodigoPostal” minOccurs=“0” maxOccurs=“1”>

<xsd:complexType>

<xsd:attribute name=“cp” type=“xsd:string”/>

</xsd:complexType>

<xsd:element>

Page 61: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD).

Declaración de Atributos.

IV. Declaración fuera del elemento que lo utiliza en complexType

Page 62: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Declaración de Atributos.

4. Generalmente se declaran en un bloque complexType, y los elementos de forma independiente

Page 63: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Declaración de Atributos.

<xsd:element name=“CodigoPostal” type= “atribCodPos” minOccurs=“0” maxOccurs=“1”/>

<xsd:complexType name=“atribCodPos”>

<xsd:attribute name=“cp” type=“xsd:string”/>

</xsd:complexType>

Page 64: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). XML Schema:a) Tipos de datosb) Facetasc) Definición de tipos de datosd) Declaración de elementose) Declaración de atributosf) Ejemplo

Page 65: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML. XSD

catalogo pelicula +

duracion [#] *

genero [#] +

anio [#] *

nombre [#] +

titulo [#]

fecha [#] ?

responsable [#]

Page 66: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML SchemaDefinition (XSD). Ejemplo:archivo películas.xml

Page 67: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Ejemplo:archivo esquema.xsd

Page 68: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Ejemplo

Page 69: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Ejemplo:Para referenciar al archivo esquema.xsd dentro del documento XML

Page 70: TECNOLOGIAS PARA LA INTEGRACION DE SOLUCIONES€¦ · Clase 11. Tecnologías XML Ejemplo XML Schema. Facultad de Estadística e Informática Clase 11. Tecnologías XML Existen varios

Facultad de Estadística e Informática

Clase 11. Tecnologías XML.XML Schema Definition (XSD). Ejemplo:Para validar nuestro ejemplo

http://www.xmlvalidation.com/