Beispiele für JSON-Dateiimport
Diese Beispiele zeigen, wie verschiedene Arten von JSON-Daten und der erforderliche Pfad für jede Zeile importiert werden. Von Ihnen importierte JSON-Dateien müssen diesen Richtlinien entsprechen.
Eine Schritt-für-Schritt-Anweisung zum Erstellen einer Datenquelle vom Typ „Datei“ finden Sie unter Erstellen Sie eine Datenquelle vom Typ Datei.
- Bei JSON -Arrays muss der Pfad für jede Zeile das Array-Stammelement zweimal angeben, z. B.
/incidents/incidents. - JSON -Dateien müssen RFC-4627entsprechen. Beispielsweise sollte ein einzelnes Komma einen Wert vom folgenden Namen trennen. Namen innerhalb eines Objekts müssen eindeutig sein.
- Prädikate wie
@element,[index]odertext()sowie Achsen wie untergeordnete Elemente, gleichgeordnete Elemente oder Vorgängerelemente werden nicht unterstützt.
Einfaches Array
- Pfad für jede Zeile:
/incidents/incidents - Ergebnis: 2 Datensätze
/incidents zweimal. Dies ist beim Importieren eines Arrays erforderlich.{
"source":"HI",
"incidents":[
{
"number":"INC0000001",
"short_description":"Can't read email"
},
{
"number":"INC0000002",
"short_description":"Error loading XML file"
}
]
}
Array in 2. Ebene
- Pfad für jede Zeile:
/problems/data/data - Ergebnis: 3 Datensätze
/data zweimal.{
"problems":{
"id":"0",
"data":[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
},
{
"number":"PRBTEST003",
"short_description":"testsd3"
}
]
}
}
Geschachteltes Array
- Pfad für jede Zeile:
/problems/problems/data/data - Ergebnis: 3 Datensätze
/problems und /data.{
"problems": [
{
"id":0,
"data":[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
},
{
"number":"PRBTEST003",
"short_description":"testsd3"
}
]
}
]
}
Untergeordnete (geschachtelte) Arrays unterstützen
Standardmäßig unterstützt der Import keine untergeordneten (verschachtelten) Arrays. Sie können den Support aktivieren, indem Sie in der Ansicht „Datenquelle“ das Kontrollkästchen Arrays verwerfen deaktivieren. In der folgenden Tabelle werden verschiedene Verhaltensweisen beim Aktivieren und Deaktivieren der Unterstützung für untergeordnete Arrays beschrieben.
{
"response":{
"docs":[
{
"id":"id_val",
"childrenArray":[1,2,3],
"anotherArray":[{"key1":"value1"}, {"key1": "value2"}],
"elementWithArray":{"childrenArray":[1,2,3]}
}
]
}
}
| Pfad | Arrays verwerfen aktiviert | Arrays verwerfen deaktiviert |
|---|---|---|
| /response/docs/docs | Erstellt einen Datensatz mit den folgenden Spalten und Werten:
|
Erstellt einen Datensatz mit den folgenden Spalten und Werten:
|
| /response/docs/docs/anotherArray/anotherArray | Erstellt zwei Datensätze mit jeweils einer Spalte: key1. | Erstellt zwei Datensätze mit jeweils einer Spalte: key1. |
| /response/docs/docs/childrenArray/childrenArray | Funktioniert nicht und gibt den Fehler „Pfad sollte immer auf JSON-Objekte verweisen“ zurück, da die Werte im Array nicht in einer Schlüssel-Wert-Struktur vorliegen. | Funktioniert nicht und gibt den Fehler „Pfad sollte immer auf JSON-Objekte verweisen“ zurück, da die Werte im Array nicht in einer Schlüssel-Wert-Struktur vorliegen. |
Verwaistes Array
- Pfad für jede Zeile:
// - Ergebnis: 2 Datensätze
[
{
"number":"PRBTEST001",
"short_description":"testsd1"
},
{
"number":"PRBTEST002",
"short_description":"testsd2"
}
]
Mehrere Elemente anstelle eines Arrays
- Pfad für jede Zeile:
/problems/problem - Ergebnis: 3 Datensätze
Wichtig:
Dieses Format wird nicht empfohlen. JSON-Dateien sollten RFC-4627 entsprechen, der besagt, dass Namen innerhalb eines Objekts eindeutig sein müssen. Verwenden Sie stattdessen JSON-Arrays.
{
"problems":{
"title":"2 problems",
"problem":{
"number":"PRBTEST001",
"short_description":"testsd1"
},
"problem":{
"number":"PRBTEST002",
"short_description":"testsd2"
}
},
"problems":{
"title":"1 problem",
"problem":{
"number":"PRBTEST005",
"short_description":"testsd5"
}
}
}