Share this page:

FHIR® Implementations
Dedicated to the discovery, definition and publishing of HL7® FHIR® Implementation Guides, Conformance, Profiles, Extensions and ValueSets serving the Canadian context.
Members: 218
Contact: Joel Francis
Admins: Linda Monico
Type: Open
Access: Public
Dedicated to the discovery, definition and publishing of HL7® FHIR® Implementation Guides, Conformance, Profiles, Extensions and ValueSets serving the Canadian context.

About

Welcome to the Canadian FHIR implementation community forum. The purpose of this forum is to collaborate on areas of FHIR implementation that will advance implementations across Canada, while contributing to the global adoption of FHIR. The objective is to develop pan-Canadian approaches to constraining and extending FHIR. The community has been active since January 2016 and has been growing ever since!

The community currently has five streams of activity:
1. Topical workstreams
2. Monthly community calls to share workstream progress and other FHIR-related news
3. A general forum to ask questions and share information

The table below provides more details on the workstream activity:

Workstream Co-Chairs Objective Progress to date
Smart on FHIR

Gavin Tong (Gevity)

  1. Investigate these emerging FHIR technologies for applicability to the Canadian market
  2. Create reference material to support and promote national adoption
  3. Identify the need and kick-off activities needed to create necessary FHIR elements that support Canadian implementations
  1. Drafted core objectives and initial action items
  2. Presented a Business Case overview for SMART on FHIR (video here)
  3. Conducted a review of architectural considerations
  4. Analyzed usable OAuth2 grant schemes for SMART applications
  5. Created a demo application shared on GitHub
  6. Start creating a marketing engagement strategy to educate, promote and invite more industry participation. Doc here.
Solution Architecture

Igor Sirkovich (OMHLTC)

Kris Lewis (Sierra Systems)

  1. Serve as a forum for all architectural questions about implemention of FHIR based solutions
  2. Discuss Canadian URI (incl. mapping to OIDs), profiles and extensions
  1. Review FHIR URI strategy
  2. Full list of provincial Patient ID URIs
  3. Partial list of provincial Org URIs
  4. Started work on provincial provider URIs
  5. Started discussion paper on IG publisher
eReferrals

Tim Berezny (CareDove)

Caryn Harris (Orion Health)

  1. Build eReferral use cases
  2. Prototype eReferral use cases
  3. Select Resources to include in Specifications
  4. Write preliminary Specifications for broader use
  1. Overall use case flows combined into a single modular flow diagram: diagram and video.
  2. A demo video of some of eReferral workflows in action in a pilot environment: simple, SMART, advanced business logic
  3. Primary Resources have been identified. Identifying the role of the Task Resource.
  4. FHIR Resources applied in pilot environment, Specification writing still pending, outsanding: authentication mechanisms.
Community Monthly Calls

Gavin Tong (Gevity Inc.)

Yaron Derman (eHealth Ontario)

  1. Share progress within the workstreams within the broader FHIR community
  2. Identify and promote FHIR education and implementation activities
  1. Informative updates and discussions about FHIR globally and progress across the workstreams
  2. Average 17 participants per call.
Canadian FHIR Baseline Profiles

Michael Savage (Ontario MD)

  1. Formulation of an apporach to initiate and govern the baseline work
  2. Creation of a set of national profiles that can be leveraged by implementers and jurisdictions to promote re-use and interoperability
  1. An analysis of the work that is currently available such as - Argonaut Project
  2. Average 30 participants per call.

The FHIR community forum is a great place to learn, share and collaborate, whether you are new to FHIR or are already have deep FHIR experience.

Activity

