What's at stake
All other nodes types are not required unless you add the
isRequired() (example) method to your node. Doing so, you will have an exception thrown saying that you have to define this key, which is what you want.
For the array node, it's different : it's enabled by default and you have to specify the
canBeEnabled() (example) method to your array node to ensure that it will be disabled by default, but enabled if needed.