Vérifié contenu

Langage de balisage

Sujets connexes: Programmation informatique

Saviez-vous ...

SOS Enfants a essayé de rendre le contenu plus accessible Wikipedia par cette sélection des écoles. Les enfants SOS est le plus grand don de charité du monde enfants orphelins et abandonnés la chance de la vie familiale.

Exemple de Recipebook, un langage de balisage simple basé sur XML pour créer des recettes. Le marquage peut être converti en HTML, PDF et Rich Text Format utilisant un langage de programmation ou XSL.

Un langage de balisage est un langue artificielle en utilisant un ensemble d'annotations au texte qui décrivent comment le texte doit être structuré, aménagé, ou formaté. Les langages de balisage ont été en usage depuis des siècles, et ces dernières années ont également été utilisés dans les systèmes de composition de l'informatique et de traitement de texte.

Un exemple bien connu d'un langage de balisage en usage aujourd'hui dans l'informatique est Langage Signalétique Hyper Text ( HTML), l'un des plus utilisé dans le World Wide Web . HTML suit certaines des conventions de balisage utilisés dans l'industrie de l'édition dans la communication de travail imprimé entre auteurs, éditeurs et imprimeurs.

Histoire

Le terme balisage est dérivé de la pratique de l'édition traditionnelle de "baliser" 'un manuscrit, qui consiste à ajouter symbolique les instructions de l'imprimante dans les marges d'un manuscrit de papier. Pendant des siècles, cette tâche a été effectuée principalement par les typographes qualifiés connus comme des «hommes de balise" qui ont marqué jusqu'à texte pour indiquer ce que police, le style et la taille doit être appliqué à chaque partie, puis passé le manuscrit à d'autres pour la composition à la main. Markup a également été couramment appliquée par les éditeurs, correcteurs, et graphistes.

GenCode

L'idée de langages de balisage a apparemment été d'abord présenté par la direction publication William W. Tunnicliffe lors d'une conférence en 1967, bien qu'il préfère l'appeler «codage générique." Tunnicliffe plus tard diriger l'élaboration d'une norme appelée GenCode pour l'industrie de l'édition. concepteur du livre Stanley Fish a également publié la spéculation dans le même sens à la fin des années 1960. Brian Reid, dans sa thèse à 1980 Carnegie Mellon University, a développé la théorie et la mise en oeuvre de travail de balisage descriptif en utilisation réelle. Toutefois, IBM chercheur Charles Goldfarb est plus communément considérée aujourd'hui comme le «père» des langages de balisage, en raison de son travail sur IBM GML, puis en tant que président de la Organisation internationale pour les comité de normalisation qui se est développée SGML, le premier système de marquage descriptif largement utilisé. Goldfarb a eu l'idée de base tout en travaillant sur un projet tôt pour aider un journal informatiser son flux de travail, même si le dossier publié ne précise pas quand. Il est ensuite devenu familier avec le travail de Tunnicliffe et Fish, et a entendu un exposé début par Reid qui a déclenché outre son intérêt.

Les détails de l'histoire des débuts de langages de balisage descriptives sont chaudement débattus. Cependant, il est clair que la notion était indépendamment découvert à plusieurs reprises tout au long des années 70 (et peut-être la fin des années 60), et est devenu une pratique importante dans les années 80.

