RMIM Designer Documentation (Vocabulary MIF)
Overview | 2010/11 Updates | VocabMIF | DataTypeReleases | BatchProcess | CommandLine | Errors/Install | Vis2002-3-7-10-13 |
Introduction · Loading-RIM-Vocab · ConstraintSelection (ProperConstraints) · VocabBrowser (Controls · Browsing · Searching)
Introduction
Release 4.4.0 of the HL7 RMIM Designer (in Visio) was the first release to use a vocabulary "core MIF" file as its source for Vocabulary content. The "core MIF" files (with names like DEFN=UV=VO=822-20090227.coremif) have been released along with the Design Repository in every design repository release since September 2008.
Note: It is recommended that this tool only be used on machines with at least 1 GB of memory, because the in-memory vocabulary content is large.
In the past, you the designer presented a "drop-down" that displayed a tree view of vocabulary content that was actually in mixed-mode - it combined concept domains, value sets and code systems into a single hierarchical display. This comkbined display was replaced because it was introducing confusion (and errors) and because it was constraining the ability to create a "clean", correct vocabulary model.
The new release opens a new "modal" window pane that displays vocabulary content as three independent tree views - one each for concept domains, code systems and value sets.
Features of the selection pane are:
- Independent tree views for the three types of vocabulary content;
- Tree views may be tiled side-by-side (default) or displayed singly on a "Tab" control;
- When opened, tree views are constrained to the relevant sub-set of content (such as ActClass when selecting a class code for an Act clone);
- When opened, the "selected" constraint in the pane is set to the previous constraint from the source model;
- Search capability to find content in the vocabulary (uses a case-insensitive search on descriptive text, names and identifiers of vocabulary content);
- Text descriptions for an element selected in a tree view may be called up for display;
- "Current" selection box shows what is the current (most-recent) selection;
- "Help" display summarizes the function of each button on the pane;
- In addition to mouse control, "Enter" key and "Esc" key will close the pane and either return a constraint (or nothing for "Esc")
These features and their use are discussed in the following sections.
Loading RIM and Vocabulary Content
The Model Selection window was modified to allow selection of both a Design Repository file ("mdb" file) and a Vocabulary MIF file (either "coremif" or "mif" file extension.) Since September of 2008, all RIM Repository distribution have included a vocabulary "core"mif file (with names like DEFN=UV=VO=822-20090227.coremif) as part of the distribution. In both RoseTree and the new RMIM Designer releases, the associated vocabulary "coremif" file will be loaded unless the user over-rides that selection.
The simplest way to use the latest RMIM Designers is to place a copy of the design repository from the Design Repository Project on Gforge along with its associated vocabulary file in some convenient directory, perhaps the Visio solutions HL7 directory, and then start the RMIM Designer in the usual fashion.
The first pane to appear will be the Model Selection pane (right-above). This pane now includes tweo selectioln boxes. One for the Repository file and the other for the "Vocab MIF" file. You do not need to select the latter file. If it has not been selected, the RMIM Designer will look for the correct file to associate with the repository and will use that, if one is found. (It will seek your permission before using the found file.) If it cannot find a file, it will prompt you to select one. It is not possible to run the RMIM Designer without a vocabulary mif file available.
Selecting Vocabulary Constraints
Vocabulary constraints for RIM attributes are established in one of two ways in the RMIM designer. Both methods are done within the HL7 Class Refinement Editor as seen at right and below. This editor has two panels selected by a tab control The Properties tab is where the typeCode, classCode, moodCode, etc. are selected. The vocabulary constraints for doing this are circled in the first of the three panes at the right. The process of constraining these properties is initiated by either clicking on the associated "Browse" button, or by double-clicking on the text box that displays the constraint. The remaining vocabulary constraints are established in the Attributes tab, as seen in the second of the panes to the right. For each coded attribute, there are three "controls" a selection box for the kind of constraint, the text field that displays the constraint, and a "Browse" button. The vocabulary selector/browser can be started by either clicking the associated "Browse" button, or by double-clicking the text field. NOTE: Although the constraint type box may be changed by clicking on it, its value will always be correctly set by choosing a constraint in the browser, and thus this control is best treated as a display-only control.
|
Proper Constraints by Attribute KindThe HL7 methodology specifies varying constraint expressions for the different kinds of attributes found in the HL7 Reference Information Model (RIM) and in static models derived from the RIM. Moreover, the appropriate form of constraint is different for a "universal" (UV) design or constraint than it would be for an implementation-level constraint. Simply stated, at the "UV" level constraints (with the exception of structural attributes) should be abstractions or generalizations that permit realms, projects and implementers to refine these further in order to meet the requirements of their particular design. The following sub-sections provide an informative overview of these principles to help guide model designers. The formal "rules" are embedded in other documents. Structural Attribute Constraints - classCode, typeCode, moodCode, and determinerCodeThe so-called "structural attributes" are those attributes in the RIM that encode design content that might otherwise have been part of the model structure. For example, a class code represents an sub-type enumeration that might have been represented as a physical class in the RIM, but was not because while it had unique meaning, it did not require unique attributes or associations. There are a total of eight structural attributes in the RIM - the classCode attributes for each of the Act, Role and Entity classes; the typeCode attributes for the ActRelationship, Participation and RoleLink classes; the moodCode attribute for the Act class; and the determinerCode attribute for the Entity class. The constraints for these attributes are unique in that they:
Governing PrinciplesIn November 2007, M&M and Vocabulary committee agreed on the following principles for defining these constraints and for managing the vocabulary content for these attributes:
Selecting Structural ConstraintsThus when selecting constraints for these attributes users should:
|
Other Attributes with CS Data Type in RIMIn addition to the eight structural attributes there are another thirty or so RIM attributes whose data type is CS. By the data type definition, these attributes are constrained in the RIM to values drawn from a single code system that can only be extended through harmonization or ballot. The principles for vocabulary content management (stated above) apply to these attributes as well. However these decisions have a slightly different impact since the representation of these constraints in the RMIM iconography does not dominantly depend on a code value. Tius means that in most cases, the user will wish to select a value set as the primary constraint, rather than a code. Selecting Other CS ConstraintsThus when selecting constraints for these attributes users should:
Other Attributes Constrained to Data Type CVOccasionally, universal designs may involve an attribute that has been constrained to the CV data type, and for which there exists a universal binding of some concept domain to a particular value set (and code system). In those cases, it may be reasonable to assert a fixed or default code value as a constraint. All Other AttributesAs a general rule all other attributes in universal designs should be constrained to a Concept Domain. Absent a universal context binding, all such attributes should retain the generality provided by a concept domain constraint. |