This wiki has undergone a migration to Confluence found Here
Difference between revisions of "VML Processing Widget"
Jump to navigation
Jump to search
Line 1: | Line 1: | ||
[[Category:HowTo]] | [[Category:HowTo]] | ||
+ | ==Summary== | ||
One day soon, this page will document the VML Processing Widget. This an ANT-scripted process that: | One day soon, this page will document the VML Processing Widget. This an ANT-scripted process that: | ||
*consumes proposals for change expressed in the HL7 <big>'''[[Vocabulary Maintenance Language]] (VML)'''</big>, | *consumes proposals for change expressed in the HL7 <big>'''[[Vocabulary Maintenance Language]] (VML)'''</big>, | ||
Line 6: | Line 7: | ||
** an SQL update stream for updating files of properties assigned to vocabulary objects, and | ** an SQL update stream for updating files of properties assigned to vocabulary objects, and | ||
**: | **: | ||
− | **an XML | + | **an XML stream processed in Java to update the primary Access tables |
**: | **: | ||
*:together, these streams update the vocabulary content stored in the Access repository, | *:together, these streams update the vocabulary content stored in the Access repository, | ||
Line 15: | Line 16: | ||
*: | *: | ||
*combines this MIF content from the Access repository with an externally maintained MiF extension file to arrive at a final, complete expression of HL7's vocabulary in MIF. | *combines this MIF content from the Access repository with an externally maintained MiF extension file to arrive at a final, complete expression of HL7's vocabulary in MIF. | ||
+ | ==Background - Management of HL7 Vocabulary Content== | ||
+ | In brief, the HL7 Vocabulary Content: | ||
+ | *Is published and releases as a formal expression of the content in Model Interchange Format (MIF)files; This format: | ||
+ | *: | ||
+ | **Documents the data that define each of the artifacts (Concept Domains, Code Systems, Value Sets, etc.) | ||
+ | **: | ||
+ | **Documents the relationships between the artifacts (such as bindings); | ||
+ | **: | ||
+ | **Provides a vehicle for using XML X-path logic to query and/or analyze the content; | ||
+ | **: | ||
+ | **Provides the source for transforms used to publish the content in HL7 Ballots and Normative Editions. | ||
+ | **: | ||
+ | *Is archived and persisted two complimentary forms: | ||
+ | **an Access data base, designed over 13 years ago, that serves as the "repositiry" for this content; plus | ||
+ | **: | ||
+ | **“Extensions files,” represented in MIF format, that primarily document those Value Sets that are defined against external code systems) expressed in MIF | ||
+ | **: | ||
+ | *Vocabulary Content is updated through the [[Vocabulary_and_RIM_Harmonization_Process]], the results of which drive updates to the Repository and/or extension files. | ||
+ | |||
+ | Prior to the development of this widget, the means for processing updates to the HL7 Vocabulary Content involved: | ||
+ | * Creating update files expressed in the HL7 [[Vocabulary Maintenance Language]] (VML) files. | ||
+ | *: | ||
+ | * "Posting the data in these files to the repository database using the Java-encoded procedures compiled as “VocMaint_and_dependencies.jar”. Weaknesses of this process include: | ||
+ | *: | ||
+ | ** Some updates require manual changes (table/row updates) in Access – but only when VML cannot be used. This requirement arose primarily when it was necessary to update concept properties and “object properties” on Concept Domains and Value Sets | ||
+ | **: | ||
+ | **The original VML schema encapsulates “descriptive markup” (html formatting of descriptions), such as the definition of a concept or the description of a value set's content and purpose)in a CDATA wrapper. This encapsulation precluded validation of the markup prior to its being posted to the data base with the too-frequent requirement to cretae a subsequent correction update. | ||
+ | **: | ||
+ | * Once the content was posted to the database, the definitive “coremif” was assembled from the Access data by RoseTree, with the “Extensions” merged in by transform. |
Revision as of 21:43, 20 June 2014
Summary
One day soon, this page will document the VML Processing Widget. This an ANT-scripted process that:
- consumes proposals for change expressed in the HL7 Vocabulary Maintenance Language (VML),
- splits these proposals into two source streams targeted at the Access repository in which the HL7 Vocabulary content is stored::
- an SQL update stream for updating files of properties assigned to vocabulary objects, and
- an XML stream processed in Java to update the primary Access tables
- together, these streams update the vocabulary content stored in the Access repository,
- an SQL update stream for updating files of properties assigned to vocabulary objects, and
- uses a Java process to "clean up" the Access content,
- invokes RoseTree to express the complete vocabulary content in HL7 Model Interchange Format (MIF), and
- combines this MIF content from the Access repository with an externally maintained MiF extension file to arrive at a final, complete expression of HL7's vocabulary in MIF.
Background - Management of HL7 Vocabulary Content
In brief, the HL7 Vocabulary Content:
- Is published and releases as a formal expression of the content in Model Interchange Format (MIF)files; This format:
- Documents the data that define each of the artifacts (Concept Domains, Code Systems, Value Sets, etc.)
- Documents the relationships between the artifacts (such as bindings);
- Provides a vehicle for using XML X-path logic to query and/or analyze the content;
- Provides the source for transforms used to publish the content in HL7 Ballots and Normative Editions.
- Documents the data that define each of the artifacts (Concept Domains, Code Systems, Value Sets, etc.)
- Is archived and persisted two complimentary forms:
- an Access data base, designed over 13 years ago, that serves as the "repositiry" for this content; plus
- “Extensions files,” represented in MIF format, that primarily document those Value Sets that are defined against external code systems) expressed in MIF
- an Access data base, designed over 13 years ago, that serves as the "repositiry" for this content; plus
- Vocabulary Content is updated through the Vocabulary_and_RIM_Harmonization_Process, the results of which drive updates to the Repository and/or extension files.
Prior to the development of this widget, the means for processing updates to the HL7 Vocabulary Content involved:
- Creating update files expressed in the HL7 Vocabulary Maintenance Language (VML) files.
- "Posting the data in these files to the repository database using the Java-encoded procedures compiled as “VocMaint_and_dependencies.jar”. Weaknesses of this process include:
- Some updates require manual changes (table/row updates) in Access – but only when VML cannot be used. This requirement arose primarily when it was necessary to update concept properties and “object properties” on Concept Domains and Value Sets
- The original VML schema encapsulates “descriptive markup” (html formatting of descriptions), such as the definition of a concept or the description of a value set's content and purpose)in a CDATA wrapper. This encapsulation precluded validation of the markup prior to its being posted to the data base with the too-frequent requirement to cretae a subsequent correction update.
- Some updates require manual changes (table/row updates) in Access – but only when VML cannot be used. This requirement arose primarily when it was necessary to update concept properties and “object properties” on Concept Domains and Value Sets
- Once the content was posted to the database, the definitive “coremif” was assembled from the Access data by RoseTree, with the “Extensions” merged in by transform.