VGR Fireplace

NamingSystem

NamingSystem används för att beskriva identiferare och annan metadata för CodeSystems och andra namnrymder inom FHIR. NamingSystem beskriver inte innehållet i själva kodverket eller namnrymden utan används bara för att peka ut det. NamingSystem kan användas för att skapa kopplingar mellan olika identiferare för samma kodverk, tex att hålla ihop en OID och en URL som båda pekar på namnrymden Snomed CT. Se FHIR-specen NamingSystem för mer information.

en bild på NamingSystem

Identifier

Datatypen Identifier används i FHIR för att hålla ett ID som är unikt för instansen och utfärdat av en extern part, tex personnummer eller remissnummer (Business identifier).

en bild på Identifier

Identifier.system

Namnrymden inom vilket det externa ID finns anges med Identifier.system. Enligt FHIR:s specifikation ska det vara en URI och om denna representeras som en URL så bör den vara en resolvable URL.

Se FHIR-specen Identifier för mer information.

Namnrymder med befintlig identifierare som ej är resolverbara

För befintliga namnrymder som har etablerade identifierare av annan typ än resolverbara URLs använder Kompetensgrupp FHIR NamingSystem för att representera namnrymder som resolvable URL:s i våra IG. Även den etablerade identiferaren finns i NamingSystemoch kan används där de behövs, tex inom TA tjänstekontrakt och meddelandetyper i tidigare HL7-versioner. Konkreta exempel är personnummer, samordningsnummer och reservnummer (PNR, SNR, NRID, VGRLRID, VGRGRID).

I vissa fall har kompetensgruppen gjort resolvable URL:s även för namnrymder som har annan förvaltare, tex personnummer. Om och när dessa förvaltare tar fram resolvble URL:s kommer Kompetensgruppens dito att avvecklas.

Se även HL7 FHIR - Migrating OIDs to FHIR.

NamingSystem på Fireplace

Nedan listas de NamingSystem som Kompetensgrupp FHIR håller.

Namn resolverbar URL till resursen Innehåller
PNR https://fhir.vgregion.se/NamingSystem/Personnummer URI, OID, URI
SNR https://fhir.vgregion.se/NamingSystem/Samordningsnummer URI, OID, URI
NRID https://fhir.vgregion.se/NamingSystem/NationelltReservnummer URI, OID, URI
VGRLRID https://fhir.vgregion.se/NamingSystem/LRID URI, OID
VGRGRID https://fhir.vgregion.se/NamingSystem/GRID URI, OID

Översätta mellan identifierare för namnrymd

En namnrymd kan omfatta t.ex. objekt-identifierare (som Svenskt personnummer) eller koder (som ett kodverk i Snomed CT eller annan standard). Best practice i FHIR är att använda en URI som namnrymd-identifierare.

Samma namnrymd kan dock även identifieras med en OID, eller på något annat sätt. I arbetet med en implementation kan behovet uppstå av att översätta mellan olika namnrymd-identifierare.

Inom ramen för en FHIR-implementation, där FHIR-resurser är tillgängliga via stödbibliotek som HAPI FHIR, kan detta göras genom uppslag i listan NamingSystem.uniqueID.

Exempel:

  • Objekt-identifierare av typen Svenskt personnummer är känd
  • Namnrymd-identifierare för Svenskt personnummer av typen OID kan hittas genom uppslag i NamingSystem-resursen, motsvarande PersonnummerNS.uniqueId[type="oid"].value

Följande diagram illustrerar sambanded mellan objekt-identifierare och namnrymd-identifierare:

Exempel

Nedan är några exempel i javascript på hur man kommer åt NamingSystems olika värden via sina egenskaper.

'''
//hitta namingSystem-värden av typen uri (kan returnera flera)
ns.uniqueId.find(x => x.type === "uri")

//hitta namingSystem-värden av typen oid (kan returnera flera)
ns.uniqueId.find(x => x.type === "oid")

//hitta namingSystem-värde som är preferred i namingSystem (kan bara finnas ett)
ns.uniqueId.find(x => x.preferred===true).value

'''