More work on schema validation. Use enums rather than strings to track
keywords.