lunes, 2 de diciembre de 2013

Unidad 7 Lenguajes de marcado

7.1 Lenguajes de marcado

Un lenguaje de marcado o lenguaje de marcas es una forma de codificar un documento, junto con el texto, incorpora etiquetas o marcas que contienen información adicional acerca de la estructura del texto o su presentación.
El lenguaje de marcas más extendido es el HTML ("HyperText Markup Language", Lenguaje de marcado de hipertexto), fundamento del World Wide Web (entramado de comunicación de alcance mundial).
Los lenguajes de marcado suelen confundirse con lenguajes de programación. Sin embargo, no son lo mismo, ya que el lenguaje de marcado no tiene funciones aritméticas o variables, como sí poseen los lenguajes de programación. Históricamente, el marcado se usaba y se usa en la industria editorial y de la comunicación, así como entre autores, editores e impresores.


Los lenguajes primitivos

El primer lenguaje que diferenció claramente la estructura de la presentación fue ciertamente el Scribe, desarrollado por Brian Reid y descrito en 1980 en su tesis doctoral.3 Scribe era revolucionario por varios motivos, no solo porque separaba el estilo de las propias marcas del documento, también por el control gramático del empleo de elementos descriptivos. Scribe influyó en el desarrollo de los lenguajes posteriores.
Otro de los principales estándares de publicación es TeX, creado y mantenido por Donald Knuth en los años 70 y 80. TeX se centra en la estructura detallada del texto y la descripción de las fuentes, fundamentalmente en el campo de las publicaciones matemáticas especializadas. Esto obligó a Knuth a dedicar un tiempo considerable en el estudio de la tipografía. Sin embargo, TeX requiere amplios conocimientos para ser utilizado, por lo que sólo ha cuajado en entornos académicos, en los que es el estándar de facto en varias disciplinas científicas. El software más extendido para el empleo de TeX es LaTeX.

Clasificación.

