Validation du code KML pendant son développement

Pour utiliser certaines fonctionnalités KML avancées (par exemple, Region, TimeSpan/TimeStamp, ScreenOverlay et Tours), vous devez créer votre propre code KML. En effet, il n'existe aucune option permettant de créer ces fonctionnalités dans Google Earth. Vous pouvez utiliser un éditeur de texte basique comme le Bloc-notes sous Windows, ou TextEdit ou TextMate sous Mac OS X, mais ceux-ci n'offrent aucune fonctionnalité de vérification des erreurs. Cela signifie que vous savez s'il y a une erreur dans votre code seulement au moment où vous l'ouvrez dans Google Earth.

jEdit est un éditeur de texte Open Source basé sur Java qui fonctionne sous Windows, Mac OS X et Linux. Si vous lui associez quelques plug-ins, il permet une vérification des erreurs en cours de frappe qui garantit que votre code KML est bien formé et validé conformément au schéma KML officiel. Vous pouvez également utiliser le plug-in Super Abbreviations pour insérer rapidement des extraits de code KML. Dans ce didacticiel, vous allez apprendre à configurer jEdit pour l'édition de code KML, à tirer parti de ses fonctionnalités de vérification des erreurs et à utiliser les abréviations KML.

Informations préalables

  • Aucune compétence en matière de programmation n'est nécessaire.
  • Une connaissance de base du code KML est utile, mais aucune compétence avancée n'est requise.

Installer le logiciel

La première étape consiste à installer le logiciel jEdit et l'environnement d'exécution Java (JRE, Java Runtime Environment) sur lequel il repose. Vous devez également télécharger un fichier dont vous aurez besoin à une étape ultérieure du didacticiel.

Installez Java Runtime Environment (JRE) :

  1. Accédez à http://www.java.com, puis cliquez sur Téléchargement gratuit de Java.
  2. Suivez les instructions d'installation de JRE.
    Remarque : JRE est peut-être déjà installé sur votre ordinateur. Ignorez tout message indiquant que Java est incompatible avec votre navigateur. Téléchargez et installez tout de même JRE.

Installez jEdit :

  1. Accédez à http://www.jedit.org, puis cliquez sur le lien Download (Téléchargement) dans l'angle supérieur droit de la page.
  2. Sélectionnez la dernière version stable en haut de la page. À la date de rédaction de ce didacticiel, il s'agit de jEdit 5.0.0.
  3. Installez jEdit sur votre ordinateur :
    1. Sous Windows, téléchargez et exécutez le programme d'installation correspondant à votre système d'exploitation.
      Remarque : Lors de la procédure d'installation sous Windows, conservez tous les paramètres par défaut, sauf l'option "Démarrer automatiquement le serveur jEdit au démarrage de l'ordinateur", que vous devez décocher. Cette option n'est pas requise. En la décochant, vous évitez que des programmes superflus ne s'exécutent au démarrage de l'ordinateur.
    2. Sous Mac OS X, téléchargez le fichier .dmg et ouvrez-le, puis copiez le fichier jEdit.app dans votre dossier "Applications". Si le message d'erreur "jEdit.app est endommagé et ne peut pas être ouvert" s'affiche, accédez aux préférences système OS X Sécurité et confidentialité et sélectionnez Autoriser les applications téléchargées de : N'importe où.

Téléchargez le fichier d'abréviations :

  1. Right-click the link below and select Save As, Save Link As, or Save Target As, depending on your browser.

    kml_superabbrevs_gx.abv - jEdit Super Abbreviations for KML
     
  2. Enregistrez le fichier à un emplacement de votre disque dur que vous retrouverez facilement par la suite.

    Remarque : Il ne s'agit pas seulement d'un fichier texte. Il contient également du code binaire. Par conséquent, ne vous inquiétez pas si certains caractères étranges s'affichent lorsque vous l'ouvrez dans un éditeur de texte.


Configurer jEdit pour l'édition de code KML

Ouvrez la fenêtre "Options générales" :

  1. Si vous ne l'avez pas déjà fait, ouvrez jEdit.
  2. Dans le menu Utilities (Utilitaires), sélectionnez Global Options (Options générales), puis l'onglet Global Options.
Capture d'écran de jEdit : menu

Configurez jEdit pour que les fichiers KML soient traités comme des fichiers XML :

  1. Dans la fenêtre "Global Options", accédez au dossier "jEdit" dans la liste de gauche, puis sélectionnez la page Editing (Édition).
  2. Dans la liste déroulante "Change settings for mode:" (Modifier les paramètres pour le mode :), sélectionnez xml.
  3. Décochez la case Use default settings (Utiliser les paramètres par défaut).
  4. Dans la moitié inférieure de la page, repérez l'option "File name glob:" (Extension(s) associée(s) à ce mode :).
  5. Ajoutez ,kml entre les accolades, de sorte que la ligne se présente comme suit :

