1 / 12

A Short Intro to MIF

A Short Intro to MIF. Hans Jonkers. Philips Research. March 11, 2010. 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 …. MIF: What Is It? (1).

shalin
Download Presentation

A Short Intro to MIF

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. A Short Intro to MIF Hans Jonkers 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 • …

  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 metalanguagethat 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/.

  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

  5. MIF: Who Is It For? "No human should ever see MIF, except for programmers, and those aren't human anyway." Grahame Grieve (adapted from Tim Berners Lee). • MIF is meant for tool smiths and model-engineers, because it deals with meta-objectsthat 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 …

  6. MIF: How Is It Defined? (1) By a set of XML schemas (+ Schematron):

  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:

  8. MIF: How Can You Use It? What you need: • A way to read MIF files. • Use existing tooling (Eclipse) or generate it from the MIF schemas • 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.

  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.

  10. MIF: How We Used It (2) Object models generated from MIF:

  11. Browsing Through The MIF Model …

More Related