Lenguaje de marcado
Marcado lenguaje se refiere a un sistema de codificación de texto que consiste en un conjunto de símbolos insertados en un documento de texto para controlar su estructura, formato o la relación entre sus partes.. El marcado se usa a menudo para controlar la visualización del documento o para enriquecer su contenido. para facilitar el procesamiento automatizado. Un lenguaje de marcado es un conjunto de reglas que rigen qué información de marcado puede incluirse en un documento y cómo se combina con el contenido del documento para facilitar su uso por parte de humanos y programas informáticos. La idea y la terminología evolucionaron a partir del "marcado" de manuscritos en papel (es decir, las instrucciones de revisión por parte de los editores), que tradicionalmente se escriben con bolígrafo rojo o lápiz azul sobre los autores' manuscritos.
Los lenguajes de marcado más antiguos, que normalmente se centran en la tipografía y la presentación, incluyen troff, TeX y LaTeX. Escriba y la mayoría de los lenguajes de marcado modernos, por ejemplo XML, identifican los componentes del documento (por ejemplo, encabezados, párrafos y tablas), con la expectativa de que se utilice tecnología como hojas de estilo para aplicar formato u otro procesamiento.
Algunos lenguajes de marcado, como el HTML ampliamente utilizado, tienen una semántica de presentación predefinida, lo que significa que su especificación prescribe algunos aspectos de cómo presentar los datos estructurados en medios particulares. HTML, como DocBook, Open eBook, JATS y muchos otros, se basa en los metalenguajes de marcado SGML y XML. Es decir, SGML y XML permiten a los diseñadores especificar esquemas particulares, que determinan qué elementos, atributos y otras características están permitidos y dónde.
Una característica extremadamente importante de la mayoría de los lenguajes de marcado es que permiten mezclar el marcado con el contenido del documento, como texto e imágenes. Por ejemplo, si es necesario enfatizar algunas palabras en una oración o identificarlas como un nombre propio, un término definido u otro elemento especial, el marcado puede insertarse entre los caracteres de la oración. Esto es bastante diferente estructuralmente de las bases de datos tradicionales, donde por definición es imposible tener datos que estén dentro de un registro pero no dentro de ningún campo. Además, el marcado de textos legibles por humanos debe mantener el orden: no sería suficiente convertir cada párrafo de un libro en un "párrafo" registro, cuando esos registros no mantienen el orden.
Etimología
El sustantivo marcado se deriva de la práctica editorial tradicional llamada "marcar" un manuscrito, que consiste en agregar anotaciones escritas a mano en forma convencional instrucciones simbólicas de la impresora: en los márgenes y el texto de un artículo o un manuscrito impreso.
Durante siglos, esta tarea la realizaban principalmente tipógrafos expertos conocidos como "marcadores" o "marcadores d" quien marcó el texto para indicar qué tipo de letra, estilo y tamaño se debe aplicar a cada parte, y luego pasó el manuscrito a otros para que lo escribieran a mano oa máquina.
El marcado también fue aplicado comúnmente por editores, revisores, editores y diseñadores gráficos, y de hecho por autores de documentos, todos los cuales también podrían marcar otras cosas, como correcciones, cambios, etc.
Tipos de lenguaje de marcas
Hay tres categorías generales principales de marcado electrónico, articuladas en Coombs, Renear y DeRose (1987) y Bray (2003).
Marcado de presentación
- El tipo de marcado utilizado por los sistemas tradicionales de procesamiento de palabras: códigos binarios incrustados dentro del texto de documento que producen el WYSIWYG ("lo que ves es lo que consigues") Efecto. Tal marcación generalmente se oculta de usuarios humanos, incluso autores y editores. De manera adecuada, estos sistemas utilizan el marcado procesal y/o descriptivo debajo pero lo convierten en "presente" al usuario como arreglos geométricos de tipo.
Marcado de procedimiento
- La marcación está incrustada en texto que proporciona instrucciones para que los programas puedan procesar el texto. Ejemplos conocidos incluyen troff, TeX y Markdown. Se supone que el software procesa el texto secuencialmente de principio a fin, siguiendo las instrucciones que se encuentran. Este texto suele editarse con el marcado visible y manipulado directamente por el autor. Los sistemas de marcado de procedimiento populares suelen incluir construcciones de programación, especialmente macros, permitiendo que se invoquen conjuntos complejos de instrucciones por un nombre simple (y tal vez unos pocos parámetros). Esto es mucho más rápido, menos propensa a errores, y más fácil de mantener que volver a establecer las mismas o similares instrucciones en muchos lugares.
Marcado descriptivo
- La marcación se utiliza específicamente para etiquetar partes del documento por lo que son, en lugar de cómo deben ser procesadas. Los sistemas bien conocidos que proporcionan muchas etiquetas incluyen LaTeX, HTML y XML. El objetivo es decodificar la estructura del documento de cualquier tratamiento o entrega particular. Tal marcación se describe a menudo como "semántica". Un ejemplo de una marca descriptiva sería HTML
tag, que se utiliza para etiquetar una citación. Marcación descriptiva — a veces llamada marcación lógica o Marco conceptual — anima a los autores a escribir de una manera que describe el material conceptualmente, en lugar de visualmente.
Hay una considerable difuminación de las líneas entre los tipos de marcado. En los sistemas de procesamiento de texto modernos, el marcado de presentación a menudo se guarda en sistemas orientados al marcado descriptivo, como XML, y luego se procesan de manera procesal mediante implementaciones. La programación en sistemas de marcado de procedimientos, como TeX, se puede utilizar para crear sistemas de marcado de nivel superior que son de naturaleza más descriptiva, como LaTeX.
En los últimos años, se han desarrollado una serie de lenguajes de marcado con la facilidad de uso como objetivo clave, y sin aportes de las organizaciones de estándares, destinados a permitir a los autores crear texto con formato a través de navegadores web, por ejemplo, en wikis y en sitios web. foros Estos a veces se denominan lenguajes de marcado ligeros. Markdown, BBCode y el lenguaje de marcado utilizado por Wikipedia son ejemplos de tales lenguajes.
Historia de los lenguajes de marcado
Código Gen
La primera presentación pública conocida de los lenguajes de marcado en el procesamiento de texto por computadora fue realizada por William W. Tunnicliffe en una conferencia en 1967, aunque prefirió llamarlo codificación genérica. Puede verse como respuesta a la aparición de programas como RUNOFF, cada uno de los cuales utilizaba sus propias notaciones de control, a menudo específicas del dispositivo de composición tipográfica de destino. En la década de 1970, Tunnicliffe lideró el desarrollo de un estándar llamado GenCode para la industria editorial y luego fue el primer presidente del comité de la Organización Internacional para la Estandarización que creó SGML, el primer lenguaje de marcado descriptivo estándar. El diseñador de libros Stanley Rice publicó especulaciones similares en 1970.
Brian Reid, en su disertación de 1980 en la Universidad Carnegie Mellon, desarrolló la teoría y una implementación práctica del marcado descriptivo en uso real. Sin embargo, el investigador de IBM Charles Goldfarb es más comúnmente visto hoy como el 'padre'. de lenguajes de marcado. Goldfarb dio con la idea básica mientras trabajaba en un primitivo sistema de gestión de documentos destinado a bufetes de abogados en 1969, y ayudó a inventar IBM GML ese mismo año. GML se reveló públicamente por primera vez en 1973.
En 1975, Goldfarb se mudó de Cambridge, Massachusetts, a Silicon Valley y se convirtió en planificador de productos en IBM Almaden Research Center. Allí, convenció a los ejecutivos de IBM para implementar GML comercialmente en 1978 como parte del producto Document Composition Facility de IBM, y se usó ampliamente en los negocios en unos pocos años.
SGML, que se basaba tanto en GML como en GenCode, fue un proyecto de ISO en el que trabajó Goldfarb a partir de 1974. Goldfarb finalmente se convirtió en presidente del comité de SGML. SGML fue lanzado por primera vez por ISO como el estándar ISO 8879 en octubre de 1986.
Troff y nroff
Algunos ejemplos tempranos de lenguajes de marcado informático disponibles fuera de la industria editorial se pueden encontrar en herramientas de composición tipográfica en sistemas Unix como troff y nroff. En estos sistemas, los comandos de formato se insertaban en el texto del documento para que el software de composición tipográfica pudiera formatear el texto de acuerdo con las especificaciones del editor. Fue un proceso iterativo de prueba y error para imprimir un documento correctamente. La disponibilidad del software de publicación WYSIWYG ("lo que ves es lo que obtienes") reemplazó gran parte del uso de estos lenguajes entre los usuarios ocasionales, aunque el trabajo de publicación serio todavía usa marcado para especificar la estructura no visual de los textos y WYSIWYG los editores ahora suelen guardar documentos en un formato basado en lenguaje de marcado.
TeX
Otro importante estándar de publicación es TeX, creado y perfeccionado por Donald Knuth en las décadas de 1970 y 1980. TeX se concentró en el diseño detallado del texto y las descripciones de las fuentes para componer libros matemáticos. Esto requirió que Knuth pasara un tiempo considerable investigando el arte de la composición tipográfica. TeX se utiliza principalmente en el mundo académico, donde es un estándar de facto en muchas disciplinas científicas. Un paquete de macros de TeX conocido como LaTeX proporciona un sistema de marcado descriptivo además de TeX, y es ampliamente utilizado entre la comunidad científica y la industria editorial.
Scribe, GML y SGML
El primer lenguaje en hacer una clara distinción entre estructura y presentación fue Scribe, desarrollado por Brian Reid y descrito en su tesis doctoral en 1980. Scribe fue revolucionario en varios sentidos, entre ellos que introdujo la idea de estilos separados del documento marcado, y de una gramática que controla el uso de elementos descriptivos. Escriba influyó en el desarrollo del lenguaje de marcado generalizado (más tarde SGML), y es un antepasado directo de HTML y LaTeX.
A principios de la década de 1980, la idea de que el marcado debería centrarse en los aspectos estructurales de un documento y dejar la presentación visual de esa estructura al intérprete llevó a la creación de SGML. El lenguaje fue desarrollado por un comité presidido por Goldfarb. Incorporó ideas de muchas fuentes diferentes, incluido el proyecto de Tunnicliffe, GenCode. Sharon Adler, Anders Berglund y James A. Marke también fueron miembros clave del comité SGML.
SGML especificó una sintaxis para incluir el marcado en los documentos, así como otra para describir por separado qué etiquetas se permitían y dónde (la definición de tipo de documento (DTD), más tarde conocido como esquema). Esto permitió a los autores crear y usar cualquier marcado que desearan, seleccionando las etiquetas que tenían más sentido para ellos y que se nombraron en sus propios idiomas naturales, al mismo tiempo que permitía la verificación automática. Por lo tanto, SGML es propiamente un metalenguaje y muchos lenguajes de marcado particulares se derivan de él. Desde finales de los años 80 en adelante, la mayoría de los nuevos lenguajes de marcado se han basado en el sistema SGML, incluidos, por ejemplo, TEI y DocBook. SGML fue promulgado como Norma Internacional por la Organización Internacional de Normalización, ISO 8879, en 1986.
SGML encontró una amplia aceptación y uso en campos con requisitos de documentación a gran escala. Sin embargo, muchos lo encontraron engorroso y difícil de aprender, un efecto secundario de su diseño que intenta hacer demasiado y es demasiado flexible. Por ejemplo, SGML hizo que las etiquetas finales (o las etiquetas iniciales, o incluso ambas) fueran opcionales en ciertos contextos, porque sus desarrolladores pensaron que el marcado lo haría manualmente el personal de soporte sobrecargado de trabajo que apreciaría ahorrar pulsaciones de teclas.
HTML
En 1989, el informático Sir Tim Berners-Lee escribió un memorando en el que proponía un sistema de hipertexto basado en Internet, luego especificó HTML y escribió el navegador y el software del servidor a finales de 1990. La primera descripción de HTML disponible públicamente fue una documento llamado "Etiquetas HTML", mencionado por primera vez en Internet por Berners-Lee a fines de 1991. Describe 18 elementos que comprenden el diseño inicial relativamente simple de HTML. Excepto por la etiqueta de hipervínculo, estos fueron fuertemente influenciados por SGMLguid, un formato de documentación interno basado en SGML en CERN, y muy similar al esquema de muestra en el estándar SGML. Once de estos elementos todavía existen en HTML 4.
Berners-Lee consideró HTML como una aplicación SGML. El Grupo de trabajo de ingeniería de Internet (IETF) lo definió formalmente como tal con la publicación a mediados de 1993 de la primera propuesta para una especificación HTML: "Lenguaje de marcado de hipertexto (HTML)" Internet-Draft de Berners-Lee y Dan Connolly, que incluía una definición de tipo de documento SGML para definir la gramática. Muchos de los elementos de texto HTML se encuentran en el informe técnico ISO de 1988 TR 9537 Técnicas para usar SGML, que a su vez cubre las características de los primeros lenguajes de formato de texto como el utilizado por el comando RUNOFF desarrollado en el principios de la década de 1960 para el sistema operativo CTSS (Sistema de tiempo compartido compatible). Estos comandos de formato se derivaron de los utilizados por los tipógrafos para formatear documentos manualmente. Steven DeRose argumenta que el uso de marcado descriptivo de HTML (y la influencia de SGML en particular) fue un factor importante en el éxito de la Web, debido a la flexibilidad y extensibilidad que permitió. HTML se convirtió en el principal lenguaje de marcado para crear páginas web y otra información que se puede mostrar en un navegador web y es muy probable que sea el lenguaje de marcado más utilizado en el mundo en la actualidad.
XML
XML (Lenguaje de marcado extensible) es un metalenguaje de marcado muy utilizado. XML fue desarrollado por el World Wide Web Consortium, en un comité creado y presidido por Jon Bosak. El objetivo principal de XML era simplificar SGML centrándose en un problema particular: los documentos en Internet. XML sigue siendo un metalenguaje como SGML, que permite a los usuarios crear las etiquetas necesarias (por lo tanto, "extensible") y luego describir esas etiquetas y sus usos permitidos.
La adopción de XML se vio favorecida porque cada documento XML se puede escribir de tal manera que también sea un documento SGML, y los usuarios y el software de SGML existentes podrían cambiar a XML con bastante facilidad. Sin embargo, XML eliminó muchas de las funciones más complejas de SGML para simplificar los entornos de implementación, como documentos y publicaciones. Parecía encontrar un término medio entre la simplicidad y la flexibilidad, además de admitir herramientas de definición y validación de esquemas muy sólidas, y se adoptó rápidamente para muchos otros usos. XML ahora se usa ampliamente para comunicar datos entre aplicaciones, para serializar datos de programas, para protocolos de comunicaciones de hardware, gráficos vectoriales y muchos otros usos, además de documentos.
XHTML
Desde enero de 2000 hasta el lanzamiento de HTML 5, todas las recomendaciones W3C para HTML se han basado en XML, utilizando la abreviatura XHTML (Extensible HyperT ext Markup Lidioma). La especificación del idioma requiere que los documentos web XHTML sean documentos XML bien formados. Esto permite documentos más rigurosos y sólidos, al evitar muchos errores de sintaxis que históricamente llevaron a comportamientos incompatibles del navegador, mientras se siguen utilizando componentes de documentos que están familiarizados con HTML.
Una de las diferencias más notables entre HTML y XHTML es la regla de que todas las etiquetas deben estar cerradas: las etiquetas HTML vacías como <br>
deben ser < i>cerrado con una etiqueta final regular, o reemplazado por una forma especial: <br />
(el espacio antes el '/
' en la etiqueta final es opcional, pero se usa con frecuencia porque permite que algunos navegadores web anteriores a XML y analizadores SGML acepten la etiqueta). Otra diferencia es que se deben citar todos los valores de atributos en las etiquetas. Ambas diferencias son comúnmente criticadas por detalladas, pero también elogiadas porque facilitan mucho la detección, localización y reparación de errores. Finalmente, todos los nombres de etiquetas y atributos dentro del espacio de nombres XHTML deben estar en minúsculas para ser válidos. HTML, por otro lado, no distingue entre mayúsculas y minúsculas.
Otras aplicaciones basadas en XML
Ahora existen muchas aplicaciones basadas en XML, incluido el marco de descripción de recursos como RDF/XML, XForms, DocBook, SOAP y Web Ontology Language (OWL). Para obtener una lista parcial de estos, consulte Lista de lenguajes de marcado XML.
Características de los lenguajes de marcas
Una característica común de muchos lenguajes de marcado es que mezclan el texto de un documento con instrucciones de marcado en el mismo flujo de datos o archivo. Esto no es necesario; es posible aislar el marcado del contenido del texto, usando punteros, compensaciones, ID u otros métodos para coordinar los dos. Tal "marcado de separación" es típico de las representaciones internas que utilizan los programas para trabajar con documentos marcados. Sin embargo, incrustado o "en línea" el marcado es mucho más común en otros lugares. Aquí, por ejemplo, hay una pequeña sección de texto marcada en HTML:
¡Atención! DOCTYPE html.html■ .cabeza■ .meta charset="utf-8"■ .Título■Mi página de pruebac)Título■ c)cabeza■ .cuerpo■ .h1■Mozilla es genialc)h1■ .img src="images/firefox-icon.png" Alt="El logotipo de Firefox: un zorro ardiente que rodea la Tierra."■ .p■En Mozilla, somos una comunidad global dec)p■ .ul■ - cambiado a la lista en el tutorial - .li■tecnólogosc)li■ .li■pensadoresc)li■ .li■constructoresc)li■ c)ul■ .p■trabajando juntos para mantener la Internet viva y accesible, para que las personas de todo el mundo puedan ser informadas contribuyentes y creadores de la Web. Creemos que este acto de colaboración humana en una plataforma abierta es esencial para el crecimiento individual y nuestro futuro colectivo.c)p■ .p■Leer el .a href="https://www.mozilla.org/en-US/about/manifesto/"■Mozilla Manifiestoc)a■ aprender aún más sobre los valores y principios que guían la búsqueda de nuestra misión.c)p■ c)cuerpo■c)html■
Los códigos entre paréntesis angulares < como este>
son instrucciones de marcado (conocidas como etiquetas), mientras que el texto entre estas instrucciones es el texto real del documento. Los códigos h1
, p
y em
son ejemplos de marcado semántico, ya que describen el propósito previsto o el significado del texto que incluyen. Específicamente, h1
significa "este es un encabezado de primer nivel", p
significa "este es un párrafo" y em
significa "esta es una palabra o frase enfatizada". Un programa que interprete dicho marcado estructural puede aplicar sus propias reglas o estilos para presentar las distintas partes del texto, utilizando diferentes tipos de letra, negrita, tamaño de fuente, sangría, color u otros estilos, según se desee.
Por ejemplo, una etiqueta como "h1" (nivel de encabezado 1) se puede presentar en un tipo de letra sans-serif negrita grande en un artículo, o se puede subrayar en un documento monoespaciado (estilo de máquina de escribir), o simplemente no cambiar la presentación en absoluto.
Por el contrario, la etiqueta i
en HTML 4 es un ejemplo de marcado de presentación, que generalmente se usa para especificar una característica particular del texto sin especificar el motivo de la misma. esa apariencia En este caso, el elemento i
dicta el uso de un tipo de letra cursiva. Sin embargo, en HTML 5, este elemento se ha reutilizado con un uso más semántico: para denotar un tramo de texto en un voz o estado de ánimo alternativo, o de otro modo compensado de la prosa normal de una manera que indique una calidad diferente del texto
. Por ejemplo, es apropiado utilizar el elemento i
para indicar una designación taxonómica o una frase en otro idioma. El cambio se realizó para facilitar la transición de HTML 4 a HTML 5 de la manera más fluida posible para que los usos obsoletos de elementos de presentación conservaran la semántica más probable.
La Iniciativa de codificación de texto (TEI) ha publicado pautas extensas sobre cómo codificar textos de interés en humanidades y ciencias sociales, desarrolladas a través de años de trabajo cooperativo internacional. Estas pautas son utilizadas por proyectos que codifican documentos históricos, las obras de académicos particulares, períodos, géneros, etc.
Idioma
Si bien la idea del lenguaje de marcas se originó con los documentos de texto, cada vez se usan más en la presentación de otros tipos de información, como listas de reproducción, gráficos vectoriales, servicios web, sindicación de contenido e interfaces de usuario. La mayoría de estos son aplicaciones XML porque XML es un lenguaje extensible y bien definido.
El uso de XML también ha dado lugar a la posibilidad de combinar varios lenguajes de marcado en un único perfil, como XHTML+SMIL y XHTML+MathML+SVG.
Contenido relacionado
Bajo sajón
Contraseña
OsoCompartir