keywordIdentifier
Keywords that may be used as identifiers in referential (non-reserved) contexts. This is the set difference of keyword minus reservedWord — words that have syntactic meaning but are not reserved, so they can serve as names.
Examples
Keyword 'define' used as identifier (non-reserved context)
-- 'define' is a keywordIdentifier, so it can appear as a property name Obs.define
Keyword 'code' used as property access
Condition.code
Keyword 'version' used as a property
Library.version
EBNF
keywordIdentifier : 'asc' | 'ascending' | 'by' | 'called' | 'code' | 'codesystem' | 'codesystems' | 'concept' | 'contains' | 'context' | 'date' | 'default' | 'define' | 'desc' | 'descending' | 'display' | 'div' | 'end' | 'ends' | 'except' | 'fluent' | 'function' | 'implies' | 'include' | 'includes' | 'intersect' | 'library' | 'meets' | 'mod' | 'or after' | 'or before' | 'or less' | 'or more' | 'overlaps' | 'parameter' | 'predecessor' | 'private' | 'public' | 'start' | 'starting' | 'starts' | 'successor' | 'time' | 'timezone' | 'timezoneoffset' | 'union' | 'using' | 'valueset' | 'version' | 'where' | 'width' | 'xor' ;