Tools, FAQ, Tutorials:
JSON Type Unique Identifications
How to assign a unique identification to a JSON type in JSON Schema?
✍: FYIcenter.com
Using "definitions" and "$ref" properties allows to define JSON types
and reference them internally in the same JSON schema or externally
in another JSON schema.
You can also assign a unique identification to a JSON type with the "$id" property and reference them internally in the same JSON schema or externally in another JSON schema.
The "$id" property uses the URI syntax to assign unique identifications to JSON types in 3 different formats:
1. Absolute full URI - The JSON type is identified globally by the given URI. For example, the following JSON schema defines 2 JSON types named as "rating" and "yesNo" and assigns 2 full URIs as their "$id":
{
"definitions": {
"rating": {
"$id": "http://dev.fyicenter.com/JSON/schema.json#point",
"type": "integer",
},
"yesNo": {
"$id": "urn:uuid:ee564b8a-7a87-4125-8c96-e9f123d6766f",
"enum": ["yes", "no"]
}
},
...
}
2. Relative URI path - The JSON type is identified globally by the combination of the base URI of the parent type identification and the given URI path. For example, the following JSON schema defines a JSON type called "rating" and assign a URI path to it:
{
"$id": "http://dev.fyicenter.com/JSON/schema.json",
"definitions": {
"rating": {
"$id": "/JSON/survey.json#point",
"type": "integer",
}
},
...
}
The "rating" JSON type's global identification will be constructed by taking the URI base from the parent "$id" and concatenate with the given URI path: "http://dev.fyicenter.com/JSON/survey.json#point"
3. Internal bookmark - The JSON type is identified globally by the combination of the URI of the parent type identification and the given bookmark. For example, the following JSON schema defines a JSON type called "rating" and assign a bookmark to it:
{
"$id": "http://dev.fyicenter.com/JSON/schema.json",
"definitions": {
"rating": {
"$id": "#point",
"type": "integer",
}
},
...
}
The "rating" JSON type's global identification will be constructed by taking the URI from the parent "$id" and concatenate with the given bookmark: "http://dev.fyicenter.com/JSON/schema.json#point"
⇒ Implicit and Explicit ID of JSON Type
2017-08-20, ∼2070🔥, 0💬
Popular Posts:
How to detect errors occurred in the json_decode() call? You can use the following two functions to ...
How to pull NVIDIA CUDA Docker Image with the "docker image pull nvidia/cuda" command? If you are ru...
How to use urllib.parse.urlencode() function to encode HTTP POST data? My form data has special char...
How to add request query string Parameters to my Azure API operation 2017 version to make it more us...
How To Convert a Character to an ASCII Value? If you want to convert characters to ASCII values, you...