|
|
|
|
|
- Importation de fichiers au format YAML
- Affectation et lecture
- Gestion des références
- Propriétés spécifiques à la description des variables de type YAML
YAML (Type de variable) En anglais : YAML
Le type YAML permet de simplifier les manipulations des données au format YAML. Le YAML est un format de sérialisation des données qui permet une représentation humaine très acceptable toute en conservant une précision informatique importante. Il se rapproche du JSON en apportant quelques fonctionnalités supplémentaires très intéressantes (il est d'ailleurs possible d'inclure du JSON dans du YAML). Ces caractéristiques lui permettent d'être très intéressant pour : - les échanges de données entre systèmes informatiques,
- les fichiers de configuration.
Les fonctionnalités spécifiques du YAML sont : - les commentaires (intéressant notamment pour les fichiers de configuration),
- les tags, des informations de typage des données (intéressant dans le cadre du "round trip" sérialisation/désérialisation),
- les alias à l'intérieur du document qui permettent d'éviter les répétitions.
Nouveauté SaaS Syntaxe
Déclaration et affectation d'un type YAML Masquer les détails
<Nom de la variable> est un YAML = <Valeur>
OU <Nom de la variable> est un YAML <Nom de la variable> = <Valeur>
<Nom de la variable> : Nom de la variable à déclarer. <Valeur> : Valeur à affecter à la variable. Une variable de type YAML peut être affectée avec :- NULL,
- un booléen (Vrai ou Faux),
- un numérique,
- une date (convertie automatiquement en chaîne au format RFC),
- une chaîne Ansi ou Unicode contenant une donnée,
- une chaîne Ansi contenant des données au format JSON.
Remarques Importation de fichiers au format YAML Les variables de type YAML peuvent être déclarées en indiquant un document exemple (un fichier texte). La structure de ce document sera lue par WINDEV, WEBDEV et WINDEV Mobile. Il sera ainsi possible de disposer de la complétion automatique sur les noms des noeuds directement dans l'éditeur de code. Pour déclarer une variable de type YAML avec un document exemple : - Ajoutez le document texte dans le projet grâce à une des méthodes suivantes :
- sous le volet "Projet", dans le groupe "Projet", déroulez " Liste des éléments" et cliquez sur "Liste des éléments du projet". La liste des éléments du projet s'affiche. Cliquez sur le bouton "Ajouter" et sélectionnez le document texte.
- réalisez un "Drag and Drop" du fichier vers le dossier "Descriptions externes" du volet "Explorateur de projet".
- dans le volet "Explorateur de projet", sélectionnez le dossier "Descriptions externes", puis l'option "Importer un XML ou un JSON dans ce projet" du menu contextuel.
- Le document JSON apparaît sous le dossier "Descriptions externes" du volet "Explorateur de projet". Il est possible de visualiser sa structure.
- Déclarez la variable de la façon suivante :
<Nom de la variable> est un YAML , description = <Nom du document> ou
<Nom de la variable> est un YAML <description = "Nom du document"> <Nom du document> peut correspondre au nom du document exemple (avec ou sans son extension). Remarque : Cette déclaration peut être obtenue automatiquement en "droppant" le nom du document texte directement depuis le volet "Explorateur de projet". - Vous pouvez maintenant accéder directement aux noeuds de la variable par leurs noms. Ces noms sont proposés automatiquement par le mécanisme de complétion automatique de l'éditeur de code.
Remarque : Il est également possible d'obtenir l'assistance et la vérification à la compilation sur une sous-partie du YAML en utilisant la syntaxe suivante : v2 est un YAML, description="FichierJSON.Membre.SousMembre" v2 est un YAML <description="FichierJSON.Membre.SousMembre"> Affectation et lecture Affectation d'une variable YAMLLa notation "j = ..." essaie d'analyser la valeur comme une chaîne au format YAML. Cette notation est "presque" équivalent à la notation "j.FormatYAML = ..." sauf si la chaîne au format YAML est invalide : elle est alors recopiée directement sans interprétation, comme valeur de l'élément YAML. La notation "j.Membre = ..." affecte la valeur du membre. Cette notation est équivalente à "j.Membre.Valeur = ... ". Lecture d'une variable YAML La notation "... = j" renvoie la chaîne au format YAML correspondant au contenu de la variable. Cette notation est équivalente à "... = j.FormatYAML". La notation "... = j.Membre" renvoie la valeur du membre. Cette notation est équivalente à "... = j.Membre.Valeur". Gestion des commentaires Chaque ligne de commentaire est analysée : - si elle contient un caractère '#', tous les caractères précédant le caractère '#' ainsi que le caractère '#' lui-même sont ignorés, le reste est considéré comme un commentaire (apparaîtra dans la chaîne YAML précédé d'un caractère '#').
- si elle est vide, une ligne vide sera intégrée dans la chaîne YAML.
Remarque : YAML importé et généré La majorité des commentaires et le format général du document YAML sont importés et utilisés lors de l'exportation suivante afin de générer un document YAML d'une forme très proche de celui d'origine. L'indentation d'origine n'est pas respectée, elle est régénérée. Gestion des références Pour référencer un membre d'un YAML existant depuis un autre membre de l'objet, il faut utiliser l'opérateur '<-'. Config est un YAML
Config.Défaut.ConfigHTTP.Port = 80
Config.Défaut.ConfigHTTP.Protocole = HTTP
Config.Serveur.Interne.Configuration <- Config.Défaut.ConfigHTTP
Config.Serveur.InterneBackup.Configuration <- Config.Défaut.ConfigHTTP
Config.Serveur.Externe.Configuration.Port = 443
Config.Serveur.Externe.Configuration.Protocole = HTTPS
Propriétés spécifiques à la description des variables de type YAML Les propriétés suivantes peuvent être utilisées pour manipuler une variable de type YAML : | | | Nom de la propriété | Type manipulé | Effet |
---|
Alias | Chaîne de caractères | Nom d'alias à utiliser si l'élément est référencé plusieurs fois dans le même document. Cette propriété est disponible en lecture seulement. | CommentaireAprès | Chaîne de caractères | Commentaire suivant l'élément YAML dans la chaîne YAML générée. | CommentaireAvant | Chaîne de caractères | Commentaire précédant l'élément YAML dans la chaîne YAML générée. | CommentaireInterne | Chaîne de caractères | Commentaire interne de l'élément YAML dans la chaîne YAML générée. | Existe | Booléen | En lecture : - Vrai si l'élément existe,
- Faux dans le cas contraire.
En écriture : - Vrai pour valider l'élément,
- Faux pour supprimer l'élément.
| FormatYAML | Chaîne de caractères | Chaîne au format YAML correspondant à la valeur de l'élément. Si cette chaîne n'est pas au format YAML, un warning est affiché. | Membre | Tableau de variables YAML | Membres de la variable YAML. | Nom | Chaîne de caractères | Nom du membre. Correspond à chaîne vide ("") s'il n'y a pas de membre. | Occurrence | Entier | Nombre d'éléments : - 1 pour les éléments simples et les objets,
- Nombre d'éléments pour les tableaux.
Cette propriété est disponible en lecture seulement. | Type | Entier | Type de l'élément.
Cette propriété est disponible en lecture seulement. | Valeur | Tous types | Valeur de l'élément. |
Liste des exemples associés :
|
Exemples unitaires (WINDEV) : Manipulation du YAML
[ + ] Manipulation du YAML avec le type YAML du WLangage
|
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|