Que signifie «GML est une grammaire XML»?

10

J'essaie de comprendre le côté théorique de XML et GML. La page Web de l'OGC pour GML indique que:

Le langage de balisage géographique (GML) est une grammaire XML pour exprimer des caractéristiques géographiques.

Mais qu'est-ce que cela signifie par " grammaire "? Je ne vois pas cette phrase (comme un nom) utilisée ailleurs. Est-ce une signification GML unique?

Je vois les termes "langue", "schéma", "format" et "standard". S'agit-il de la même chose?

Puis-je dire que GML est un schéma XML? Ou cela signifierait-il quelque chose de différent? Si oui, existe-t-il un seul fichier XSD qui définit la spécification GML entière?

Mark Ireland
la source
Merci pour les réponses à tous. Toutes les informations très utiles. Les choses se clarifient lentement!
Mark Ireland

Réponses:

6

Quand quelqu'un conçoit une classe de documents XML pour représenter des informations dans un domaine particulier, il appelle parfois cela une grammaire XML, ou un vocabulaire, ou un schéma, ou un type de document, ou même une langue. La terminologie n'est pas cohérente. Il y a peut-être un accent différent: l'appeler un schéma implique qu'un schéma XML est la principale façon dont la grammaire / le vocabulaire est spécifié; mais ils signifient tous essentiellement la même chose.

Michael Kay
la source
7

De la recommandation du langage de balisage extensible (XML) 1.0 (cinquième édition) du W3C :

[Définition: la déclaration de type de document XML contient ou pointe vers des déclarations de balisage qui fournissent une grammaire pour une classe de documents. Cette grammaire est connue sous le nom de définition de type de document ou DTD . La déclaration de type de document peut pointer vers un sous-ensemble externe (un type spécial d' entité externe ) contenant des déclarations de balisage, ou peut contenir les déclarations de balisage directement dans un sous-ensemble interne, ou peut faire les deux. La DTD d'un document se compose des deux sous-ensembles pris ensemble.]

Quant au GML, vous avez raison de dire qu'il a évolué de l'utilisation des DTD aux définitions de schéma XML . Vous pouvez télécharger ces fichiers ici: http://schemas.opengis.net/gml/

Voir également l'article Wikipedia de GML pour un aperçu de l' histoire de GML .

Le XML Schema Primer du W3C est une autre bonne ressource pour en savoir plus sur les XSD, mais curieusement aucune mention du mot «grammaire».

blah238
la source
6

Chaque document XML a essentiellement une structure donnée. Lorsque la structure est formellement spécifiée, nous parlons généralement d'une grammaire XML donnée .

La spécification formelle peut prendre plusieurs formes, par exemple DTD (Document Type Definition) ou XML Schema Definition (XSD). XSD lui-même est un document XML et est maintenant utilisé pour GML. Il existe également d'autres moyens de spécifier la structure XML, comme RELAX NG . Celles-ci peuvent toutes être utilisées efficacement pour valider qu'un document XML est conforme au schéma (grammaire) spécifié.

Même si vous décrivez sans ambiguïté une structure de document XML en anglais pur, elle a une grammaire.

Donc, pour répondre à votre question, nous pourrions dire que GML est une grammaire XML pour laquelle il existe une spécification de schéma XML ( lien ).

Un autre terme utilisé à la place de la grammaire XML est également dialecte XML .

Petr Krebs
la source