Your SlideShare is downloading. ×
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
8 Xml
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

8 Xml

1,309

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,309
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
45
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • XML Concepts Way back in the pre-Web days, SGML (Standard Generalized Markup Language) stood as a powerful metalanguage, used for the creation of technical documentation. Seeking a means to deliver document management markup over the Web, it only made sense to look to SGML. But SGML is complicated, and early Web markup needed to be streamlined. So HTML was developed from SGML, but in a very simplistic way. That simplicity ended quickly due to the rapid evolution of new tags that departed from basic markup and entered into the realm of presentation. As a result, HTML in its present form has problems and limitations. It has a fixed set of tags that hold no meaning about the data they contain, and browser tolerances for nonstandard coding do nothing to discourage sloppy coding practices. To make up for these problems, developers decided to revisit the original intelligent structure of SGML to look for highly structured solutions to HTML's problem. Out of this re-examination emerged XML, which has most of the power of SGML but without its complexities. XML, eXtensible Markup Language, really isn't a markup language. It's a Metalanguage meaning it's a language, or more specifically, a set of syntax rules and guidelines, used to create markup languages. XML is all about the data. After all, it's the data that is important. There's nothing in XML to allow you to format the data, it's about describing and structuring documents. To write an XML document, you need to do nothing more than create an ASCII text file. This can be done with any text editor, such as Windows Notepad. To view an XML document, you just load the file into a browser with XML parsing capabilities, such as Mozilla or IE5. For our purposes, IE5 will work just fine since more people have it. When you view your data, you'll notice that it's just that—data. There is no style involved in XML itself. To style your data for presentation, you can use a styling language, like CSS, or another XML-based application like XSL (eXtensible Style Language) or XSLT (XSL Transformations). Separating the style markups from your data structure means you can maintain the integrity of your data. This is a core issue with XML, and one I'll look at more closely in a follow-up article.
  • Transcript

    • 1. Fundamentos de XML e – logistics 2007 Eduard Rodés
    • 2.
      • HTML se desarrolló a partir del SGML, pero de una forma simplificada.
      • Tiene un conjunto de etiquetas fijas que no mantienen ninguna relación con los datos que contienen.
      • La permisividad de los navegadores para codificaciones no estándar facilita la práctica de sistemas dispersos.
    • 3.
      • Para tratar de solventar estos problemas los desarrolladores decidieron revisar la estructura inicial de SGML para buscar soluciones más estructuradas para el HTML.
      • Como consecuencia de este análisis surgió el XML, que tiene gran parte de la potencia de SGML pero sin su complejidad. Los trabajos se iniciaron en Junio de 1996 y finalizaron con la recomendación W3C XML 1.0 (www.w3c.org) , publicada en Febrero de 1998 y revisada en Octubre de 2000.
    • 4.
      • El XML, eXtensible Markup Language (lenguaje extensible de marca), no es en realidad un lenguaje de marca. Es un Metalenguaje en el sentido de que es un lenguaje, o más específicamente un conjunto de reglas sintácticas y de guías de uso utilizadas para crear lenguajes de marca.El XML está vinculado con los datos y no con su formato.
      • Para escribir un documento XML no se necesita nada más que crear un fichero ASCII de texto. Esto se puede hacer con cualquier editor de textos. Para visualizar el documento es necesario utilizar un navegador que soporte XML (IE6)
    • 5.
      • XML no incluye opciones de estilo en si mismo. Para dar formato a los datos para su presentación se pueden utilizar hojas de estilo como CSS u otras aplicaciones basadas en XML como XSL (eXtensible Style Language) o XSLT (XSL Transformations).La separación entre las marcas de estilo y la estructura de los datos permite mantener la integridad de los datos. Este es uno de los elementos básicos de XML
    • 6. Sintaxis XML : Elementos y etiquetas   Las etiquetas son los códigos de marcado identificados por los símbolos < y >. Un elemento en el resultado de la pareja de etiquetas y su contenido, por ejemplo::<h1>Líneas regulares</h1>. Toda la línea se considera el elemento <h1>, &quot;h1&quot; es el nombre del elemento, y todo desde la etiqueta de inicio hasta la etiqueta final se considera el contenido del elemento, en este caso “Lineas regulares”. Esta distinción es importante ya que en XML no sólo se le da nombre a las etiquetas sino que también se define lo que las etiquetas contienen.
    • 7.
      • Si bien tu creas tu propio conjunto de etiquetas de marca el “vocabulario” de tu nuevo lenguaje de marca tiene sus elementos sujetos a un orden.Cuando se escribe un lenguajes de marca hay una estructura jerárquica conforme a la que los datos se estructuran, que secuencia tienen y que contienen.
    • 8. Dar nombre a las etiquetas   Se les asignarán nombre con significado. Se escogerá una palabra que describa claramente los datos. En la práctica no hay ningún límite de longitud para los nombres, pero como más largos sean, más pesado serán los documentos que se generen y más se tendrá que escribir. Hay algunas reglas básicas para asignar los nombre: XML es sensitivo a mayúsculas/minúsculas. Los nombres de elementos pueden empezar con una letra o un subrayado (_). Tras el primer carácter, los nombre de elementos pueden contener letras, números, puntos (.), guiones (-), subrayados (_) o dos puntos (:).
    • 9. Los nombre de elementos no pueden tener espacios en blanco. Los nombres de elementos no pueden empezar con “XML” o cualquier variación de estas letras, que se reservan para el World Wide Web Consortium (W3C).
    • 10.
      • Atributos XML
      • Los atributos se utilizan para describir los elementos. Si los elementos están relacionados con el nombre, piensa en los atributos como adjetivos que modifican el nombre. Los atributos se escriben en la etiqueta inicial con el nombre del atributo seguido con un signo igual (=) y un valor asigado al atributo. Un ejemplo HTML sería <hr width=&quot;50%&quot;>. Esta etiqueta le dice al navegador que ponga una línea horizontal en la página. Las reglas para dar nombre a los atributos es la misma que la que se aplica a los nombres. Adicionalmente una etiqueta no puede tener dos atributos con el mismo nombre.
    • 11. Este es un ejemplo de un elemento con un atributo: <escala numero_escala=“200210007&quot;> A menudo se plantea la cuestión de si algo debe ser un sub-elemento o un atributo. No hay una regla que diga si debe ser de una manera o de otra, pero una buena forma que puede ayudar a decidir es conocer su función. Normalmente el contenido de los elementos se supone que son datos que se mostrarán por pantalla. Los atributos son normalmente informaciones sobre los datos: Esto quiere decir que la información es más importante para el analizador que para el que lee los datos por lo que no se muestran en pantalla.
    • 12. Por que XML?   Uno de los atractivos de XML es que permite crear tus propias etiquetas para tus datos. Varias empresas y asociaciones trabajan de forma conjunta para crear grupos de etiquetas unificadas para sus sectores que faciliten la compatibilidad en la estructura de los datos para intercambio de datos. XML también permite construir lenguajes más robustos o mejoras en los antiguos como en el caso de HTML que se ha redefinido a XHTML.
    • 13. Por que XML?   Siempre que se trate de datos cada autor puede crear un conjunto de etiquetas que satisfagan sus necesidades. Como habrás visto la primera aproximación al XML es identificar y organizar los datos. Esto es muy distinto de HTML donde los diseñadores empiezan una página web como una hoja en blanco y “pintan” los datos donde les pareced. Recuerda que XML se refiere a los datos. Otros de los temas que veremos es como se pueden utilizar el conjunto de etiquetas y como darles formato para su presentación
    • 14.
      • Documentos XML bien formados
      • Para tener un documento XML escrito de forma correcta o bien formado ha de seguir una serie de reglas:
      • El documento debe comenzar con una declaración XML que lo identifique como un documento XML.
      • Un documento XML sólo puede tener un elemento raíz.
      • Todos los elementos no vacíos han de tener una etiqueta de inicio y una etiqueta de fin.
      • Un elemento vacío se termina con una barra invertida que precede a la marca “>” de la etiqueta.
      • Las etiquetas se pueden anidar pero no se pueden sobreponer.
      • Todos los valores de atributos deben ir entrecomillados.
    • 15. La declaración XML Cuando se escribe un documento XML debe incluirse la declaración XML al principio del documento:   <?xml version=&quot;1.0&quot;?>   Los signos <? y ?> son los símbolos de inicio y final que marcan que el elemento es una instrucción de proceso. La versión es un atributo obligatorio y la 1.0 es la versión actual en uso.
    • 16. Un único elemento raíz Los documentos XML sólo pueden tener un elemento raíz. Un ejemplo familiar lo encontramos en el XHTML, que es una aplicación de XML. En este caso el elemento raíz es la etiqueta <HTML>. El elemento raíz sólo puede aparecer una vez en el documento. El resto del contenido de la página debe estar incluido dentro de este elemento.
    • 17. Cerrar todos los elementos no vacíos En HTML mucha gente inserta etiquetas <p> para empezar un nuevo párrafo sin cerrarlo con la etiqueta </p>. Aunque en HTML esto se acepta , en XML, un elemento no vacío debe empezar y acabar con una etiqueta de inicio y otra de final respectivamente.  
    • 18. Final de etiquetas vacías No todos los elementos tienen contenido. Por ejemplo el valor <br> de HTML se considera vacío. Los elementos vacíos de HTML no usan una etiqueta de final porque no hay ningún contenido que incluir. Pero XML requiere utilizar algún indicador que exprese que el elemento está completo. La forma de lograrlo en XML es insertar una barra de división precediendo el símbolo “>”, por ejemplo <br/>. Sin embargo algunos navegadores pueden tener dificultades leyendo el elemento a continuación del signo /, por lo que está permitido y es recomendable cuando se escriban documentos para publicarlos en navegadores poner un espacio entre el nombre del elemento y la barra : <br />.  
    • 19. Simetría de anidado El contenido de un elemento puede contener otros elementos. Pero se deben cerrar todas las etiquetas de inicio con sus correspondientes etiquetas de final en orden inverso al que se abrieron (la primera abierta, la última que se cierra).   Un ejemplo incorrecto:   <Nombre> <apellido>El Soussy<nombre_propio> </apellido>Merehan</Nombre> </nombre_propio>    Un ejemplo bien formado:   <nombre> <apellido>El Soussy</apellido> <nombre_propio>Merehan</nombre_propio> </nombre>
    • 20. Valores de los atributos entrecomillados A diferencia de los atributos de HTML, los valores de los atributos en XML deben ir entrecomillados, bien por comillas sencillas bien por doble comilla.   Atributo sin comillas incorrecto: <table width=400>   Atributo con comillas correcto: <table width=&quot;400&quot;> o <table width='400'>  
    • 21. Entidades de caracter Cuando el analizador XML encuentra ciertos caracteres como los símbolos < y >, los interpreta como instrucciones. Por lo tanto para utilizar dichos símbolos en el contenido del texto hay que utilizar su entidad de referencia. Casi todos los desarrolladores de HTML están familiarizados con la entidad de los espacio sin ruptura, &nbsp;. En XML, sólo se ha predefinido cinco entidades de carácter:   &gt; > mayor que &lt; < menor que &amp; & ampersand &apos; ' apóstrofe &quot; &quot; doble comilla
    • 22. Ejemplo de un documento XML bien formado   <?xml version=&quot;1.0&quot; standalone=&quot;yes&quot;?> < libreta_direcciones > < lista > <n ombre > < apellido > El Soussy </ apellido > < nombre_propio > Merehan </ nombre_propio > </ nombre > < direccion > < calle >Palestinian Gardens</ calle > <ci udad >Alexandria</ci udad > < pais >EG</ pais > < cod_postal >90210</ cod_postal > </ direccion > </list a > </ libreta_direcciones >
    • 23. DTD’s
    • 24. En una DTD definimos todos los aspectos de cómo se deben utilizar un conjunto de etiquetas. También definimos los elementos disponibles, en que secuencia deben aparecer, con que frecuencia se deben utilizar, la anidación de elementos y los atributos que pueden tener. Definiendo la DTD se tiene el control último respecto al la flexibilidad o rigidez de las reglas que gobiernan el uso del conjunto de etiquetas. Lo único que una DTD comprueba es si los datos que se analizan son completos. Por ejemplo se puede indicar que el elemento year contenga datos, pero una DTD no puede requerir que sea un número de cuatro dígitos.
    • 25. Declaración de elementos Cada elemento y su forma de utilización se tienen que declarar. La formula para declarar elementos es la siguiente: <!ELEMENT   nombreElemento   contenidoElemento > Cada elemento que se utilice en un documento XML válido debe ser declarado en la DTD. Si no se declara no se puede utilizar. En esta declaración de elemento, nombreElemento es el nombre del elemento, y contenidoElemento indica los contenidos que el elemento puede contener: ANY Indica que este elemento puede contener cualquier combinación de elementos o datos EMPTY Indica que el elemento no contiene elementos ni datos (#PCDATA) Indica que este elemento contiene datos de carácter ( parsed character data ).
    • 26. Para indicar que un elemento puede contener otros elementos simplemente se deben listar los sub-elementos en el orden que deben aparecer. Se utilizan dos símbolos que se pueden usar para separar los sub-elementos: , (coma) Cada elemento va a continuación del anterior elemento. | ( barra vertical) Se puede utilizar cualquiera de los elementos.
    • 27. También podemos indicar el número de veces que un elemento puede aparecer en un documento: Coloca el indicador de frecuencia después del nombre del elemento indicado en el área contenidoElemento :      ( sin indicador ) El elemento debe aparecer una única vez. ? ( interrogante ) El elemento es opcional y puede aparecer o no aparecer. + ( signo positivo ) El elemento puede aparecer una o más veces . * ( asterisco ) El elemento puede aparecer cualquier número de veces o ninguna.
    • 28. Declaración de atributos Igual que con los elementos, cada atributo se tiene que definir. El listado de elementos de un atributo debe definirse fuera de la declaración del elemento; cada uno con su propia declaración: <!ATTLIST   nombreElemento   nombreAtributo   tipo   valorDefecto > nombreElemento es el elemento que contiene el atributo, y el nombreAtributo es el nombre del atributo. Auto explicativo. Veremos dos tipos usuales. Un atributo definido como tipo CDATA contiene simplemento datos de caracter . Esto es parecido a un elemento PCDATA excepto que en un atributo el valor no se analiza . El otro tipo es actualmente una lista de posibles valores que se pueden utilizar con un atributo. Por ejemplo la etiqueta HTML <hr> y su atributo align que puede contener únicamente los valores left , right , o center . Si tuviéramos que escribir la declaración de atributos para esta etiqueta, su tipo deberia escribirse de la siguiente forma: (left|right|center) .
    • 29. Para finalizar la declaración del elemento valorDefecto puede ser el valor por defecto –si el atributo no se especifica explicitamente cuando se usa el elemento- o es un volor por defecto indicado mediante una keyword que indicará el uso del atributo. Generalmente se utiliza una Keyword cuando no se tiene un valor específico para indicarlo por defecto. Hay tres keywords posibles: #REQUIRED El atributo debe utilizarse en el elemento . #IMPLIED El atributo no es necesario. #FIXED “ valor “ Aunque el atributo no se utilice explícitamente, el elemento tendrá un valor fijo por defecto y no se puede cambiar .
    • 30. <!ELEMENT libreta_direcciones (list ado +) > <!ELEMENT list ado ( nombre , direccion ) > <!ELEMENT nombre ( apellido , nombre_propio ) > <!ELEMENT apellido (#PCDATA) > <!ELEMENT nombre_propio (#PCDATA) > <!ELEMENT direccion ( calle , ciudad , ( pais |provinc ia ), cod_postal ) > <!ELEMENT calle (#PCDATA) > <!ELEMENT ciudad (#PCDATA) > <!ELEMENT pais (#PCDATA) > <!ELEMENT provincia (#PCDATA) > <!ELEMENT cod_postal (#PCDATA) >

    ×