JSON Tutorial
From OSL Demo
Item:OSWf1df064239044b8fa3c968339fb93344
Description
Covers basics about JSON-Documents
Item | |
---|---|
Type(s)/Category(s) | Tutorial |
CreativeWork |
---|
Article |
---|
Tutorial | |
---|---|
Prerequisites (required) | |
Prerequisites (optional) | |
Follow-up (recommended) | JSON-SCHEMA Tutorial JSON-LD Tutorial |
JSON Documents: Basics
What is a JSON?
- A JSON itself is a JSON object, marked by [1]
{}
JSON Documents: Key-Value-Pairs
- A JSON object defines key(word):value pairs.
- Keys are formatted as strings, marked by quotation marks ("").
{
"key": "value"
}
JSON Documents: Data types
- The key is always a string
- The value can be a string, a number, a boolean or null
- Additional data types are only possible by referencing them as external resources
{
"key": "value",
"string": "any string value",
"number": 1.0,
"bool": true,
"empty": null,
"image": "https://my.cloud/image-1.png"
}
JSON Documents: Subobjects
- The value can also be a JSON document (object) itself
- A nested object can have the same key-value pairs as the root document
- There is no limit in the nesting depth
{
"key": "value",
"string": "any string value",
"number": 1.0,
"bool": true,
"empty": null,
"object": {
"has": "it's own key-value-pairs"
}
}
JSON Documents: Arrays
- The value can also be an array (list)
- An array can contain any element, including objects and nested arrays
{
"key": "value",
"string": "any string value",
"number": 1.0,
"bool": true,
"empty": null,
"object": {
"has": "it's own key-value-pairs"
},
"array": [
"a list",
{"of": "any"},
["item1", 1.0, true]
]
}
JSON Documents: Pointer (1)
Pointer allow reference to
- An object within the JSON document
{
"firstname": "Susan",
"surname": "Birch",
"kids": ["Anne", "Tom"],
"emergency_contact": {
"$ref": "#/kids/0"
}
}
Syntax [2]:
# - the whole document = self-reference
#/kids - the value of the key "kids"
#/kids/0 - the first item within the array "kids"
JSON Documents: Pointer (2)
Pointer allow reference to
- An object within the JSON document
- An external JSON document
{
"firstname": "Susan",
"surname": "Birch",
"partner": {
"$ref": "http://www.personaldata.com/walter.birch.json"
}
}
JSON Documents: Next
jsondata
required_predecessor |
| |||||
---|---|---|---|---|---|---|
optional_predecessor |
| |||||
recommended_successor |
| |||||
type |
| |||||
uuid | "f1df0642-3904-4b8f-a3c9-68339fb93344" | |||||
name | "JsonTutorial" | |||||
label |
| |||||
description |
| |||||
image | "File:OSW2055124fe7b344148a1baad537bf8e35.png" |