La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

La alternativa: Introducción a XML Eduardo Peis Universidad de Granada

Presentaciones similares


Presentación del tema: "La alternativa: Introducción a XML Eduardo Peis Universidad de Granada"— Transcripción de la presentación:

1 La alternativa: Introducción a XML Eduardo Peis Universidad de Granada
09/12/2018

2 1. Resumen SGML 09/12/2018

3 SGML: sintaxis básica (1) modelo de documento
declaración SGML <!SGML “ISO 8879:1986” charset baseset “ISO //charset International Reference Version (IRV)//ESC 2/5 4/0”> <!DOCTYPE biblioteca system “c:/sgml/biblioteca.dtd”> <biblioteca>  <!-- comienzo del registro de un libro --> <libro> <titulo>Los corsarios vacilantes</titulo> <autor>Pompeyo Mañas < >pomp.mcu.es</ > </autor> <editorial>Labor</editorial> <cubierta tipo=”blanda”></cubierta> <categoría clase=”noficción”></categoría> <isbn> </isbn> <nota número=”5”></nota> <comentarios>Libro reservado</comentarios> </libro> <!– más registros aquí --> </biblioteca> tipo de documento entidad de sistema contenido (#PCDATA) comentarios SGML elementos referencia de entidad atributos 09/12/2018