Certains des premiers exemples de langages de balisage disponibles en dehors de l'industrie de l'édition peuvent être trouvés dans les outils de composition sur Unix systèmes tels que troff et nroff. Dans ces systèmes, les commandes de formatage ont été insérés dans le texte du document afin que le logiciel de composition pourrait formater le texte selon les spécifications de l'éditeur. C'était un essais et erreurs processus itératif pour obtenir un document imprimé correctement. Disponibilité des WYSIWYG («ce que vous voyez est ce que vous obtenez") logiciel de publication supplanté beaucoup d'utilisation de ces langues parmi les utilisateurs occasionnels, si le travail d'édition sérieuse utilise encore balisage pour spécifier la structure non-visuelle de textes.

TeX

Une autre norme de publication majeure est TeX , créé et constamment perfectionné par Donald Knuth dans les années 1970 et 80. TeX concentrée sur la disposition détaillée des descriptions de textes et de police afin de composer des livres mathématiques en qualité professionnelle. Cette nécessaire Knuth passer un temps considérable enquêter sur l'art de composition. Cependant, TeX a une courbe d'apprentissage abrupte, de sorte qu'il est principalement utilisé dans le milieu universitaire, où il est le standard de facto dans de nombreuses disciplines scientifiques. Un ensemble de macros TeX appelé LaTeX fournit un système de balisage descriptive sur le dessus de TeX, et est largement utilisé.

Scribe, GML et SGML

La première langue de faire une distinction claire et nette entre la structure et la présentation était certainement Scribe, développé par Brian Reid et décrit dans sa thèse de doctorat en 1980. Scribe était révolutionnaire dans un certain nombre de façons, pas moins qu'il a introduit l'idée de styles séparés du document balisé, et d'un grammaire contrôle de l'utilisation d'éléments descriptifs. Scribe influencé le développement de Generalized Markup Language (SGML tard) et est un ancêtre direct en HTML et LaTeX.

Au début des années 1980, l'idée que le balisage devrait être axée sur les aspects structurels d'un document et de laisser la présentation visuelle de cette structure à l'interprète a conduit à la création de SGML. La langue a été élaboré par un comité présidé par Goldfarb. Il a intégré les idées de nombreuses sources différentes, y compris le projet de Tunnicliffe, GenCode. Sharon Adler, Anders Berglund, et James A. Marke étaient également membres clés du comité SGML.

SGML spécifié une syntaxe pour y compris le balisage dans les documents, ainsi que l'un pour décrire séparément ce que les balises ont été autorisés, et où (la Document Type Definition ( DTD) ou schéma). Cela a permis aux auteurs de créer et d'utiliser toutes les balises qu'ils souhaitaient, en sélectionnant les balises qui ont fait le plus de sens pour eux et ont été nommés dans leurs propres langues naturelles. Ainsi, SGML est proprement une méta-langage, et de nombreux langages de balisage particuliers sont déduits. De la fin des années 80 sur, la plupart des importants nouveaux langages de balisage ont été basé sur le système SGML, y compris par exemple TEI et DocBook. SGML a été promulguée en tant que Norme internationale par Organisation internationale de normalisation, ISO 8879, en 1986.

SGML trouvé une large acceptation et l'utilisation dans les champs avec les exigences de documentation très grande échelle. Cependant, il a été généralement jugée lourde et difficile à apprendre, un effet secondaire d'essayer d'en faire trop et trop souple. Par exemple, SGML fait fin tags (ou start-tags, ou même les deux) en option dans certains contextes, parce qu'il pensait que le balisage serait fait manuellement par le personnel de soutien surmenés qui apprécieront frappes épargne.

HTML

En 1991, il est apparu à beaucoup que SGML serait limitée à des applications commerciales et fondées sur des données tout en Outils WYSIWYG (qui documents enregistrés dans des formats binaires propriétaires) suffirait pour d'autres applications de traitement de documents.

La situation a changé lorsque Sir Tim Berners-Lee , l'apprentissage à partir de SGML collègue Anders Berglund et d'autres à CERN, utilisé la syntaxe SGML pour créer HTML. HTML ressemble à d'autres langues en fonction tag-SGML, même si elle a commencé comme simple que la plupart et une DTD formelle n'a pas été développé plus tard. DeRose fait valoir que l'utilisation de HTML de balisage descriptif (et SGML en particulier) a été un facteur majeur dans le succès du Web, en raison de la flexibilité et l'extensibilité qui lui a permis (autres facteurs comprennent la notion d'URL et la distribution gratuite de navigateurs). HTML est fort probable langage de balisage le plus utilisé dans le monde d'aujourd'hui.

Toutefois, le statut de HTML comme un langage de balisage est contesté par certains scientifiques informatiques. L'argument est que HTML restreint le placement des étiquettes, les obligeant à être entièrement imbriqué dans d'autres balises, ou la balise racine du document. Pour cette raison, ces chercheurs ne suggèrent plutôt que HTML est un langage de récipient, suite à un Modèle hiérarchique.

XML

XML (Extensible Markup Language) est un langage de balisage méta qui est maintenant largement utilisé. XML a été développé par le Consortium World Wide Web, dans un comité créé et présidé par Jon Bosak. Le but principal de XML était de simplifier SGML en se concentrant sur un problème particulier - documents sur Internet. XML reste un méta-langage comme SGML, permettant aux utilisateurs de créer des balises nécessaires (d'où "extensible") et puis en décrivant ces balises et leurs utilisations autorisées.

adoption de XML a été aidé parce que chaque document XML peut être écrit de telle manière que ce est aussi un document SGML, et les utilisateurs et les logiciels SGML existants pourrait passer à XML assez facilement. Cependant, XML éliminé un grand nombre des caractéristiques plus complexes et orienté l'homme de SGML pour simplifier la mise en œuvre (tout en augmentant la taille de balisage et de réduire la lisibilité et modifiable). Autres améliorations rectifiées certains problèmes SGML dans les milieux internationaux, et ont permis d'analyser et d'interpréter hiérarchie des documents même si aucun DTD est disponible.

XML a été conçu principalement pour les environnements semi-structurés tels que des documents et publications. Cependant, il est apparu de frapper un sweet spot entre la simplicité et la flexibilité, et a été rapidement adopté pour de nombreux autres usages. XML est maintenant largement utilisé pour communiquer données entre applications. Comme HTML, il peut être décrit comme une langue «conteneur».

XHTML

Depuis Janvier 2000, tous Recommandations W3C pour le HTML ont été basé sur XML plutôt que SGML, en utilisant l'abréviation XHTML (E x H tensible yper T ext M arkup L anguage). La spécification du langage exige que les documents Web XHTML doivent être des documents XML bien formés - ce qui permet pour les documents plus rigoureuses et robustes tout en utilisant les balises familières du HTML.

Une des différences les plus notables entre HTML et XHTML est la règle que toutes les balises doivent être fermées: Les balises HTML vides tels que
doivent soit être fermé avec une balise de fin régulière, ou remplacé par une forme particulière: (L'espace avant le ' / 'sur la balise de fin est facultative, mais souvent utilisé car il permet à certains navigateurs Web pré-XML, SGML et analyseurs, à accepter l'étiquette). Une autre est que toutes valeurs d'attributs dans les balises doivent être indiqués. Enfin, tous les noms de balises et attributs doivent être en minuscules pour être valide; HTML, d'autre part, était insensible à la casse.

Autres applications XML

Beaucoup d'applications XML existent maintenant, y compris Resource Description Framework (RDF), XForms, DocBook, SOAP et la (Web Ontology Language OWL). Pour une liste partielle de ces voir Liste des langages de balisage XML.

Caractéristiques

Une caractéristique commune à de nombreux langages de balisage, ce est qu'ils mélangent le texte d'un document avec des instructions de balisage dans le même flux de données ou un fichier. Ceci ne est pas nécessaire; il est possible d'isoler balisage du contenu du texte, l'utilisation de pointeurs, les décalages, IDS, ou d'autres méthodes pour coordonner les deux. Cette «balisage impasse" est typique pour les représentations internes des programmes utilisent pour travailler avec des documents annotés. Cependant, intégré ou "inline" balisage est beaucoup plus fréquent ailleurs. Voici, par exemple, est une petite section de texte balisé en HTML:

Anatidés

La famille des anatidés comprend notamment les canards, les oies et les cygnes, mais pas les hurleurs étroitement liés.

Les codes enfermés dans des équerres sont des instructions balisage (connus comme des balises), alors que le texte entre ces instructions est le texte même du document. Les codes h1 , p , et em sont des exemples de balisage structurel, en ce qu'ils décrivent la destination ou la signification du texte, ils comprennent. Plus précisément, h1 signifie «ce est un titre de premier niveau", p signifie «ce est un paragraphe" et em signifie «ce est un mot ou une phrase souligné". Un programme interpréter un tel balisage structurel peut appliquer ses propres règles ou des styles de présentation des différents morceaux de texte, en utilisant des polices de caractères differents, l'audace, la taille, l'indentation, la couleur, ou d'autres styles, comme vous le souhaitez. Une étiquette comme «H1» (titre de niveau 1) pourrait être présenté dans un grand gras sans-serif, par exemple, ou dans un document à espacement fixe (machine à écrire), il pourrait être souligné - ou il pourrait ne pas changer la présentation au tout.

En revanche, le i balise HTML est un exemple de balisage de présentation; il est généralement utilisé pour spécifier une caractéristique particulière du texte (dans ce cas, l'utilisation d'un italique) sans préciser la raison de cette apparence.

Le Text Encoding Initiative (TEI) a publié des lignes directrices détaillées sur la façon de coder textes d'intérêt dans les sciences humaines et sociales, développés par des années de travail de coopération internationale. Ces lignes directrices sont utilisées par les projets codant documents historiques, les travaux des spécialistes particuliers, les périodes ou les genres, et ainsi de suite.

Utilisation alternative

Si l'idée de langage de balisage origine avec les documents texte, il ya une utilisation croissante des langages de balisage dans des domaines comme des graphiques vectoriels, services Web, syndication de contenu, et des interfaces utilisateur. La plupart de ces applications XML parce que ce est une langue bien définie et extensible. L'utilisation de XML a également conduit à la possibilité de combiner plusieurs langages de balisage dans un seul profil, comme XHTML + SMIL et XHTML + MathML + SVG

Récupéré à partir de " http://en.wikipedia.org/w/index.php?title=Markup_language&oldid=225599432 "