Vocabulary elements, like terms, phrases, articles and constants may be made of one or several words, called lexical units. These lexical units must comply with specific lexical rules.
Vocabulary elements must be nonambiguous. Two classes cannot be verbalized with the same term, and two members cannot be verbalized with the same phrase.
Terms
Terms must not conflict with the elements of the business rule language and the System BOM. For instance, if a word in a term can be interpreted as a number, an error is raised.
Ambiguity errors are reported locally when editing a vocabulary in the same vocabulary file, and globally at build time if the ambiguity comes from duplicated terms in two separate files.
Phrases
In phrases, each type of placeholder must be used only once.
Warnings are also reported if:
-
the subject placeholder is not used in a navigation phrase
-
the
{this} placeholder is missing
You can set a preference to ignore these warnings.
Errors in phrases may also come from their related business element:
-
an action phrase for a read-only or final attribute
-
a navigation phrase for a write-only attribute
Table 2 Examples of Vocabulary Errors
Message Example |
Description |
Character > is forbidden. |
A vocabulary element uses a forbidden character. This error is reported when editing the vocabulary. |
Character > in term for class balsample.Book is forbidden. |
A vocabulary element uses a forbidden character. This error is reported at build time. |
Term book is duplicated. |
The term is already used for another class in the current vocabulary file. |
Lexical conflict in production I-target(balsample.Book,SINGLE,INDEFINITE_ARTICLE,_,_,_) -> 'a' "book" "12" expecting construct "12" and having construct "<ilog.rules.brl.Number>" |
Lexical conflict: the lexical unit 12 in the term associated to the class Book is interpreted as a number. |
Placeholder "author" is missing in "balsample.Book: author" |
The subject placeholder (author) is missing in the phrase associated to the member balsample.Book.author. |
Duplicate verbalization: [balsample.Book: author] and [balsample.Book: title] |
The members balsample.Book.author and balsample.Book.title have the same verbalization. |
Action phrase not allowed for "balsample.Book: author" (member is read-only) |
The attribute is read-only and must not be verbalized as an action phrase. |
Navigation phrase not allowed for "balsample.Book: author" (member is write-only) |
The attribute is write-only and must not be verbalized as a navigation phrase. |
Related Concepts
Related Tasks
Related Reference
Related Samples and Tutorials