The Form schema allows a device to control what properties are editable, and control the type of data stored to those properties. We support much of JSON Schema, but not all the options are available.

Octoblu provides some specific extensions to the standard JSON Schema. This guide will cover some of the Octoblu specific ideas, and will not be a general JSON Schema tutorial.

Multiple Types

Octoblu supports multiple types of form schemas.

{
  "schemas": {
    "form": {
      "configure": { ... },
      "message": { ... }
    }
  }
}

Multiple Form Schemas

Octoblu supports multiple form schemas for each type.

{
  "schemas": {
    "form": {
      "configure": {
        "first": { ... },
        "second": { ... },
        "third": { ... }
      }
    }
  }
}

When the user views this configuration in Octoblu, they will be presented a choice between the schemas. This allows the schema author to provide different configurations, Basic and Advanced for example.