The Prime-Class-Modifier Words Pattern
Prime words represent key business entities. In an insurance business, examples of prime word are policy and coverage.
A class word is a category that qualifies a prime word; for example, in policy code name, code is a class word.
policy code can further be qualified by a modifier word; for instance, previous policy code where previous is the modifier word.
You can define your own naming pattern different from the above modifier prime class pattern for a specific modeling object, including the separator between words and if modifier word or class word in the pattern is optional. You can have, for instance, modifier?_prime_modifer?_class_modifier? pattern for attribute naming in a logical data model. The ? characters indicate the words are optional and the separators are _. An example name with that pattern is permanent employee last name, assuming we have defined in our standard that permanent as a modifier word, employee as a prime word, last a modifier word, and name as a class word. Note that we don’t have the last optional modifier word in this example.
In a different business (not insurance), code might well be a prime word and policy might not be a prime word; hence the need to define your own specific list of prime, class and modifier words and naming patterns for their application, and that is what you build in glossary model.
Building Glossary Model
The InfoSphere Data Architect (IDA) allows you to build a glossary model from blank or from pre-defined enterprise model.
Creating glossary model and selecting its template, blank or pre-built enterprise template
The enterprise glossary model gives you a head start with its collection of words relevant across various business types, most of which would probably be applicable to your business too. You can customize the glossary: change or delete the existing words, or add new ones.
Selecting an existing word or words in the list and then clicking the cross icon will delete the selected words
Clicking the plus icon allows you to add a new word into the glossary
When you add a new word, in addition to the name, you specify its Abbreviation, Alternate name, and most importantly its type (CLASS, PRIME) and if it is a Modifier word. When the glossary is applied for transforming a logical to physical model, the abbreviation is applied to the physical modeling object.
Customizing a word being added
Selecting the type of a word
Before we can apply the words to naming our data model objects, we need to define the naming pattern. You can define the naming pattern for logical and physical modeling objects. The sequence of the word types in the pattern from top to bottom is left to right when you apply them in the names. You can also choose the separator for your naming pattern: space or title case for the logical model, and any character for the physical model (most preferred choice would be non alpha numeric character that is not used in any of the words in the glossary).
Defining pattern for logical model objects (entity and attribute)
Defining pattern for physical model objects (table and column)
Specifying separator for logical model
Specifying separator for physical model
You then choose the glossary model that you want to apply to your data models.
Glossary Model.ndm in the packtpub directory is applied
When you have finished building your glossary model and defining naming pattern, you can then apply them for naming your modeling objects. (You can further adjust the words in the glossary them when such a need arises)
Applying Naming Standard
The glossary model helps you in two ways: Assigning names during modeling and analyzing the names in your model for compliance to the standards in the glossary.
When you are naming a model object, you can show the naming pattern for the object and the list of words in the glossary.
When you type in the leading characters of the word you are looking for, the list smartly points to the word. When you move to a word, its information is shown and if it is the one you want, you can select it by just clicking Enter.
Analyzing Model Object Names
You can analyze the names in your logical model for their compliance to the standard in the glossary model.
At the end of the analysis, you will get a successful completion message, or list of errors.
This article shows the major capabilities of IBM InfoSphere Data Architect which specifically helps you in automating data model naming. You store your standard names and also define the naming pattern which you can utilize later while modeling. You can also use the glossary to analyze an existing model for naming compliance.