<oXygen/> User Guide |
Si l'édition d'un document est une procédure aisée, il y a quelques points dont vous devez avoir connaissance qui vous rendront plus productif lors de l'édition.
Unicode donne un numéro unique pour chaque caractère, peu importe quelle plateforme, quel programme, quelle langue. Unicode est un standard reconnu internationalement, adopté par les leaders du secteur. Unicode est requis par les standards modernes comme XML, Java, ECMAScript (JavaScript), LDAP, CORBA 3.0, WML, etc., et est la façon officielle d'implémenter ISO/IEC 10646.
Il est supporté par de nombreux systèmes d'exploitation, tous les navigateurs modernes, et de nombreux autres produits. L'émergence du standard Unicode, et la disponibilité des outils le supportant, sont parmi les plus importants courants actuels de la technologie logicielle dans le monde. Incorporer Unicode dans des applications client-server ou multi-couches et les sites web offre des réductions de coûts signifiques par rapport à l'utilisation de jeux de caractères précédents.
En tant qu'éditeur XML moderne, oXygen offre le support pour le standard Unicode standard. Permettant à votre application XML d'être ciblée vers de multiples plateformes, langues et pays sans re-développement. En interne l'éditeur oXygen utilise des caractères 16bit couvrant le jeu de caractères Unicode.
Au chargement de documents de type XML, XSL, XSD et DTD, oXygen lit le prolog du document pour déterminer le type d'encodage spécifié. Cela est ensuite utilisé pour ordonner au Java Encoder de charger le support correspondant et de sauver en utilisant le jeu de caractères spécifié. Au cas où le type d'encodage ne peut être déterminé, oXygen va afficher le dialogue des "Encodages Java disponibles". Le dialogue des "Encodages Java disponibles" offre une liste de tous les codages supportés par la plateforme Java.
Bien que dans la plupart des cas vous utiliserez UTF-8, simplement changer le nom de l'encodage va provoquer la sauvegarde du fichier avec le nouvel encodage. L'annexe Encodage des caractères Unicode offre un tableau qui donnent les noms Java de leurs équivalents communs. Elle explique aussi ce que vous devez taper dans le prolog XML pour que le document soit sauver dans l'encodage souhaité.
Pour éditer les documents écrits en Japonais ou Chinois, vous devrez changer la police pour en choisir une qui supporte les caractères spécifiques (une police Unicode). Pour la plateforme Windows, utiliser "Arial Unicode MS" ou "MS Gothic" est recommandé. Ne vous attendez pas à ce que Wordpad ou le Bloc-notes gèrent ces encodages. Utilisez Explorer ou Word pour examiner éventuellement les documents XML.
![]() | Note |
---|---|
La convention pour le nommage utilisé sous Java ne correspond pas toujours avec les noms communs utilisés par le standard Unicode. Par exemple, tandis qu'en XML on utilise encoding="UTF-8", en Java le même encodage a le nom "UTF8". |
La fonctionnalité Tag-insight intelligente de oXygen est un assistant à l'édition qui permet une identification et une insertion rapide et en ligne d'éléments, d'attributs et dans certains cas leurs options de paramétrage, de langages structurés.
L'assistant Tag-insight est automatiquement affiché à chaque fois que le caractère < est entré dans un document ou en sélectionnant CTRL+Espace sur un élément partiel ou le nom d'un attribut. Surligner un élément et presser la touche Entrée, insère à la fois les parties d'ouverture et de fermeture de l'élément surligné. Si la fonction Ajouter les éléments requis de Tag-insight est activée, tous les éléments que le nouvel élément doit contenir, comme spécifiée dans la DTD ou le schéma XML, sont insérés automatiquement dans le document. Après l'insertion le curseur est positionné directement avant le caractère > de la balise d'ouverture, si l'élément a des attributs, afin de permettre une insertion rapide de n'importe quel attribut supporté par l'élément, ou après le caractère > de la balise d'ouverture si l'élément n'a pas d'attributs. Presser la barre d'espace, directement après l'insertion de l'élément, va à nouveau afficher l'assistant. Dans ce cas les attributs supportés par cet élément seront affichés. Si un attribut supporte un ensemble fixe de paramètres, l'assistant va afficher la liste des paramètres valides. Si le réglage du paramètre est défini par l'utilisateur et par conséquent variable, l'assistant sera fermé pour permettre une insertion manuelle.
L'assistant de contenu peut être appelé à tout moment en pressant CTRL+Espace et la liste sensible au contexte des propositions sera affichée à n'importe quelle position du curseur dans le document édité à l'endroit où l'insertion d'un élément, attribut ou de la valeur d'un attribut a du sens. De tels endroits sont : n'importe où dans le nom d'une balise, ou au début du nom d'une balise dans un document XML, XML Schéma, DTD ou schéma Relax NG (syntaxe complète ou compacte), n'importe où dans le nom d'un attribut ou au début du nom d'un attribut dans tout document XML avec une grammaire associée, et avec les valeurs d'un attribut ou au début de valeurs d'un attribut dans des documents XML où les listes de valeurs possibles ont été définies pour cet élément dans la grammaire associée au document.
Le contenu de l'assistant Tag-insight est dépendant de la structure de l'élément donné dans un fichier DTD, schéma XML, schéma Relax NG (syntaxe complète ou compacte) ou NRL donné.
Le nombre et le type des éléments affichés par l'assistant est sensible à la position actuelle du curseur dans le document structuré. Les éléments fils affichés dans un élément donné sont définis par la structure de la DTD, du schéma XML, schéma Relax NG (syntaxe complète ou compacte) ou NRL spécifié. Tous les éléments qui ne sont pas des éléments fils de l'élément actuel sont retirés. Ce comportement s'applique aussi aux attributs des éléments et à leurs paramètres. Pour les schémas Relax NG, tous les éléments sont offerts à n'importe quelle position du document et dans une balise tous les attributs possibles pour cette balise sont affichés par l'assistant Tag-Insight (cela sera amélioré dans une future version).
La DTD, le schéma XML, le schéma Relax NG ou NRL utilisé pour remplir l'assistant Tag-insight est spécifié dans les méthodes suivantes, par ordre hiérarchique :
Depuis le fichier spécifié dans le sous-ensemble externe du prolog du document. Dans ce cas oXygen lit le prolog et trouve l'emplacement de la DTD, du schéma XML, du schéma Relax NG ou NRL.
Depuis le fichier spécifé dans le dialogue Tag-insight de oXygen. oXygen va lire les réglages Tag-insight quand le prolog n'arrive pas à donner ou trouver l'emplacement de la DTD, du schéma XML ou du schéma Relax NG.
En travaillant avec des documents qui ne spécifient pas de DTD, ou pour lesquels la DTD est inconnue ou n'existe pas, oXygen est capable d'apprendre et de traduire en une DTD, qui peut à son tour être sauvée dans un fichier pour offrir une DTD. En plus d'être utile pour une création rapide d'une DTD qui sera capable d'offre une source d'initialisation pour l'assistant Tag-insight, cette fonction peut être aussi utilisée pour produire des DTD pour les documents contenants des types d'éléments personnels.
Procédure 4.8. Pour créer une DTD :
Ouvrir le document structuré à partir duquel une DTD sera créée.
Sélectionner Ctrl+Shift+L). oXygen va apprendre la structure du document, et lorsqu'il aura fini il affichera "Apprentissage terminé" dans le panneau message de la barre de statut de l'éditeur.
-> (Sélectionner Ctrl+Shift+S) to save the DTD currently stored in memory to file.
-> (![]() | Note |
---|---|
La DTD résultante n'est uniquement valide que pour les documents contenants les éléments et structures définis par le document utilisé comme entrée pour la création de la DTD. Si les nouveaux types des éléments sont définis dans un document, ils doivent être ajoutés à la DTD afin de réussir la validation. |
Lorsqu'il n'y a pas d'accès internet disponible un ou plusieurs catalogues XML peuvent être ajoutés à la liste dans le dialogue en-dessous et les copies locales des fichiers DTD, schéma XML, schéma Relax NG et/ou NRL seront utilisées. Quand vous ajoutez ou effacez un catalogue XML à la liste des catalogues XML dans le panneau Options -> Préférences -> XML Catalog, vous devez relancer l'application pour que les modifications prennent effet.
L'option Préférer est utilisé pour spécifier si oXygen va essayer de résoudre d'abord la référence publique PUBLIC ou SYSTEM en utilisant les catalogues XML spécifiés. Si une référence PUBLIC ne se trouve dans aucun des catalogues alors une référence SYSTEM est recherchée. Le niveau de verbosité spécifie les types de messages de sortie affichés et peut avoir une ou plusieurs valeurs : debug, warn, info, erreur et fatal.
Si l'utilisateur n'a pas ajouté de catalogues XML à cette liste alorsOxygen va ajouter par défaut les catalogues intégrés pour les documents DocBook et TEI situés dans les sous-répertoires docbook et tei du répertoire de l'installation.
Dans les langages de formatage structurés, l'espace blanc entre les éléments, qui est créé par l'utilisation de la barre d'espacement, Tab ou l'insertion de multiples sauts de ligne par l'utilisation de Entrée, n'est pas reconnu par les outils d'analyse. Ceci signifie souvent que quand des documents structurés sont ouverts, ils sont arrangés comme une seule ligne sans saut de ligne, qui semble être un simple paragraphe.
Même si c'est une pratique tout à fait acceptable, elle rend l'édition difficile et augmente la probabilité d'erreurs introduites. Elle rend aussi l'identification des positions exactes des erreurs plus difficile. Formater et indenter, aussi appelé "Pretty Print", permet d'arranger proprement de tels documents, d'une façon qui est consistente et qui facilite la lecture à l'écran et sur l'impression.
Pretty print n'est en aucun cas associé avec la mise en page ou le formatage qui sera utilisée dans le document transformé. Cette mise en page est livrée avec la feuille de style XSL spécifiée au moment de la transformation.
Procédure 4.9. Pour formater et indenter un document :
Ouvrir ou rendre actif le document qui doit être formaté et indenté.
Sélectionner Ctrl+Shift+P). Durant la progression le panneau message de la barre de statut de l'éditeur indiquera "Pretty print en cours". À la fin, "Pretty print terminé" sera inscrit et le document sera arrangé.
-> (![]() | Note |
---|---|
Pretty Print peut formater des éléments vides comme une balise auto-fermante (par ex. <a/>) ou comme une balise régulière (par ex. <a></a> ). Il peut préserver l'ordre des attributs ou les classer alphabétiquement. Par ailleurs, l'utilisateur peut spécifier une liste d'éléments pour lesquels les espaces vides sont préservés exactement avant le Pretty print et une liste avec des éléments pour lesquels l'espace vide est éliminé. Tout cela peut être configuré depuis -> -> Editeur -> Format. |
Pretty Print nécessite que le document structuré soit "bien formé". Si le document n'est pas "bien formé" un message d'erreur est affiché. Le message va habituellement indiquer qu'un problème a été trouvée dans la forme et vous conseillera sur le type de problème. Il ne signalera pas la position générale de l'erreur, pour faire ceci utilisez la fonction "bien formé" en sélectionnant Ctrl+Shift+W).
-> (XPath est un langage pour traiter des différentes parties d'un document XML. XPath, comme le Document Object Model (DOM), modèle un document XML comme un arbre de nœuds. Une expression XPath est un mécanisme pour naviguer et sélectionner des nœud du document XML. Une expression XPath est d'une façon analogue à une requête d'un langage de requête structuré (SQL) utilisée pour sélectionner des enregistrements d'une base de données.
XPath modèle un document XML comme un arbre de nœuds. Il y a différents types de nœuds, dont les nœuds d'élément, les nœuds d'attribut, et les nœuds de texte. XPath définit une façon de calculer une valeur-chaîne unique pour chaque type de nœud.
XPath définit une librairie de fonctions standard pour travailler avec des chaînes, des nombres et des expressions booléennes.
child: : * sélectionne tous les fils du nœud root.
.//name sélectionne tous les éléments ayant le nom "nom", descendants du nœud actuel.
/catalog/cd[price>10.80]sélectionne tous les éléments cd qui ont un élément prix avec une valeur supérieure à 10.80
Pour utiliser XPath efficacement cela nécessite au moins une compréhension de la librairie des fonctions essentielles XPath (XPath Core Function Library). Une fois que vous avez cette connaissance la partie champ expression XPathyou de la barre d'outils de l'éditeur de oXygen peut être utilisée pour vous aider dans le développement de documents XML.
Pour en savoir plus sur XPath, l'URL suivante est recommandée : http://www.w3.org/TR/xpath
Dans oXygen les résultats d'une requête XPath sont retournés dans le panneau message. Cliquer sur un enregistrement dans la liste des résultat surligne les nœuds à l'intérieur du panneau d'édition.
Les résultats sont retournés dans un format qui lui-même est une expression XPath valide:
- [FileName.xml] /node[value]/node[value]/node[value] -
Exemple 4.3. Utilisation de XPath avec la DTD DocBook
Notre exemple est tiré d'un livre DocBook basé sur la DTD XML DocBook. Le livre contient un nombre de chapitres. DocBook définit que les chapitres qui ont une balise d'ouverture <chapter> et une balise de fermeture équivalente </chapter> doivent fermer l'élément. Pour retourner tous les nœuds de chapitres du livre, entrez //chapter dans le champ expression XPath, puis Entrée. Ceci va retourner tous les nœuds de chapitres du livre DocBook dans le panneau message. Si votre livre a six chapitres, il y aura six enregistrements dans la liste des résultats. Chaque enregistrement une fois cliqué va retrouver et surligner le chapitre et tous les nœuds ayant les mêmes parents contenus entre les balises d'ouverture et de fermeture du chapitre.
Si nous avions utilisé XPath pour lancer une requête pour tous les nœuds exemples contenus dans le nœud de section 2 d'un document XML DocBook, nous aurions utilisé l'expression XPath suivante //chapter/sect1/sect2/example. Si un nœud exemple est trouvé dans n'importe quel nœud de section 2, une liste des résultats sera retournée au panneau message. Pour chaque occurence du nœud de l'élément, un enregistrement sera créé dans la liste des résultats.
Dans notre exemple une requête XPath sur le fichier oxygen.xml :
- [oxygen.xml] /chapter[1]/sect1[3]/sect2[7]/example[1]
Ce qui signifie :
Dans le fichier oxygen.xml, premier chapitre, troisième section niveau 1, septième section niveau 2, le nœud exemple trouvé est le premier dans la section.
![]() | Astuce |
---|---|
Si votre projet est composé d'un fichier principal avec des références ENTITY vers d'autres fichiers, vous pouvez utiliser XPath pour retourner tous les éléments nom d'un certain type en faisant une requête sur le fichier principal. La liste des résultats va faire une requête sur tous les fichiers référencés. |
L'option Vérifier l'orthographe permet d'exécuter la vérification orthographique sur le document actuel :
Compléter le dialogue comme suit:
Contient le mot qui ne peut être trouvé dans aucun des dictionnaires existants. Le mot est aussi surligné dans le document XML.
La chaîne de caractères qui est suggérée pour remplacer le mot non-reconnu.
Affiche une liste de mots suggérés pour remplacer le mot inconnu. Double cliquer un mot dans cette liste l'insert automatiquement dans le document et continue le processus de vérification orthographique.
Affiche une liste des dictionnaires disponibles.
Remplace le mot actuellement surligné dans le document XML par le mot sélectionné dans la liste Deviner.
Remplace toutes les occurences du mot actuellement surligné dans le document XML par le mot sélectionné dans la liste Suggestions.
Permet de continuer de vérifier le document tout en ignorant la première occurence du mot inconnu. Le même mot sera remarqué à nouveau si il apparaît dans le document.
Ignore tous les exemplaires du mot inconnu dans le document entier.
Inclut le mot non-reconnu dans la liste des mots valides afin que le vérificateur orthographique ne s'arrête plus dessus pour la correction.
Règle les options de configuration du vérificateur orthographique.
Ferme le dialogue vérificateur orthographique.
Le dialogue Options contient les options générales du vérificateur orthographique :
Si coché, ignore les erreurs de capitales.
Si coché, ne vérifie pas les mots contenant des mélanges de casse (par ex. "SpellChecker").
Si coché, le vérificateur orthographique ne vérifie pas les mots contenant des chiffres (par ex. "b2b").
Si coché, le vérificateur orthographique ne signale pas deux mots identiques successifs comme erreur.
Si coché, ignore les mots ressemblant à des URL ou des noms de fichier (par ex. "www.xxx.com" ou "c:\boot.ini") .
Si coché, la vérification de la ponctuation est activée : des espaces mal placés et des mauvaises séquences, comme un point derrière une virgule, sont détectés.
Active la fonction "Remplacer toujours".
Si coché, tous les mots formés en concaténant deux mots légaux avec un trait d'union sont acceptés. Si la langue le permet, deux mots concaténés sans trait d'union sont aussi acceptés.
Si coché, un mot formé en concaténant un préfixe enregistré et un mot légal est accepté. Par exemple si "micro-" est un préfixe enregistré, "micro-ordinateur" sera accepté.
Si coché, accepte tous les mots se terminant avec une extension de fichier enregistrée (par ex. "monfichier.txt", "index.html" etc.).
Cette option indique la précision du vérificateur orthographique, qui peut être : "Favoriser la vitesse sur la qualité", "Normal" et "Favoriser la qualité sur la vitesse".
L'option Rechercher et remplacer permet d'exécuter les opérations suivantes sur le document :
trouver les occurrences d'un mot ou d'une chaîne de caractères, espaces blancs inclus, et surligner sa position dans l'éditeur.
remplacer les occurrences de la cible définie dans le champ "Rechercher" avec un mot ou une chaîne de caractères, espaces blancs inclus, défini dans le champ "Remplacer".
trouver toutes les occurences d'un mot ou d'une chaîne de caractères, espaces blancs inclus, et retourner une liste de résultats au panneau message.
remplacer toutes les occurences d'un mot ou d'une chaîne de caractères, espaces blancs inclus.
Compléter le dialogue comme suit:
La chaîne de caractères à rechercher.
La chaîne de caractères qui remplacera la cible. Elle peut contenir '{$ENTER}' qui insérera un caractère de nouvelle ligne au moment du remplacement.
Exécute une opération de recherche pour la prochaine occurence de la cible.
Exécute une opération de remplacement pour la cible.
Exécute une opération de recherche et retourne tous les résultats au panneau message.
Si coché, les opérations sont sensibles à la casse.
Si coché, seules les occurences entières d'un mot seront incluses dans l'opération.
Si coché, l'opération va inclure le contenu des balises d'ouverture et de fermeture des éléments XML.
Si coché, permet l'utilisation de n'importe quelle expression régulière dans la syntaxe PERL.
Commence l'opération depuis le début du fichier, à la position 0:0.
Continues the find from the start of the document after reaching the end.
L'option Rechercher et remplacer dans les fichiers vous permet d'exécuter les mêmes opérations que l'option Rechercher/Remplacer sur n'importe quel nombre de fichiers situés dans un chemin donné.
Compléter le dialogue comme suit:
La chaîne de caractères cible à rechercher.
Si coché, les opérations sont sensibles à la casse.
Si coché, seules les occurences entières d'un mot seront incluses dans l'opération.
Si coché, l'opération va inclure le contenu des balises d'ouverture et de fermeture des éléments XML.
Si coché, permet l'utilisation de n'importe quelle expression régulière dans la syntaxe PERL.
La chaîne de caractères qui remplacera la cible. Elle peut contenir '{$ENTER}' qui insérera un caractère de nouvelle ligne au moment du remplacement.
Dans le processus de remplacement oXygen crée des fichiers de secours des fichiers modifiés. L'extension par défaut est *bak, mais vous pouvez changer l'extension selon vos souhaits.
Choisir le chemin de recherche
Utilise le chemin du fichier actuel
Recherche les fichiers du projet actuel en utilisant le filtre fichier spécifié.
Recherche seulement dans les fichiers sélectionnés du projet actuellement ouvert
![]() | Note |
---|---|
La recherche n'est exécutée que sur des fichiers locaux. Si vous avez ajouté au projet des fichiers distants d'un serveur FTP ou Webdav, ceux-ci seront éliminés de la recherche. |
Exécute une opération de recherche et retourne la liste de résultats au panneau message.
Remplace toutes les occurences de la cible contenues dans les fichiers spécifiés.
![]() | Utiliser cette option avec précaution. |
---|---|
La recherche et le remplacement global parmi tous les fichiers du projet n'ouvre pas les fichiers contenant les cibles, ni demande pour chaque document de confirmer une opération de remplacement. Comme l'opération fait simplement correspondre la chaîne définie dans le champ rechercher, il peut en résulter un remplacement de chaînes correspondantes qui ne devaient pas être remplacées à l'origine. |