ESPECIFICACI - PowerPoint PPT Presentation

About This Presentation
Title:

ESPECIFICACI

Description:

XML debe ser utilizable directamente sobre Internet. ... Ordenaci n exacta de los elementos (Nombre, Descripcion?, Ingredientes?, Instrucciones? ... – PowerPoint PPT presentation

Number of Views:50
Avg rating:3.0/5.0
Slides: 37
Provided by: albe295
Category:

less

Transcript and Presenter's Notes

Title: ESPECIFICACI


1
ESPECIFICACIÓN XML 1.0
  • Alberto Gimeno Arnal
  • alberto.gimeno_at_gmail.com

Área de Lenguajes y Sistemas Informáticos Dpto.
de Informática e Ingeniería de Sistemas Universida
d de Zaragoza
2
XML Reglas.
  1. XML debe ser utilizable directamente sobre
    Internet.
  2. XML debe soportar una amplia variedad de
    aplicaciones.
  3. XML debe ser compatible con SGML.
  4. Ha de resultar fácil escribir programas que
    procesen documentos XML.
  5. El número de características opcionales en XML
    debe ser mantenido en un mínimo, idealmente cero.
  6. Los documentos XML deben ser legibles por un ser
    humano y razonablemente claros.
  7. El diseño de XML debe ser preparado rápidamente.
  8. El diseño de XML debe ser formal y conciso.
  9. Los documentos XML han de ser fáciles de crear.
  10. La brevedad en la marcación reviste mínima
    importancia.

Alberto Gimeno Arnal
XML 1.0
2
3
XML Soporta.
  • Etiquetas de elemento
  • Instrucciones de procesamiento
  • Declaraciones de tipos de documentos
  • Referencia de entidades
  • Comentarios
  • Secciones marcadas

4
XML Estructura.
  • lt?xml version1.0 encodingiso-8859-1
    standaloneyesno?gt
  • lt!DOCTYPE documento SYSTEM "Prueba.dtd"gt
  • ltdocumentogt
  • lttitulogt
  • Prueba
  • lt/titulogt
  • ltcontenidogt
  • ltparrafogt
  • ltlistagt
  • ltelemento atributovalor1gt
  • Primer elemento
  • lt/elementogt
  • ltelemento atributovalor2gt
  • Segundo elemento
  • lt/elementogt
  • lt/listagt
  • lt/parrafogt
  • lt/contenidogt
  • lt/documentogt

5
XML Elementos.
6
XML Instruc. de procesamiento.
  • Los documentos XML deben empezar con la directiva
    lt?xml version1.0 ?gt, opcionalmente
  • standalone encoding

XML Declaración de tipo de documento(DTD)
  • Especificar el elemento raiz del documento.
  • Definir elementos, atributos y entidades
    especificas del documento (DTD interno).
  • Identificar una DTD externa en el documento.
  • lt!DOCTYPE documento SYSTEM "Prueba.dtd"gt

Alberto Gimeno Arnal
XML 1.0
6
7
XML Referencias a entidades.
  • Por ejemplo, podrían ser
  • lt!ENTITY amp 38gt lt! ampersand --gt
  • lt!ENTITY lt 60gt lt! menor que --gt
  • lt!ENTITY euro 8364gt lt! --gt
  • En el documento xml, bastará con poner lt o
    euro

Alberto Gimeno Arnal
XML 1.0
7
8
XML Secciones CDATA.
  • Se evita el análisis sintáctico del texto
  • lt!CDATA
  • lt!ENTITY amp 38gt lt! ampersand --gt
  • ltCODIGO_Cgt
  • pq?campo
  • a(xlty)?3344
  • lt/CODIGO_Cgt
  • gt

Alberto Gimeno Arnal
XML 1.0
8
9
XML Espacios de nombre.
  • Los espacios de nombres son un prefijo que
    ponemos a las etiquetas de XML para indicar a qué
    contexto se refiere la etiqueta en cuestión.
  • ltpasdirecciongt para uso por los
    administrativos.
  • ltpdidirecciongt para uso por el profesorado.
  • Para usar los espacios de nombres en un
    documento, debemos declararlo previamente
    (xmlns)
  • lt?xml version1.0 encodingiso-8859-1?gt
  • ltpersonal
  • xmlnsalumnhttp//cps.unizar.es/PAS
  • xmlnspdihttp//cps.unizar.es/PDI

Alberto Gimeno Arnal
XML 1.0
9
10
XML Modelar datos
  • Existen dos tipos
  • Forma simple DTDs (internas /externas)
  • lt!DOCTYPE ElementoRaiz SYSTEMPUBLIC
    RefDTDExterna DeclacDTDInternagt
  • Forma extensa XML Schemas
  • ltSchema nameesqAgenda xmlnsurn-microsoft-com
    xml-datagt
  • lt! Contenido del esquema--gt
  • lt/Schemagt

Alberto Gimeno Arnal
XML 1.0
10
11
DTD Estructura.
  • lt!ELEMENT agenda (contacto)gt
  • lt!ELEMENT contacto (nombre, apellidos,
    direccion, cp, ciudad, provincia, tfno, correo)gt
  • lt!ATTLIST nombre clase (teoria problemas
    practicas) "problemas"gt
  • lt!ELEMENT tfno (movil, casa?)gt
  • lt!ELEMENT nombre (PCDATA)gt
  • lt!ELEMENT apellidos (PCDATA)gt
  • lt!ELEMENT direccion (PCDATA)gt
  • lt!ELEMENT cp (PCDATA)gt
  • lt!ELEMENT ciudad (PCDATA)gt
  • lt!ELEMENT provincia (PCDATA)gt
  • lt!ELEMENT movil (PCDATA)gt
  • lt!ELEMENT casa (PCDATA)gt
  • lt!ELEMENT correo (PCDATA)gt

Alberto Gimeno Arnal
XML 1.0
11
12
DTD
Símbolo Descripción
() Los paréntesis agrupan subetiquetas lt!ELEMENT Ingrediente (Cantidad,Item)gt
, Ordenación exacta de los elementos (Nombre, Descripcion?, Ingredientes?, Instrucciones?)
Uno sólo de los elementos indicados (Cocer Freir)
Si no indicamos nada los elementos aparecen una sola vez (Cantidad, Item)
Una o más veces Paso
? Elemento opcional Instrucciones?
Cero o más veces Ingrediente
PCDATA Parsed Character Data lt!ELEMENT Item (PCDATA)gt
Alberto Gimeno Arnal
XML 1.0
12
13
DTD Tipos de Declaraciones.
  • Tipos de elementos. (lt!ELEMENT)
  • EMPTY
  • PCDATA
  • ANY
  • Listas de atributos. (lt!ATTLIST)
  • lt!ATTLIST elemento atributo tipo-atributo
    valor-defectogt
  • Entidades. (lt!ENTITY)
  • Notaciones. (lt!NOTATION)

Alberto Gimeno Arnal
XML 1.0
13
14
DTD Atributos.

Valor Descripción
CDATA El valor son caracteres alfanuméricos
(v1 v2 ..) El valor será uno de la lista explicitada
ID El valor será un identificador único
IDREF El valor es el ID de otro elemento
IDREFS El valor es una lista de ID otros elementos
NMTOKEN El valor es un nombre XML válido
NMTOKENS El valor es una lista de nombres XML válidos
ENTITY El valor es una entidad
ENTITIES El valor es una lista de entidades
NOTATION El valor es el nombre de una notación
xml El valor es un valor XML predefinido
Alberto Gimeno Arnal
XML 1.0
14
15
DTD Atributos. Valores
Valor Descripción
valor El valor por defecto del atributo
REQUIRED El valor del atributo debe aparecer obligatoriamente en el elemento
IMPLIED El atributo no tiene por qué ser incluido
FIXED valor El valor del atributo es fijo
Alberto Gimeno Arnal
XML 1.0
15
16
DTD. Referencias.
  • Embebido o interna
  • lt?xml version"1.0"?gt
  • lt!DOCTYPE Receta
  • lt!ELEMENT Receta (Nombre, Descripcion?,
  • .gt
  • Enlace externo
  • lt?xml version1.0?gt
  • lt!DOCTYPE Receta SYSTEM receta.dtdgt
  • ltRecetagt
  • .

Alberto Gimeno Arnal
XML 1.0
16
17
XML Schema. Ventajas sobre DTD
  • XML Schema se basa en XML, lo cual permite
    validar los documentos.
  • Soporta una serie de tipos de datos (int, float,
    boolean, date, etc.).
  • Vocabulario abierto permite definir nuevos tipos
    de datos y establecer nuevas relaciones de
    herencia.
  • Soporta spacenames ? asociar nodos individuales
    con las declaraciones de tipos de esquema.
  • Soporta grupos de atributos ? combinación de
    atributos.

Alberto Gimeno Arnal
XML 1.0
17
18
XML Schema Estructura.
  • lt?xml version"1.0"?gt
  • ltSchema nameesqPeliculas" xmlns"urnschemas-mi
    crosoft-comxml-data"
  • xmlnsdt"urnschemas-microsoft-comdatatypes"gt
  • ltElementType nametitulo" content"textOnly"/gt
  • ltElementType name"writer" content"textOnly"/gt
  • ltElementType name"producer" content"textOnly"/
    gt
  • ltElementType name"director" content"textOnly"/
    gt
  • ltElementType name"actor" content"textOnly"/gt
  • ltElementType name"comments" content"textOnly"/
    gt
  • ltAttributeType namegenero" dttypeenumeratio
    n "
  • dtvalues"drama comedia aventuras sci-fi
    misterio horror romance documental"
  • default"drama"/gt
  • ltAttributeType namecategoria"
    dttype"enumeration"
  • dtvalues"G PG PG-13 R X" default"PG"/gt
  • ltAttributeType namevaloracion"
    dttype"enumeration"
  • dtvalues"1 2 3 4 5" default"3"/gt
  • ltAttributeType nameaño" dttype"int"/gt
  • ltElementType namepeliculas"
    content"eltOnly"gt
  • ltelement typepeli" minOccurs"1"
    maxOccurs""/gt

Alberto Gimeno Arnal
XML 1.0
18
19
XML Schema Tipos de Declaraciones.
  • Describe los tipos de datos en los elementos y
    los atributos. (ltdatatype)
  • Describe tipos de elementos. (ltElementType)
  • Identifica un elemento que puede reproducirse
    dentro de otro. (ltelement)
  • Organiza los elementos en grupos. (group)
  • Describe un tipo de atributo. (ltAttributeType)
  • Identifica un atributo que puede reproducirse
    dentro de otro. (ltattribute)

Alberto Gimeno Arnal
XML 1.0
19
20
XML Schema ElementType.
  • name, nombre del elemento.
  • model
  • content, tipo de contenido (textOnly, eltOnly,
    empty, mixed)
  • order, orden de los elementos secundarios y
    grupos que hay en el elemento (one, seg, many)
  • dttype, tipo de elemento. (coincide con los
    tipos de datatype)

Alberto Gimeno Arnal
XML 1.0
20
21
XML Schema AttributeType.
  • name, nombre del tipo de atributo.
  • dttype, tipo de datos del atributo.
  • dtvalues, lista de los posibles valores del
    atributo (dttypeenumeration)
  • default.
  • required.

Alberto Gimeno Arnal
XML 1.0
21
22
XML Schema element/attribute.
  • type, tipo del elemento/atributo. Debe ser el
    nombre de un tipo de elemento ya declarado.
  • minOccurs, numero mínimo de veces que el
    elemento/atributo debe producirse.
  • maxOccurs, numero máximo de veces que el
    elemento/atributo debe producirse

Alberto Gimeno Arnal
XML 1.0
22
23
XML Schema Tipos de datos.
  • Declaración al principio del documento XML Schema
    ? xmlnsdt

char boolean int float number
i1 fixed 14.4 ui1 bin.hex dateTime
i2 r4 ui2 bin.base64 dateTime.tz
i4 r8 ui4 date time
uuid uri time.tz
Alberto Gimeno Arnal
XML 1.0
23
24
Plantilla XSL Estructura.
  • lt?xml version"1.0"?gt
  • ltxslstylesheet version"1.0" xmlnsxsl"http//ww
    w.w3.org/1999/XSL/Transform"gt
  • ltxsltemplate match"/"gt
  • lthtmlgtltheadgtlttitlegtAGENDA XMLlt/titlegtlt/headgtltbody
    gt
  • ltxslfor-each select'agenda/contacto'gt
  • ltxslvalue-of select'nombre' /gt,
  • ltbgtltxslvalue-of select'apellidos' /gtlt/bgt
    ltbr/gt
  • ltbgtltxslvalue-of select'direccion'/gtlt/bgt
    ltbr/gt
  • ltxslvalue-of select'cp'/gt
  • ltigtltxslvalue-of select'ciudad'/gtlt/igt (
  • ltbgtltxslvalue-of select'provincia'/gtlt/bgt)
    ltbr/gt
  • Tfno.ltxslvalue-of select'tfno/movil'/gt -
  • ltxslvalue-of select'tfno/casa'/gt ltbr/gt
  • E-mail ltxslvalue-of select'correo'/gt ltbr/gt
  • lthr /gt
  • lt/xslfor-each gt
  • lt/bodygtlt/htmlgt
  • lt/xsltemplategt

Alberto Gimeno Arnal
XML 1.0
24
25
XSLT Tipos de elementos.
  • xslvalue-of, insertar el valor de un elemento o
    atributo (select).
  • xslif, establece una ramificación condicionada
    (match).
  • xslfor-each, bucle (select, order-by)
  • xslapply-templates, aplica plantillas
    secundarias (select).

Alberto Gimeno Arnal
XML 1.0
25
26
XPath.
  • Es un lenguaje no XML.
  • Proporciona una vía abstracta de dirigirse a
    partes de documentos XML.
  • Sintaxis diseñada para ser usada con URI y
    valores de atributos XML (máxima simplicidad).
  • Organización del documento en árbol de nodos
  • Recorre el árbol a través de expresiones.

Alberto Gimeno Arnal
XML 1.0
26
27
Árbol XPath
  • Nodos raíz.
  • Nodos de elementos.
  • Nodos de texto.
  • Nodos de atributos.
  • Nodos de espacios de nombres.
  • Nodos de instrucciones de procesamiento.
  • Nodos de comentarios.

Alberto Gimeno Arnal
XML 1.0
27
28
XPath Tipos de datos
  • mode-set, conjunto de datos.
  • boolean, (truefalse).
  • number, número de coma flotante.
  • string, cadena de texto.

Alberto Gimeno Arnal
XML 1.0
28
29
Vincular documentos XLink y XPointer.
  • XLink, determina el documento al que se desea
    enlazar.
  • type(locator, simple, extend, arc, group), href,
    from, to, show, actuate, role, title.
  • XPointer, marca el lugar exacto de dicho
    documento.
  • Rutas absolutas Root(/), id(Name), here(),
    origin()
  • Rutas relativas child, parent, descendant,
    descendant-or-seft, ancestor, ancestor-or-seft,
    preceding-sibling, following-sibling, preceding,
    following, seft, attribute.

Alberto Gimeno Arnal
XML 1.0
29
30
XLink Estructura.
  • Simple
  • ltAUTOR xlinkhrefautores.xmljuan
    xlinkshownewgt
  • ltNOMBREgtJuan Primero Segundolt/NOMBREgt
  • lt/AUTORgt
  • Extendido
  • ltEDITOR_AUTOR xlinkextendedgt
  • ltxlinklocator hrefana ideditor/gt
  • ltxlinklocator hrefautores.xmljuan
    idautor/gt
  • ltxlinkarc fromeditor toautor
    showreplace/gt
  • lt/EDITOR_AUTOR xlinkextendedgt

Alberto Gimeno Arnal
XML 1.0
30
31
Patrón XSL Estructura.
  • Search context
  • agenda.xml
  • Query
  • ./tfno
  • Result Set
  • ltxqlresultgt
  • lttfnogt56983265lt/tfnogt
  • lttfnogt58746912lt/tfnogt
  • lttfnogt65229105lt/tfnogt
  • lt/xqlresultgt

Alberto Gimeno Arnal
XML 1.0
31
32
XSL Cadenas de consulta.
  • Jerárquicas
  • Consultas primarias-secundarias, /
  • Ascendiente-Descendiente, //
  • Comodines,
  • Secuenciales
  • Precedencias inmediatas,
  • Precedencias,
  • Localizar un atributo
  • Devolver atributos, _at_
  • Filtrar, contacto_at_clasepracticas/nombre
  • Métodos text(), value(), nodeType(), nodeName(),
    index(), end().

Alberto Gimeno Arnal
XML 1.0
32
33
XSL Consultas.
  • ltxslstylesheet xmlnsxsl"http//www.w3.org/TR/WD
    -xsl"gt
  • ltxsltemplate match"/"gt
  • ltxslapply-templates select//contacto'gt
  • lt/xsltemplategt
  • ltxsltemplate match" contacto_at_clasepracticas
    /nombre "gt
  • ltbgtltxslvalue-of selectnombre'/gtlt/bgt ltbr/gt
  • lt/xsltemplategt
  • lt/xslstylesheetgt

Alberto Gimeno Arnal
XML 1.0
33
34
Analizadores sintácticos parser.
  • Validación de los documentos XML, interfaz (API)
    que proporciona llamadas a funciones y
    procedimientos que proporcionen métodos y
    mecanismos para manipular documentos XML, existen
    dos tipos
  • DOM, scripts (java, vb, c, c,)
  • SAX, JAVA.

Alberto Gimeno Arnal
XML 1.0
34
35
DOM Modelo de Objeto de Documento.
  • Interfaz (Document, DocumentFragment, Node,
    NodeList, NamedNodeMap, CharacterData, Attr,
    Element, Text)
  • Nodos y secciones (CDATASection, Notation,
    EntityReference, Entity, ProcessingInstruction)
  • Objetos.
  • Métodos.
  • Atributos.

Alberto Gimeno Arnal
XML 1.0
35
36
SAX Simple API para XML.
  • Parser.parser()/HandlerBase()
  • Interfaz DocumentHandler
  • Retrollamadas (elementos, documentos, texto)
  • Procesamiento (instrucciones, plantillas)
  • Objetos (ErrorHandler, InputSource, Locator)

Alberto Gimeno Arnal
XML 1.0
36
Write a Comment
User Comments (0)
About PowerShow.com