Lenguaje de marcado ( texto ) en terminología informática : un conjunto de caracteres o secuencias de caracteres insertados en el texto para transmitir información sobre su visualización o estructura. Pertenece a la clase de lenguajes de programación . Un documento de texto escrito con un lenguaje de marcado contiene no solo el texto en sí (como una secuencia de palabras y signos de puntuación), sino también información adicional sobre sus diversas secciones, por ejemplo, una indicación de encabezados, resaltados, listas, etc. Más casos complejos Un lenguaje de marcado le permite insertar elementos interactivos y contenido de otros documentos en un documento.
Cabe señalar que el lenguaje de marcas de Turing es incompleto y generalmente no se considera un lenguaje de programación .
Distinguir entre marcado lógico y visual. En el primer caso, estamos hablando solo de qué papel juega esta sección del documento en su estructura general (por ejemplo, "esta línea es el encabezado"). El segundo define cómo se mostrará exactamente este elemento (por ejemplo, "esta línea debe mostrarse en negrita"). La idea detrás de los lenguajes de marcado es que la representación visual de un documento debe derivar automáticamente del marcado lógico y ser independiente de su contenido inmediato. Esto simplifica el procesamiento automático de un documento y su visualización en diferentes condiciones (por ejemplo, el mismo archivo puede mostrarse de manera diferente en una pantalla de computadora, teléfono móvil e impresión, ya que las propiedades de estos dispositivos de salida difieren significativamente). Sin embargo, esta regla se viola a menudo: por ejemplo, al crear un documento en un editor como MS Word , el usuario puede poner los encabezados en negrita, pero en ninguna parte indicar que esta línea es un encabezado.
Los lenguajes de marcado se utilizan donde sea necesario para obtener texto enriquecido solo a partir de texto : en tipografía SGML , TeX , PostScript , RTF ), interfaces de usuario de computadora ( Microsoft Word , OpenOffice ), la World Wide Web ( HTML , XHTML , XML , WML , VML , PGML , SVG , XBRL ).
Para escribir los textos fuente de Wikipedia , sus miembros utilizan un lenguaje de marcado especial (ver Wikipedia: Cómo editar artículos ), y para mostrar fórmulas matemáticas complejas, el lenguaje TeX .
Los lenguajes diseñados para agregar formato a los datos de texto de forma fácil y rápida se denominan ligeros ( en:Lenguaje de marcado ligero ). Características de tales idiomas:
Se utilizan cuando una persona tiene que preparar el texto en un editor de texto normal ( blogs , foros , wikis ), o cuando es importante que un usuario con un editor de texto normal también pueda leer el texto. Aquí hay algunos lenguajes de marcado ligeros ampliamente utilizados:
El término "marcado" (como resultado del proceso del mismo nombre, inglés markup ) proviene de la frase en inglés " marking up " ("marcando (como un proceso)", literalmente "marcando, marcando"), tomado de la práctica editorial tradicional de poner marcas condicionales especiales en los márgenes y en el texto del manuscrito o corregir antes de enviarlo a la imprenta. Así, los "marcadores" indicaban el tipo de letra, el estilo y el tamaño de fuente para cada parte del texto. Hoy en día, el marcado de texto está a cargo de editores, correctores, diseñadores gráficos y, por supuesto, los propios autores.
La idea de usar lenguajes de marcas en el procesamiento de textos por computadora probablemente fue publicitada por primera vez por William W. Tunnicliffe en una conferencia en 1967 . Él mismo llamó a su propuesta "codificación universal" ( ing. "codificación genérica" ). En la década de 1970, Tunnicliffe lideró el desarrollo del estándar GenCode para la industria editorial y luego se convirtió en presidente de uno de los comités de la Organización Internacional para la Estandarización (ISO) que creó SGML , el primer lenguaje de marcado descriptivo. Brian Reid ( ing. Brian Reid (científico informático) ) en su disertación, que defendió en 1980 en la Universidad Carnegie ( ing. Carnegie Mellon University ), en el desarrollo del concepto propuesto, llevó a cabo una implementación práctica del marcado descriptivo.
Sin embargo, el investigador de IBM Charles Goldfarb ahora se conoce comúnmente como el "padre" de los lenguajes de marcado . El concepto básico se le ocurrió en 1969 mientras trabajaba en un primitivo sistema de gestión de documentos diseñado para bufetes de abogados. En el mismo año, participó en la creación del lenguaje GML de IBM , que se introdujo por primera vez en 1973 .
En 1975, Goldfarb se mudó de Cambridge, Massachusetts a Silicon Valley , donde se convirtió en desarrollador en IBM Almaden Research Center. Allí, en 1978, convenció a la dirección de IBM para que utilizara GML con fines comerciales como parte de la función de composición de documentos de la empresa , después de lo cual GML se utilizó ampliamente en los negocios durante varios años.
En 1978 comenzaron los primeros desarrollos, que finalmente llevaron a la creación del estándar SGML , basado en GML y GenCode. El propio Goldfarb presidió más tarde el comité SGML, que fue adoptado por ISO como norma en octubre de 1986 .
Algunas implementaciones tempranas de lenguajes de marcado de computadora se pueden encontrar en las utilidades de tipografía UNIX como troff y nroff . Le permiten insertar comandos de formato en el texto de un documento para formatearlo de acuerdo con los requisitos del editor.
La disponibilidad del software de publicación WYSIWYG ( lo que ves es lo que obtienes) ha suplantado a la mayoría de estos lenguajes entre los usuarios generales, aunque el trabajo de publicación serio todavía usa marcado para estructuras específicas no visuales de texto, y los editores WYSIWYG ahora ahorran con mayor frecuencia. documentos en formatos basados en lenguajes de marcas.
Otro estándar editorial importante es Τ Ε Χ , creado y posteriormente mejorado por Donald Knuth en los años 70 y 80 del siglo XX. Τ Ε Χ ha reunido grandes posibilidades para el formato de texto y las descripciones de fuentes, especialmente para libros de matemáticas de calidad profesional. Actualmente, Τ Ε Χ es el estándar de facto en muchas disciplinas científicas. Además de Τ Ε Χ , existe LaTeX , que es un sistema de marcado descriptivo ampliamente utilizado basado en Τ Ε Χ .
El primer lenguaje con una distinción clara y distinta entre la estructura y el tipo de un documento fue Scribe , que fue creado y descrito por la disertación doctoral de Brian Reid en 1980. Scribe fue revolucionario en la cantidad de formas en que se procesó, sobre todo por la introducción de la idea de estilos que están separados del texto y la gramática reales y controlan el uso de elementos descriptivos. Scribe influyó en el desarrollo del lenguaje GML (más tarde SGML) y también es el antepasado directo de los lenguajes HTML y LaTeX .
A principios de los años 80 , la idea de que el marcado debería centrarse en los aspectos estructurales de un documento y debería dejar la representación externa del documento al intérprete llevó a la creación de SGML. El lenguaje fue desarrollado por un comité encabezado por Goldfarb. Combinó ideas de muchas fuentes, incluido el proyecto Tunnikofflick, GenCode. Sharon Adler, Anders Berglund y James A. Marke también fueron miembros clave del comité SGML.
SGML definió con precisión la sintaxis para incluir marcas en el texto y también describió por separado qué etiquetas están permitidas y dónde (DTD - Definición de tipo de documento). Esto permitió a los autores crear y usar cualquier marcado que quisieran, eligiendo qué etiquetas usar y dándoles nombres en el lenguaje normal. Por lo tanto, SGML debe considerarse un metalenguaje ; de él han descendido múltiples lenguajes de marcado especiales. Los últimos años de la década de los 80 fueron más significativos en la aparición de nuevos lenguajes de marcado basados en SGML, como TEI y DocBook .
En 1986, SGML fue publicado como Norma Internacional por ISO con el número 8879. SGML ha encontrado una amplia aceptación y ha sido ampliamente utilizado en proyectos muy grandes. Sin embargo, en general se encontró que era engorroso y difícil de aprender, siendo un efecto secundario del idioma que intentaba hacer demasiado y ser demasiado flexible. Por ejemplo, SGML creó etiquetas finales (o etiquetas iniciales, o incluso ambas) que no siempre eran necesarias porque creía que el personal de soporte del proyecto agregaría manualmente este marcado, quien apreciaría el ahorro en las pulsaciones de teclas.
Para 1991, el uso de SGML se limitaba a programas comerciales y bases de datos, mientras que las herramientas WYSIWYG (que guardaban documentos en formatos binarios propietarios) se usaban para otros programas de procesamiento de documentos. Eso cambió cuando Sir Tim Berners-Lee , después de aprender sobre SGML de su colega Anders Berglund y otros en el CERN , usó la sintaxis SGML para crear HTML . El lenguaje tenía similitudes con otros lenguajes de marcado basados en la sintaxis SGML, pero era mucho más fácil comenzar, incluso para desarrolladores que nunca lo habían hecho. Steven DeRose argumentó que HTML que utiliza marcado descriptivo (y de SGML en particular) fue un factor importante en el desarrollo de la Web porque fue diseñado para ser flexible y extensible (además de otros factores que incluyen el concepto de URL y el uso gratuito por parte de los navegadores). ).
Sin embargo, algunos científicos informáticos han cuestionado el estado de HTML como lenguaje de marcado. Su argumento principal es que HTML restringe la colocación de etiquetas al requerir que ambas etiquetas estén anidadas dentro de otras etiquetas o dentro de las etiquetas principales del documento. Como resultado, estos académicos consideran que HTML es un lenguaje contenedor que sigue un modelo jerárquico.
XML (Lenguaje de marcado extensible) es un metalenguaje de marcado que se usa ampliamente en la actualidad. XML fue desarrollado por el World Wide Web Consortium en un comité presidido por Jon Bosak. El objetivo principal de XML es ser más simple que SGML y centrarse en un problema específico: documentos en la web. XML es un metalenguaje como SGML, los usuarios pueden crear cualquier etiqueta que deseen (por lo tanto, "extensible"). Lo que ayudó al surgimiento de XML fue que cada documento XML podía escribirse de la misma manera que un documento SGML, y los programas y usuarios que usaban SGML podían migrar a XML con bastante facilidad.
Sin embargo, XML perdió muchas de las características centradas en el ser humano de SGML que lo hacían más fácil de usar (hasta que aumentó la cantidad de marcado y se restauraron la legibilidad y la capacidad de edición al mismo nivel). Otras mejoras solucionaron algunos problemas de SGML a nivel internacional y permitieron analizar un documento jerárquicamente incluso si no había DTD disponible.
XML se diseñó principalmente para entornos semiestructurados, como documentos y publicaciones. Sin embargo, resultó en un punto óptimo entre la flexibilidad y la simplicidad, y muchos usuarios lo adoptaron rápidamente. Hoy en día, XML se usa ampliamente para pasar datos entre programas. Al igual que HTML, puede describirse como un lenguaje "contenedor".
XHTMLDesde enero de 2000, todas las recomendaciones al W3C se han basado en XML en lugar de SGML , y se ha propuesto el acrónimo XHTML (Extensible HyperText Markup Language). Las especificaciones del idioma requerían que los documentos XHTML se formatearan como documentos XML, esto permite que XHTML se use para documentos más claros y precisos usando etiquetas de HTML.
Una de las diferencias más notables entre HTML y XHTML es la regla de que todas las etiquetas deben cerrarse: las etiquetas vacías, como < br /> , deben cerrarse con una etiqueta de cierre estándar o una notación especial: < br /> (espacio before El "/" en la etiqueta de cierre es opcional, pero se usa a menudo porque algunos navegadores pre-XML (también analizadores SGML) lo usan). Otros atributos en las etiquetas deben estar entre comillas. Finalmente, todas las etiquetas y nombres de atributos deben escribirse en minúsculas para que se lean correctamente; HTML no distingue entre mayúsculas y minúsculas.
Otros desarrollos basados en XMLMuchos desarrollos basados en XML ahora se utilizan , por ejemplo, RDF (Resource Description Framework - entorno de descripción de recursos) , XFORMS, DocBook , SOAP y OWL (Web Ontology Language) .
Una característica común de todos los lenguajes de marcado es que mezclan el texto del documento con las instrucciones de marcado en un archivo o flujo de datos. No es necesario, es posible aislar el marcado del texto mediante punteros, etiquetas, identificadores u otros métodos de coordinación. Este "marcado separado" es típico de la representación interna de programas que trabajan con documentos de marcado. Sin embargo, el marcado incrustado o "interlineado" es más aceptado en otros lugares. Por ejemplo, aquí hay un pequeño fragmento de texto marcado con HTML:
< h1 > Anatidae </ h1 > < p > La familia < i > Anatidae </ i > incluye patos, gansos y cisnes, pero < em > no </ em > los chillones estrechamente relacionados. </ p >El código de instrucción de marcado (conocido como etiquetas ) está rodeado por corchetes angulares <como este>. El texto entre estas instrucciones es el texto del documento. Los códigos h1 , p y em son ejemplos de marcado estructural, describen la posición, propósito o significado del texto incluido en ellos.
Más específicamente, h1 significa "este es un encabezado de primer nivel", p significa "este es un párrafo" y em significa "esta palabra o frase tiene un énfasis especial". El intérprete puede aplicar estas reglas o estilos para mostrar diferentes partes del texto utilizando diferentes tipos de letra, tamaños de fuente, sangría, color u otros estilos según sea necesario. Por lo tanto, una etiqueta, h1 , por ejemplo, podría representarse en negrita grande o, en un documento con texto monoespaciado (como una máquina de escribir), podría estar subrayada o podría no cambiar su apariencia en absoluto. Y el contenido de la etiqueta em generalmente se muestra en cursiva.
Por el contrario, la etiqueta i en HTML es un ejemplo de marcado visual; por lo general, se usa para identificar características específicas del texto (use tipografía en cursiva en este bloque) sin explicación.
La TEI (Tex Encoding Initiative) ha publicado documentos de orientación completos que especifican cómo codificar texto en beneficio de la humanidad y las sociedades científicas. Estos manuales se utilizaron para codificar documentos históricos, trabajos específicos de eruditos, publicaciones periódicas, etc.
Si bien la idea de usar lenguajes de marcado con documentos de texto ha evolucionado, esto ha incrementado el uso de lenguajes de marcado en otras áreas. Se han propuesto para representar varios tipos de información, incluidas listas de reproducción , gráficos vectoriales, servicios web, interfaces de usuario. La mayoría de estas aplicaciones están basadas en XML, ya que es un lenguaje altamente estructurado y extensible.
El uso del lenguaje XHTML también demuestra que se puede combinar con diferentes lenguajes de marcado del mismo perfil, como XHTML+SMIL o XHTML+MathML+SVG.
diccionarios y enciclopedias | ||||
---|---|---|---|---|
|
Lenguajes de marcado de documentos | |
---|---|
documentos de oficina | |
bien conocido | |
menos conocido |
|