*.{xml,xhtml,xsd,qrc,ui,docbook,kml}

  1. Cliquez sur Apply (Appliquer) en bas de la fenêtre "Global Options".

Définissez les options d'édition du code XML (et KML) :

REMARQUE : Cette étape est FACULTATIVE. Nous vous recommandons d'appliquer les paramètres ci-dessous pour que votre code KML respecte les consignes Google en matière de style KML. Toutefois, si vous utilisez jEdit pour d'autres tâches d'édition XML qui nécessitent des paramètres différents, vous pouvez passer directement à la section suivante.

  1. Si ce n'est pas déjà fait, accédez à la page "Editing" de la fenêtre "Global Options".
  2. Assurez-vous que dans la liste déroulante Change settings for mode:, l'option xml est sélectionnée.
  3. Définissez la valeur Tab width (Profondeur de tabulation) sur 2.
  4. Définissez la valeur }Indent width (Retrait) sur 2.
  5. Cochez la case Soft (emulated with spaces) tabs (Tabulation « souple » (émulée avec des espaces)).
  6. Dans Default edit mode:, sélectionnez xml.
  7. Les options d'édition du mode xml doivent désormais être identiques à celles illustrées ci-dessous. Cliquez sur Appliquer en bas de la fenêtre "Global Options".
Capture d'écran de jEdit : fenêtre

Sélectionnez UTF-8 comme méthode de codage des caractères par défaut :

REMARQUE : Cette étape est FACULTATIVE. UTF-8 est une méthode standard de codage des caractères qui fonctionne sur la plupart des systèmes. Nous recommandons cette méthode pour le code KML, surtout si vous prévoyez d'utiliser des caractères internationaux. Toutefois, si vous utilisez jEdit pour d'autres types de tâches et ne voulez pas sélectionner UTF-8 comme méthode de codage des caractères par défaut, vous pouvez passer directement à la section suivante. Dans un tel cas, n'oubliez pas de définir le codage UTF-8 chaque fois que vous créez ou modifiez un fichier KML. Pour ce faire, accédez au menu "Utilities", puis sélectionnez "Buffer Options" (Options du tampon). Dans la liste déroulante "Character Encoding" (Encodage de caractères), sélectionnez "UTF-8".

  1. Dans le menu Utilities, sélectionnez Global Options. Dans l'onglet Global Options, sélectionnez Encodings.
  2. Cliquez sur la liste déroulante Default character encoding: (Encodage de caractères par défaut :).
  3. Sélectionnez UTF-8 dans la liste.
  4. Cliquez sur Apply (Appliquer) en bas de la fenêtre "Global Options".
    Remarque : Si des fichiers KML sont actuellement ouverts, vérifiez qu'ils sont au format UTF-8 dans Utilities > Buffer Options... (Options du tampon…) > Character encoding (Encodage de caractères).
Capture d'écran de jEdit : fenêtre
  1. Cliquez sur OK pour enregistrer les modifications et fermer la fenêtre "Global Options".


Installer les plug-ins jEdit

  1. Ouvrez jEdit, cliquez sur le menu Plugins, puis sélectionnez Plugin Manager (Gestionnaire de plugins).
  2. Dans la fenêtre "Plugin Manager", cliquez sur l'onglet Install (Installation).
  3. Sélectionnez les plug-ins suivants :
    • SuperAbbrevs
    • XML  (Remarque : les plug-ins associés suivants sont automatiquement sélectionnés : CommonControls, EclipseIcons, ErrorList, SideKick et XercesPlugin.)
Capture d'écran de jEdit : gestionnaire de plug-ins, installation des plug-ins
  1. Cliquez sur le bouton Install (Installer) pour télécharger et installer les plug-ins.
  2. Dans l'onglet "Manage" (Gestion), vérifiez qu'ils sont tous bien installés : SuperAbbrevs, XML, etc.
  3. Une fois l'installation terminée, quittez le gestionnaire de plug-ins en cliquant sur le bouton Close (Fermer).

    Remarque : Si le téléchargement des plug-ins est lent, n'avance pas ou génère une erreur, sélectionnez un autre serveur de téléchargement en suivant les étapes ci-dessous :
    1. Arrêtez le téléchargement en cliquant sur Stop.
    2. Cliquez sur le bouton Download Options (Options de téléchargement).
    3. Cliquez sur Update Mirror List (Mettre à jour la liste des miroirs).
    4. Sélectionnez un lieu à proximité du vôtre.
    5. Cliquez sur OK.
    6. Sélectionnez et installez les plug-ins jEdit en exécutant à nouveau les étapes 1 à 6 ci-dessus.


Configurer les plug-ins