Derek Ritz replied to a discussion in FHIR® Implementations
The US work is certainly accelerated by the national rule declaration process. The regulatory levers (and comfort level around using them) obviously vary from place to place. Lloyd, I think this is the key to success (or the key to failure... as the case may be). My sense is that we will need the FHIR CA-Core baseline to be signed-off and adopted by our jurisdictional partners. This would be market-making for the vendors. I fear if we do not achieve this jurisdictional consensus, however, it puts our goals of care delivery network-wide interoperability in dire jeopardy.
Lloyd Mckenzie replied to a discussion in FHIR® Implementations
US Core/Argonaut has now been ongoing for about 4 years. In many ways, it was EHR-vendor led. They continue to identify new targets for work, come to consensus on specifications, coordinate testing and move things through the ballot process. Several other jurisdictions are following suit (using US Core as a starting point), including Australia, Russia, and a few others. So we're not alone in this path, and it's certainly a path that's recommended by both the communities and the larger EHR vendors. It also just generally makes sense. The key commonly supported elements for allergies, conditions, labs, etc. aren't that different from place to place or implementation to implementation. The tricky parts are agreeing on terminologies. However, if there's been significant standards/regulatory work in the country already, that helps. The US work is certainly accelerated by the national rule declaration process. The regulatory levers (and comfort level around using them) obviously vary from place to place.
Shamil Nizamov replied to a discussion in FHIR® Implementations
Shamil -- I'm not certain I follow all the implications of your example. Are you advocating that our current extensions defined by the Solution Architecture WG be rolled into the Canadian Baseline? If yes... then it seems to support the notion that our baseline needs to be sufficiently defined to ensure interoperability. Re: slices... are you thinking that these could become configurations on vendors' standard products that point to where codelists are to be found (e.g. for PHNs, as you suggest)? I'm sorry if I'm misunderstanding... and if I am, please can you clarify? Baseline needs to be sufficiently defined to ensure interoperability - that's exactly why we need Canadian Core at the first place. Vendors can do and they actually have done it already (I'm thinking about our BC implementations) implementing solutions without following any baseline at all. I cannot tell it better than Lloyd - The possibility of multiple extensions serving the same purpose is more of a concern - which is one of the reasons why forums like this and chat.fhir.org are so important to drive alignment during the design stage. Having a feedback process for specs during the creation process where misalignment can be addressed is also appropriate. From our side, Solution Architecture WG put enough effort discussing and aligning URI and extensions. Please reuse that outcome.
Derek Ritz replied to a discussion in FHIR® Implementations
Lloyd -- this is very good news. I was not aware that we yet had evidence that the US-Core was successfully achieving health system wide interoperability in that market. I have been worrying that our strategy of following this US approach was as-yet-unproven. To hear that it has worked is very comforting.
Lloyd Mckenzie replied to a discussion in FHIR® Implementations
What's happening in the U.S. is that implementers largely *are* targeting their interfaces to that 'core' set of functionality. Other IGs then build on that to reflect the needs of specific implementation spaces (genomics, Da Vinci work, etc.) Adoption of the IGs by vendors is influenced both by the market/business drivers as well as how close the alignment is to the US Core spec. Defining extensions doesn't mean that anyone will implement them. There has to be a convincing reason for the software vendor to bother. It's no different, really, than support for a core element. The possibility of multiple extensions serving the same purpose is more of a concern - which is one of the reasons why forums like this and chat.fhir.org are so important to drive alignment during the design stage. Having a feedback process for specs during the creation process where misalignment can be addressed is also appropriate. FHIR has tossed out the "design by constraint" process for a few reasons: - It's really hard to create a spec that covers "everything" - it takes a long time and the specs are inevitably complex and hard to implement - and of course no one's expected to actually implement 'everything', so everyone picks different subsets. - There's inevitably new stuff that ends up coming up. Every EHR system *WILL* have variation in what it exposes. And that's ok. Each EHR will adopt features at different speed, have different priorities, will expose new experimental capabilities, etc. So long as there's a common set of behavior that everyone can count on, you can choose whether to take advantage of EHR-specific capabilities or not. It's much the same as coding for browsers. There's a common set of HTML, Javascript, etc. that all browsers implement pretty consistently. There are also variations. If you want to fine-tune your product for Netscape or Edge (or a specific version there-of), you can. In much the same way, you could tune to a particular version of Epic or Cerner. But if you write your app to target the lowest common denominator, you can be confident of working with any EHR (or at least any EHR that agrees to adopt the common core). The *value* of US Core (and hopefully CA Core) is that there's a commitment to implement that common subset - and the commitment is being met.
Jean Duteau replied to a discussion in FHIR® Implementations
Jean -- I'm thinking more of commercial software product developers than I am of one-off solution implementers. Do your comments equally apply to this group (e.g. large EMR product companies like Telus, Epic or Cerner)? You suggest that vendors would start with the Canadian Baseline as the starting point for their implementation guides. Does this imply that every commercial product would have its own (potentially idiosyncratic) FHIR IG? It seems to me that care delivery network-wide interoperability will rely on (and be limited to) the degree of overlap between all of the participating stakeholders' IGs. That would seem to make even more important the degree of coverage of the Canadian Baseline. I'm very sorry if I'm missing something obvious to everyone but me. If you go look at the Implementation Guides that are being balloted at the HL7 International level, you will see the starting point that I think software product developers should be basing their products on (the Da Vinci guides are something I'm currently working on that are appropriate). In Canada, PrescribeIT is an early example of this. If your product is involved in a specific interoperability space, then you are going to be basing your product on an Implementation Guide that targets that space. If there isn't one for that space, then you will have to create one and circulate it to the other vendors/implementers that are operating in your space to get consensus and thus interoperability. The Canadian Baseline is not one of those space-specific Guides, but rather a set of guiding principles for all Guides that are operating in the Canadian market space. Just like most (if not all?) Guides in the US base themselves on US-Core, I would hope and expect all Guides in Canada to base themselves on the Canada-Core. Because the Canada-Core is not space-specific, that means that we have to be careful to not over-constrain it. It provides the baseline for all spaces and thus has to be useable in all spaces. In the US, Project Argonaut's Guides (http://argonautwiki.hl7.org/index.php?title=Main_Page) have been highly influential on the American EHR market. That Guide has a set of profiles and a set of business operations that arose from a set of decisions that the Project made around the consuming and sharing of Core Data. That Guide used US-Core as its starting point and then went further to provide an interoperable base for Core Data. I think that it would be a good thing, after or even in parallel to the work on Canada-Core, if vendors in Canada wanted a similar initiative to Project Argonaut, that we developed such a Guide and that would then give the network-wide interoperability that you are searching for.
Derek Ritz replied to a discussion in FHIR® Implementations
Jean -- I'm thinking more of commercial software product developers than I am of one-off solution implementers. Do your comments equally apply to this group (e.g. large EMR product companies like Telus, Epic or Cerner)? You suggest that vendors would start with the Canadian Baseline as the starting point for their implementation guides. Does this imply that every commercial product would have its own (potentially idiosyncratic) FHIR IG? It seems to me that care delivery network-wide interoperability will rely on (and be limited to) the degree of overlap between all of the participating stakeholders' IGs. That would seem to make even more important the degree of coverage of the Canadian Baseline. I'm very sorry if I'm missing something obvious to everyone but me. Shamil -- I'm not certain I follow all the implications of your example. Are you advocating that our current extensions defined by the Solution Architecture WG be rolled into the Canadian Baseline? If yes... then it seems to support the notion that our baseline needs to be sufficiently defined to ensure interoperability. Re: slices... are you thinking that these could become configurations on vendors' standard products that point to where codelists are to be found (e.g. for PHNs, as you suggest)? I'm sorry if I'm misunderstanding... and if I am, please can you clarify?

Events



Upcoming events:
Fri Jul 05 @ 2:00PM - 03:00PM
Canadian FHIR Baseline Profiles Workstream
Fri Jul 12 @ 2:00PM - 03:00PM
FHIR Solution Architecture
Fri Jul 19 @ 2:00PM - 03:00PM
Canadian FHIR Baseline Profiles Workstream

Forum

Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
The US work is certainly accelerated by the national rule declaration process. The regulatory levers (and comfort level around using them) obviously vary from place to place. Lloyd, I think this is the key to success (or the key to failure... as...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
US Core/Argonaut has now been ongoing for about 4 years. In many ways, it was EHR-vendor led. They continue to identify new targets for work, come to consensus on specifications, coordinate testing and move things through the ballot process. Sever...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
Shamil -- I'm not certain I follow all the implications of your example. Are you advocating that our current extensions defined by the Solution Architecture WG be rolled into the Canadian Baseline? If yes... then it seems to support the notion that o...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
Lloyd -- this is very good news. I was not aware that we yet had evidence that the US-Core was successfully achieving health system wide interoperability in that market. I have been worrying that our strategy of following this US approach was as-yet-...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
What's happening in the U.S. is that implementers largely *are* targeting their interfaces to that 'core' set of functionality. Other IGs then build on that to reflect the needs of specific implementation spaces (genomics, Da Vinci work, etc.) Adop...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
Jean -- I'm thinking more of commercial software product developers than I am of one-off solution implementers. Do your comments equally apply to this group (e.g. large EMR product companies like Telus, Epic or Cerner)? You suggest that vendors would...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
Jean -- I'm thinking more of commercial software product developers than I am of one-off solution implementers. Do your comments equally apply to this group (e.g. large EMR product companies like Telus, Epic or Cerner)? You suggest that vendors would...
FHIR Implementers' Community Call - June 26, 12-1 EST 06/26/19
ATTENDEES: 1. Michael Savage 2. Gavin Tong 3. Craig Anderson 4. Alex Goel 5. John Wills 6. Yaron Derman 7. Radhika Verma 8. Ken Sinn 9. Igor Sirkovich 10. Tim Berezny 11. Moazzam Khan 12. Raman Dhanoa FHIR North and Apps for Health is...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
As a suggestion: there is a number of extensions already defined by the Solution Architecture WG - simplifier.net/canadianbaseline/~resources?category=Extension - let's incorporate those into the Patient resource. Then slice Patient.identifier and...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
Derek - I wouldn't expect any implementer to target their product at just the consensus baseline unless you are trying to be as accommodating as possible. SMART on FHIR is able to be that accommodating and thus targets this baseline. I rather expec...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
Lloyd -- this is REALLY important point, and deserves (please) a bit more elaboration. There is definitely an attractiveness to this approach for those who are well-served by this simplification. We should expect that a lowest-common-denominator will...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/26/19
A key thing to keep in mind is that FHIR's methodology is not "design by constraint". There's no expectation that these profiles will contain every piece of information that might be relevant to the clinical or business context of a particular imple...
Prep Work for Friday's Canadian FHIR Baseline Profiling Workstream Meeting (2-3pm EST) 06/25/19
Attendees Michael Savage Sheridan Cook Russ Buchanan Finnie Flores Sisira De Silva Jean Duteau Jorge Pichardo Ken Sinn Natalya Pogrebetsky Alex Goel Christopher Kundra Fang Cao Francis Lau Harsh Sharma Igor Sirkovich Joel Francis L...
FHIR Implementers' Community Call - June 26, 12-1 EST 06/24/19
The draft agenda for the FHIR Implementations Community Call is below. As a reminder, the calendar invite with connection details can be found on the event calendar here: https://infocentral.infoway-inforoute.ca/en/monthly-calendar/month.calendar/...
FHIR Implementation Community - Solution Architecture Call (2019-06-14 2pm-3pm EST) 06/24/19
Thank you very much, Ken! Everyone, please review the proposal and post your feedback in this thread. We are going to cancel our meeting on June 28th and will review all the feedback at our next meeting on July 13th.

Tasks


Tasks


Time Tracking


Gantt

Documents

Click Manage documents to:

  • view the complete list of documents or documents grouped by folder
  • upload a new document

Note: Group members are not currently notified when new documents are added. To notify others, you must post the URL to the new document in the forum. (Notification of document uploads is a feature in development.)

Manage documents You may need to login and/or be a member of the group to access this content.

Architecture ( 2 Documents )

BusinessCase ( 6 Documents )

CDS Hooks ( 0 Document )

Client Registry ( 2 Documents )

Consent Management ( 0 Document )

eReferral ( 0 Document )

Meeting Materials ( 8 Documents )

Provider Registry ( 1 Document )

SMART on FHIR ( 3 Documents )

Tooling ( 6 Documents )

Canadian Core Profile - Template for Review / Proposed Changes New

Published on Jun 21, 2019 by Michael Savage

Vendor OID Form IntraHealth EMR

Published on Jun 11, 2019 by Vania Granese

Alberta Prescription Monitoring Protocol OID request

Published on Mar 29, 2019 by Randy Nonay

OID registration form for Microquest Canada

Published on Mar 29, 2019 by Randy Nonay

OID Registration Form for Input Health

Published on Mar 22, 2019 by Vania Granese

Identifier OID Registration Form for Indivica

Published on Mar 05, 2019 by Vania Granese

Joel Francis' HL7 WGM Update

Published on Jan 23, 2019 by Yaron Derman

New OIDs Request Process

Published on Dec 05, 2018 by Joel Francis

Terminology Gateway - Overview

Published on Dec 05, 2018 by Joel Francis

Why FHIR, Why Now?

Published on Dec 14, 2017 by Tasha Shaw-Verbic

Pourquoi utiliser FHIR et pourquoi maintenant

Published on Dec 13, 2017 by Tasha Shaw-Verbic

Video

OAuth2, OpenID and SAML2 overview

An overview of these specifications and technologies and how they relate to SMART on FHIR.

01/19/18
FHIR in Canada

Infoway Partnership Conference 2017. Presented by Yaron Derman, Manager, eHealth Standards, eHealth Ontario, and Attila Farkas, Director, FHIR Strategy and Implementation, Canada Health Infoway

01/03/18

Solutions

  • Canadian FHIR Registry
  • Canadian URI Registry
  • FHIR Terminology Service API
  • HAPI FHIR
  • HAPI v2
  • HL7 Explorer
  • InfoRMS
  • Message Builder
  • Message ReMixer
  • Object Identifier (OID)
  • SNOMED CT Browser
  • Terminology Gateway
  • Terminology Service API
  • TermWorks
  • WebHook Notifications

The Canadian FHIR® Registry supports collaborative development in an effort to accelerate sustainable growth of FHIR, locally and internationally. The registry is the home of national FHIR profiles recommended for use in Canada, including extensions, value sets, URIs and other useful, commonly used components. It is also host to a growing number of national, jurisdictional and locally shared FHIR projects, and is open to all Canadian implementers.

The Canadian FHIR Registry offers:

  • seamless integration of profile editing using Forge (free FHIR profile editor)
  • designated project space
  • supports project teams of up to 100 individuals
  • online authoring of implementation guides
  • integration with source control tools such as GitHub
  • version controlled environment

The Canadian FHIR Registry blends software development best practices with the requirements of modelling in FHIR, essential to delivering successful project requirements while having continuous access to structure validation, rendering and publishing.

All project artifacts are backed up weekly, on Sunday nights. Each snapshot will be retained for 10 days. The project owner can request an as-is snapshot containing all the necessary artifacts such as text, xml, json, md and image files by contacting This email address is being protected from spambots. You need JavaScript enabled to view it..

Organization projects can be viewed without logging in. To edit or request a new project, This email address is being protected from spambots. You need JavaScript enabled to view it. with the details.

View projects in the Canadian FHIR Registry

The Canadian URI Project is a repository of identifier and code system namespaces. Capturing key metadata as FHIR® NamingSystem resources provides an automatic mapping of OIDs to URIs or vice versa.

To make the discovery of these artifacts more flexible, the Canadian URI Registry (alpha) was developed to allow artifacts to be queried via plain text, OID, URI or their respective identifiers. These identifiers are created according to the URI guidelines and posted to the FHIR Solution Architecture Workstream for approval.

It is important to note that all searchable artifacts are to be curated via the Canadian URI Project in Simplifier. There are ongoing discussions with the FHIR Solution Architecture Stream to have a single representative manage data for their respective jurisdictions.

A scheduled task is run periodically, making all new or modified artifacts searchable after a 20 minute window.

Search the Canadian URI Registry (alpha)

FHIR web services used to access terminology data

FHIR Terminology Service APIs enable automated exchange of clinical terminology content and resources. It allows developers to easily implement healthcare applications that programmatically consume codes and subsets without requiring in-depth expertize in the fine details of terminology.

terminology gateway APIFHIR Terminology Service API

 

Open source integration tools useful for health IT integration projects

HAPI FHIR® is a simple-but-powerful library for adding FHIR messaging to applications. It is pure Java compatible and licensed under the business-friendly Apache Software License, version 2.0.

HAPI FHIR

 

External Solutions for API integration

Open source integration tools useful for health IT integration projects.

HAPI v2
 

HAPI for HL7 v2 messages is an open-source, object oriented HL7 v2.x parser developed for the Java platform

HAPI FHIR
 

HAPI FHIR is a simple-but-powerful library for adding FHIR messaging to your application. It is pure Java compatible and licensed under the business-friendly Apache Software License, version 2.0.

Open source integration tool useful for health IT integration projects

HAPI for HL7 v2 messages is an open-source, object oriented HL7 v2.x parser developed for the Java platform.

HAPI v2

Enhanced browsing of HL7 v3

Infoway HL7 Explorer is a powerful browser for HL7 v3 structures, vocabulary and references. Used in conjunction with the pan-Canadian releases, HL7 Explorer makes locating details and information more efficient.

In November 2017, the Canadian HL7 InfoCentral community determined that there was no longer any need to do further updates to the pan-Canadian Version 3 messages. As a result, the December 2012 releases of MR02.06.01 and CeRx 4.4.2 are the latest pan-Canadian publications of these standardized messages.

The HL7 Explorer, the Master Terminology Worksheet (MTW) and all other messaging related artifacts are aligned with the latest releases.

Overview
 

Learn about the features HL7 Explorer: search once, graphical representation, quick hints, etc.

MR 02.06
 

HL7 Explorer applied to the MR 02.06 HL7 v3 maintenance release

CeRx 4.4.2
 

HL7 Explorer applied to the CeRx 4.4.2 HL7 v3 maintenance release

 

 

Standards versions available for viewing in HL7 Explorer

Standard URL 
CA MR 02.06 https://infocentral.infoway-inforoute.ca/extra/ca/mr0206-html/html/search.html
CA MR 02.05.01 https://infocentral.infoway-inforoute.ca/extra/ca/mr020501-html/html/start.html
CA MR 02.05 https://infocentral.infoway-inforoute.ca/extra/ca/mr0205-html/html/start.html
CA MR 02.04.03 https://infocentral.infoway-inforoute.ca/extra/ca/mr020403-html/html/start.html
CA CeRx 4.4.2 https://infocentral.infoway-inforoute.ca/extra/ca/cerx442-html/html/search.html
CA CeRx 4.4.1 https://infocentral.infoway-inforoute.ca/extra/ca/cerx441-html/html/start.html 
CA CeRx 4.4 https://infocentral.infoway-inforoute.ca/extra/ca/cerx44-html/html/start.html
BC V02R04 https://infocentral.infoway-inforoute.ca/extra/bc/v02r04-html/html/start.html
NS CeRx 4.3 https://infocentral.infoway-inforoute.ca/extra/ns/cerx43-html/html/start.html
NS R02.04.03 https://infocentral.infoway-inforoute.ca/extra/ns/r020403-html/html/start.html
AB MR2007 https://infocentral.infoway-inforoute.ca/extra/ab/mr2007-html/html/start.html
AB R02.04.03 https://infocentral.infoway-inforoute.ca/extra/ab/r020403-html/html/start.html
AB R02.04.00 SHR https://infocentral.infoway-inforoute.ca/extra/ab/r020400-shr-html/html/start.html
AB R02.04.03 Imm https://infocentral.infoway-inforoute.ca/extra/ab/r020403-imm-html/html/start.html

Request Management Solution

InfoRMS (Infoway Request Management System) is Infoway's Request for Change Tool for SNOMED CT, pCLOCD/LOINC and pan-Canadian Subsets. Not sure if you have access to InfoRMS? Manage your InfoRMS Access in your user profile.
SNOMED CT
 

Prior to submitting a SNOMED CT request, it is the requestor's responsibility to:

  1. Validate that the content does not exist in either the International or Canadian editions of SNOMED CT
  2. Comply with the appropriate Editorial Guidelines

Submit or follow requests to SNOMED CT

pCLOCD/LOINC
 

Prior to submitting a pCLOCD/LOINC request, it is the requestor's responsibility to:

  1. Validate that the content does not exist in LOINC or the pCLOCD
  2. Comply with Regenstrief Editorial Guidelines (note: login required)

Submit or follow requests to pCLOCD/LOINC

pan-Canadian Subsets
 

Prior to submitting a Subset request, it is the requestor's responsibility to:

  1. Validate the content against the subsets in Terminology Gateway
  2. Comply with the appropriate proper terminology Editorial Guidelines

Submit or follow requests to pan-Canadian Subsets

 

Solution for API integration

Infoway Message Builder allows developers to focus on the business challenges of integrating their solutions with each electronic health record implementation by abstracting the differences between different versions of pan-Canadian HL7 messaging and supporting current implementation constraints. Developers can build interfaces in a familiar development environment, using the programming language of their choice*, while the Message Builder API fosters quick and easy creation, population and access to HL7v3 requests and responses.

Infoway Message Builder v2.0 and later is enhanced to generate JAVA APIs to create, validate, marshal/unmarshal CDA documents.

 Implementation and Exchange

 

Key features and benefits

Message Builder offers a number of key features and benefits:

  1. Abstracts the complexity of HL7v3 messages and greatly simplifies the work of the developer when implementing them;
  2. Reduces the impact on developers from implementation variations;
  3. Enables companies to achieve Infoway product certification with greater confidence and reduced time;
  4. Enables developers to incorporate future message versions without re-writing their products;
  5. Can be embedded in software applications due to its open source distribution under a commercial-friendly Apache 2.0 license.

Out of the box support

Infoway Message Builder comes with built-in runtime APIs that support a number of pan-Canadian specifications:

  • MR2009 (R02.04.02)
  • MR2007 (V02R02)
  • MR 2007 (V02R01)
  • CeRx (V01R04.3)

In addition, while developers can easily build custom transport mechanisms without affecting the core, Message Builder includes native support for SOAP and RESTful message transports. Developers can configure and extend the transport as desired.

Detailed product features

  • Provides the capability to configure and populate message values that are common to all messages—this allows developers to reuse common message data, shortening the time to configure and create an interoperable system.
  • Uses simplified data types that are natural and familiar to the programming language (e.g. String for ST) rather than directly exposing the sometimes complicated HL7v3 data types—yet still allowing access to HL7v3 data types when necessary.
  • Allows developers to focus on the business-aspect of a request/response, avoiding many of the complexities of HL7v3.
  • Code-generation algorithms merge identical and similar classes together to simplify the generated API—meaning less confusion in the resulting code and an increased ability to write generic handlers for certain types.
  • Converts populated objects into HL7v3 XML requests, and converts HL7v3 responses into populated objects.
  • Provides flexibility in configuring and performing terminology-code lookups, including code set and database-backed lookups (can mix and match).
  • Associations and attributes are strongly typed, given business names when provided, and contain code docs directly from the MIFs (see wiki.hl7.org/index.php?title=MIF).
  • The algorithms inline most classes that only have a small number of properties, further simplifying the API.
  • Offers both permissive and strict modes—permissive allows many common errors and generates appropriate error comments in the XML or result object.
  • A separate validation tool is provided to test ad-hoc messages—this tool reuses the same validation components that are executed during message marshaling and unmarshalling, ensuring consistent processing of the message whether during processing or during conformance validation.

Forward looking

The power of the Message Builder architecture is in its MIF-based generation of the specification API. With Message Builder, any MIF is supported—whether a future release of the pan-Canadian specifications or a modified (constrained) jurisdiction-specific release of an existing specification. 

 

How it works

Message Builder comprises two parts:

  1. Message Builder Generator—a tool used by Infoway to take input MIFs and create Message Sets for use by Message Builder Runtime;
  2. Message Builder Runtime—an API used by developers to allow their products to support multiple Message Sets without recoding.

Message Builder Generator

Used by Infoway, Message Builder Generator takes MIFs (as the source of truth for standards specifications) and converts them into a series of Java Classes. This is done by first converting the MIFs to an XML Message Set (a simplified representation of the information present in the original MIFs), then generating Java Classes that reference standard Java data types and use business-friendly names. In the process, groups of related elements are flattened and similar message parts are placed into a single class: these steps increase ease of use and reduce the complexity of the resulting Java Classes.

MBG process

Using Message Builder Generator, Infoway is able to create multiple Message Sets, each representing the MIFs used in a single jurisdiction, but all for the same HL7v3 version.

Message Builder Runtime

Message Builder Runtime allows developers to quickly adapt to implementations in multiple Jurisdictions: incoming messages are first examined to determine the corresponding source Message Set, once identified, a series of Java Objects that represent the message are instantiated. Next, the Java Objects are turned into an HL7 message for the HL7 version corresponding to the desired destination Message Set. 

MB process

Using Message Builder Runtime developers can accept messages over the wire and on-the-fly turn them into a different HL7 message version. Given the capability of Message Builder to support future versions of HL7 messages, developers can easily future proof their products with minimal effort.

 

*Developer friendly

The Message Builder libraries are available for Java and Microsoft .NET. In addition, a simplified XML message format is available with REST-based services for managing mapping to/from the simplified form to the target specification XML format.

 

CDA Support

Message Builder CDA API supports the following CDA and data type specifications:

Message Builder provides  JAVA and .NET APIs for CDA document creation, validation, marshalling/unmarshalling of the following CDA document types:

  • Continuity of Care Document (CCD) (Release 1.1)
  • Consultation Notes (Release 1.1)
  • Discharge Summary (Release 1.1)
  • Imaging Integration, and DICOM Diagnostic Imaging Reports (DIR) (Release 1)
  • History and Physical (H&P) (Release 1.1)
  • Operative Note (Release 1.1)
  • Progress Note (Release 1.1)
  • Procedure Note (Release 1)
  • Unstructured Documents (Release 1.1)
  • CDA documents using pan Canadian CDA header template

Clinical applications in JAVA or .NET can use the Message Builder CDA APIs to create, validate or parse above listed types of CDA documents. Potential use cases are document source or document consumer actors in IHE XDS profile, content creator/content consumer in any content module/profile, or report creator/viewer in RIS/PACS/EMR systems.

Message Builder is available for Java and .NET

Message Builder for Java

System Requirements

  • Java 1.5 or higher
  • Maven 3.0.3 or higher (can be removed after installing Message Builder if working with a non-Maven project)

Download

Message Builder is licensed under Apache License, Version 2.0. To use Message Builder, you will need

  1. Message Builder Core and
  2. one or more Message Builder API release(s)—depending on your implementation requirements.

Select a Message Builder Version:

 

Select one or more Message Builder API releases:

 

Optional Message Builder components:

Terminology Database Resolver
Message Builder Example

Message Builder pom.xml file:

 

Message Builder for .NET

System Requirements

  • .Net Framework 3.5 or higher

Download

Message Builder v2.1 for .NET

Message Builder is licensed under Apache License, Version 2.0. To use Message Builder:

  1. Download Message Builder .NET Core 2.1.0 setup
  2. Unzip and pull out the dll files that you need:
     \ → root location of required Message Builder core assemblies (Mandatory - required all)
     \releases\ → location of Message Builder release assemblies (Mandatory - choose one or more)
  3. Copy them to your .NET project 
  4. Download Message Builder .NET 3rd-Party libraries, unzip it, and copy the files to your .NET project

Message Builder v1.5.8.1 for .NET

Message Builder is licensed under Apache License, Version 2.0. To use Message Builder:

  1. Download Message Builder .NET Core 1.5.8.1 setup
  2. Unzip and pull out the dll files that you need:
     \ → root location of required Message Builder core assemblies (Mandatory - required all)
     \releases\ → location of Message Builder release assemblies (Mandatory - choose one or more)
  3. Copy them to your .NET project 
  4. Download Message Builder .NET 3rd-Party libraries, unzip it, and copy the files to your .NET project

Message Builder v1.4.6 for .NET

Message Builder is licensed under Apache License, Version 2.0. To use Message Builder, you will need

  1. Download Message Builder .NET Core 1.4.6 setup
  2. Unzip and run SetupCore.msi file
  3. Choose a installation location <install dir>.  The setup execution should place the following directories in <install dir>:
     \lib\ → location of required Message Builder core assemblies (Mandatory - required all)
      \releases\ → location of Message Builder release assemblies (Mandatory - choose one or more)
     \src\ → location of all source code and project files required to load them into visual studios
     \debug\ → location of debug symbol files
  4. Pull out files the dll files from the \lib\ and \releases\ folders, and copy them to your .NET project 
  5. Download Message Builder .NET 3rd-Party libraries, unzip it, and copy the files to your .NET project

Localization of pan-Canadian Standards

Infoway Message ReMixer is a web-based application that allows for the localization of pan-Canadian Standards (pCS) messages to meet jurisdictional requirements, all while maintaining the integrity of the original, standard message.

msg remixerAccess Message ReMixer Now

 Implementation and Exchange

Jurisdictional ReMixes

Pan-Canadian Standards use Object Identifiers (OIDs) to distinguish between objects by assigning a numeric string that enables other systems to understand the unique information that is being shared between various systems.

Canada Health Infoway (Inofway) has an arrangement in place with HL7 International that allows Infoway to submit OIDs to HL7 International on behalf of Canadian Implementers free of charge. There is a $250 USD fee per OID request if done directly with HL7 International.

To submit an OID, download the registration form that corresponds to your OID request.

  • For all non-jurisdictional and Infoway owned subsets, email the completed form to This email address is being protected from spambots. You need JavaScript enabled to view it.
  • All other requests must be sent to the Jurisdictional Representatives for OIDs
.

OID submission guidelines

  1. Jurisdictional Teams require 5-7 business days to process each request. It will be incumbent on the requestor to reply within this time frame to any questions and follow up as required. Any failure to do so will result in an automatic rejection and require resubmitting the request.
  2. The Requestor must post the OID requests on the following forums ONLY after consulting with the Jurisdiction/Infoway SME:
  3. Forum posts shall have the following format:

    Subject: New Namespace/CodeSystem/Subset OID Request
    • OID Description: “A description of the OID”
    • OID Symbolic name: Symbolic name guidelines
    • Responsible Body & Contact Information
    • Proposed FHIR URI: URI as per URI Guidelines
    • To be published: Canadian URI Registry/Terminology Gateway

  4. There will be a wait period of 5 business days for the communities to react to the forum post with comments, questions or requests for clarification.
  5. FHIR URIs must be proposed for all jurisdictional and non-jurisdictional OID requests according to the URI Guidelines and must be published in the Canadian URI Registry. Publishing the URI is an optional but highly recommended step. The Requestor will submit a validated FHIR® NamingSystem resource object based on the NamingSystem profile to their jurisdictional representative who will then upload it.
  6. FHIR URIs must not be proposed for Subsets to be published on the Terminology Gateway as they will be generated automatically.
  7. The Forum post will be updated with the new OID.

Browse International and Canadian Content

SNOMED International's SNOMED CT browser allows users to browse and search the SNOMED CT International Edition to explore concepts and relationships. It also provides access to browse national extensions from SNOMED International member countries including the Canadian Edition of SNOMED CT in English and French.

snomed browser Browse SNOMED CT Now

 General Documentation

Browse, download and leverage the terminology used in Canada

Terminology Gateway is a web based solution framework that enables the distribution and sharing of terminology concepts, subsets and concept maps, making them available for web browsing, download or real time query.

terminology gatewayBrowse Terminology Gateway Now

RESTful web services used to browse terminology data

Terminology Service RESTful APIs enable automated exchange of clinical terminology content and resources. It allows developers to easily implement healthcare applications that programmatically consume codes and subsets without requiring in-depth expertise in the details of terminology.

terminology gateway APITerminology Service API

 

Apelon’s TermWorks is an easy-to-use data mapping solution that is provided by request (free of charge) to individuals who have Standards Access. It brings powerful terminology capabilities directly to the desktop. TermWorks combines Microsoft® Excel® spreadsheet software with web services-based terminology processing to give organizations comprehensive mapping capability to SNOMED CT and the Canadian Edition of SNOMED CT.

 

knowing Learn More

  • This email address is being protected from spambots. You need JavaScript enabled to view it.
  • SNOMED CT Education
  • Apelon User Guide
  • Infoway User Installation Guide
  • How does TermWorks Work?
  • TermWorks FAQs

Automated notifications of new content in Terminology Gateway

A WebHook is an HTTP callback. When new content is published in the Terminology Gateway, a publishing event will be POSTed to each registered WebHook, notifying their respective owners about the publication.

WebHook registration

Individual users can register for WebHook notifications by sending an email to: This email address is being protected from spambots. You need JavaScript enabled to view it. and specifying the WebHook endpoint. Upon registration, a unique api_id will be assigned to the WebHook. Each notification POSTed by the Terminology Gateway will contain the api_id, allowing the endpoint to verify that the notification was indeed issued by the Terminology Gateway. The api_id must be echoed back by the WebHook endpoint in the body of the notification response.

WebHook interface

The WebHook endpoint must serve HTTP requests conforming to the following interface:

HTTP Request

{
  "api_id": "cb570e5a2748f349f9119431db836b3a23fdb6571afee34c0432d87220f2431b",
  "base_url": "https://termapi.infoway-inforoute.ca/rest/v1/",
  "notification_time": "2017110711:07:00",
  "targets": [
    {
      "id": "2.16.840.1.113883.2.20.6.1",
      "name": "Canadian Clinical Drug Data Set (CCDD)",
      "type": "package",
      "version": "20171016",
      "effective_date": "20171016",
      "publication_time": "2017103015:20:23",
      "message": "Monthly CCDD update for October 2017"
    },
    {
      "id": "2.16.840.1.113883.2.20.3.443",
      "name": "PrescribeIT",
      "type": "package",
      "version": "LPR2",
      "effective_date": "20171103",
      "publication_time": "2017110309:37:22",
      "message": "PrescriptionMedicinalCode version reflecting the October 2017 CCDD update"
    }
  ]
}
				
  • api_id: as previously mentioned, each notification POST contains the api_id granted at registration.
  • base_url: the base URL for the native REST API endpoint of the originating system. This can be used to call back the Terminology Gateway via APIs in order to programmatically download updated content.
  • notification_time: the timestamp of the WebHook notification in yyyyMMddHH:mm:ss format.
  • targets: list of updated targets. Each entry in this array corresponds to a Terminology Gateway artifact (subset, codesystem, map, package) that was updated and is therefore subject to the notification. The target list will only include artifacts for which the user has registered to receive notifications. Users can register to receive notifications about content updates using the Terminology Gateway User Interface or by invoking the native REST APIs.

    Each of the notification targets contains the following fields:
    • id: the artifact id, typically an OID
    • name: the artifact name
    • type: the artifact type: subset, codesystem, package or map
    • version: the published version id
    • effective_date: the effective date associated to the artifact version, in yyyyMMdd format
    • publication_time: the publication time in yyyyMMddHH:mm:ss format
    • message: optional message describing the published artifact version

HTTP Response

HTTP Response code: 200 for success, any other response code will be interpreted as an error
Sample HTTP Response Body:

{
  "api_id": "cb570e5a2748f349f9119431db836b3a23fdb6571afee34c0432d87220f2431b",
  "result": "success",
  "message": "Successful processing of the WebHook notification"
}
  • api_id: as previously mentioned, each notification response must echo back the api_id granted at registration.
  • result: success if the web hook notification was successful, any other value will be interpreted as an error.
  • message: optional response message.


Error handling

When receiving an error as a result of a WebHook notification, the Terminology Gateway will retry the notification four times at 15 minutes intervals. If still unsuccessful after four notification attempts, the system will drop the notification and will notify the user by email that the WebHook couldn't be invoked.

Sample code

Demo code for a sample WebHook endpoint can be found here: 

https://github.com/CanadaHealthInfoway/tgateway-webhook

Web Conference

Please login to acquire access to the InfoCentral web conferencing.

Members

Joel Francis
Canada Health Infoway
ONLINE
Contact
Linda Monico
Canada Health Infoway
ONLINE
Admin
Michelle O'Keefe
Sierra Systems
OFFLINE
Member
Pennylane MacDonald
n/a
OFFLINE
Member
James Mitchell
Royal Victoria Regional Health Centre
OFFLINE
Member
Ramandeep Dhanoa
Northern Health
OFFLINE
Member
Jorge Alejandro Pichardo
Island Health
OFFLINE
Member
Amaria Wachanga
Clinic
OFFLINE
Member
Maher Salah
CGI
OFFLINE
Member
steven wong
McMaster University
OFFLINE
Member
Patrick Pyette
Perimind Corporation
OFFLINE
Member
Kinson Ho
McKesson
OFFLINE
Member
Bryan Dearlove
GE Healthcare
OFFLINE
Member
Craig Anderson
Health Canada
OFFLINE
Member
Inderpal Singh
Strata Health Solutions
OFFLINE
Member

Thank you to everyone who participated in our webinar today. Stay tuned for the webinar materials and mark your cal… https://t.co/Pq4DZvMgVp

by Infoway

InfoCentral logo

Improving the quality of patient care through the effective sharing of clinical information among health care organizations, clinicians and their patients.



Login Register