Currently, the parameters are stored as object. As JSON objects have no order, we added parameter_order for programming languages without names parameters. parameter_order on the other hand is only required for 2+ parameters and needs special handling in many implementations. Therefore the idea came up to remove parameter_order and make the parameters object an array. The key could be moved to the object in the array.
Example
Before:
{
"id": "product",
"summary": "Multiplication of a sequence of numbers",
"description": "This process is an exact alias for the `multiply` process. See ``multiply()`` for more information.",
"categories": [
"math",
"reducer"
],
"parameter_order": [
"data",
"ignore_nodata"
],
"parameters": {
"data": {
"description": "See ``multiply()`` for more information.",
"schema": {
"type": "array",
"items": {
"type": [
"number",
"null"
]
}
},
"required": true
},
"ignore_nodata": {
"description": "See ``multiply()`` for more information.",
"schema": {
"type": "boolean",
"default": true
}
}
},
"returns": {
"description": "See ``multiply()`` for more information.",
"schema": {
"type": [
"number",
"null"
]
}
}
}
After:
{
"id": "product",
"summary": "Multiplication of a sequence of numbers",
"description": "This process is an exact alias for the `multiply` process. See ``multiply()`` for more information.",
"categories": [
"math",
"reducer"
],
"parameters": [
{
"name": "data",
"description": "See ``multiply()`` for more information.",
"schema": {
"type": "array",
"items": {
"type": [
"number",
"null"
]
}
},
"required": true
},
{
"name": "ignore_nodata",
"description": "See ``multiply()`` for more information.",
"schema": {
"type": "boolean",
"default": true
}
}
],
"returns": {
"description": "See ``multiply()`` for more information.",
"schema": {
"type": [
"number",
"null"
]
}
}
}
Currently, the parameters are stored as object. As JSON objects have no order, we added parameter_order for programming languages without names parameters. parameter_order on the other hand is only required for 2+ parameters and needs special handling in many implementations. Therefore the idea came up to remove parameter_order and make the parameters object an array. The key could be moved to the object in the array.
Example
Before:
{ "id": "product", "summary": "Multiplication of a sequence of numbers", "description": "This process is an exact alias for the `multiply` process. See ``multiply()`` for more information.", "categories": [ "math", "reducer" ], "parameter_order": [ "data", "ignore_nodata" ], "parameters": { "data": { "description": "See ``multiply()`` for more information.", "schema": { "type": "array", "items": { "type": [ "number", "null" ] } }, "required": true }, "ignore_nodata": { "description": "See ``multiply()`` for more information.", "schema": { "type": "boolean", "default": true } } }, "returns": { "description": "See ``multiply()`` for more information.", "schema": { "type": [ "number", "null" ] } } }After:
{ "id": "product", "summary": "Multiplication of a sequence of numbers", "description": "This process is an exact alias for the `multiply` process. See ``multiply()`` for more information.", "categories": [ "math", "reducer" ], "parameters": [ { "name": "data", "description": "See ``multiply()`` for more information.", "schema": { "type": "array", "items": { "type": [ "number", "null" ] } }, "required": true }, { "name": "ignore_nodata", "description": "See ``multiply()`` for more information.", "schema": { "type": "boolean", "default": true } } ], "returns": { "description": "See ``multiply()`` for more information.", "schema": { "type": [ "number", "null" ] } } }