Arquitecturas Distribuidas 09/10
|
|
- Lucía Santos García
- hace 7 años
- Vistas:
Transcripción
1 Tema 3. IV. XML Arquitecturas Distribuidas 09/10 1
2 IV. XML 1. Qué es XML? 2. Estructura de un documento XML 3. Importancia de XML 4. Problemas de XML 5. Conformidad y validez 6. Estructura DTD XML 3.1. Elementos 3.2. Atributos 3.3. Notaciones 3.4. Entidades Instrucciones de procesado (PI) 7. Interpretación de un documento XML por un navegador 8. XHTML 9. Tecnologías relacionadas con XML 5.1. Espacios de nombres 5.2. XSchema Lenguajes de estilo y transformación para XML Arquitecturas Distribuidas 09/10 2
3 Qué es XML? (I) () Lenguaje de Marcas extendido. Meta lenguaje para lenguajes de marcas particulares (como SGML): permite crear otros lenguajes de marcas Proporciona las reglas sintácticas que permiten crear lenguajes que están bien formados y puedan ser validados Cuando uno crea un documento XML, define sus propias etiquetas. No está limitado en qué o cómo se describen los datos. Mientras el documento esté bien formado es XML aceptable Cada lenguaje particular (e.g. XHTML, MathML, SVG) es una aplicación ió de XML Proporciona información acerca de los datos (metadatos) Arquitecturas Distribuidas 09/10 3
4 Qué es XML? (I) () Separa los datos de su representación (formato) particular XML no es HTML mejorado, sino SGML simplificado. Simplifica el procesado e intercambio de la información, es independiente de la plataforma. Proporciona reglas sintácticas para crear lenguajes que deben estar bien formados y pueden ser validados Es usado por muchas otras tecnologías y en muchos ámbitos (e.g. los ficheros de configuración de las tecnologías de Microsoft son XML). Arquitecturas Distribuidas 09/10 4
5 Estructura de un documento XML Prólogo (declaraciones) y cuerpo. <?xml version="1.0" [parámetros opcionales]> Declaraciones de las reglas del documento PRÓLOGO <raiz> Contenido </raiz> CUERPO Parámetros opcionales en la declaración: standalone: indica si el documento es autocontenido. encoding: juego de caracteres del documento. Arquitecturas Distribuidas 09/10 5
6 Estructura de un documento XML Ejemplo documento XML simple: <?xml version="1.0" encoding='utf-8?> <dni> <id> X 6 </id> <nombre> Pepe </nombre> <apellidos> Pérez </apellidos> <nacimiento> <lugar> Murcia </lugar> <fecha> 1/1/1983 </fecha> </nacimiento> </dni> MARCAS Arquitecturas Distribuidas 09/10 6
7 Estructura de un documento XML Ejemplo documento XML simple: Una aplicación podría usar el DNI para enviar a <?xml version="1.0" encoding='utf-8'> <dni> <id> X 6 </id> <nombre> la Pepe máquina </nombre> que los <apellidos> Pérez </apellidos> <nacimiento> imprime los comandos <lugar> oportunos Isla perejil </lugar> <fecha> 1/1/1983 </fecha> </nacimiento> </dni> Arquitecturas Distribuidas 09/10 7
8 Estructura de un documento XML Ejemplo documento XML simple: Una aplicación podría usar el DNI para enviar a <?xml version="1.0" encoding='utf-8'> <dni> <id> X 6 </id> <nombre> la Pepe máquina </nombre> que los <apellidos> Pérez </apellidos> <nacimiento> imprime los comandos Otra aplicación <lugar> oportunos Isla perejil </lugar> <fecha> podría 1/1/1983 </fecha> usar el </nacimiento> DNI para enviar al </dni> usuario un correo para recordarle que debe renovarlo. Arquitecturas Distribuidas 09/10 8
9 Estructura de un documento XML Ejemplo documento XML simple: Una aplicación podría usar el DNI para enviar a <?xml version="1.0" encoding='utf-8'> <dni> <id> X 6 </id> <nombre> la Pepe máquina </nombre> que los hace <apellidos> Pérez </apellidos> <nacimiento> los comandos oportunos Otra aplicación <lugar> Isla perejil </lugar> <fecha> podría 1/1/1983 </fecha> usar el </nacimiento> DNI para enviar al </dni> usuario un correo para recordarle que debe renovarlo. Otra aplicación podría usar los datos para contrastar la veracidad d en una compra a través de Internet. Arquitecturas Distribuidas 09/10 9
10 Estructura de un documento XML XML PROPORCIONA UN Ejemplo documento XML simple: MÉTODO PARA ESTRUCTURAR Una aplicación podría usar el DNI para enviar a <?xml version="1.0" encoding='utf-8'> <dni> INFORMACIÓN, <id> X 6 </id> <nombre> la Pepe máquina </nombre> que los hace <apellidos> Pérez </apellidos> <nacimiento> los comandos oportunos Otra aplicación <lugar> Isla perejil </lugar> <fecha> podría Ó 1/1/1983 Q </fecha> O usar el </nacimiento> DNI para enviar al </dni> INDEPENDIENTEMENTE DE LA APLICACIÓN QUE LA PROCESE usuario un correo para recordarle que debe renovarlo. Y PARA DOTARLA DE SIGNIFICADO Otra aplicación podría usar los datos para contrastar la veracidad d en una compra a través de Internet. Arquitecturas Distribuidas 09/10 10
11 Importancia de XML XML permite especificar la semántica de los datos que contiene: qué significan? HTML, por el contrario, permite definir la estructura de un documento pero no la semántica de los datos que contiene Separación de los datos de la forma en que se procesan = independiente del dominio de aplicación Permitir que los datos perduren más allá de la tecnología Legible por los humanos (Human readable): por qué? al menos hay una oportunidad de discernir el significado en el futuro (si somos capaces de abrir el archivo) Estándar y MUY utilizado Arquitecturas Distribuidas 09/10 11
12 Problemas de XML Tremendamente redundante (desde el punto de vista de una máquina). Muy poco eficiente en el uso de recursos Ancho de banda, latencia, almacenamiento. Proliferación de lenguajes Necesitamos un parser/aplicación ió para cada uno de ellos Arquitecturas Distribuidas 09/10 12
13 Conformidad y validez En un documento bien formado (well formed) Se cierran todos los elementos abiertos HTML: <h2> <b> Nombre: </b> <h3> <i> Pepe Pérez </i> XML: <h2> <b> Nombre: </b> </h2> <h3> <i> Pepe Pérez </i> </h3> Arquitecturas Distribuidas 09/10 13
14 Conformidad y validez En un documento bien formado (well formed) Se identifican los elementos vacíos HTML: <b> Nombre: </b> <i> Pepe Pérez </i> <br> XML: <b> Nombre: </b> <i> Pepe Pérez </i> <br/> Elemento vacío: <TAG/> Arquitecturas Distribuidas 09/10 14
15 Conformidad y validez En un documento bien formado (well formed) Los valores de los atributos siempre están presentes y van entre comillas ( valor o valor ) HTML: <li compact> <li type=disc> XML: <li compact="compact > <li type="disc"> Arquitecturas Distribuidas 09/10 15
16 Conformidad y validez En un documento bien formado (well formed) En elementos y atributos, las mayúsculas y minúsculas son letras distintas HTML: <LI type=disc> == <li type=disc> == <Li type=disc> XML: <LI type='disc'>!= <li type='disc'>!= <Li type='disc'> Arquitecturas Distribuidas 09/10 16
17 Conformidad y validez En un documento bien formado (well formed) Los elementos deben estar bien anidados HTML: <b> <u> Número de DNI: X </b> </u> HTML: El analizador (parser) intenta arreglarlo XML: <b> <u> Número de DNI: X </b> </u> XML: El analizador (parser) debe dar error! Arquitecturas Distribuidas 09/10 17
18 Conformidad y validez En un documento bien formado (well formed) Todas las entidades deben estar declaradas HTML: <b> Nombre Apellidos </b> XML: <b> Nombre Apellidos </b> XML: necesita una declaración previa. XML sólo entiende por defecto: & (&), < (<), > (>), "e; ( ) y ' () ( ) Arquitecturas Distribuidas 09/10 18
19 Conformidad y validez En un documento bien formado (well formed) Puede contener comentarios XML: <! - Comentario --> Puede contener datos que no se analicen sintácticamente XML: <![CDATA [datos que no se analizan]]> Arquitecturas Distribuidas 09/10 19
20 Conformidad y validez XML admite una declaración de Definición del Tipo de Documento (DTD): Conjunto que describe de reglas que debe respetar un documento perteneciente a un lenguaje XML específico. Define la estructura de un documento: elementos, contenidos de cada elemento, orden, atributos de cada elemento, etc. Un documento es conforme ó valido si y sólo si: Está bien formado Tiene un DTD y respeta sus reglas Arquitecturas Distribuidas 09/10 20
21 Estructura DTD XML Declaración del DTD: <?xml version="1.0"> <!DOCTYPE nombre [ ]> REGLAS SINTACTICAS (declaraciones internas) <nombre>... </nombre> Arquitecturas Distribuidas 09/10 21
22 Estructura DTD XML URL donde d se ubica el Declaración externa : <?xml version="1.0"> <!DOCTYPE nombre (SYSTEM PUBLIC) URL [ ]> documento con el DTD. <nombre>... </nombre> PUBLIC si es SYSTEM si es un DTD un DTD estándar. propio Arquitecturas Distribuidas 09/10 22
23 Estructura DTD XML Declaración mixta : <?xml version="1.0"> <!DOCTYPE nombre (SYSTEM PUBLIC) URL [ ]> Reglas sintácticas (declaraciones internas) <nombre>... </nombre> DTD es la suma de las partes externas e internas Arquitecturas Distribuidas 09/10 23
24 Estructura DTD XML Observación: <?xml version="1.0"> <!DOCTYPE nombre [ ]> REGLAS SINTACTICAS (declaraciones internas) <nombre>... </nombre> Nombre indica cómo se llama la raíz del documento Arquitecturas Distribuidas 09/10 24
25 Estructura DTD XML Reglas del DTD: <!DOCTYPE nombre [ REGLAS SINTACTICAS: ] ELEMENTOS: ATRIBUTOS: <!ELEMENT elemento (contenido)> <!ATTLIST elemento atributo tipo descripción... > ENTIDADES: INTERNAS: <!ENTITY [%] entidad cualquier texto > EXTERNAS: <!ENTITY [%] entidad URL> PREDEFINIDAS: & < etc NOTACIONES: INSTRUCCIONES: <?... > <!NOTATION nombre identificador> Utiliza la sintaxis i de SGML, simplificando las posibilidades d Arquitecturas Distribuidas 09/10 25
26 Elementos en DTD XML Declaración de los elementos: <!ELEMENT elemento (contenido)> Indica la declaración de un nuevo elemento Nombre del Declaración del tipo de nuevo elemento contenido (elementos y datos) que puede incluir el elemento, cuántos y en qué orden aparecen. Arquitecturas Distribuidas 09/10 26
27 Elementos en DTD XML Clases de contenido para elementos (5 posibilidades): <!--Elemento vacío--> <!ELEMENT elemento EMPTY> <!--Puede contener cualquier elemento--> <!ELEMENT elemento ALL> <!--Contenido es una cadena de caracteres (datos) con entidades (que deben ser procesadas)--> <!ELEMENT elemento (#PCDATA)> <!--Elemento compuesto de otros elementos, según una fórmula--> <!ELEMENT elemento formula(elementos)> <!--Elemento con contenido mixto (otros elementos y #PCDATA)--> <!ELEMENT elemento formula(elementos, #PCDATA)> Arquitecturas Distribuidas 09/10 27
28 Elementos en DTD XML Clases de contenido para elementos (fórmulas): Sintáxis muy similar a SGML. Indican el número de veces que puede aparecer un componente (cardinalidad): * (cero o más veces) + (una o más veces)? (cero o una vez) Indican el orden en que deben/pueden d aparecer los elementos (atención: el operador & no existe, diferencia con SGML): a,b (b a continuación de a) a b (b ó a) (conjunto) (agrupación, si existe operador posterior afecta a todo el conjunto) Arquitecturas Distribuidas 09/10 28
29 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (b,c)> <a> </a> <b>contenido de b</b> <c>contenido de c</c> <a> </a> <c>contenido de c</c> <b>contenido de b</b> <a> </a> <b>contenido de b</b> <a></a> Arquitecturas Distribuidas 09/10 29
30 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (b,c)> <a> </a> <b>contenido de b</b> <c>contenido de c</c> VÁLIDA! <a> </a> <a> </a> <c>contenido de c</c> <b>contenido de b</b> <b>contenido de b</b> NO VÁLIDA! NO VÁLIDA! <a> </a> NO VÁLIDA! Arquitecturas Distribuidas 09/10 30
31 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (b?, c)+> <a> </a> <c>contenido de c</c> <a> </a> <b>contenido de b</b> <c>contenido de c</c> <c>contenido de c</c> <b>contenido de b</b> <c>contenido de c</c> Arquitecturas Distribuidas 09/10 31
32 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (b?, c)+> <a> </a> <c>contenido de c</c> VÁLIDA! <a> </a> <b>contenido de b</b> <c>contenido de c</c> <c>contenido de c</c> <b>contenido de b</b> <c>contenido de c</c> VÁLIDA! Arquitecturas Distribuidas 09/10 32
33 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (#PCDATA, (b c), d+, #PCDATA)> <a> <a> Cualquier cadena de texto forma un #PCDATA. Además es posible que nos encontremos entidades delimitadas por & y ;. <b> contenido de b </b> <d> contenidio de d </d> Cualquier otra cadena de datos. <a> </a> <c> contenido de c </c> <d> contenido de d </d> Nota: #PCDATA puede ser una cadena vacía. Arquitecturas Distribuidas 09/10 33
34 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (#PCDATA, (b c), d+, #PCDATA)> <a> <a> Cualquier cadena de texto forma un #PCDATA. Además es posible que nos encontremos entidades delimitadas por & y ;. <b> contenido de b </b> <d> contenidio de d </d> Cualquier otra cadena de datos. Ejemplo 1) Interpretación del #PCDATA <a> en un navegador: Las entidades se substituyen </a> por su valor real : á y &. <c> contenido de c </c> <d> contenido de d </d> Nota: #PCDATA puede ser una cadena vacía. Arquitecturas Distribuidas 09/10 34
35 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (#PCDATA, (b c), d+, #PCDATA)> <a> Cualquier cadena de texto forma un #PCDATA. Además es posible que nos encontremos entidades delimitadas por & y ;. <b> contenido de b </b> <d> contenidio de d </d> Cualquier otra cadena de datos. Ejemplo 2) #PCDATA puede ser una cadena vacía. <a> <a> </a> <c> contenido de c </c> <d> contenido de d </d> Nota: #PCDATA puede ser una cadena vacía. Arquitecturas Distribuidas 09/10 35
36 Elementos en DTD XML Ejemplos de fórmulas: <!ELEMENT a (#PCDATA, (b c), d+, #PCDATA)> <a> <a> Cualquier cadena de texto forma un #PCDATA. Además es posible que nos encontremos entidades delimitadas por & y ;. <b> contenido de b </b> <d> contenidio de d </d> VÁLIDA! Cualquier otra cadena de datos. <a> </a> <c> contenido de c </c> <d> contenido de d </d> Nota: #PCDATA puede ser una cadena vacía. VÁLIDA! Arquitecturas Distribuidas 09/10 36
37 Atributos en DTD XML Declaración de los atributos (parámetros): Nombre del elemento para el que se declaran los atributos <!ATTLIST elemento atributo1 tipo descripción atributo2 tipo descripción... > Indica el comienzo de una nueva lista de atributos Declaración de parámetros (uno por línea) Arquitecturas Distribuidas 09/10 37
38 Atributos en DTD XML Tipos de parámetros: Nota: De momento no nos fijaremos en la descripción Indican los posibles valores que puede contener el atributo: CDATA (character data: cualquier carácter y ciertas entidades) <!ATTLIST a parametro CDATA descripción> > <a parametro="cualquier cadena con entidades como &"/> NMTOKEN (named token: una cadena de letras, números o ciertos símbolos: <!ATTLIST como a el nombre de una variable en Java) > parametro NMTOKEN descripción> <a parametro="algo_sin_espacios_quizas_con_123456"/> Arquitecturas Distribuidas 09/10 38
39 Atributos en DTD XML NMTOKENS (named token list: secuencia de NMTOKEN separados por espacios) <!ATTLIST a parametro NMTOKENS descripción> > <a parametro="token1 Token2 Token3..."/> ID (unique identifier: identificador que debe ser diferente para cada elemento, misma sintaxis que NMTOKEN) <!ATTLIST a parametro ID descripción> > <a parametro="1"/> <a parametro="2"/> VÁLIDO! <a parametro="uno"/> <a parametro="uno"/> NO VÁLIDO! Arquitecturas Distribuidas 09/10 39
40 Atributos en DTD XML IDREF (identifier reference: identificador único de otro elemento que debe existir en el documento) <!ATTLIST a parametro IDREF descripción> > <!ATTLIST b otroparametro ID descripción> > <b otroparametro="uno"/> <a parametro="uno"/> VÁLIDO! <b otroparametro="uno"/> <a parametro="otro"/> NO VÁLIDO! Arquitecturas Distribuidas 09/10 40
41 Atributos en DTD XML IDREFS (identifier reference list: lista de IDREF separados por espacios) <!ATTLIST a parametro IDREFS descripción> > <!ATTLIST b otroparametro ID descripción> > <!ATTLIST c otroparametromas ID descripción> > <b otroparametro="id1"/> <b otroparametro="id2"/> <c otroparametro="id3"/> <a parametro="id1 ID2 ID3..."/> Arquitecturas Distribuidas 09/10 41
42 Atributos en DTD XML ENTITY (entity name: nombre de una entidad general declarada en el documento) <!ENTITY unaentidad SYSTEM "foto.png"> <!ATTLIST a parametro ENTITY descripción> > <a parametro="unaentidad"/> Lo entenderemos mejor al estudiar entidades! ENTITIES (identifier reference list: lista de ENTITY separadas por espacios) <!ENTITY unaentidad SYSTEM "foto.png"> <!ENTITY otraentidad SYSTEM "foto2.png"> <!ATTLIST a parametro ENTITIES descripción> > <a parametro="unaentidad otraentidad"/> Arquitecturas Distribuidas 09/10 42
43 Atributos en DTD XML NOTATION (notation list: lista de NOTATION separados por espacios) <!NOTATION jpg SYSTEM "/usr/bin/gimp"> / /g <!ATTLIST a parametro NOTATION descripción> > <a parametro="jpg"/> Lo entenderemos mejor al estudiar notaciones! ENUMERACIÓN: Declaración especial (no usa palabra reservada): (valor1 valor2...) <!ATTLIST a parametro (valor1 valor2...) descripción> > <a parametro="valor1"/> <a parametro="valor2"/> <a parametro="otrovalornoenumerado"/> NO VÁLIDO! Arquitecturas Distribuidas 09/10 43
44 Atributos en DTD XML Descripción de parámetros: Pueden indicar valores por defecto. <!ATTLIST a color NMTOKEN azul> > <a/> <a color="rojo"/> <!ATTLIST a color (azul rojo) azul> > <a color="verde"/> Arquitecturas Distribuidas 09/10 44
45 Atributos en DTD XML Descripción de parámetros: Pueden indicar valores por defecto. <!ATTLIST a color NMTOKEN azul> > <a/> <a color="rojo"/> No se indica nada del color, por tanto es azul Se cambia el color a rojo <!ATTLIST a color (azul rojo) azul> > <a color="verde"/> Definición no válida! Arquitecturas Distribuidas 09/10 45
46 Atributos en DTD XML Descripción de parámetros: Indican características especiales: #REQUIRED (el usuario debe proporcionar un valor siempre) #IMPLIED (el parámetro es opcional) #FIXED (debe aparecer y el usuario no puede alterarlo) <!ATTLIST a identidad ID #REQUIRED> color (azul rojo verde) #IMPLIED> tipo (antiguo nuevo) #FIXED nuevo > <a identidad="1"/> <a identidad="2" color="verde"/> <a color="rojo"/> <a tipo="antiguo /> Arquitecturas Distribuidas 09/10 46
47 Notaciones en DTD XML XML se diseñó principalmente como contenedor de información de texto. Hay mucha información representada de modo binario: imágenes, vídeo, audio, etc. XML posibilita la coexistencia con información binaria, a través del mecanismo de las notaciones. Las notaciones son etiquetas especiales que indican al procesador de XML el tipo de la información ió que está analizando. Arquitecturas Distribuidas 09/10 47
48 Notaciones en DTD XML Declaración: Algo que indique el tipo de notación PROBLEMA PORTABILIDAD <!NOTATION nombre (PUBLIC SYSTEM) identificador> Nombre de la la notación Indica si el identificador es público o privado Indica el comienzo de un nuevo identificador de notación Arquitecturas Distribuidas 09/10 48
49 Notaciones en DTD XML Ejemplos de uso: <!ELEMENT foto EMPTY> <!ATTLIST foto fuente NOTATION #REQUIRED > <!NOTATION jpeg SYSTEM "image/jpeg"> <!NOTATION png SYSTEM "image/png"> <foto fuente="pepe"/> <foto fuente="maria"/> <foto fuente="paco"/> Arquitecturas Distribuidas 09/10 49
50 Notaciones en DTD XML Ejemplos de uso: Notación incluída en parámetros <!ELEMENT programa (#PCDATA)> <!ATTLIST programa lenguaje NOTATION (lisp c) #REQUIRED > <!NOTATION lisp SYSTEM "IEEE "> <!NOTATION png SYSTEM "ISO/IEC 9899:1999"> <programa lenguaje="c"> int fact(int n) { } </programa> if(n==1) return 1; return n*fact(n-1); <programa lenguaje="lisp"> (defun fact (lambda (n) (if (=n 1) 1 (fact (- n 1))))) </programa> Arquitecturas Distribuidas 09/10 50
51 Notaciones en DTD XML Ejemplos de uso: Notación incluída en parámetros <!ELEMENT programa (#PCDATA)> <!ATTLIST programa > lenguaje NOTATION (lisp c) #REQUIRED <!NOTATION lisp SYSTEM "IEEE "> <!NOTATION png SYSTEM "ISO/IEC 9899:1999"> <programa lenguaje="c"> int fact(int n) { } </programa> if(n==1) return 1; return n*fact(n-1); El qué hacer con cada trozo o de código no está determinado (depende de la aplicación final). Lo importante es que la Notación los diferencia! La parte en rojo es #PCDATA <programa lenguaje="lisp"> (defun fact (lambda (n) (if (=n 1) 1 (fact (- n 1))))) </programa> Arquitecturas Distribuidas 09/10 51
52 Notaciones en DTD XML Solución poco portable. La asignación de identificadores es arbitraria. El procesado final de los datos no está prefijado, esto no es problemático, ya que es una característica de XML: cada aplicación que lo usa decide cómo procesar los datos, es decir, interpreta la semántica de los datos según las marcas. Arquitecturas Distribuidas 09/10 52
53 Entidades en DTD XML Son declaraciones abstractas que pueden usarse para definir otras partes de un documento XML (elementos, atributos, etc). Una definición menos formal: Son declaraciones especiales que se cambian por trozos de código. Analogía con macros en lenguaje C: #define CAPACIDAD 200 int a=capacidad; <!entity CAPACIDAD "200"> <p> La capacidad del sistema es de &CAPACIDAD; bits por segundo. Arquitecturas Distribuidas 09/10 53
54 Entidades en DTD XML Según la aplicación, el formato del código y su ubicación eisten existen varios tipos de entidades, cada una se declara con una sintaxis propia. Arquitecturas Distribuidas 09/10 54
55 Entidades en DTD XML Entidades Genéricas: <!ENTITY nombre #PCDATA> Permiten la substitución de una cadena de texto. Ejemplo: <!ENTITY minombre "Pepe Perez"> <p> Oí gritar mi nombre: &minombre; </p> Arquitecturas Distribuidas 09/10 55
56 Entidades en DTD XML Entidades Genéricas: <!ENTITY nombre #PCDATA> Permiten la substitución de una cadena de texto. Ejemplo: <!ENTITY minombre "Pepe Perez"> <p> Oí gritar mi nombre: &minombre; </p> Arquitecturas Distribuidas 09/10 56
57 Entidades en DTD XML Entidades externas genéricas: <!ENTITY nombre (PUBLIC SYSTEM) URL> Permiten la substitución por un texto contenido en una fuente externa. Ejemplo: <!ENTITY minombre SYSTEM "/home/pepe/minombre.txt"> <p> Oí gritar mi nombre: &minombre; </p> Arquitecturas Distribuidas 09/10 57
58 Entidades en DTD XML Entidades parámetro: Las entidades estudiadas hasta ahora ejercían cambios en el contenido del XML. Las entidades parámetro hacen lo mismo PERO EN EL PROPIO DTD Ver ejemplos a continuación. Arquitecturas Distribuidas 09/10 58
59 Entidades en DTD XML Entidades parámetro: <!ENTITY % nombre (CDATA)> Entidades parámetro externas: <!ENTITY % nombre (PUBLIC SYSTEM) URL> Ahora se referencian como: %nombre; <--NO COMO &nombre;--> Arquitecturas Distribuidas 09/10 59
60 Entidades en DTD XML Ejemplo: <!ENTITY % contenidoppal "nombre apellidos direccion"> <!ENTITY % idattr "id ID #REQUIRED"> <!ELEMENT dni (%contenidoppal, datosnacimiento)> <!ATTLIST dni %idattr; tipodni (antiguo nuevo electonico) #REQUIRED nuevo > Esto es como escribir: <!ELEMENT dni (nombre apellidos direccion, datosnacimiento)> <!ATTLIST dni id ID #REQUIRED tipodni (antiguo nuevo electonico) #REQUIRED nuevo > Arquitecturas Distribuidas 09/10 60
61 Instrucciones de Procesado (PI) en DTD XML Son declaraciones especiales cuyo significado depende del procesador del XML: <?instruccion (datos)?> Estan delimitadas por <? y?> Arquitecturas Distribuidas 09/10 61
62 Instrucciones de Procesado (PI) en DTD XML Los procesadores interpretan sólo aquellas PI que conocen: <?instruccion (datos)?> El nombre de la instrucción es cualquier palabra. Los procesadores del XML ejecutarán PI que reconozcan. o ca Los datos son información opcional que se le pasa al procesador. Arquitecturas Distribuidas 09/10 62
63 Instrucciones de Procesado en DTD XML Ejemplo: <hmtl> <?php?> echo "Hola mundo en PHP!<br>\n" </html> La declaración indica que es una orden de PHP. El procesado asociado depende d del navegador: Apache interpretará los datos como un lenguaje de programación. IIS pasará esta orden por alto. Arquitecturas Distribuidas 09/10 63
64 Instrucciones de Procesado en DTD XML Ejemplo: <hmtl> <?php?> echo "Hola mundo en PHP!<br>\n" </html> La declaración indica que es una orden de PHP. El procesado asociado depende d del navegador: Apache interpretará los datos como un lenguaje de programación. IIS pasará esta orden por alto. Arquitecturas Distribuidas 09/10 64
65 Interpretación de un documento XML por un navegador El comportamiento final depende del navegador particular: Al menos debe informar si el documento está bien formado o no. Ejemplo: <?xml version="1.0"?> <a> Hola <b> Prueba </a> </b> Arquitecturas Distribuidas 09/10 65
66 Interpretación de un documento XML por un navegador El comportamiento final depende del navegador particular: Al menos debe informar si el documento está bien formado o no. Ejemplo: <?xml version="1.0"?> <a> <b> </a> </b> Arquitecturas Distribuidas 09/10 66
67 Interpretación de un documento XML por un navegador Ejemplo corregido: <?xml version="1.0"?> <a> Hola <b> Prueba </b> </a> Arquitecturas Distribuidas 09/10 67
68 Interpretación de un documento XML por un navegador Ejemplo corregido: <?xml version="1.0"?> <a> Hola <b> Prueba </b> </a> Si el navegador no sabe interpretar de un modo especial el XML, entonces, simplemente muestra los contenidos de los elementos. Arquitecturas Distribuidas 09/10 68
69 Interpretación de un documento XML por un navegador Si un documento está especificado por su DTD, el navegador debería comprobar e informar si el XML es o no válido. Arquitecturas Distribuidas 09/10 69
70 XHTML HTML es muy poco estricto y coherente en cuanto a la definición de las marcas: etiquetas de cierre opcionales, mayúsculas o minúsculas, comillas en los atributos, etc. XHTML es HTML conforme a las reglas sintácticas de XML Documento debe estar bien formado XHTML hace que los documento sean más fáciles de procesar por una máquina Arquitecturas Distribuidas 09/10 70
71 Arquitecturas Distribuidas 09/10 71
72 Espacios de nombres El mecanismo de los espacios de nombres (namespaces) permite combinar en un mismo documento XML definiciones procedentes de varios tipos de documentos. Un namespace es un grupo de elementos y nombres de atributos. Cada grupo (namespace) se puede especificar y validar con su DTD correspondiente. Arquitecturas Distribuidas 09/10 72
73 Espacios de nombres Ejemplo: XHTML MthML MathML <html> <p> <a> <br> <table> <equation> <mrow> <divide> XML Un navegador aegado que entienda e ambos lenguajes, mostrará correctamente este XML. Arquitecturas Distribuidas 09/10 73
74 Espacios de nombres <?xml version="1.0"?> Ejemplo: <html> <p> el MathML. Este XHTML documento combina dos lenguajes MthML MathML el XHTML y Esto permite cosas <em> muy interesantes </em>. Por ejemplo, escribir la ecuacion: </p> <html> <math> <mrow> <p> <mi> a </mi> <a> <mo> + </mo> <mi> <br> b </mi> <mo> = </mo> <mi> c </mi> </mrow> <table> </math> </html> <equation> <sum> <int> XML Un navegador aegado que entienda e ambos lenguajes, mostrará correctamente este XML. Arquitecturas Distribuidas 09/10 74
75 Espacios de nombres <?xml version="1.0"?> Ejemplo: <html> <p> el MathML. Este XHTML documento combina dos lenguajes MthML MathML el XHTML y Esto permite cosas <em> ESTO muy ES interesantes CORRECTO? </em>. Por ejemplo, escribir la ecuación: NO!, <reln> QUÉ SUCEDE <html> SI DOS ELEMENTOS TIENEN EL <equation> MISMO NOMBRE EN DIFERENTES <eq/> NAMESPACES? <ci>a</ci> <p> <matrix> <a> <sum> <matrixrow> <ci>x</ci> <ci>y</ci> <br> </matrixrow> <int> <matrixrow> <table> <ci>z</ci> <ci>w</ci> </matrixrow> </matrix> </reln> </html> XML Un navegador aegado que entienda e ambos lenguajes, mostrará correctamente este XML. Arquitecturas Distribuidas 09/10 75
76 Espacios de nombres Frutas Colores <manzana> <uva> <melocotón> <rojo> <azul> <verde> <naranja> <naranja> Arquitecturas Distribuidas 09/10 76
77 Espacios de nombres Frutas Coloresu <?xml version="1.0"?> <manzana/> <manzana>... <verde/>... <uva/> <uva> <naranja/> <melocotón> <naranja> <azul> <rojo> <verde> Es un color o una fruta? <naranja> Arquitecturas Distribuidas 09/10 77
78 Espacios de nombres Para evitar ambigüedades los tag se escriben: prefijo_del_namespace:nombre_tag El prefijo indica al interprete cuando conmutar de un lenguaje a otro. Arquitecturas Distribuidas 09/10 78
79 Espacios de nombres Frutas Coloresu <?xml version="1"> <manzana> <fruta:manzana/>... <color:verde/>... <fruta:uva/> <uva> <melocotón> <color:naranja/> <naranja> Un color! <azul> <rojo> <verde> <naranja> Arquitecturas Distribuidas 09/10 79
80 Espacios de nombres Un namespace debe declararse antes de su uso: <elemento xmlns:prefijo="url"> Atributo válido para cualquier elemento. El namespace lo conoceran él y sus descendientes. Lo habitual es declarar los namespace conocidos en la <raíz>. Arquitecturas Distribuidas 09/10 80
81 Espacios de nombres Un namespace debe declararse antes de su uso: <elemento xmlns:prefijo="url"> Prefijo con el que se identificaran los miembros del namespace. Puede ser cualquier palabra. Arquitecturas Distribuidas 09/10 81
82 Espacios de nombres Un namespace debe declararse antes de su uso: se declara en el elemento raíz <elemento xmlns:prefijo="url"> URL con la definición del namespace: su contenido será un DTD o similar. Arquitecturas Distribuidas 09/10 82
83 Espacios de nombres Ejemplo: XHTML MthML MathML <html> <p> <a> <br> <table> <equation> <mrow> <divide> XML VEAMOS LA DEFINICIÓN CÓ CORRECTA Arquitecturas Distribuidas 09/10 83
84 Espacios de nombres <?xml version="1.0"?> Ejemplo: <xhtml:html xmlns:xhtml=" xmlns:math=" > XHTML MthML MathML <xhtml:p> Este documento combina dos lenguajes el XHTML y el MathML. Esto permite <html> cosas <xhtml:em> muy interesantes <equation> </xhtml:em>. Por ejemplo, escribir la ecuacion: </xhtml:p> <p> <a> <br> <table> <math:math> <math:mrow> <math:mi> a </math:mi> <math:mo> + </math:mo> <math:mi> b </math:mi> <math:mo> = </math:mo> <math:mi> c </math:mi> </math:mrow> XML </math:math> </xhtml:html> <int> <sum> Arquitecturas Distribuidas 09/10 84
85 Espacios de nombres <?xml version="1"> Ejemplo: <xhtml:html xmlns:xhtml=" xmlns:math=" > XHTML MthML MathML <xhtml:p> Este documento combina dos lenguajes el XHTML y el MathML. Esto permite <html> cosas <xhtml:em> muy interesantes <equation> </xhtml:em>. Por ejemplo, escribir la ecuación: <a> <p> <math:math> <math:mrow> <br> <math:mi> a </math:mi> <math:mo> + </math:mo> <table> <math:mi> b </math:mi> <math:mo> = </math:mo> <math:mi> c </math:mi> </math:mrow> </math:math> XML </xhtml:html> <int> <sum> Arquitecturas Distribuidas 09/10 85
86 Espacios de nombres Pueden usarse también espacios de nombre por defecto : <elemento xmlns="url"> Sin prefijo Arquitecturas Distribuidas 09/10 86
87 Espacios de nombres Ejemplo: <?xml version="1.0"?> XHTML MthML MathML <xhtml:html xmlns=" <p> Este documento combina dos lenguajes el XHTML y el MathML. Esto permite <html> cosas <em> muy interesantes <equation> </em>. Por ejemplo, escribir la ecuacion: </p> <p> <a> <sum> <math:math xmlns:math=" w3 <br> <math:mi> a </math:mi> <math:mo> + </math:mo> <int> <table> <math:mi> b </math:mi> <math:mo> = </math:mo> <math:mi> c </math:mi> </math:mrow> </math:math> XML </html> SINTAXIS MÁS COMPACTA. Arquitecturas Distribuidas 09/10 87
88 XSCHEMA XML Schema Construcciónalternativa i a los DTD para especificar el formato de un documento XML. Un XSCHEMA es en si mismo un documento XML: usamos XML para definir XML! Arquitecturas Distribuidas 09/10 88
89 XSCHEMA Ventajas sobre DTD: Más legible. Permite especificar el tipo de datos Permite espeficar lenguajes XML que usen namespaces (con DTD es muy complejo). Más posibilidades: A nivel de elementos, por ejemplo: con XSCHEMA podemos indicar que un elemento aparece N veces. A nivel de atributos, por ejemplo: puede especificarse que un atributo es un número, un dígito binario, etc. Arquitecturas Distribuidas 09/10 89
90 XSCHEMA Ejemplo. Dado un XML (notas.xml) para definir notas: <?xml version="1.0"?> <nota> <para>tove</para> <de>jani</de> <asunto>reminder</asunto> <mensaje>don't forget me this weekend!</mensaje> </nota> Arquitecturas Distribuidas 09/10 90
91 XSCHEMA Podemos escribir su DTD (notas.dtd) como: <!ELEMENT nota (para, de, asunto, mensaje)> <!ELEMENT para (#PCDATA)> <!ELEMENT de (#PCDATA)> <!ELEMENT asunto (#PCDATA)> <!ELEMENT mensaje (#PCDATA)> Arquitecturas Distribuidas 09/10 91
92 XSCHEMA La definición alternativa con XSCHEMA sería (notas.xsd): <?xml version="1.0"?> <xs:schema xmlns:xs=" / <xs:element name="note"> <xs:complextype> <xs:sequence> <xs:element name="to" type="xs:string"/> <xs:element name="from" type="xs:string"/> <xs:element name="heading" type="xs:string"/> <xs:element name="body" type="xs:string"/> </xs:sequence> </xs:complextype> </xs:element> </xs:schema> Arquitecturas Distribuidas 09/10 92
93 Lenguajes de estilo y transformación para XML XSL: Lenguaje para crear hojas de estilo para documentos XML. Más complejo que CSS: unos 60 selectores y 250 propiedades!! XSLT: Lenguaje para crear transformaciones en los documentos. XML HTML WML etc Cada transformación usa una hoja XSLT diferente. Arquitecturas Distribuidas 09/10 93
94 Lenguajes de estilo y transformación para XML XPATH: Lenguaje que permite identificar partes de un documento (concepto similar a #enlace_interno en URL). XPOINTER: Lenguaje para definir punteros a puntos o partes de un documento (concepto similar a URL). XLINK Mecanismo de hiperenlaces (mas general que las <a> de HTML). Puede conectar varios objetos en ambas direcciones. i Arquitecturas Distribuidas 09/10 94
95 Referencias y bibliografía Libros: Learning XML, Erik T. Ray, O Reilly, Disponible en: Guía rápida: XML Syntax Quick Reference, Mulberry Technologies, Inc., Arquitecturas Distribuidas 09/10 95
96 Referencias y bibliografía WWW: p// / Página principal p de desarrollo de la tecnología XML xml / Recomendación de XML xml names/ Espacios de nombres Hojas de estilo en XML Arquitecturas Distribuidas 09/10 96
97 Referencias y bibliografía WWW: p// / Página principal p de desarrollo de la tecnología XML xml / Recomendación de XML xml names/ Espacios de nombres Hojas de estilo en XML Arquitecturas Distribuidas 09/10 97
98 Referencias y bibliografía Tutoriales: p// / / Varios tutoriales tecnologías XML p tutorial.html Tutorial en español, con bastantes enlaces Arquitecturas Distribuidas 09/10 98
DTDs Declaraciones de tipo de documentos. Departamento de Informática Universidad de Oviedo
DTDs Declaraciones de tipo de documentos Departamento de Informática Universidad de Oviedo Documento válido Se puede incluir una declaración del tipo de documento
Más detallesLENGUAJE DE MARCAS Y SISTEMAS DE GESTIÓN DE LA INFORMACIÓN - XML
TEMA 2.- DTD (Document Type Definition) 1. DTD DTD es un estándar que nos permite definir una gramática que deben cumplir nuestros documentos XML para considerarlos válidos. Una definición DTD para n documentos
Más detallesTecnología XML. Unidad: 3 Laboratorio de Programación. Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos
Tecnología XML Unidad: 3 Laboratorio de Programación Universidad Nacional de la Patagonia Austral Unidad Académica Río Gallegos Indice Repaso XML DTD Entidades Concepto Tipos Internas Externas Espacio
Más detallesDocumentación Electrónica
Modelado de datos: Document Type Definition (DTD) Ofimática Avanzada Curso 2010/2011 Ofimática Avanzada 2010/2011 2 Ofimática Avanzada 2010/2011 3 1 Introducción XML es flexible, permitiendo a los usuarios
Más detallesXML Bien Formado. <nombre> José </nombre> y también puede ser un elemento el siguiente:
XML Bien Formado Hasta ahora hemos visto por qué XML tiene sentido para la comunicación de datos. Ahora vamos a ver como crear nuestros propios documentos XML. Para crear un documento XML, debemos conocer
Más detallesXML básico. Fundamentos de la Web Semántica. Qué es XML? XML básico. Documento XML. Pablo R. Fillottrani. Entidades. Elementos y Atributos
XML básico XML básico Pablo R. Fillottrani Depto. Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Segundo Cuatrimestre 2013 XML es un acrónimo por extended Markup Language XML es una
Más detallesXML: extensible Markup Language (Parte I) Ingeniería de la Información
XML: extensible Markup Language (Parte I) DTDs Ingeniería de la Información Tabla de Contenidos Introducción histórica XML vs. HTML Características de XML Mi primer documento XML El lenguaje XML Entidades
Más detallesTecnologías XML y Web Semántica. Departamento de Informática Universidad de Oviedo
Tecnologías XML y Web Semántica Departamento de Informática Universidad de Oviedo Sesión 1 Lenguaje XML Departamento de Informática Universidad de Oviedo Esquema de la Sesión (9-11h) Primera parte: Introducción
Más detalles3.1 Tipos de DTDs. ! Si queremos validar un documento XML (para comprobar si cumple las normas de un dialecto) tendremos que validarlo contra el DTD.
3.1 Tipos de DTDs Introducción (I)! El DTD es un documento que nos permite definir un dialecto XML.! DTD " Document Type Definition! Si queremos validar un documento XML (para comprobar si cumple las normas
Más detallesXML, Servicios Web y Web Semántica
XML, Servicios Web y Web Semántica Departamento de Informática Universidad de Oviedo Sesión 2 Lenguaje XML Departamento de Informática Universidad de Oviedo Esquema de la Sesión Introducción a XML Definición
Más detallesElementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
Más detallesUnidad 6: DTD. JJ Taboada León IES San Sebastián, Departamento de Informática LENGUAJE DE MARCAS Y SGI Curso 2011 / 2012
Unidad 6: DTD JJ Taboada León IES San Sebastián, Departamento de Informática LENGUAJE DE MARCAS Y SGI Curso 2011 / 2012 Guíon del tema Qué es un DTD? Declaración de DTD Declaración de Elementos Declaración
Más detallesXML práctico Bases esenciales, conceptos y casos prácticos (2ª edición)
Introducción al lenguaje XML 1. De SGML a XML 17 2. Los conceptos básicos del XML 18 2.1 Recordatorio sobre el HTML 18 2.2 Creación de un primer documento XML 19 2.3 Las ventajas del XML 21 3. La sintaxis
Más detallesValidación de un XML
Validación de un XML 32 Introducción Se dice que un XML está bien formado cuando esta escrito sintácticamente de forma correcta Como se puede validar sintácticamente un XML? Document Type Definition (DTD)
Más detallesTema 4 Metadatos. Eduardo Martínez Graciá Humberto Martínez Barberá
Tema 4 Metadatos Eduardo Martínez Graciá Humberto Martínez Barberá Departamento de Ingeniería de la Información y las Comunicaciones Universidad de Murcia Metadatos Definición: datos sobre datos Fichero:
Más detallesPrimeros pasos con XML y XSL Ricardo Borillo Domenech
Primeros pasos con XML y XSL Ricardo Borillo Domenech Table of Contents 1.Apartadosprincipales...1 2. Introducción al lenguaje de marcas XML... 2 3. Estructura de los documentos: DTDs... 2 3.1. Asociar
Más detallesUNIDAD 1 GENERALIDADES HTML
UNIDAD 1 GENERALIDADES HTML GENERALIDADES HTML5 Una página web es un archivo con texto en el que se insertan diferentes etiquetas HTML, para que ese contenido pueda ser interpretado por el navegador web.
Más detallesLugar: CENTRO DE FORMACIÓN FREMM. Curso de Prácticas?: No Estado: No programado Precio:
LENGUAJE XML LENGUAJE XML Horas: 80 Teoría: 0 Práctica: 0 Presenciales: 80 A Distancia: 0 Acción: Nº Grupo: Código: UF2217 Plan: CURSOS PRÓXIMOS DE RECICLAJE Materia: Certificados de Profesionalidad -
Más detallesPREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA)
PREGUNTAS TIPO (EXAMEN DE OFIMÁTICA AVANZADA) El examen constará de 2 partes. Se evaluará sobre 10 puntos y representará el 60% de la nota final de la asignatura. Para que la calificación en esta prueba
Más detallesPráctica 4 Manejo Avanzado de Bison
Práctica 4 Manejo Avanzado de Bison Tareas 1. Estudia la información sobre trazas en el Capítulo 8 - Depurando Su Analizador del manual de Bison (bison.pdf). 2. Realiza el ejercicio propuesto. 3. Elabora
Más detallesUnidad Didáctica 2. Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones
Unidad Didáctica 2 Elementos básicos del lenguaje Java Tipos, declaraciones, expresiones y asignaciones Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.3 Índice
Más detallesLABORATORIO DE PROCESADORES DE LENGUAJE Curso: Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison
LABORATORIO DE PROCESADORES DE LENGUAJE Curso: 2008-2009 Práctica 2: Analizador léxico/sintáctico/semántico con Flex y Bison Planteamiento del problema En esta práctica se trata de realizar, mediante el
Más detallesIntroducción a XML WEB-SERVICES
Introducción a XML JUAN CARLOS CONDE RAMÍREZ WEB-SERVICES Objetivos Comprender qué es XML. Conocer los antecedentes que hicieron posible la creación de XML. Conocer las ventajas del uso de estándares y
Más detallesIntroducción a XML. Simon Pickin Ingeniería Telemática. Basado en una presentación de M. Carmen Fernández Panadero <mcfp@it.uc3m.
Introducción a XML Simon Pickin Ingeniería Telemática Basado en una presentación de M. Carmen Fernández Panadero Introducción a XML 1 Qué es XML: Un poco de historia Problemas de HTML Extensibilidad
Más detallesÍNDICE CAPÍTULO I AGRADECIMIENTO DEDICATORIA. Página
ÍNDICE AGRADECIMIENTO DEDICATORIA CAPÍTULO I Página 1. INTRODUCCIÓN 1.1. Problemática actual en la Web 2 1.2. El proyecto GNU 3 1.2.1. La Free Software Foundation y el proyecto GNU 3 1.2.2. Software Libre
Más detalles1 Introducción a XML
1 Introducción a XML Introducción (I)! Qué es XML?! Últimamente todo el mundo habla sobre XML!! Dicen que es un lenguaje etiquetado...es decir: Es un lenguaje como HTML, pero con nuevas etiquetas?! Dicen
Más detallesXML (Extensible Markup Language)
José Antonio Echagüe Burgos ja_echague@yahoo.es Tabla de Contenido 1. Lenguajes de marcas - Introducción...1 1.1. HTML...2 2. XML - Introducción...2 3. Estructura y DTD de un documento XML...3 4. Definición
Más detallesESOFT 3 Nice Screen Scraper: A simple scraper
ESOFT 3 Nice Screen Scraper: A simple scraper Héctor López Sacanell hlopez1@alumnes.udl.cat 3 de diciembre de 2009 1. Introducción El objetivo de esta segunda entrega es la de crear una primera versión
Más detallesFundamentos de las tecnologías de la información
Fundamentos de las tecnologías de la información la guerra de los formatos Diego Martín 2016 1 Definiciones W3C HTML CSS XML Introducción histórica HTML vs XML JSON XML vs JSON DTDsy XML SCHEMAs Qué formato
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detallesGUÍA BÁSICA DE SCHEME v.4
Esta guía básica pretende ser una introducción elemental al lenguaje de programación Scheme. Se presenta como una guía de comienzo rápido de tal forma que permita conocer de una forma muy esquemática los
Más detallesextensible Markup Language
extensible Markup Language ISLN ISLN () XML 1 / 26 Librería LWP::Simple Bajarse el archivo de internet Para bajar archivos de internet se puede usar alguno de los módulos del CPAN http://search.cpan.org
Más detallesTema IV. XML II. XML Bien Formado
Tema IV. XML II. XML Bien Formado Desarrollo de Aplicaciones para Internet Curso 12 13 Índice 1.Introducción 2.Componentes XML 3.Reglas de los Elementos 4.Referencias Índice 1.Introducción 2.Componentes
Más detallesPROPIEDADES DE LOS CAMPOS. Cada campo de una tabla dispone de una serie de características que proporcionan un control
PROPIEDADES DE LOS CAMPOS Cada campo de una tabla dispone de una serie de características que proporcionan un control adicional sobre la forma de funcionar del campo. Las propiedades aparecen en la parte
Más detallesXML, DTD y hojas de estilo
XML, DTD y hojas de estilo Introducción XML existe porque HTML ha tenido mucho éxito. Pero con objeto de corresponder a este éxito, se le ha extendido introduciéndose muchas etiquetas nuevas (más de 100
Más detallesUF2217 Lenguaje XML (Online)
TITULACIÓN DE FORMACIÓN CONTINUA BONIFICADA EXPEDIDA POR EL INSTITUTO EUROPEO DE ESTUDIOS EMPRESARIALES UF2217 Lenguaje XML (Online) Duración: 80 horas Precio: 0 * Modalidad: Online * hasta 100 % bonificable
Más detallesDiseño Web Avanzado con HTML5 y CSS3
Diseño Web Avanzado con HTML5 y CSS3 METODOLOGÍA DE LOS CURSOS Cursos interactivos sobre materias especializadas en los que el alumno avanza de forma guiada bajo una concepción learning by doing (aprender
Más detallesLENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52)
LENGUAJES DE PROGRAMACIÓN WEB (PHP1, HTML52) LENGUAJES DE PROGRAMACIÓN WEB (PHP, HTML5) 1 Sesión No. 5 Nombre: Lenguaje de presentación Objetivo: Conocer la importancia de los lenguajes de presentación.
Más detallesIntroducción a XML. Alberto Molina Coballes. Lenguajes de Marcas y Sistemas de Gestión de la Información
Introducción a XML Alberto Molina Coballes Lenguajes de Marcas y Sistemas de Gestión de la Información 18 de septiembre de 2012 Qué es XML? Wikipedia: Es un conjunto de reglas para codificar un documento
Más detallesíndice (1) (2.1) documentos XML bien formados y validación 7 (2.2) validación por DTD 8 (2.3) Validación por XML Schema 22
(3) índice (2.1) documentos XML bien formados y validación 7 (2.2) validación por DTD 8 (2.2.1) introducción 8 (2.2.2) posibilidades de uso de DTD 8 (2.2.3) definiciones en un DTD 10 (2.2.4) elementos
Más detallesLenguaje de Programación
UG C++ C++ Universidad de Guanajuato Sesión 33 Una estructura es un grupo de variables las cuales pueden ser de diferentes tipos sostenidas o mantenidas juntas en una sola unidad. La unidad es la estructura.
Más detallesPrincipios de Computadoras II
Departamento de Ingeniería Electrónica y Computadoras Operadores y Expresiones rcoppo@uns.edu.ar Primer programa en Java 2 Comentarios en Java Comentario tradicional (multi-línea) Comentario de línea Comentario
Más detalles2. Lenguajes de marcado: XML
2. Lenguajes de marcado: XML El lenguaje de marcado XML (extensible Mark-Up Language) 2.2. Marcado de documentos con XML El documento XML Marcado y notación de marca Creación y visualización de documentos
Más detallesXML. Programación en Internet Curso Contenidos
Departamento de Lenguajes y Sistemas Informáticos XML Programación en Internet Curso 2009-2010 Contenidos Introducción Versiones Estructura de un documento Definición de un DTD Validación de un documento
Más detallesDTD (Document Type Definition ) y validación.
DTD y validación Tema 3 APUNTES BÁSICOS DEL TEMA 3 DTD (Document Type Definition ) y validación. Índice de contenido 1.Introducción...2 2.Declaración/definición del DTD...3 2.1.Definición interna...3 2.2.Definición
Más detallesqué es XML? por qué es necesario XML? XML vs. SGML y HTML Hacía la estandarización de los datos
qué es XML? Hacía la estandarización de los datos César Ignacio García Osorio Surgió para superar la complejidad de SGML y la inflexibilidad de HTML. Es un meta lenguaje de etiquetado/marcado que permite
Más detallesPHP: Lenguaje de programación
Francisco J. Martín Mateos Carmen Graciani Diaz Dpto. Ciencias de la Computación e Inteligencia Artificial Universidad de Sevilla Tipos de datos Enteros Con base decimal: 45, -43 Con base octal: 043, -054
Más detallesGRAMATICAS LIBRES DEL CONTEXTO
GRMTICS LIBRES DEL CONTEXTO Estas gramáticas, conocidas también como gramáticas de tipo 2 o gramáticas independientes del contexto, son las que generan los lenguajes libres o independientes del contexto.
Más detallesLaboratorio de Arquitectura de Redes. Entrada y salida estándar
Laboratorio de Arquitectura de Redes Entrada y salida estándar Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato: scanf() El buffer de teclado Entrada
Más detallesLENGUAJES DE MARCAS. Unidad 2. DOCUMENTOS XML.
LENGUAJES DE MARCAS Unidad 2. DOCUMENTOS XML. Índice de contenido 1. El lenguaje de marcas XML 2. XML, HTML, XHTML 3. Estructura del documento XML 4. Codificación de los documentos 5. Elementos 6. Atributos
Más detallesJAVA 7 Los fundamentos del lenguaje Java
Presentación 1. Historia 9 1.1 Por qué Java? 9 1.2 Objetivos del diseño de Java 10 1.3 Auge de Java 11 2. Características de Java 12 2.1 El lenguaje de programación Java 12 2.1.1 Sencillo 13 2.1.2 Orientado
Más detallesAlgoritmos y programas. Algoritmos y Estructuras de Datos I
Algoritmos y programas Algoritmos y Estructuras de Datos I Primer cuatrimestre de 2012 Departamento de Computación - FCEyN - UBA Programación funcional - clase 1 Funciones Simples - Recursión - Tipos de
Más detallesDiseño y desarrollo Web con HTML 5, CSS y Dreamweaver CS 4
Diseño y desarrollo Web con HTML 5, CSS y Dreamweaver CS 4 Código: DWEB003 Duración: 160 Horas Objetivos: Diseño y desarrollo Web con HTML 5 y CSS Dotar al alumno de conocimientos teóricos y prácticos
Más detalles2 Estructura de un Documento XML
2 Estructura de un Documento XML Introducción (I)! Un documento XML contiene texto, nunca datos binarios.! Documento XML Fichero XML! Un documento XML puede estar en un registro de una base de datos,
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesXML y esquemas XML. Servicio de Administración Tributaria
HOJA 1 DE 13 XML y esquemas XML Servicio de Administración Tributaria Id: Nombre: Descripción Autor: Administración Central del Autor Revisor y Aprobador Administración Central del Aprobador Versión Categoría
Más detallesCONTENIDOS DEL CURSO ONLINE DE DISEÑO Y DESARROLLO WEB CON HTML5, CSS Y DREAMWEAVER CS4:
Curso Online Diseño y Desarrollo Web con HTML5, CSS y Dreamweaver CS4 Completo Curso Online de Diseño y Desarrollo Web mediante el lenguaje programación HTML5, la hoja de estilos CSS y el programa de diseño
Más detallesLenguajes y Gramáticas
Lenguajes y Gramáticas Teoría de Lenguajes Fernando Naranjo Introduccion Se desarrollan lenguajes de programación basados en el principio de gramática formal. Se crean maquinas cada vez mas sofisticadas
Más detallesDREAMWEAVER CS4 Código: 3492
DREAMWEAVER CS4 Código: 3492 Modalidad: Distancia Duración: Tipo A Objetivos: Aportar al alumno de un modo rápido y sencillo las competencias necesarias para la creación y diseño de páginas Web en Dreamweaver.
Más detallesTabla de Contenidos. xii
Tabla de contenidos Capítulo 1. Introducción...1 1.1 MOTIVACIÓN...2 1.2 NOVEDADES APORTADAS POR ESTE LIBRO...3 1.3 ESTRUCTURA DE LA OBRA...4 1.4 CONOCIMIENTOS RECOMENDADOS...8 1.5 CONVENCIONES DE ESTILO
Más detallesEstándares SGML y XML. Entornos de aplicación
Índice de contenido Estándares SGML y XML. Entornos de aplicación Estándares SGML y XML. Entornos de aplicación...1 Licencia...1 SGML...1 Introducción...1 Etiquetado...2 Estructura de un documento SGML...2
Más detallesINTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA
APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto
Más detallesInformática I para Bachillerato
CIMAT C++ C/C++ de Datos CIMAT Sesión 15 Una estructura es un grupo de variables las cuales pueden ser de diferentes tipos sostenidas o mantenidas juntas en una sola unidad, a diferencia de los arreglos
Más detallesAnálisis y Diseño de Sistemas de
Análisis y Diseño de Sistemas de Información para Internet 1. Introducción a XML Luís Rodríguez Baena (luis.rodriguez@upsam.net) Universidad Pontificia de Salamanca (campus Madrid) Facultad de Informática
Más detallesTema: Introducción al IDE de Microsoft Visual C#.
Tema: Introducción al IDE de Microsoft Visual C#. Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express mientras crea el formulario más
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesJava Avanzado Facultad de Ingeniería. Escuela de computación.
2 Java Avanzado Facultad de Ingeniería. Escuela de computación. Java Avanzado. Guía 5 3 Introducción Este manual ha sido elaborado para orientar al estudiante de Java Avanzado en el desarrollo de sus prácticas
Más detallesTEMA 35: Estándares SGML y XML. Entornos de aplicación.
Entornos de aplicación TEMA 35: Estándares SGML y. Entornos de aplicación. Índice 1 INTRODUCCIÓN 1 2 SGML 2 2.1 Cómo funciona SGML? 2 2.2 Definición de la sintaxis de un lenguaje SGML 3 2.3 Declaración
Más detallesOperaciones básicas con hojas de cálculo
Operaciones básicas con hojas de cálculo Insertar hojas de cálculo. Para insertar rápidamente una hoja de cálculo nueva al final de las hojas de cálculo existentes, haga clic en la ficha Insertar hoja
Más detallesXML. María Consuelo Franky. Universidad Javeriana 2009
XML María Consuelo Franky Universidad Javeriana 2009 1 XML: meta-lenguaje para definir lenguajes de etiquetas 2 Origen de XML SGML: Standard Generalized Markup Language: demasiado complejo para definir
Más detallesIngeniería de Aplicaciones Web
Ingeniería de Aplicaciones Web Clase 3 Diego C. Martínez Departamento de Ciencias e Ingeniería de la Computación Universidad Nacional del Sur Protocolo HTTP HTTP (Hypertext Transfer Protocol) es el protocolo
Más detallesInstituto Tecnológico de Celaya
CADENAS DE CARACTERES Hasta ahora se han manejado variables de tipo caracter cuyo valor es un sólo caracter. En algunos casos, sin embargo, es necesario usar variables cuyos valores sean un conjunto (cadena)
Más detallesLÍNEAS SEPARADORAS. ETIQUETA <HR>. COMENTARIOS EN HTML. ATRIBUTOS SIZE, WIDTH, NOSHADE (DEPRECATED). EJEMPLOS (CU00716B)
APRENDERAPROGRAMAR.COM LÍNEAS SEPARADORAS. ETIQUETA . COMENTARIOS EN HTML. ATRIBUTOS SIZE, WIDTH, NOSHADE (DEPRECATED). EJEMPLOS (CU00716B) Sección: Cursos Categoría: Tutorial básico del programador
Más detallesFecha de edición: Septiembre 2005
XML!"#$ % #&'()* Fecha de edición: Septiembre 2005 Índice Índice...2 Lenguaje de Marcas...4 HTML...4 XML...5 Un Documento XML...6 Prologo...7 Declaración de XML...7 Comentarios...7 Instrucciones de procesamiento...7
Más detallesAprender a desarrollar con JavaScript
Presentación del lenguaje JavaScript 1. Definición e histórico rápido 11 2. Requisitos previos para un aprendizaje sencillo del lenguaje 13 3. Herramientas necesarias 14 4. Posicionamiento de JavaScript
Más detallesTEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Más detallesUniversidad de Managua
Universidad de Managua Introducción a la Programación Tema 7 Introducción a la programación en lenguaje C# Objetivos - Describir la estructura básica de un programa en Lenguaje C# - Explicar las estructuras
Más detallesInformática Ingeniería en Electrónica y Automática Industrial
Informática Ingeniería en Electrónica y Automática Industrial Entrada y salida estándar V1.3 Autores Entrada y salida estándar Entradas y salidas Salida con formato: printf() Entrada de datos con formato:
Más detallesGUÍA DE ESTILO EN JAVA
GUÍA DE ESTILO EN JAVA Formato de líneas 1. No usar más de 80 caracteres por línea (imagen de tarjeta). De esta forma se pueden visualizar las líneas completas con un editor de texto o en una hoja impresa
Más detallesTEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso 2010/2011
TEMA 2 Introducción a C# ANÁLISIS Y DESARROLLO DE APLICACIONES INFORMÁTICAS Curso Origen Nuevo lenguaje de propósito general de Microsoft para la plataforma.net Es el único que ha sido diseñado específicamente.net
Más detallesMANUAL DE RUBY (PARTE I) Luis José Sánchez González
MANUAL DE RUBY (PARTE I) Luis José Sánchez González 1. QUÉ ES RUBY? Ruby es un lenguaje de programación interpretado y orientado a objetos muy potente y al mismo tiempo muy sencillo. Para apreciar la extrema
Más detallesXML. Introducción. Cómo se usa? XML Tree. Sintaxis XML
XML Introducción XML(eXtensible Markup Language) es un lenguaje de etiquetas. Hay que tener en cuenta que no es un lenguaje de programación y como tal no ejecuta instrucciones, XML se creó para estructurar,
Más detallesMASTER PROFESIONAL C# 5 Y ASP.NET MVC 5
MASTER PROFESIONAL C# 5 Y ASP.NET MVC 5 TEMARIO MODULO I. EL LENGUAJE C# 5 Introducción al desarrollo de soluciones informáticas. El Framework.NET. o Descripción de la plataforma. o Las especificaciones
Más detallesEl lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
Más detallesIngeniería Web. Navegadores Web. Fernando Barraza A.
Ingeniería Web Navegadores Web Fernando Barraza A. fbarraza@javerianacali.edu.co Que es un navegador Un navegador, navegador red o navegador web (del inglés, web browser) es una aplicación de software
Más detallesTrabajo Final de Carrera - Compiladores
Trabajo Final de Carrera - Compiladores Enrique Marquet Durán Ingeniería en Informática Gerard Enrique Manonellas 09/01/2015 Resumen del proyecto El objetivo de este proyecto final de carrera es el estudio
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesDISEÑO Y DESARROLLO WEB CON HTML 5, CSS DREAMWEAVER CS4
DISEÑO Y DESARROLLO WEB CON HTML 5, CSS DREAMWEAVER CS4 Código: 1413005 OBJETIVOS: Para diseñar y publicar una página Web, saber maquetar una página Web, saber crear animaciones, etc. CONTENIDOS: DISEÑO
Más detallesFormalización: Qué dejamos fuera?
Formalización: Qué dejamos fuera? Sólo consideramos atributos de tipo CDATA y requisito #REQUIRED. Las listas de valores y atributos con requisito #IMPLIED o #FIXED pueden ser representados usando las
Más detallesSENA Distrito Capital Centro de Electricidad, Electrónica y Telecomunicaciones ADSI - Ing. Espec. Javier Vaquiro
SENA Distrito Capital Centro de Electricidad, Electrónica y Telecomunicaciones ADSI - Ing. Espec. Javier Vaquiro 1. Sintaxis básica 2. Tipos de datos 3. Variables 4. Constantes 5. Expresiones y operadores
Más detallesPROGRAMACION EN INTERNET
PROGRAMACION EN INTERNET FREDYS SIMANCA HERRERA fredyssimanca@hotmail.com La programación en Internet, es una asignatura que exige al estudiante el conocimiento previo de lógica de programación, manejo
Más detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesMétodos que devuelven valor Dado el siguiente triángulo rectángulo:
Métodos que devuelven valor Dado el siguiente triángulo rectángulo: hipotenusa altura base Para dibujar este triángulo necesitamos los siguientes datos: base y altura La base y la altura, se utilizarán
Más detallesDocumentos XML bien formados
Documentos XML bien formados En los Unidades anteriores ya hemos visto de forma generalizada que una de las características que diferencian al XML del SGML es la posibilidad de no utilizar DTD. En una
Más detallesXML y Bases de datos Modelado de datos XML usando DTDs
XML y Bases de datos Modelado de datos XML usando DTDs Amparo López Gaona Agosto 2008 Amparo López Gaona () XML y Bases de datos Modelado de datos XML usando DTDs Agosto 2008 1 / 52 Documentos bien formados
Más detallesExterior del algoritmo. Entorno. Usuario. Procesador. Escribir. v1 v2 v3. Leer. <acción> {; <acción>}
Bloque II. 2. Objetos y acciones elementales Bloque II. 2. Objetos y acciones elementales Objetivos: Familiarizarse con conceptos de entorno, objeto y tipo Entender qué significa que un objeto sea de un
Más detallesSICRES 3.0 Presentación Ejecutiva
Presentación Ejecutiva 1 Antecedentes: El estándar SICRES 2.0 es una norma para el intercambio de asientos registrales aprobada en 1999 por el entonces Consejo Superior de Informática (actualmente Consejo
Más detallesLos nombres y marcas comerciales mencionados en este manual son propiedad de sus respectivos autores o fabricantes.
Para aportes y sugerencias puede escribir al correo del autor: thenewinquirer01@gmail.com Los nombres y marcas comerciales mencionados en este manual son propiedad de sus respectivos autores o fabricantes.
Más detallesContenido. Complemento Donatarias
Contenido Complemento Donatarias 1. Estándar del Complemento Donatarias 2. Secuencia de Elementos a Integrar en la Cadena Original 3. del Complemento Donatarias 1. Estándar del Complemento Donatarias Elementos
Más detalles