![Page 1: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/1.jpg)
Hans JonkersPhilips ResearchMarch 11, 2010
A Short Intro to MIF
![Page 2: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/2.jpg)
Philips Research, March 11, 2010 2
Contents
MIF:• What is it?• Who is it for?• How is it defined?• How can you use it?• The way we used it.• Browsing through the MIF
– StaticModel– VocabularyModel– DataTypeModelLibrary– …
![Page 3: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/3.jpg)
Philips Research, March 11, 2010 3
MIF: What Is It? (1)
• MIF = Model Interchange Format
Can be viewed in different ways:• As a set of XML formats used to support the storage and exchange of
HL7 version 3 artefacts as part of the HL7 Development Framework.• As a (meta)metamodel, i.e. as a metalanguage that is used to define
the HL7 version 3 standard and its constituent artefacts.
• The definition of the MIF is a task of the HL7 Tooling Working Group.• MIF 2 definition is not stable yet; latest version can be downloaded from
http://gforge.hl7.org/gf/project/mif-schemas/frs/.
![Page 4: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/4.jpg)
Philips Research, March 11, 2010 4
MIF: What Is It? (2)
HL7 Version 3 artefacts that are defined in MIF:• Analysis related artefacts such as
– domain analysis model, story board, glossary• Static model related artefacts, such as
– static model, derived static model, serialized static model• Dynamic model related artefacts, such as
– interaction, trigger event, application role• Vocabulary related artefacts, such as
– vocabulary model, code system, code system supplement• Data type related artefacts, such as
– data type model library• Conformance related artefacts, such as
– conformance profile, interaction profile• Publication related artefacts, such as
– publication, structured document, freehand document
![Page 5: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/5.jpg)
Philips Research, March 11, 2010 5
MIF: Who Is It For?
• MIF is meant for tool smiths and model-engineers, because it deals with meta-objects that are used to build tools and models.
• Application programmers use these tools and the code generated from these meta-objects to build applications.
So, it’s only a special breed of programmers that should ever see MIF …
"No human should ever see MIF, except for programmers, and those aren't human anyway."
Grahame Grieve (adapted from Tim Berners Lee).
![Page 6: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/6.jpg)
Philips Research, March 11, 2010 6
MIF: How Is It Defined? (1)
mif-core-base
mif-model-static-serializedmif-model-static-flat
mif-model-staticBase
mif-core-staticBase
mif-model-datatype
mif-core-enumerations
Core
Vocabulary
Data type
xhtml1-strict
xml
mif-model-requirements mif-model-publication
mif-model-crossReference
mif-model-package
mif-model-interface
mif-model-dynamic mif-model-documentation
mif-COMPLETE
mif-model-static-derived
mif-core-patterns
mif-model-testing
mif-model-vocabulary
mif-model-conformance
mif-core-changes
Mark-up
xhtml-special.ent xhtml-symbol.ent
xhtml-lat1.ent
MIF 2.1 - June 13, 2008
mif-model-annotationLibrary
Static
Dynamic
Interface
Stable Beta Draft
Other
By a set of XML schemas (+ Schematron):
![Page 7: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/7.jpg)
Philips Research, March 11, 2010 7
MIF: How Is It Defined? (2)
• The XML schemas define the MIF language constructs as types, with the meaning of the types explained informally in annotations:
![Page 8: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/8.jpg)
Philips Research, March 11, 2010 8
MIF: How Can You Use It?
What you need:
1. A way to read MIF files.– Use existing tooling (Eclipse) or generate it from the MIF schemas
2. A proper understanding of the MIF constructs.– Unfortunately there is not much documentation …
• It helps to read and process MIF instances in terms of strongly-typed classes generated from the MIF schemas.
• Tools such as xsd.exe (for .NET) generate such classes.
![Page 9: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/9.jpg)
Philips Research, March 11, 2010 9
MIF: How We Used It (1)
• MOM object model of MIF was generated from the MIF schemas, including read and write methods.
• MIF files are read as instances of the MIF model and mapped to object models.
• Applications are built using C# classes generated from the object models.
C#SQL
XML
application
object modelgenerator object model
C#generator
MIF
XSD
HL7v3 Standard ABCD HL7v3 Generator
![Page 10: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/10.jpg)
Philips Research, March 11, 2010 10
MIF: How We Used It (2)
Datatypes(R1)
RIM(2.26)
R_PatientUniversal
ClinicalStatement
R_AssignedEntity
Universal
R_AssignedPerson
Identified
R_MedicationUniversal
R_SpecimenUniversal
CMETs …..
Vocabulary
Object models generated from MIF:
![Page 11: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/11.jpg)
Philips Research, March 11, 2010 11
Browsing Through The MIF Model …
![Page 12: Hans Jonkers Philips Research March 11, 2010 A Short Intro to MIF](https://reader035.vdocuments.net/reader035/viewer/2022081519/56649c755503460f94928290/html5/thumbnails/12.jpg)