The current way the code is set up, a missing input.config.code.android.target_ndk_api if input.config.code.android is provided is treated as a semantic error.
This should be a syntactic error. The JSON schema should describe this field as required, so accessing this field should be non-nullable in the generated Dart parser and lead to a syntactic error. Otherwise, we'd need to treat everything that's non-nullable in the syntax as nullable, and make these semantic errors, this would not take of advantage that we have a schema to describe the syntax.
Filing a separate issue so that we can keep the PR introducing the schemas (#95) a non-op for the rest of the implementation.
A list of fields which have this issue: