Przejdź do treści

NamingSystem

NamingSystem (przestrzeń identyfikatorów) publikuje jedną przestrzeń Identifier.system instalacji: jej klucz, znaczenie, zasób, którego identyfikatory niesie, faktyczną wartość system oraz to, czy jest kluczem referencyjnym. Model jest wzorowany na FHIR R5 NamingSystem zawężonym do kind = identifier.

Zasób jest tylko do odczytu i zastępuje dawną sekcję przestrzeni identyfikatorów w karcie wdrożenia — zob. Identyfikacja i parametry wdrożenia.


1. Zakres i zastosowanie

Przestrzenie kartotek konkretnej instalacji (urn:oid:1.2.616.1.113769.4.<instalacja>.<klucz>) nie są częścią IG — IG dokumentuje stabilny klucz przestrzeni (Party.Id, FixedAsset.Id…) w tabelach „Identyfikatory" na stronach zasobów, a NamingSystem daje mapowanie klucz → faktyczny system. Integrator używa go do:

  • budowania i rozstrzygania referencji logicznych (?identifier=system|value),
  • podstawienia rzeczywistych przestrzeni w miejsce placeholderów urn:oid:2.999.* z przykładów,
  • sprawdzenia, które przestrzenie są kluczem referencyjnym (uniqueId[].preferred = true).

Rejestry publiczne (https://gov.pl/nip, https://gov.pl/regon…) są stałe i nie mają NamingSystem.


2. Struktura (pola)

Nazwa Kard. Typ Opis
name 1..1 string Klucz przestrzeni — ten sam, który stoi w tabeli „Identyfikatory" strony zasobu (np. Party.Id)
status 1..1 code active
kind 1..1 code identifier — przestrzeń identyfikatorów (nie codesystem ani root)
date 1..1 date Data publikacji (yyyy-MM-dd)
description 0..1 string Znaczenie przestrzeni, po angielsku (np. „Contractor id in the accounting ledger")
usage 0..1 string Nazwa zasobu, którego identyfikatory niesie przestrzeń (np. Party)
uniqueId 1..* lista obiektów Identyfikatory przestrzeni — 2a

2a. Struktura uniqueId[]

Nazwa Kard. Typ Opis
type 1..1 code uri (wartość jest URI urn:oid:…)
value 1..1 string Dosłownie wartość Identifier.system: urn:oid:1.2.616.1.113769.4.<instalacja>.<klucz>
preferred 0..1 boolean true = klucz referencyjny: value identyfikatora jest w przestrzeni unikalne, przestrzeń nadaje się do ?identifier=system|value

3. Konwencje API.ERP

Pole Konwencja Odstępstwo od R5
name klucz przestrzeni z tabel „Identyfikatory"; kilka zasobów może mieć ten sam name (np. Party.Id osobno dla każdego profilu strony) — rozróżnia je description i uniqueId[].value R5 traktuje name jako nazwę techniczną; tu jest kluczem dokumentacyjnym
usage nazwa zasobu API.ERP R5: dowolny opis użycia
uniqueId[].type zawsze uri
uniqueId[].value wartość Identifier.system bez przekształceń
uniqueId[].preferred znacznik klucza referencyjnego R5: preferowany identyfikator przestrzeni spośród kilku
rodzaj identyfikatora wynika z przestrzeni; brak osobnego pola

4. Operacje

Odpowiedź to koperta { "items": [...], "nextToken": null }, stronicowana parametrami count (domyślnie 20) i offset (domyślnie 0).

Operacja Parametry Odpowiedź
GET /v1/naming-systems brak 200 koperta z NamingSystem[] — wszystkie przestrzenie instalacji
GET /v1/naming-systems?usage=<Zasób> usage (nazwa zasobu, np. Party) 200 koperta z przestrzeniami tego zasobu

Zasób jest tylko do odczytu; brak POST/PATCH i tras z {id}.


5. Przykład

{ "resourceType": "NamingSystem", "name": "Party.Id", "status": "active", "kind": "identifier", "date": "2026-09-18",
  "description": "Contractor id in the accounting ledger", "usage": "Party",
  "uniqueId": [ { "type": "uri", "value": "urn:oid:1.2.616.1.113769.4.<instalacja>.<klucz>", "preferred": true } ] }

Odpowiadający wiersz tabeli „Identyfikatory" na stronie Party: Party.Id — Id kontrahenta, kartoteka księgowości (profil Contractor), klucz referencyjny: tak.


6. Odniesienia