brutusin / json-forms

JSON Schema to HTML form generator, supporting dynamic subschemas (on the fly resolution). Extensible and customizable library with zero dependencies. Bootstrap add-ons provided
http://brutusin.org/json-forms
Apache License 2.0
606 stars 168 forks source link

Problem with an optional array and minItems #123

Open jw35 opened 6 years ago

jw35 commented 6 years ago

I appreciate https://github.com/brutusin/json-forms/blob/master/README.md#status. For the benefit of anyone else who trips over this or who knows how to fix it:

I think this schema defines an object that contains an optional array element which, if present, must have at least one element.

{
  "type": "object",
  "properties": {
    "list": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string"
      }
    }
  }
}

I think that an empty object should validate against this. The validator at https://jsonschemalint.com/ seems to agree. json-forms throws a validation error ("At least 1 items are required") even if the list property is missing. See this JSfidle example.

FYI.