Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Note
Please note that thise is still under development, so any of the specifics are subject to change.


Top level

At the top level, this schema looks like the following:

Code Block
{
	"$schema": "http://json-schema.org/draft-07/schema#",
	"title": "SimpleSearch widget",
	"type": "object",
	"description": "SimpleSearch widget type",
	"additionalProperties": false,
	"required": ["baseUrl", "results"],
	"properties": { ... }
}

This specifies some simple information about the type, as well as any required information a WidgetDefinition must contain in order to be a valid Definition for this Type. This is where anything the frontend absolutely requires for basic functionality has to be contained.

Let's look at some of the properties:

Code Block
"properties": {
	"baseUrl": {
		"type": "string",
		"description": "The base url queries built with this widget will go to"
	},
	"results": {
		"$ref": "#/$defs/results"
	},
	"filters": {
		"$ref": "#/$defs/filters"
	},
	"sort": {
		"$ref": "#/$defs/sort"
	},
	"configurableProperties": {
		"$ref": "#/$defs/configurableProperties"
	}
}