JSON lists and how to use them

This guide includes information regarding:

  • how to implement lists in the general JSON format
  • how to use JSON lists while writing a training

How to implement lists in the general JSON format

In some cases, the content of a data field is not a single value, but many values. Think about the different features of a product. To incorporate them into your data, instead of listing them all in separate data fields, you also could use a JSON list to enumerate the different features one after another.

This would look like this:

"Features": [
"LTE",
"WLAN",
"Bluetooth",
"Kamera"
]

In your data, Features is the key of the JSON list and inside the Square brackets, you can find the seperate feature values enumerated.

This is the general structure of your JSON if you have a field with multiple values.

How to use JSON lists while writing a training

The first step to working with this JSON list inside your generated content would be to create a property (let’s call it DATA_Features) accessing this JSON element by name, like #features in the mapping expression.
This first drafted form of the property would return the whole content of the list like this:

LTE, WLAN, Bluetooth, Kamera

The next step would be to expand the property by designating the feature values as a list.
This can be done by adding a list function to the mapping expression, list(#Features).
The Text engine now regards to the JSON values as a list of values, so different operations can be used to sort or filter its content:

Access in other properties’ mappingExpressions and truthExpressions

$Features[0] returns the first Feature from the list: LTE

Access in sentences

[DATA_Features.Best(1)] prints the first Feature from the list to the sentence: LTE
[DATA_Features.Random(2)] prints 2 randomly chosen Features from the list to the sentence: LTE, Kamera

For a complete explanation of all available list operations please refer to our ATML3 documentation:
https://docs.atml3.rocks/#list-methods

JSON Listen und ihre Anwendung

Dieser guide beantwortet folgende Fragen:

  • Wie sind Listen im JSON-Format implementiert?
  • Wie nutzt man JSON-Listen beim Schreiben eines Trainings?

Wie sind Listen im JSON-Format implementiert?
Häufig ist der Inhalt eines Datenfeldes kein einzelner Wert, sondern eine Auflistung von Werten. Ein Beispiel ist die Auflistung von verschiedenen Produktfeatures. Anstatt sie alle in einzelnen Datenfeldern aufzulisten, können Sie auch eine JSON-Liste verwenden, um die verschiedenen Funktionen nacheinander aufzuzählen.

Das wĂĽrde so aussehen:

"Eigenschaften": [
"LTE",
"WLAN",
"Bluetooth",
"Kamera"
]

In Ihren Daten ist Features der Feldname. Die JSON-Liste mit einer Auflistung der verschiedenen Feature-Werte ist innerhalb der eckigen Klammern zu finden.

Die Nutzung von JSON-Listen beim Schreiben eines Trainings

Der erste Schritt, um diese JSON-Liste in Ihren generierten Content einzufĂĽgen, ist eine property zu erstellen, die auf den Namen dieses JSON-Elements zugreift (#features in der Mapping-Expression).
Diese erste Form der property wĂĽrde den gesamten Inhalt der Liste wie folgt zurĂĽckgeben:

LTE, WLAN, Bluetooth, Kamera

Der nächste Schritt ist, die property um die Listeneigenschaft zu erweitern.
Dies erfolgt durch das HinzufĂĽgen einer Listenfunktion zum Mapping-Ausdruck, zum Beispiel list(#Features).
Die Text-Engine behandelt die JSON-Werte nun als eine Liste von Werten, so dass verschiedene Operationen angewendet werden können, um ihren Inhalt zu sortieren oder zu filtern:

Zugriff in mappingExpressions und truthExpressions anderer Propertys

$Features[0] gibt das erste Feature aus der Liste zurĂĽck: LTE

Zugriff in Sätzen

[DATA_Features.Best(1)] gibt das erste Feature aus der Liste im Satz aus: LTE
[DATA_Features.Random(2)] gibt 2 zufällig ausgewählte Features im Satz aus: LTE, Kamera

Eine vollständige Erläuterung aller verfügbaren Listenoperationen finden Sie in unserer ATML3-Dokumentation:
Https://docs.atml3.rocks/#list-methods

1 Like