viernes, 16 de septiembre de 2016

Lenguajes de marcas

Introducción histórica

Hay un formato de archivo que cualquier dispositivo es capaz de entender.
El texto. La cuestión es que el texto sólo es capaz de almacenar  texto plano; es decir
simplemente caracteres. Pero no información más compleja como hojas de cálculo,
imágenes, etc.
Por ello se  intenta que el propio texto sirva para almacenar otros datos.
Evidentemente no es posible usar texto para almacenar por ejemplo  imágenes, pero sí
otras cosas. Para ello dentro del archivo habrá contenido que no se interpretará como
texto sin más sino como otro tipo de información. Es decir texto que contiene marcas
especiales. Desde el principio hay dos campos en los que está idea ha funcionado bien:
en las bases de datos y en  los procesadores de texto. Actualmente el éxito de Internet
ha permitido utilizar esta tecnología más a fondo.
Hay un problema con el texto, puesto que es un formato tan universal, su contenido
siempre es visible y por lo tanto es peligroso como fuente para almacenar  datos
confidenciales. Los binarios tampoco lo son, porque los principales formatos se pueden
abrir con el software apropiado; pero cifrar la información es una operación puramente
binaria. Por ello el texto puro no se suele utilizar para esta tarea.

Algunos procesadores de texto optaron por guardar toda la información como texto,
haciendo que las indicaciones  de formato  no se almacenen de forma binaria sino
textual. Dichas indicaciones son caracteres marcados de manera especial para que así
un programa  adecuado  pueda traducir dichos caracteres no como texto  sino  como
operaciones  que finalmente producirán mostrar el  texto del documento  de forma
adecuada..
La idea del marcado procede del inglés marking up término con el que se referían a
la técnica de marcar manuscritos con lápiz de color para hacer anotaciones como por
ejemplo la tipografía a emplear en las imprentas. Este mismo término se ha utilizado
para los documentos de texto que contienen comandos u anotaciones.
Las posibles anotaciones o indicaciones incluidos en los documentos de texto han
dado lugar a  lenguajes (entendiendo que en realidad son formatos de documento y no
lenguajes en el sentido de los lenguajes de programación de aplicaciones) llamados
lenguajes de marcas, lenguajes de marcado o lenguajes de etiquetas.

Goldfarb

Se considera a Charles Goldfarb como al padre de los lenguajes de marcas. Se trata de
un investigador de IBM que propuso ideas para que los documentos de texto tuvieran la
posibilidad de indicar el formato del mismo. Al final ayudó a realizar el lenguaje GML de
IBM el cual puso los cimientos del futuro SGML ideado por el propio Goldfarb.

Tex y Latex

En la década de los 70  Donald Knuth (uno de los ingenieros informáticos más
importantes de la historia, padre del análisis de algoritmos) creó  para producir
documentos científicos utilizando una tipografía y capacidades que fueran iguales en
cualquier computadora, asegurando además una gran calidad en los resultados.
Para ello apoyó a  TeX con tipografía especial (fuentes  Modern  Computer) y un
lenguaje  de definición de tipos (METAFONT).  TeX ha tenido cierto éxito en la
comunidad científica gracias a sus 300 comandos que permiten crear documentos con
tipos de gran calidad, para ello se necesita un programa capaz de convertir el archivo
TeX a un formato de impresión.
El éxito de TeX produjo numerosos derivados de los cuales el más popular es
(LaTeX). Se trata de un lenguaje que intenta simplificar a TeX, fue definido en 1984 por
Leslie Lamport, aunque después ha sido numerosas veces revisado. Al utilizar comandos
de TeX y toda su estructura tipográfica, adquirió rápidamente notoriedad y sigue siendo
utilizado para producir documentos con expresiones científicas, de gran calidad. La idea
es que los científicos se centren en el contenido y no en la presentación.

RTF

RTF es el acrónimo de Rich Text Format (Formato de Texto Enriquecido) un lenguaje
ideado por  Microsoft en 1987 para producir documentos de texto que incluyan
anotaciones de formato.
Actualmente se trata de un formato aceptado como texto con formato y en
ambiente Windows es muy utilizado ya que el procesador de texto  Word Pad
incorporado por Windows lo utiliza como formato nativo.

SGML

Se trata de la versión de  GML que estandarizaba el lenguaje de marcado y que  fue
definida finalmente por ISO como estándar mundial en documentos de texto con
etiquetas de marcado. La estandarización la hace el subcomité  SC24 que forma parte
del comité JTC1 del organismo IEC de ISO que se encarga de los estándares electrónicos e informáticos (en definitiva se trata de una norma ISO/IEC JTC1/SC34, concretamente la 8879).
Su importancia radica en que es el padre del lenguaje XML y la base sobre la que se
sostiene el lenguaje HTML.
En SGML las etiquetas que contienen indicaciones para el texto se colocan entre
símbolos < y >. Las etiquetas se cierran con el signo /. Es decir las reglas fundamentales
de los lenguajes de etiquetas actuales ya las había definido SGML.
En realidad (como XML) no es un lenguaje con unas etiquetas concretas, sino que se
trata de un lenguaje que sirve para definir lenguajes de etiquetas; o más exactamente
es un lenguaje de marcado que sirve para definir formatos de documentos de texto con
marcas. Entre los formatos definidos mediante SGML, sin duda HTML es el más popular.

XML

Se trata de un subconjunto de SGML ideado para mejorar el propio SGML y con él definir
lenguajes de marcado con sintaxis más estricta, pero más entendibles. Su popularidad le
ha convertido en el lenguaje de marcado más importante de la actualidad y en el
formato de documentos para exportación e importación más exitoso. A él se dedican en
profundidad los temas posteriores.

Tipos de lenguajes de marcas

Orientados a la presentación. En ellos al texto común se añaden palabras
encerradas en símbolos especiales que contienen indicaciones de formato
que permiten a los traductores de este tipo de documentos generar un
documento final en el que el texto aparece con el formato indicado. Es el
caso de HTML en el que se indica cómo debe presentarse el texto (y no por
ejemplo lo que significa el mismo) también se considera así los archivos
generados por los procesadores de texto tradicionales en los que al texto del
documento se le acompaña de indicaciones de formato (como negrita,
cursiva,…)
Orientados a la descripción. En ellos las marcas especiales permiten dar
significado al texto pero no indican cómo se debe presentar en pantalla el
mismo. Sería el caso de XML o de SGML en el que la presentación nunca se
indica en el documento; simplemente se indica una semántica de contenido
que lo hace ideal para almacenar datos (por ejemplo si el texto es un
nombre de persona o un número de identificación fiscal).
Orientados a procedimientos. Se trata de documentos en los que hay texto
marcado especialmente que en realidad se interpreta como órdenes a seguir
y así el archivo en realidad contiene instrucciones a realizar con el texto. Es
el caso de  LaTeX donde por ejemplo se puede indicar una fórmula
matemática

Saludos,
Alfredo

No hay comentarios:

Publicar un comentario