4 SGML: sintaxis básica (2) DTD –Document Type Definition-
<!DOCTYPE biblioteca [ “.”> <!ELEMENT biblioteca - - (libro+)> <!ELEMENT libro – O (título, autor+, editorial, cubierta, categoría, isbn, nota, comentarios?)> <!ELEMENT título – O (#PCDATA)> <!ELEMENT autor – O (#PCDATA, )> <!ELEMENT – O (#PCDATA)> <!ELEMENT editorial – O (#PCDATA)> <!ELEMENT cubierta – O EMPTY> <!ATTLIST cubierta tipo (blanda | dura) “blanda”> <!ELEMENT categoría – O EMPTY> <!ATTLIST categoría clase (ficción | fantasía | cficción | misterio | terror | noficción | histórico | biografía) “ficción” > <!ELEMENT isbn – O (#PCDATA)> <!ELEMENT nota – O EMPTY> <!ATTLIST nota número (1 | 2 | 3 | 4 | 5) #REQUIRED> <!ELEMENT comentarios – O (#PCDATA)> ]> declaración de tipo de documento declaraciones de elementos declaraciones de listas de atributos declaración de entidad 09/12/2018

5 SGML: sintaxis básica (2.1) declaración de elementos
<!ELEMENT libro – O (título, autor+, editorial, cubierta, categoría, isbn, nota, comentarios?)> reglas de minimización modelo de contenido conectores identificador genérico clave SGML Indicadores de aparición EMPTY elemento vacío #PCDATA cualquier cadena de caracteres en cualquier orden & o uno o el otro | ambos y en ese orden , conectores Opcional y repetible (0 o más veces) * opcional (0 o 1 vez) ? necesario y repetible (1 o más veces) + indicadores de aparición minimización opcional o obligatoria etiqueta - 1ª posición etiqueta inicio 2ª posición etiqueta fin claves SGML para modelos de contenido 09/12/2018

6 SGML: sintaxis básica (2.2) declaraciones de lista de atributos
nombre de atributo valor de atributo <nombre nacionalidad=“SP” sexo=“V”>Eduardo Peis</nombre> elemento al que cualifican posibles valores AttrType valor por defecto Default nombre de atributo AttrName <!ATTLIST nombre nacionalidad (AU | AS | BG |…| SP | NZ) “SP” sexo (V | H) #REQUIRED> caracteres numéricos cualquier cadena de caracteres datos de caracteres no analizables puntero a algún otro elemento identificador único NUMBER NMTOKEN CDATA IDREF ID especificado default último especificado #CURRENT opcional #IMPLIED obligatorio #REQUIRED 09/12/2018

7 SGML: sintaxis básica (2.3) declaraciones de entidades
<!DOCTYPE texto [ <!ENTITY lfp “liga de fútbol profesional”> ]> <texto>el hecho fue estudiado por la &lfp; en previsión de posibles sanciones</texto> entidad general interna <!ENTITY miscosas SYSTEM “ general externa analizada <!ENTITY logo SYSTEM “ no analizada “.”> de carácter <!DOCTYPE texto [ <!ENTITY % elemento-epr “<!ELEMENT epr (#PCDATA)>”> %elemento-epr; ]> de parámetro " &apos; > < & & entidades predefinidas 09/12/2018

8 SGML: software Parsers analizadores Editores / procesadores
Formateadores Conversores Gestión de datos Es tal la potencialidad de SGML que no es posible su explotación con el software de red disponible en la actualidad 09/12/2018

9 2. La alternativa: XML 09/12/2018

10 SGML SGML SGML XML HTML EAD CDF MathML CDF EAD MathML HTML HTML
09/12/2018

11 El usurpador: HTML HTML es, en realidad, un DTD SGML Problemas:
Define más la presentación que el contenido Escasas flexibilidad y extensibilidad No es fácilmente procesable por “máquinas” Problemas de internacionalización Estructura caótica Interpretación ambigua según el software Sólo tiene un uso: páginas Web La convergencia: XHTML 09/12/2018

12 HTML XML <table> <tr> <td>título</td>
<td>autor</td> <td>precio</td> </tr> <tr> <td>Pensar</td> <td>B. Ortega</td> <td>42</td> <td>La leña</td> <td>M. Lao</td> <td>53</td> </table> <libros> <libro> <titulo>título</titulo> <autor>autor</autor> <precio>precio</precio> </libro> <libro> <titulo>Pensar</titulo> <autor>B. Oña</autor> <precio>42</precio> <titulo>La leña</titulo> <autor>M. Lao</autor> <precio>53</precio> 09/12/2018

13 Principales diferencias SGML/XML
Documentos XML well formed: sin DTD Instrucciones de procesamiento Declaraciones de elementos. Modelos de contenido: Conector “&” no permitido Prohibidas las “exception” No se utilizan los indicadores de minimización. Uso generalizado de elementos vacíos Secciones “cdata” Notation declarations Los espacios en blanco, cambios de línea o “retornos” son significativos <?xml version=“1.0” encoding=“ISO ” standalone=“yes”?> <Elemento_ASP> <![CDATA[ <FORM ACTION=“<% = Request (“SCRIPT_NAME”) %>” METHOD=“POST”> ]]> </Elemento_ASP> <!NOTATION GIF SYSTEM “Iexplore.exe”> 09/12/2018

14 Documentos XML: (1) Well-Formed
Cumplen estrictamente la especificación (Versión 1.0) Estructura jerárquica de los elementos Estrictamente jerárquica (árbol) Correctamente anidados No superposición Sólo un elemento raiz Etiquetas Siempre etiquetas de inicio y de fin “Case-sensitive” Comienzo de GI’s: Un carácter alfabético no acentuado Signo de “subrayado” o “guión bajo” Sin espacios Elementos “vacíos”: sintaxis especial <img src=“….”/> Atributos Valor de atributo entre comillas dobles (“) o simples (‘) 09/12/2018

15 buena formación (well formed XML document)
un elemento raiz etiquetas de principio y de final etiquetas vacías <nombre /> anidados correctos valores de atributos entre comillas distinción entre mayúsculas o minúsculas (se pueden usar ambas, pero XML distingue entre ambas) caracteres admisibles (todos los nombres de las etiquetas y atributos deben empezar siempre con un carácter alfabético no acentuado o con el signo “subrayado” o “guión bajo” y no pueden contener ningún espacio). 09/12/2018

16 instrucciones de procesamiento
<? Nombre_de_aplicación instrucciones_para_la_aplicación ?> declaración XML <?xml version=“1.0” encoding=“ISO ” ?> standalone <?xml version=“1.0” encoding=“ISO ” standalone=“yes” ?> yes (DTD interno) no (DTD externo o referencia externa a entidades) 09/12/2018

17 secciones CDATA <Pelicula> Tom & Jerry </Pelicula> .....
<Elemento_ASP> <FORM ACTION=“<% = Request (“SCRIPT_NAME”) %>”METHOD=“POST”> </Elemento_ASP> <Pelicula><! [CDATA[ Tom & Jerry ]]></Pelicula> ..... <Elemento_ASP> <! [CDATA[<FORM ACTION=“<% = Request (“SCRIPT_NAME”) %>”METHOD=“POST”>]]> </Elemento_ASP> 09/12/2018

18 referencia de entidades
Carácter Referencia textual Referencia numérica < < > > & & & &apos; ' " " 09/12/2018

19 referencia de entidades
<COMENTARIO> El siguiente código es legal: <Película> Tom & Jerry </Película> </COMENTARIO> Comentarios <!-- Este texto es un comentario -- > <!-- Esto es un–comentario–permitido -- > <!-- Esto es un --comentario--no permitido -- > 09/12/2018

20 Documentos XML: (2) Validación y definición
XML well formed + DTD = valid XML XML Schemas Sintaxis XML Tipos de datos asociados a elementos (validación de contenido) Modelo de datos abierto: vocabularios extensibles relaciones de herencia integración de Namespaces Combinación lógica de atributos <Schema xmlns=“urn:schemas-microsoft-com:xml-data” xmlns:dt=“urn:schemas-microsoft-com:datatypes”> <AttributeType name=“id” dt:type=“string” required=“yes” /> <ElementType name=“nombre” content=“textOnly” /> <ElementType name=“persona” content=“mixed” /> <attribute type=“id” /> <element type=“nombre” /> </ElementType> <ElementType name=“documento” content=“eltOnly”> <element type=“persona” /> </Schema> 09/12/2018

21 3. Recursos 09/12/2018

22 Tan sólo algunos recursos
Goldfarb, C.; Prescod, P. (1999) Manual de XML. Madrid [etc.]: Prentice Hall Traducción del manual de Goldfarb Web del World Wide Web Consortium, donde se desarrollan, se oficializan y se distribuyen las especificaciones El “sitio” por excelencia Recursos para desarrolladores. Contiene la especificación XML 1.0 comentada por Tim Bray Borradores, tecnologías descargables, tutoriales… Buenos tutoriales, herramientas y demos Enlaces a herramientas XML 09/12/2018


Descargar ppt "La alternativa: Introducción a XML Eduardo Peis Universidad de Granada"

Presentaciones similares


Anuncios Google