"name": "B",
      "type": ["null", {

The [] union lets you do null or a BRecord, your JSON does null.
Pull the null from the union and it will require the C.

On Mon, Nov 27, 2017 at 9:00 AM, Martin Mucha <[email protected]> wrote:
> Hi,
>
> I have this avro schema:
>
> {
>   "name" : "ARecord",
>   "type" : "record",
>   "namespace" : "A",
>   "fields" : [
>     {"name": "id", "type": "string" },
>     {
>       "name": "B",
>       "type": ["null", {
>         "type": "record",
>         "name": "BRecord",
>         "fields": [
>           {
>             "name": "C",
>             "type": "string"
>           }
>         ]
>       }]
>     }
>   ]
> }
>
>
> and following JSON, which validates against it:
>
> {
>   "id": "...",
>   "B": {
>
>   }
> }
>
>
> I would expect, that C is required. Why it's not? What shall I do to make it
> required?
>
> Thanks!
> Martin.

Reply via email to