Skip to content
Michael Osborne edited this page Jul 19, 2024 · 32 revisions

Contents

Tips and Tricks

  • Manual XML: slice by type on non-repeating element need to add cardinality for IG build
  • Manual XML: Forge sometimes drops cardinality of extensions (0..*) so need to manually add

Terminology resource conventions

  1. All resources to be in the terminology namespace http://terminology.hl7.org.au/
    1. Code systems in http://terminology.hl7.org.au/CodeSystem/
    2. Value sets in http://terminology.hl7.org.au/ValueSet/
  2. All resources should have a registered OID as the identifier
  3. All resources should declare conformance to the applicable shareable resource profile:
  4. convention for id: <something meaningful> e.g. medicine-item-change
  5. convention for url: <hl7 au namespace>/<id> e.g. http://terminology.hl7.org.au/CodeSystem/medicine-item-change
  6. convention for name: <something meaningful, match code system name where possible> e.g. MedicineItemChange
  7. convention for title: <something meaningful, match code system title where possible> e.g. Medicine Item Change
  8. All code system resources should be case insensitive
  9. The 'all codes' value set is to be defined with the same values as the CodeSystem except that the url will use the value set namespace in the url 'http://terminology.hl7.org.au/ValueSet/' i.e. should share same name, id, title but the url is different.
    1. This value is used in CodeSystem.valueSet.
    2. If an 'effective all codes' value set is required (e.g. 'active' codes only) it shall have a different name and id to the CodeSystem (and therefore different URL to the 'all codes' ValueSet)

Conventions for extending a core (or external) terminology in Australia

Example core code system: ActCode http://terminology.hl7.org/CodeSystem/v3-ActCode

Example core value set that is extended: ActEncounterCode http://terminology.hl7.org/ValueSet/v3-ActEncounterCode

The AU code system that defines the AU local codes to:

  • convention for id: au-<external code system id> e.g. au-v3-ActCode
  • convention for url: <hl7 au namespace>/<external code system id> e.g. http://terminology.hl7.org.au/CodeSystem/v3-ActCode
  • convention for name: <external code system name>AU e.g. ActCodeAU
  • convention for title: <external code system title> AU e.g. ActCode AU
  • convention for description: Extended concept codes for <insert human description> for use in an Australian context. Includes HL7 international codes plus Australian additions to create a complete set. e.g. Extended concept codes for act coding for use in an Australian context. Includes HL7 international codes plus Australian additions to create a complete set.
  • Local AU concepts to be defined in same convention as code system being extended e.g. all caps or all lowercase or …

The AU value set that extends an external value set by adding AU local codes:

  • convention for id: au-<external value set id>-extended e.g. au-v3-ActEncounterCode-extended
  • convention for url: <hl7 au namespace>/<external value set id>-extended e.g. http://terminology.hl7.org.au/ValueSet/v3-ActEncounterCode-extended
  • convention for name: <external value set name>AUExtended e.g. ActEncounterCodeAUExtended
  • convention for title: <external value set title> - AU Extended e.g. ActEncounterCode - AU Extended
  • convention for description: <external value set title> extended for use in an Australian context. Includes HL7 international codes plus Australian additions to create a complete set.
  • Composed of core value set plus additional codes

Conventions for representing external terminology in Australia

Note:

  1. Resources cannot declare conformance to the applicable shareable resource profile:
  2. Resources may not be able to be define a CodeSystem.valueset depending on agreements to define content within an HL7 Australia specification

Example HL7 AU publication of an external code system: GTIN http://www.gs1.org/gtin Example HL7 AU value set for the HL7 AU publication of an external code system: GTIN for Medicines http://terminology.hl7.org.au/ValueSet/gtin

HL7 AU publication of an external code system to:

  • convention for id: <something meaningful>-external e.g. mims-external
  • convention for url: <code system owner defined url> e.g. http://www.mims.com.au/codes
  • convention for name: <external code system name> e.g. MIMS
  • convention for title: <meaningful title> e.g. Monthly Index of Medical Specialties (MIMS)
  • convention for publisher: <owner of the code system> e.g. MIMS Australia
  • convention for contact: <include url for the publisher> e.g. https://www.mims.com.au
  • convention for the copyright: Copyright (c) <owner organisation> e.g. Copyright (c) MIMS Australia Pty Ltd; Copyright (c) Department of Health, Commonwealth of Australia
  • convention for description: ```This CodeSystem resource represents the code system published by . . This is not the canonical publication of this code system nor it is intended to be publication on behalf of the . For the complete content of the code system contact the publisher.
  • convention for jurisdiction: jurisdiction is not to be included

HL7 AU value set for the HL7 AU publication of an external code system:

  • convention for id: <something meaningful> e.g. mims
  • convention for url: <hl7 au namespace>/<id> e.g. http://terminology.hl7.org.au/ValueSet/mims
  • convention for name: <something meaningful, match code system name where possible> e.g. MIMS
  • convention for title: <something meaningful, match code system title where possible> e.g. MIMS
  • convention for description: ```The value set includes all values from published by . Further details can be found at .

Identifier data type profile conventions

  1. type is mandatory - mandating type is appropriate for profiles for 'well formed' identifiers
  2. every Identifier data type profile shall have guidance on the coding of type:
  3. if a fixed code is present:
    1. it shall be from the required hl7VS-identifierType - AU Extended value set
    2. shall not have the 'required binding' present as it is already satisfied by the fixed code
    3. code will be fixed by pattern
    4. coding will not be restricted to 1..1 as this is too restrictive
  4. text should not be constrained in all real world identifier profiles as per Identifier data type profiles :: remove fixed value of type.text in all real world identifier profiles #471
  5. All profiles that define identifier types (rather than special cases) should mandate system and value.
  6. Local identifiers (e.g. Employee Number, Local Prescription Number) should provide guidance on assigner:
    1. Mandating this assigner only appropriate for profiles for 'well formed' identifiers - otherwise assigner should be optional
    2. assigner.display should be mandated in either case as the agreed base means of providing this information (the Reference type is too open to leave unconstrained)