JsonSchema
org.sagebionetworks.repo.model.schema.JsonSchema
The JSON schema is defined by: json-schema.org, specifically draft-07. Only features listed here are currently supported.
Field | Type | Description |
---|---|---|
$schema | STRING | See: The "$schema" Keyword |
$id | STRING | See: The "$id" Keyword |
$ref | STRING | See: Direct References with "$ref" |
type | Type | See: Instance Data Model |
items | JsonSchema | |
properties | MAP<STRING,JsonSchema> | See: properties |
title | STRING | See: title |
description | STRING | See: description |
allOf | ARRAY<JsonSchema> | Use allOf to 'extend' or 'implement' one or more schemas. See: allOf |
anyOf | ARRAY<JsonSchema> | See: anyOf |
oneOf | ARRAY<JsonSchema> | See: oneOf |
not | JsonSchema | |
format | STRING | See: Defined Formats |
definitions | MAP<STRING,JsonSchema> | In an effor to support draft-07 implementations, we are using 'definitions' instead of '$defs'. See: Appendix A |
enum | ARRAY<OBJECT> | See: enum |
const | OBJECT | See: const |
source | STRING | Used to indicate that this schema is derived from another object/schema. The value should be a URL reference to the original work. The 'source' is solely descriptive and should have no impact on validation. |
required | ARRAY<STRING> | See: required |
maxLength | INTEGER | See: maxLength |
minLength | INTEGER | See: minLength |
uniqueItems | BOOLEAN | See: uniqueItems |
pattern | STRING | See: pattern |
if | JsonSchema | |
then | JsonSchema | |
else | JsonSchema | |
maximum | INTEGER | See: maximum |
minimum | INTEGER | See: minimum |
default | OBJECT | See: default |
contains | JsonSchema | |
additionalProperties | JsonSchema |