Verified Commit 3ead1690 authored by Cyril Vazquez's avatar Cyril Vazquez
Browse files

Documentation

parent 52fa21a8
Pipeline #16661 failed with stages
in 20 seconds
......@@ -57,12 +57,31 @@ properties:
{name} : {template} | {value_expression}
```
Exemple simple :
```
type: object
properties:
property1 : $.path.to.data
property2 : $.path.to.data2
```
Lorsque la liste des propriétés est fournie par une sélection, la structure `templateProperties`
permet de fournir les expressions pour les noms et d'y faire correspondre les expressions
pour les valeurs correspondantes.
```
type: object
templateProperties:
{name_expression} : {template} | {value_expression}
```
Exemple simple :
```
type: object
templateProperties:
$.path.to.names : $.path.to.data
```
### Modèle de tableau
Le modèle de type `array` décrit une structure qui sera retournée sous la forme d'un tableau
......@@ -73,45 +92,47 @@ instruction `items`:
```
type: array
items: {values_expression}
items: {template} | {value_expression}
```
L'instruction `items` peut contenir une expression simple qui va fournir les valeurs
du tableau. Elle peut aussi contenir un modèle pour transformer les valeurs
sélectionnées.
Exemple simple :
```
type: array
templateItems: [value_expression, value_expression...]
items: $.path.to.items
```
Exemples
--------
### Objet simple
Le modèle suivant va prodire un objet comportant 2 propriétés issues des données
sources de type objet, mais en modifiant les noms :
Exemple avec transformation en objet:
```
type: object
properties:
targetPropertyName1: $.sourceValueExpression1
targetPropertyName2: $.sourceValueExpression2
type: array
items:
select: $.path.to.items
type: object
properties :
...
```
### Objet avec propriétés nommées dynamiquement
Le modèle suivant va prodire un objet comportant 2 propriétés dont **le nom et
les valeurs** sont fournies par des expressions:
La structure `templateItems` permet de définir une collection d'expressions dont chacune
va fournir une valeur pour le tableau résultant :
```
type: object
templateProperties:
$.sourceNameExpression1: $.sourceValueExpression1
$.sourceNameExpression2: $.sourceValueExpression2
type: array
templateItems: [value_expression1, value_expression2...]
```
### Tableau de valeurs de propriété d'objet
## Langage de requête
Sélectionner dans un tableau d'objets "pets" le nom des animaux de l'espèce "dog":
```
type: array
items: @.sourcePropertyNameExpression
$.pets[?(@.kind=="dog")].name
```
Sélectionner dans le contexte donné une propriété de l'objet en cours (dans une boucle par exemple) :
```
@.name
```
\ No newline at end of file
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment