Actually, currently, this is not the case.
The specification explicitly allows for additional fields for the purposes of extensions.
We are considering changing that, and only allowing pre-defined fields, or having a way to mark specific fields as limited extensions.
Additionally, the value is a "schema" as opposed to a boolean, meaning you can apply a subschema to any additional fields. Useful if you for instance want to make sure any additional fields start with a specific prefix.