Se suele diferenciar entre tres clases de lenguajes de marcado, aunque en la práctica pueden combinarse varias clases en un mismo documento. Por ejemplo, el HTML contiene etiquetas puramente procedimentales, como la B de bold (negrita), junto con otras puramente descriptivas ('BLOCKQUOTE, el atributo HREF). El HTML también incluye el elemento PRE, que indica que el texto debe representarse tal y como está escrito.

Marcado de presentación

El marcado de presentación es aquel que indica el formato del texto. Este tipo de marcado es útil para maquetar la presentación de un documento para su lectura, pero resulta insuficiente para el procesamiento automático de la información. El marcado de presentación resulta más fácil de elaborar, sobre todo para cantidades pequeñas de información. Sin embargo resulta complicado de mantener o modificar, por lo que su uso se ha ido reduciendo en proyectos grandes en favor de otros tipos de marcado más estructurados.

Marcado de procedimientos
El marcado de procedimientos está enfocado hacia la presentación del texto, sin embargo, también es visible para el usuario que edita el texto. El programa que representa el documento debe interpretar el código en el mismo orden en que aparece. Por ejemplo, para formatear un título, debe haber una serie de directivas inmediatamente antes del texto en cuestión, indicándole al software instrucciones tales como centrar, aumentar el tamaño de la fuente, o cambiar a negrita. Inmediatamente después del título deberá haber etiquetas inversas que reviertan estos efectos. En sistemas más avanzados se utilizan macros o pilas que facilitan el trabajo.

Marcado descriptivo

El marcado descriptivo o semántico utiliza etiquetas para describir los fragmentos de texto, pero sin especificar cómo deben ser representados, o en que orden. Los lenguajes expresamente diseñados para generar marcado descriptivo son el SGML y el XML.

Las etiquetas pueden utilizarse para añadir al contenido cualquier clase de metadatos. Por ejemplo, el estándar Atom, un lenguaje de sindicación, proporciona un método para marcar la hora "actualizada", que es el dato facilitado por el editor de cuándo ha sido modificada por última vez cierta información. El estándar no especifica como se debe representar, o siquiera si se debe representar. El software puede emplear este dato de múltiples maneras, incluyendo algunas no previstas por los diseñadores del estándar.

7.1.1 SGML: Lenguaje de marcado base


SGML (Standard Generalized Mark-up Language), es un lenguaje generalizado estándar para el formato de documentos. Es un estándar internacional que permite definir lenguajes para dar formato a documentos. Por ejemplo, el HTML, es un lenguaje de formato de documentos definido de acuerdo con SGML, es decir, una aplicación de SGML para dar formato a documentos de hipertexto.

SGML es utilizado desde mitad de los 80 y ha permanecido bastante estable. Gran parte de su estabilidad se la debe al hecho de que el lenguaje es a la vez flexible y rico en posibilidades. Sin embargo, esta estabilidad tiene un inconveniente, el nivel de complejidad que ha producido su uso en diversos ámbitos como la World Wide Web.

SGML fue diseñado para permitir el intercambio de información entre distintas plataformas, soportes físicos, lógicos y diferentes sistemas de almacenamiento y presentación, independientemente de su grado de complejidad.

SGML debe utilizarse cuando existe alguna de las siguientes condiciones:

Cuando existe la necesidad de intercambiar documentos entre diferentes sistemas de cómputo o de publicación.
Cuando los documentos tendrán una vida de uso larga.
Cuando la estructura de un documento es fundamental.
Cuando se utiliza una base de datos para el almacenamiento y recuperación de elementos del documento.

¿Cómo funciona SGML?

La función del etiquetado es aportar información que refleje la estructura jerárquica de un documento, de forma que ayude al lector u ordenador a procesar su contenido. Existen dos tipos de etiquetado:

El etiquetado procedimental : técnica mediante la cual un operario utiliza instrucciones crípticas y dependientes del funcionamiento de un sistema determinado para que ejecute una acción, como por ejemplo activar la tipografía, poner en negrita, centrar, etc.
El etiquetado descriptivo, que identifica los elementos estructurales de un documento, determinando su estructura lógica.
El lenguaje de etiquetado SGML permite distinguir entre el contenido (datos) y el etiquetado.

Es necesario un etiquetado o código genérico para lograr un sistema de códigos universal e independiente de la aplicación. Esta fue una de las principales cuestiones que se debatieron en el Comité que creó SGML, la codificación genérica. De este modo se evita la codificación interna, es decir, el que cada programa utilice un sistema propio. Se pretende lograr un conjunto de etiquetas válidas para un elevado número de documentos, algo que implica una gran dificultad debido a la gran diversidad de documentos y elementos que contienen.

SGML utiliza un conjunto de caracteres basado en el estándar ASCII (American Standard Coding for the Interchange of Information).

En SGML todo el etiquetado es lógico, es decir, en lugar de utilizar códigos crípticos, se utilizan nombres de elementos, delimitados por marcas que indican el comienzo y final de los objetos lógicos.

Los lenguajes informáticos proporcionan al programador un conjunto de operaciones básicas que suelen agruparse en un cabecera (heading) que sirve para definir un conjunto específico de instrucciones que utilizará el programa.

De esta forma SGML no se quedó como un simple conjunto de códigos normalizados, sino que se convirtió en un lenguaje con el que se podía crear una definición del tipo de documento (DTD), mediante la que se definen con precisión aquellos elementos que son necesarios en la elaboración de un documento o un grupo de documentos estructurados de manera similar.

Las definiciones de los elementos, denominadas declaraciones de elementos, tienen dos funciones:

Aportar el nombre de las etiquetas
Describir el modelo de contenido (lo que cada elemento puede contener)
Un documento SGML consta de 3 partes:

Declaración SGML
Declaración de tipo de documento (DTD)
Instancia de Documento

El documento sgml básico consiste en una DTD o Declaración de Tipo de Documento, una de las diversas "etiquetas" o marcas de nivel superior, párrafos y texto. La etiqueta de nivel superior puede ser <book>, <chapter>, <article>, o <sect1>. Para nuestros documentos usaremos <article>. El siguiente es un ejemplo de un documento sgml sencillo:

<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook V3.1//EN">

<article>
   <sect1 id="introduction"><title>Introducción al hola mundo</title>

      <para>
      ¡Hola mundo!
      </para>

   </sect1>
</article>

Durante el resto del tutorial utilizaré los términos marca y etiqueta indistintamente pues son sinónimos. La primera línea es la DTD o Declaración de Tipo de Documento. Obsérvese que la primer etiqueta es <article> y la última </article>. Todas las otras marcas estarán "contenidas" por estas dos etiquetas. Obsérvese la etiqueta <sect1>. Tiene un atributo llamado "id". Por el momento, no se preocupe por los atributos, sólo tenga en cuenta que todas las etiquetas <sectX> -donde X es un número entre 1 y 5- deben tener un atributo "id" si desea que se creen de manera automática hipervínculos en los documentos html cuando se ejecute el analizador sobre el archivo. Asimismo, cada etiqueta <sectX> requiere por lo menos de las etiquetas 'paragraph' y de la etiqueta final </sectX>.




7.1.2 HTML

El HTML se escribe en forma de «etiquetas», rodeadas por corchetes angulares (<,>). HTML también puede describir, hasta un cierto punto, la apariencia de un documento, y puede incluir o hacer referencia a un tipo de programa llamado script, el cual puede afectar el comportamiento de navegadores web y otros procesadores de HTML.7

HTML también sirve para referirse al contenido del tipo de MIME text/html o todavía más ampliamente como un término genérico para el HTML, ya sea en forma descendida del XML (como XHTML 1.0 y posteriores) o en forma descendida directamente de SGML (como HTML 4.01 y anteriores).

HTML consta de varios componentes vitales, entre ellos los elementos y sus atributos, tipos de data y la declaración de tipo de documento.

Elementos

Los elementos son la estructura básica de HTML. Los elementos tienen dos propiedades básicas: atributos y contenido. Cada atributo y contenido tiene ciertas restricciones para que se considere válido al documento HTML. Un elemento generalmente tiene una etiqueta de inicio (por ejemplo, <nombre-de-elemento>) y una etiqueta de cierre (por ejemplo, </nombre-de-elemento>). Los atributos del elemento están contenidos en la etiqueta de inicio y el contenido está ubicado entre las dos etiquetas (por ejemplo, <nombre-de-elemento atributo="valor">Contenido</nombre-de-elemento>). Algunos elementos, tales como <br>, no tienen contenido ni llevan una etiqueta de cierre. Debajo se listan varios tipos de elementos de marcado usados en HTML.

Estructura general de una línea de código en el lenguaje de etiquetas HTML.
El marcado estructural describe el propósito del texto. Por ejemplo, <h2>Golf</h2> establece «Golf» como un encabezamiento de segundo nivel, el cual se mostraría en un navegador de una manera similar al título «Marcado HTML» al principio de esta sección. El marcado estructural no define cómo se verá el elemento, pero la mayoría de los navegadores web han estandarizado el formato de los elementos. Puede aplicarse un formato específico al texto por medio de hojas de estilo en cascada.

El marcado presentacional describe la apariencia del texto, sin importar su función. Por ejemplo, <b>negrita</b> indica que los navegadores web visuales deben mostrar el texto en negrita, pero no indica qué deben hacer los navegadores web que muestran el contenido de otra manera (por ejemplo, los que leen el texto en voz alta). En el caso de <b>negrita</b> e <i>itálica</i>, existen elementos que se ven de la misma manera pero tienen una naturaleza más semántica: <strong>enfásis fuerte</strong> y <em>énfasis</em>. Es fácil ver cómo un lector de pantalla debería interpretar estos dos elementos. Sin embargo, son equivalentes a sus correspondientes elementos presentacionales: un lector de pantalla no debería decir más fuerte el nombre de un libro, aunque éste esté en itálicas en una pantalla. La mayoría del marcado presentacional ha sido desechada con HTML 4.0, en favor de hojas de estilo en cascada.

El marcado hipertextual se utiliza para enlazar partes del documento con otros documentos o con otras partes del mismo documento. Para crear un enlace es necesario utilizar la etiqueta de ancla <a> junto con el atributo href, que establecerá la dirección URL a la que apunta el enlace. Por ejemplo, un enlace que muestre el texto de la dirección y vaya hacia nuestra Wikipedia podría ser de la forma <a href=”http://www.wikipedia.org”>http://www.wikipedia.org</a>. También se pueden crear enlaces sobre otros objetos, tales como imágenes <a href=”enlace”><img src=”imagen” /></a>.
7.1.3 XML

XML, siglas en inglés de eXtensible Markup Language ('lenguaje de marcas extensible'), es un lenguaje de marcas desarrollado por el World Wide Web Consortium (W3C) utilizado para almacenar datos en forma legible. Deriva del lenguaje SGML y permite definir la gramática de lenguajes específicos (de la misma manera que HTML es a su vez un lenguaje definido por SGML) para estructurar documentos grandes. A diferencia de otros lenguajes, XML da soporte a bases de datos, siendo útil cuando varias aplicaciones se deben comunicar entre sí o integrar información. (Bases de datos Silberschatz).

XML no ha nacido sólo para su aplicación para Internet, sino que se propone como un estándar para el intercambio de información estructurada entre diferentes plataformas. Se puede usar en bases de datos, editores de texto, hojas de cálculo y casi cualquier cosa imaginable.

XML es una tecnología sencilla que tiene a su alrededor otras que la complementan y la hacen mucho más grande y con unas posibilidades mucho mayores. Tiene un papel muy importante en la actualidad ya que permite la compatibilidad entre sistemas para compartir la información de una manera segura, fiable y fácil.

Ventajas del XML

Es extensible: Después de diseñado y puesto en producción, es posible extender XML con la adición de nuevas etiquetas, de modo que se pueda continuar utilizando sin complicación alguna.
El analizador es un componente estándar, no es necesario crear un analizador específico para cada versión de lenguaje XML. Esto posibilita el empleo de cualquiera de los analizadores disponibles. De esta manera se evitan bugs y se acelera el desarrollo de aplicaciones.
Si un tercero decide usar un documento creado en XML, es sencillo entender su estructura y procesarla. Mejora la compatibilidad entre aplicaciones. Podemos comunicar aplicaciones de distintas plataformas, sin que importe el origen de los datos, es decir, podríamos tener una aplicación en Linux con una base de datos Postgres y comunicarla con otra aplicación en Windows y Base de Datos MS-SQL Server.
Transformamos datos en información, pues se le añade un significado concreto y los asociamos a un contexto, con lo cual tenemos flexibilidad para estructurar documentos.

Estructura de un documento XML

La tecnología XML busca dar solución al problema de expresar información estructurada de la manera más abstracta y reutilizable posible. Que la información sea estructurada quiere decir que se compone de partes bien definidas, y que esas partes se componen a su vez de otras partes. Entonces se tiene un árbol de trozos de información. Ejemplos son un tema musical, que se compone de compases, que están formados a su vez por notas. Estas partes se llaman elementos, y se las señala mediante etiquetas.

Bibliográfica:
http://es.wikipedia.org/wiki/Lenguaje_de_marcado
http://www.geocities.ws/aifperez/#SGML
http://es.wikipedia.org/wiki/.HTML
http://es.wikipedia.org/wiki/Extensible_Markup_Language
http://es.wikipedia.org/wiki/Lenguaje_de_marcado
http://es.wikipedia.org/wiki/SGML
http://www.hipertexto.info/documentos/sgml.htm
http://es.wikipedia.org/wiki/HTML
http://es.wikipedia.org/wiki/Extensible_Markup_Language

No hay comentarios:

Publicar un comentario