Ouvrez la fenêtre "Plugin Options" (Options des plug-ins) :

  1. Dans le menu Plugins, sélectionnez Plugin Options.

Configurez le plug-in SideKick :

  1. Dans la liste de gauche, cliquez sur le dossier du plug-in SideKick, puis développez-le.
  2. Sous "SideKick", sélectionnez General (Générales).
  3. Sous Auto parsing Settings (Paramètres d'analyse automatique), cochez la case Parse on buffer save (Analyser lors de l'enregistrement de tampon).
  4. Toujours sous Auto parsing Settings, cochez la case Parse on keystroke (Analyser lors de la frappe).
  5. Réglez le curseur Après la dernière touche enfoncée, attendre (secondes) sur 1 seconde.
    Remarque : Vous pouvez réajuster ultérieurement ce paramètre pour modifier le délai d'attente entre la fin de la saisie et la vérification des erreurs du fichier KML.
  6. Cliquez sur Apply (Appliquer) en bas de la fenêtre "Plugin Options".
Capture d'écran de jEdit : options des plug-ins, SideKick

Configurez le plug-in Error List :

  1. Dans la liste de gauche, cliquez sur le plug-in Error List.
  2. Cochez la case Automatically display on error (Afficher automatiquement lors d'une erreur) (déjà cochée par défaut).
  3. Cochez la case Auto-close on no errors (Fermer automatiquement si pas d'erreur).
  4. Cochez la case Auto-refocus on Text Area (Redonner automatiquement le focus à la zone de texte).
  5. Cochez la case Show error icons in the gutter (Afficher les icônes d'erreur dans la marge).
  6. Cliquez sur Apply (Appliquer) en bas de la fenêtre "Plugin Options".
Capture d'écran de jEdit : options des plug-ins, Error List

Configurez le plug-in Super Abbreviations :

  1. Dans la liste de gauche, cliquez sur le dossier du plug-in SuperAbbrevs, puis développez-le.
  2. Sous "SuperAbbrevs", sélectionnez Abbreviations (Abréviations).
  3. Dans le menu déroulant Select Mode (Sélectionnez un mode), sélectionnez xml.
  4. Cliquez sur le bouton Import normal abbrevs (Importer les abréviations normales) dans l'angle inférieur droit.
  5. Cliquez sur le bouton Import from file (Importer à partir du fichier). Il s'agit du quatrième bouton près des boutons +, - et Edit (Modifier) situés dans la partie inférieure de la fenêtre.

    Remarque : Dans certaines versions de jEdit, le bouton Import from file est invisible, mais vous pouvez tout de même cliquer dessus. Si vous ne voyez pas ce bouton à droite des trois autres, placez la souris au centre du bouton (+) ou (-), puis déplacez-la lentement à l'horizontale vers la droite (en traversant le bouton "Edit"), jusqu'à ce qu'un petit carré apparaisse sous la souris. Cliquez sur ce carré. Dans certains systèmes, l'info-bulle "Import from file" s'affiche lorsque la souris se trouve au bon endroit.
Capture d'écran de jEdit : options des plug-ins, SuperAbbrevs, importation des abréviations
  1. Dans la fenêtre Ouvrir, accédez à l'emplacement où vous avez enregistré le fichier kml_superabbrevs_gx.abv. Sélectionnez-le, puis cliquez sur le bouton Open (Ouvrir).
  2. Cliquez sur Apply (Appliquer) en bas de la fenêtre "Plugin Options".
Capture d'écran de jEdit : options des plug-ins, SuperAbbrevs, importation terminée
  1. Fermez la fenêtre "Plugin Options" en cliquant sur OK.


Ancrer les plug-ins

Vous allez ancrer le plug-in Error List en bas de la fenêtre jEdit, et le plug-in SideKick à gauche de cette même fenêtre. Cela vous permettra d'accéder facilement à ces plug-ins pendant l'édition du code KML.

Ancrez le plug-in Error List :

  1. Dans le menu Plugins, sélectionnez ErrorList > Error List (Liste des erreurs).
  2. Repérez la fenêtre Error List qui s'affiche alors. Il est possible qu'elle se trouve derrière la fenêtre principale de jEdit.
  3. Cliquez sur la petite flèche noire pointant vers le bas dans l'angle supérieur gauche de la fenêtre.
  4. Sélectionnez Dock at Bottom (Ancrée en bas).
  5. La fenêtre "Error List" est maintenant ancrée en bas de la fenêtre principale de jEdit. Vous pouvez la développer ou la réduire en cliquant sur le bouton Error List dans la partie inférieure.

Ancrez le plug-in SideKick :

  1. Dans le menu Plugins, sélectionnez SideKick > Sidekick.
  2. Repérez la fenêtre Sidekick qui s'affiche alors.
  3. Cliquez sur la petite flèche noire pointant vers le bas dans l'angle supérieur gauche de la fenêtre.
  4. Sélectionnez Dock at Left (Ancrée à gauche).
  5. La fenêtre "Sidekick" est maintenant ancrée à gauche de la fenêtre principale de jEdit. Vous pouvez l'activer en cliquant sur le bouton Sidekick situé à gauche, sous le bouton "File Browser" (Explorateur).

La fenêtre jEdit doit maintenant comporter un bouton "Error List" en bas et un bouton "Sidekick" à gauche, comme illustré ci-dessous. Pour ouvrir la fenêtre de l'un des plug-ins, cliquez sur le bouton correspondant.

Capture d'écran de jEdit : ancrage des plug-ins

Créer des raccourcis clavier pour SupperAbbrevs

Dans cette section, vous allez définir des raccourcis clavier pour le plug-in SuperAbbrevs. Vous pourrez ainsi créer rapidement votre code KML avec un minimum de saisie.

Accédez aux paramètres des raccourcis de SupperAbbrevs :

  1. Dans le menu Utilities, sélectionnez Global Options, puis l'onglet Global Options.
  2. Sélectionnez la page Shortcuts (Raccourcis) dans la liste.
  3. Dans le menu déroulant Éditer les raccourcis situé en haut de la fenêtre, sélectionnez Plugin : SupperAbbrevs.

Pour la commande "Shift Tab", définissez le raccourci "S+TAB" :

  1. Sur la première ligne, qui correspond à Shift Tab, cliquez sur la cellule du milieu pour modifier le raccourci principal. Normalement, cette colonne est intitulée Primary Shortcut (Raccourci principal), mais elle peut être vide.
  2. Dans la boîte de dialogue Specify Shortcut (Définir le raccourci) qui s'affiche, appuyez simultanément sur les touches Maj+Tab de façon à créer le raccourci S+TAB.
  3. Fermez la boîte de dialogue en cliquant sur OK.
    Remarque : Un avertissement peut s'afficher pour indiquer que le raccourci "S+TAB" est déjà attribué à une autre commande. Si vous n'en avez pas besoin pour une autre tâche, vous pouvez ignorer l'avertissement.

Pour la commande "Show expansion dialog" (Afficher la boîte de dialogue d'expansion), définissez le raccourci "C+ENTER" :

  1. Sur la deuxième ligne, qui correspond à Show expansion dialog, cliquez sur la cellule du milieu pour modifier le raccourci principal.
  2. Dans la boîte de dialogue "Specify Shortcut", appuyez simultanément sur les touches Ctrl+Entrée (Commande+Entrée sur un clavier MAC) de façon à créer le raccourci C+ENTER.
  3. Fermez la boîte de dialogue en cliquant sur OK.
    Remarque : Un avertissement peut s'afficher pour indiquer que le raccourci "C+ENTER" est déjà attribué à une autre commande. Si vous n'en avez pas besoin pour une autre tâche, vous pouvez ignorer l'avertissement.

Pour la commande "Tab", définissez le raccourci "TAB" :

  1. Sur la troisième ligne, qui correspond à Tab, cliquez sur la cellule du milieu pour modifier le raccourci principal.
  2. Dans la boîte de dialogue "Specify Shortcut", appuyez sur la touche Tab pour créer le raccourci TAB.
  3. Fermez la boîte de dialogue en cliquant sur OK.
    Remarque : Un avertissement peut s'afficher pour indiquer que le raccourci "TAB" est déjà attribué à une autre commande. Si vous n'en avez pas besoin pour une autre tâche, vous pouvez ignorer l'avertissement.
Capture d'écran de jEdit : fenêtre
  1. Fermez la fenêtre des options en cliquant sur OK.

Vous pouvez maintenant commencer à éditer et à valider votre code KML.

En-têtes de schéma KML :

Lorsque vous créez un fichier KML à l'aide de SuperAbbrevs (en suivant les instructions ci-dessous), les outils de validation et de vérification des erreurs fonctionnent comme prévu. En revanche, si vous ouvrez un fichier KML existant ou si vous collez dans votre fichier du code KML que vous avez copié depuis Google Earth ou autre, il se peut que le code ne contienne pas toutes les informations d'en-tête de schéma nécessaires au fonctionnement des plug-ins. Dans ce cas, remplacez la ligne <kml> de votre fichier, soit en utilisant SuperAbbrevs, soit en copiant et en collant l'intégralité de la balise <kml> ci-dessous :

En-tête de schéma KML :

<?xml version="1.0" encoding="UTF-8"?>

<kml xmlns="http://www.opengis.net/kml/2.2"
     xmlns:gx="http://www.google.com/kml/ext/2.2"
     xmlns:kml="http://www.opengis.net/kml/2.2"
     xmlns:atom="http://www.w3.org/2005/Atom"
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xsi:schemaLocation=
       "http://www.opengis.net/kml/2.2
        http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd
        http://www.google.com/kml/ext/2.2
        https://developers.google.com/kml/schema/kml22gx.xsd
        http://www.w3.org/2005/Atom
        http://schemas.opengis.net/kml/2.2.0/atom-author-link.xsd">

<!-- …Insert your KML code here... -->

</kml>

L'en-tête de schéma KML est également fournie dans le fichier suivant : kml_schema_header_gx.txt




Mise en pratique

Dans cette section, vous allez apprendre à créer un fichier KML de base à l'aide de SuperAbbrevs et d'autres outils. Vous allez insérer du code erroné de façon à constater l'utilité des plug-ins Error List et SideKick dans le débogage des fichiers KML.

Commencez un nouveau fichier KML :

  1. Ouvrez un nouveau "tampon" (fichier) en cliquant sur le bouton "New" (Nouveau) de la barre d'outils ou en sélectionnant le menu File (Fichier), puis l'option New.
  2. Cliquez sur le bouton "Save" (Enregistrer) de la barre d'outils ou sélectionnez le menu File, puis l'option Save As... (Enregistrer sous…).
  3. Dans la boîte de dialogue "Save", sélectionnez l'emplacement où vous voulez enregistrer le fichier (par exemple, C:\Users\<nom d'utilisateur>\Desktop sur un PC).
  4. Saisissez le nom du nouveau fichier (par exemple, coolmap.kml).
  5. Cliquez sur le bouton Save pour enregistrer le fichier et fermer la boîte de dialogue.
    Remarque : En enregistrant le fichier avec l'extension .kml, vous indiquez que celui-ci doit être édité en mode KML dans jEdit. Par conséquent, vous devriez constater que le mode d'édition sélectionné est "XML" dans la barre "Sidekick" située à gauche, ainsi que dans la boîte de dialogue "Buffer Options" (Utilities > Buffer Options).

Créez la structure de base du fichier KML à l'aide de SuperAbbrevs :

  1. Sur la première ligne du fichier, saisissez kml, puis appuyez sur Tab.
  2. Les balises <xml>, <kml> et </kml> doivent s'afficher, le curseur étant positionné entre les balises <kml> et </kml>.
    REMARQUE : Lorsque vous validez un fichier KML pour la première fois, les fichiers de schéma doivent être téléchargés dans le plug-in XML. Lorsque la boîte de dialogue intitulée "Getting resource from remote server" (Obtention de la ressource à partir du serveur distant) s'affiche, cliquez sur Yes (Oui) pour chacune des ressources (généralement quatre en tout). Les fichiers nécessaires sont téléchargés et mis en cache.
  3. Saisissez doc, puis appuyez sur Tab.
    Les balises <Document…>, <name> (nom) et </Document> doivent s'afficher, avec la variable "doc_id" en surbrillance.
  4. Sans déplacer le curseur, saisissez l'identifiant de votre document KML (par exemple, kml_doc01).
  5. Appuyez sur Tab pour passer à la variable suivante ("doc_name").
  6. Saisissez le nom de votre document tel qu'il doit apparaître dans la liste des calques, par exemple Mon premier fichier KML validé.
  7. Appuyez sur Tab pour déplacer le curseur à la position suivante, c'est-à-dire entre les balises <name< et </Document<.
  8. Saisissez atom, puis appuyez sur Tab.
    Les balises d'attribution Atom doivent s'afficher.
  9. Saisissez le nom de l'auteur et l'URL de votre site Web ou de votre page KML (par exemple, http://www.google.fr/earth/outreach), en appuyant sur Tab pour passer de l'un à l'autre. Pour revenir à la variable précédente, appuyez sur Maj + Tab.
  10. Une fois toutes les valeurs d'attribution saisies, appuyez sur Tab pour positionner le curseur en fin de ligne. Ensuite, appuyez sur Entrée pour ajouter une ligne vierge entre les balises <atom> et </Document>.
  11. Enregistrez le fichier en cliquant sur le bouton "Save", en appuyant sur Ctrl + S ou en sélectionnant File > Save.
Capture d'écran de jEdit : exemple de document KML

Ajoutez du contenu au fichier à l'aide de SuperAbbrevs :

  1. Saisissez point, puis appuyez sur Tab.
  2. Une balise <Placemark> (Repère) doit s'afficher, ainsi qu'un grand nombre de sous-balises.
  3. Saisissez l'identifiant du repère, par exemple, point_01, puis appuyez sur Tab.
  4. Saisissez le nom du repère, par exemple Mon lieu préféré, puis appuyez sur Tab.
  5. Saisissez la description du repère, par exemple Bonjour le monde !, puis appuyez sur Tab.
  6. Saisissez l'identifiant du style du repère, par exemple style_favorites (styles favoris), puis appuyez sur Tab. Remarque : vous n'avez pas encore créé de style, mais ce point est abordé un peu plus loin.
  7. Ce repère étant un simple point, attribuez-lui une longitude (par exemple, 12.345), puis appuyez sur Tab. Attribuez-lui ensuite une latitude (par exemple, 67.890), puis appuyez de nouveau sur Tab pour terminer la création du repère.
  8. Répétez les étapes ci-dessus pour créer un autre point de repère de votre choix.
  9. Enregistrez le fichier en cliquant sur le bouton "Save", en appuyant sur Ctrl + S ou en sélectionnant File > Save.
Capture d'écran de jEdit : exemples de repères KML

Pour afficher la liste des abréviations disponibles, accédez au menu Plugins, puis sélectionnez Options des plugins > SuperAbbrevs > Abbreviations. Dans la liste déroulante Select Mode (Sélectionnez un mode), sélectionnez xml. La liste d'abréviations KML qui s'affiche provient du fichier que nous vous avons fourni et que vous avez installé. Si vous le souhaitez, vous pouvez modifier ces abréviations ou en ajouter.

Créez du contenu à l'aide de la saisie semi-automatique des balises :

Le fichier d'abréviations que nous vous avons fourni pour SuperAbbrevs contient seulement les structures et les combinaisons de balises KML les plus courantes. De nombreuses autres possibilités s'offrent à vous si vous organisez vos propres balises. La saisie semi-automatique des balises est particulièrement utile dans ce domaine. À titre d'exemple, vous allez ajouter des balises de style à votre fichier. Un grand nombre de balises "Style" sont disponibles dans SuperAbbrevs, mais pour les besoins de cet exemple, vous allez en créer une sans recourir à ce plug-in.

  1. Localisez le premier repère de votre fichier (aux environs de la ligne 6). Insérez au moins trois lignes vierges au-dessus de ce repère, puis placez le curseur au milieu des lignes vierges.
  2. Saisissez une balise "Style" d'ouverture <Style id="style_favorites">, puis appuyez sur Entrée.
  3. Si vous avez utilisé un autre identifiant de style dans vos repères, insérez-le à la place de "style_favorites". Par ailleurs, un message d'erreur s'affiche dans Error List pour signaler que la balise </Style> n'est pas fermée. Ignorez-le, car vous allez prochainement fermer cette balise.
  4. Sur la ligne suivante, saisissez <IconStyle> (Style d'icône), puis appuyez sur Entrée.
  5. Sur la ligne suivante, saisissez <Icon> (Icône), puis appuyez sur Entrée.
  6. Sur la ligne suivante, saisissez <href>, puis indiquez l'URL d'un fichier d'icône, par exemple http://maps.google.fr/mapfiles/kml/shapes/cycling.png.
  7. Maintenant, saisissez </. La balise de fermeture </href> est insérée automatiquement.
  8. Appuyée sur Entrée pour passer à la ligne suivante. Saisissez </. La balise de fermeture </Icon> est insérée automatiquement.
  9. Saisissez </ deux autres fois pour que les balises </IconStyle> et </Style> soient insérées automatiquement.
  10. Puisque vous avez fermé toutes les balises, toutes les erreurs signalées dans Error List doivent avoir disparu. Si des messages d'erreur persistent, recherchez les balises qui ne seraient pas correctement fermées, qui contiendraient des majuscules mal placées, ou qui seraient au mauvais endroit ou dans le désordre.
  11. Enregistrez le fichier en cliquant sur le bouton "Save", en appuyant sur Ctrl + S ou en sélectionnant File > Save.
Capture d'écran de jEdit : exemple de style KML

Corrigez les retraits de ligne à l'aide de l'indentation XML :

Regardez les balises de la section <Style> que vous avez créée. Vous voyez que les retraits et les sauts de ligne sont incorrects. Il serait facile de les corriger manuellement à l'aide des touches Entrée (nouvelle ligne), Tab (retrait) et Maj + Tab (annulation du retrait). Cependant, si vous avez besoin de corriger tous les retraits d'un fichier KML ou XML volumineux, il existe une façon plus simple de procéder.

  1. Dans le menu Plugins, sélectionnez XML, puis Indentation XML.
  2. Remarquez que toutes les lignes du fichier comportent désormais des retraits de taille appropriée. De plus, les balises <atom> ont été réparties sur plusieurs lignes.
Capture d'écran de jEdit : exemple de style KML, avec retraits

Validez le code et détectez les erreurs à l'aide d'Error List :

  1. Placez le curseur sur une ligne vierge, juste en dessous de la dernière balise </Placemark>, mais au-dessus de la balise de fermeture </Document>.
  2. Saisissez <foo>.
  3. Consultez le panneau Error List affiché en bas de la fenêtre jEdit. S'il ne s'est pas développé automatiquement, ouvrez-le en cliquant sur le bouton "Error List".
  4. Remarquez le message d'erreur suivant (ignorez l'autre pour l'instant) :

    The element type "foo" must be terminated by the matching end-tag "</foo>" (Le type d'élément "foo" doit se terminer par la balise de fermeture correspondante "
    ")

Capture d'écran de jEdit : exemple d'erreur KML, Error List
  1. Maintenant, corrigez cette erreur. Après la balise <foo>, saisissez </. La balise de fermeture </foo> est automatiquement insérée, ce qui donne : <foo></foo>.
  2. Consultez à nouveau le panneau Error List. L'erreur précédemment citée a disparu, car vous avez fermé la balise.
  3. Consultez le message d'erreur restant, qui indique ce qui suit :

    … Invalid content was found starting with element ‘foo'… (Contenu non valide commençant par l'élément "foo")

    Ce message indique que <foo> ne constitue pas une balise valide d'après le schéma KML.
  4. Supprimez les balises <foo></foo>. Le message d'erreur disparaît.

Inspectez la structure du fichier à l'aide de SideKick :

  1. Votre fichier KML doit maintenant ressembler à celui reproduit ci-dessous.
  2. Cliquez sur le bouton "Sidekick" à gauche de la fenêtre jEdit. Le panneau Sidekick, ancré à gauche, s'ouvre.
  3. Examinez l'arborescence DOM de base du fichier KML (DOM = Document Object Model, modèle objet de document). Vous devriez voir la balise de premier niveau kml avec, en dessous, l'unique balise Document. Cette dernière contient les balises name (nom), atom:author (auteur), atom:link (lien), Style et deux balises Placemark (Repère).
  4. Développez l'arborescence de la balise Style en cliquant sur l'icône située à gauche de celle-ci dans l'arborescence SideKick. L'icône pivote vers le bas, et la balise IconStyle (Style d'icône) s'affiche. De même, cliquez sur l'icône de la balise "IconStyle" pour afficher la balise Icon (Icône), puis procédez de la même façon pour afficher la balise href.
  5. Développez l'une des balises Placemark (Repère) pour afficher ses sous-balises, y compris name (nom), snippet (extrait), description, styleUrl et Point. Vous pouvez développer la balise "Point" pour afficher la balise coordinates (coordonnées).
  6. La capture d'écran ci-dessous représente l'arborescence DOM telle qu'elle figure dans SideKick. Cette arborescence vous permet de parcourir la structure des fichiers KML longs et complexes. Ainsi, vous comprenez mieux l'organisation du contenu KML et vous repérez plus facilement les erreurs de fermeture de balise, de structure, etc.

<?xml version="1.0" encoding="UTF-8"?>

<kml xmlns="http://www.opengis.net/kml/2.2" xmlns:gx="http://www.google.com/kml/ext/2.2" xmlns:kml="http://www.opengis.net/kml/2.2" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/kml/2.2 http://schemas.opengis.net/kml/2.2.0/ogckml22.xsd http://www.google.com/kml/ext/2.2 https://developers.google.com/kml/schema/kml22gx.xsd http://www.w3.org/2005/Atom http://schemas.opengis.net/kml/2.2.0/atom-author-link.xsd">

  <Document id="kml_doc01">
    <name>Mon premier fichier KML validé</name>
    <atom:author>
      <atom:name>A. Googler</atom:name>
    </atom:author>
    <atom:link href="http://www.google.fr/earth/outreach/" />

    <Style id="style_favorites">
      <IconStyle>
        <Icon>
          <href>http://maps.google.fr/mapfiles/kml/shapes/cycling.png</href>
        </Icon>
      </IconStyle>
    </Style>

    <Placemark id="point_01">
      <name>Mon lieu préféré</name>
      <snippet></snippet>
      <description><![CDATA[Bonjour le monde !]]></description>
      <styleUrl>#style_favorites</styleUrl>
      <Point>
        <coordinates>12.345,67.890,0</coordinates>
      </Point>
    </Placemark>

    <Placemark id="point_02">
      <name>Deuxième lieu préféré</name>
      <snippet></snippet>
      <description><![CDATA[Bonjour Google Earth !]]></description>
      <styleUrl>#style_favorites</styleUrl>
      <Point>
        <coordinates>12.543,67.098,0</coordinates>
      </Point>
    </Placemark>

  </Document>

</kml>

Capture d'écran de jEdit : exemple de code KML terminé, arborescence DOM dans SideKick

Chargez votre fichier KML dans Google Earth :

  1. Ouvrez Google Earth sur votre ordinateur. Si la dernière version n'est pas déjà installée, téléchargez-la sur www.google.fr/earth/.
  2. Dans l'explorateur de fichiers de votre ordinateur (Explorateur Windows, OSX Finder, etc.), accédez au fichier KML que vous venez de créer. Double-cliquez sur celui-ci pour l'ouvrir, ou faites-le glisser vers Google Earth.
  3. Le fichier doit s'ouvrir dans Google Earth. Les deux points que vous avez créés doivent s'afficher, avec les icônes représentant un vélo que vous avez définies dans votre style.
Capture d'écran de Google Earth : exemple de fichier KML issu de jEdit

Les coordonnées que nous vous avons fournies ayant été choisies au hasard à titre d'exemple, les repères se trouvent dans la mer.

Si votre fichier n'a pas le même aspect dans Google Earth, ouvrez-le à nouveau dans jEdit, puis recherchez les différences. Par exemple, si les icônes ne s'affichent pas (mais sont remplacées par des punaises jaunes par défaut), c'est peut-être que vous n'avez pas correctement saisi le contenu des balises <Style>, ou que l'orthographe et les majuscules des identifiants de style ne sont pas exactement les mêmes dans la balise "Style" et dans les balises <styleUrl> de chacun des repères.



Validation stricte du code KML

Les outils décrits ci-dessus permettent une validation efficace du code KML, mais sans tenir compte des détails les plus infimes et les plus obscurs des spécifications KML officielles. En effet, de tels détails n'ont généralement aucune incidence sur l'affichage du code KML.

Pour une vérification approfondie et une validation très stricte, utilisez l'outil en ligne gratuit de Glados. Celui-ci vous permet d'importer un fichier KML (ou d'indiquer l'URL correspondante). Vous obtenez un rapport détaillé des erreurs de schéma KML ou de tout autre problème présent dans le fichier.

L'outil Glados KML Validator est disponible à l'adresse www.kmlvalidator.com.



Autres outils

Les utilisateurs de Windows peuvent également utiliser un logiciel gratuit nommé Notepad++ pour éditer du code KML. Pour en savoir plus ou pour télécharger le logiciel, consultez le site notepad-plus-plus.org.

Pour configurer Notepad++ de façon que les fichiers KML soient interprétés comme du code XML, procédez comme suit :

  1. Dans Notepad++, cliquez sur le menu Paramétrage, puis sélectionnez Configurateur de coloration syntaxique.
  2. Dans la liste Langage de la boîte de dialogue, sélectionnez XML.
  3. Dans le champ Ext. utilisateur qui s'affiche, saisissez kml de façon à l'ajouter aux extensions.
  4. Cliquez sur le bouton Enregistrer &Fermer pour fermer la boîte de dialogue.

Nous vous conseillons d'installer le plug-in XML Tools de Notepad++, puis d'activer sa fonctionnalité Tag auto-close (Fermeture automatique des balises). XML Tools permet également d'organiser le code KML et d'ajouter des retraits grâce à l'option Pretty Print (XML only - with line breaks) (Impression élégante pour XML uniquement, avec sauts de ligne). Notepad++ inclut d'autres plug-ins utiles, parmi lesquels TextFX, Compare et HTML Tag.



Vidéos

Les deux vidéos ci-dessous proviennent de la version précédente de ce didacticiel. La plupart des informations qu'elles contiennent sont encore pertinentes, mais certains des écrans et des procédures ont changé. Les instructions du didacticiel ci-dessus sont exactes à la date de sa rédaction (février 2013), mais les vidéos sont obsolètes.

Vidéo : Setting up jEdit Plugins to Validate KML (Configuration des plug-ins jEdit pour valider le code KML)

Cette vidéo explique comment configurer les plug-ins jEdit pour qu'ils fonctionnent avec des fichiers XML, et comment utiliser le schéma OGC KML 2.2 pour valider les documents en cours de frappe.


Vidéo : Error checking KML with jEdit and using Super Abbreviations (Vérification des erreurs d'un fichier KML dans jEdit à l'aide de Super Abbreviations)

Cette vidéo présente les étapes de vérification des erreurs dans un exemple de fichier KML, y compris en ajoutant l'en-tête de schéma nécessaire pour détecter les erreurs de schéma dans jEdit. Voici les liens vers les deux fichiers utilisés dans le didacticiel :




Discussions et commentaires

Vous avez des questions à propos de ce didacticiel ? Vous aimeriez nous faire part de vos commentaires ? Rendez-vous sur le groupe de discussion Google Earth Solidarité pour partager vos commentaires.



Et maintenant ?

Vous voulez tester vos nouvelles compétences ? Dans les didacticiels suivants, vous vous entraînerez à modifier manuellement des codes KML :