Validator function that takes a ProgramNode and validates it
A ProgramNode to validate
Context for tree traversing
Provides access to application specific configuration
Validator function that takes a ProgramNode and validates it