DICOM Megfelelőségi utasítás v2
Feljegyzés
Az API 2-es verziója a legújabb API-verzió. A v2 v1-hez képesti változásainak listáját a DICOM szolgáltatás API 2-es verziójának változásaival kapcsolatban találja .
A DICOM-hoz® készült Medical Imaging Server a DICOMweb Standard egy részét támogatja. A támogatás a következőket tartalmazza:
Emellett ezek a nem szabványos API-k is támogatottak:
- Hírcsatorna módosítása
- Bővített lekérdezéscímkék
- Tömeges frissítés
- Tömeges importálás
- Exportálásálás
A szolgáltatás REST API-verziószámozást használ. A REST API verzióját explicit módon meg kell adni az alap URL-cím részeként, ahogyan az alábbi példában is látható:
https://<service_url>/v<version>/studies
A megfelelőségi utasítás ezen verziója a REST API-k verziójának v2
felel meg.
A verzió kérések során történő megadásáról további információt az API verziószámozási dokumentációjában talál.
A Támogatott tranzakciókra vonatkozó példakéréseket a Postman-gyűjteményben találja.
Preamble Sanitization
A szolgáltatás figyelmen kívül hagyja a 128 bájtos fájlelőzményt, és a tartalmát null karakterekre cseréli. Ez a viselkedés biztosítja, hogy a szolgáltatáson keresztül továbbított fájlok ne legyenek sebezhetők a rosszindulatú preamble biztonsági réssel szemben. Ez a preambulum-tisztítás azonban azt is jelenti, hogy a kettős formátumú tartalom , például a TIFF kódolására használt preambulumok nem használhatók a szolgáltatással.
Tanulmányok szolgáltatás
A Tanulmányok szolgáltatás lehetővé teszi a felhasználók számára a DICOM-tanulmányok, sorozatok és példányok tárolását, lekérését és keresését. Hozzáadtuk a nem szabványos törlési tranzakciót a teljes erőforrás-életciklus engedélyezéséhez.
Áruház (STOW-RS)
Ez a tranzakció a POST vagy a PUT metódust használja a kérelem hasznos adataiban található tanulmányok, sorozatok és példányok reprezentációinak tárolására.
Metódus | Elérési út | Leírás |
---|---|---|
POST | .. /Tanulmányok | Tárolópéldányok. |
POST | .. /studies/{study} | Egy adott tanulmány példányainak tárolása. |
PUT | .. /Tanulmányok | Upsert-példányok. |
PUT | .. /studies/{study} | Upsert-példányok egy adott tanulmányhoz. |
A paraméter study
a StudyInstanceUID DICOM attribútumnak felel meg. Ha meg van adva, a megadott tanulmányhoz nem tartozó példányok figyelmeztetési 43265
kóddal lesznek elutasítva.
Az alábbi válaszfejléc Accept
támogatott:
application/dicom+json
A következő Content-Type
fejlécek támogatottak:
multipart/related; type="application/dicom"
application/dicom
Feljegyzés
A kiszolgáló nem kényszeríti és nem cseréli le azokat az attribútumokat, amelyek ütköznek a POST-kérelmek meglévő adataival. A rendszer minden adatot a megadott módon tárol. Az upsert (PUT) kérelmek esetében a meglévő adatok helyébe a kapott új adatok kerülnek.
A szükséges attribútumok tárolása
A következő DICOM-elemeknek minden tárolni kívánt DICOM-fájlban jelen kell lenniük:
StudyInstanceUID
SeriesInstanceUID
SOPInstanceUID
SOPClassUID
PatientID
Feljegyzés
Minden felhasználói felületnek 1 és 64 karakter közötti hosszúságúnak kell lennie, és csak alfa numerikus karaktereket vagy a következő speciális karaktereket tartalmazhat: .
, -
. PatientID
továbbra is kötelező címke marad, és null értékű lehet a bemenetben. PatientID
a rendszer a típusától függően érvényesíti LO
VR
.
Minden tárolt fájlnak egyedi kombinációval kell rendelkeznieStudyInstanceUID
. SeriesInstanceUID
SopInstanceUID
A figyelmeztető kód 45070
akkor lesz visszaadva, ha már létezik azonos azonosítóval rendelkező fájl.
Csak az explicit értékábrázolásokat tartalmazó átviteli szintaxisok fogadhatók el.
Feljegyzés
A kérelmek legfeljebb 4 GB méretűek. Egyetlen DICOM-fájl vagy fájlkombináció sem haladhatja meg ezt a korlátot.
Változások tárolása az 1. verzióról
A korábbi verziókban a Store-kérés meghiúsulna, ha a szükséges vagy kereshető attribútumok bármelyike sikertelen lenne. A V2-től kezdődően a kérés csak akkor hiúsul meg, ha a szükséges attribútumok sikertelenek .
Az API által nem szükséges attribútumok sikertelen érvényesítése miatt a fájl figyelmeztetéssel van tárolva. A rendszer figyelmeztetést ad az egyes sikertelen attribútumokról példányonként. Ha egy sorozat olyan attribútumot tartalmaz, amely nem érvényesíthető, vagy ha egy attribútummal több probléma is van, csak az első sikertelen attribútum oka lesz feljegyzve.
Ha egy attribútum null értékekkel van elválasztva, az attribútum indexelve lesz, amikor kereshető, és a dicom+json metaadatokban tárolt állapotban lesz tárolva. Nincs érvényesítési figyelmeztetés.
Válaszállapotkódok tárolása
Kód | Leírás |
---|---|
200 (OK) |
A kérelemben szereplő összes SOP-példány tárolása megtörtént. |
202 (Accepted) |
A forráskiszolgáló néhány példányt tárolt, mások pedig meghiúsultak vagy figyelmeztetéseket adtak vissza. A hibával kapcsolatos további információk a válaszüzenet törzsében találhatók. |
204 (No Content) |
Az áruház tranzakciós kérelme nem tartalmazott tartalmat. |
400 (Bad Request) |
A kérés rosszul lett formázva. A megadott tanulmánypéldány-azonosító például nem felelt meg a várt UID-formátumnak. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
406 (Not Acceptable) |
A megadott Accept fejléc nem támogatott. |
409 (Conflict) |
Az áruházi tranzakciós kérelem egyik példánya sem lett tárolva. |
415 (Unsupported Media Type) |
A megadott Content-Type nem támogatott. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
500 (Internal Server Error) |
A kiszolgáló ismeretlen belső hibát észlelt. Próbálkozzon újra később. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Store response paylo
A válasz hasznos adatai feltöltik a DICOM-adatkészletet a következő elemekkel:
Címke | Név | Leírás |
---|---|---|
(0008, 1190) | RetrieveURL |
A tanulmány lekérési URL-címe, ha a StudyInstanceUID szerepel az áruházi kérelemben, és legalább egy példány tárolása sikeresen megtörtént. |
(0008, 1198) | FailedSOPSequence |
A nem tárolható példányok sorozata. |
(0008, 1199) | ReferencedSOPSequence |
A tárolt példányok sorrendje. |
Az egyes adathalmazok a FailedSOPSequence
következő elemeket tartalmaznak (ha a tárolni kívánt DICOM-fájl olvasható):
Címke | Név | Leírás |
---|---|---|
(0008, 1150) | ReferencedSOPClassUID |
Az SOP-osztály egyedi azonosítója annak a példánynak, amelyet nem sikerült tárolni. |
(0008, 1155) | ReferencedSOPInstanceUID |
Az SOP-példány egyedi azonosítója annak a példánynak, amelyet nem sikerült tárolni. |
(0008, 1197) | FailureReason |
A példány tárolásának oka. |
(0008, 1196) | WarningReason |
Az A WarningReason az ellenőrzési problémákat jelzi, amelyeket észleltek, de nem voltak elég súlyosak ahhoz, hogy meghiúsuljon a tárolóművelet. |
(0074, 1048) | FailedAttributesSequence |
Ennek sorrendje ErrorComment tartalmazza az egyes sikertelen attribútumok okát. |
Az egyes adathalmazok a ReferencedSOPSequence
következő elemeket tartalmaznak:
Címke | Név | Leírás |
---|---|---|
(0008, 1150) | ReferencedSOPClassUID |
A tárolt példány SOP-osztályának egyedi azonosítója. |
(0008, 1155) | ReferencedSOPInstanceUID |
A tárolt példány SOP-példányának egyedi azonosítója. |
(0008, 1190) | RetrieveURL |
A példány lekérési URL-címe a DICOM-kiszolgálón. |
Példa válasz a FailedAttributesSequence nélküli fejlécre Accept
application/dicom+json
a ReferencedSOPSequence-ben:
{
"00081190":
{
"vr":"UR",
"Value":["http://localhost/studies/d09e8215-e1e1-4c7a-8496-b4f6641ed232"]
},
"00081198":
{
"vr":"SQ",
"Value":
[{
"00081150":
{
"vr":"UI","Value":["cd70f89a-05bc-4dab-b6b8-1f3d2fcafeec"]
},
"00081155":
{
"vr":"UI",
"Value":["22c35d16-11ce-43fa-8f86-90ceed6cf4e7"]
},
"00081197":
{
"vr":"US",
"Value":[43265]
}
}]
},
"00081199":
{
"vr":"SQ",
"Value":
[{
"00081150":
{
"vr":"UI",
"Value":["d246deb5-18c8-4336-a591-aeb6f8596664"]
},
"00081155":
{
"vr":"UI",
"Value":["4a858cbb-a71f-4c01-b9b5-85f88b031365"]
},
"00081190":
{
"vr":"UR",
"Value":["http://localhost/studies/d09e8215-e1e1-4c7a-8496-b4f6641ed232/series/8c4915f5-cc54-4e50-aa1f-9b06f6e58485/instances/4a858cbb-a71f-4c01-b9b5-85f88b031365"]
}
}]
}
}
Példa válasz a FailedAttributesSequence fejléccel Accept
application/dicom+json
egy ReferencedSOPSequence-ben:
{
"00081190":
{
"vr":"UR",
"Value":["http://localhost/studies/d09e8215-e1e1-4c7a-8496-b4f6641ed232"]
},
"00081199":
{
"vr":"SQ",
"Value":
[{
"00081150":
{
"vr":"UI",
"Value":["d246deb5-18c8-4336-a591-aeb6f8596664"]
},
"00081155":
{
"vr":"UI",
"Value":["4a858cbb-a71f-4c01-b9b5-85f88b031365"]
},
"00081190":
{
"vr":"UR",
"Value":["http://localhost/studies/d09e8215-e1e1-4c7a-8496-b4f6641ed232/series/8c4915f5-cc54-4e50-aa1f-9b06f6e58485/instances/4a858cbb-a71f-4c01-b9b5-85f88b031365"]
},
"00081196": {
"vr": "US",
"Value": [
1
]
},
"00741048": {
"vr": "SQ",
"Value": [
{
"00000902": {
"vr": "LO",
"Value": [
"DICOM100: (0008,0020) - Content \"NotAValidDate\" does not validate VR DA: one of the date values does not match the pattern YYYYMMDD"
]
}
},
{
"00000902": {
"vr": "LO",
"Value": [
"DICOM100: (0008,002a) - Content \"NotAValidDate\" does not validate VR DT: value does not mach pattern YYYY[MM[DD[HH[MM[SS[.F{1-6}]]]]]]"
]
}
}
]
}
}]
}
}
Hiba okkódjainak tárolása
Kód | Leírás |
---|---|
272 |
A tártranzakció a művelet feldolgozásának általános hibája miatt nem tárolja a példányt. |
43264 |
A DICOM-példány nem tudta végrehajtani az ellenőrzést. |
43265 |
A megadott példány StudyInstanceUID nem felelt meg az áruházkérésben megadottnak StudyInstanceUID . |
45070 |
A DICOM-példány ugyanazzal StudyInstanceUID a , SeriesInstanceUID és SopInstanceUID már el lett tárolva. Ha frissíteni szeretné a tartalmat, először törölje ezt a példányt. |
45071 |
Egy DICOM-példányt egy másik folyamat hoz létre, vagy az előző létrehozási kísérlet meghiúsult, és a törlési folyamat nem fejeződött be. Először törölje a példányt, mielőtt újra megkísérli a létrehozást. |
Figyelmeztetési okkódok tárolása
Kód | Leírás |
---|---|
45063 |
A DICOM-példány adatkészlete nem egyezik az SOP-osztálysal. A Tanulmányok tár tranzakciója (10.5. szakasz) megállapította, hogy az adatkészlet nem felel meg az SOP-osztály korlátainak a példány tárolása során. |
1 |
A Tanulmánytár tranzakciója (10.5. szakasz) megállapította, hogy az adatkészlet érvényesítve van |
Tárolási hibakódok
Kód | Leírás |
---|---|
100 |
A megadott példányattribútumok nem felelnek meg az érvényesítési feltételeknek. |
Lekérés (WADO-RS)
Ez a Lekérési tranzakció támogatja a tárolt tanulmányok, sorozatok, példányok és keretek referencia szerinti lekérését.
Metódus | Elérési út | Leírás |
---|---|---|
KAP | .. /studies/{study} | Egy tanulmány összes példányát lekéri. |
KAP | .. /studies/{study}/metadata | Egy tanulmány összes példányának metaadatait kéri le |
KAP | .. /studies/{study}/series/{series} | Egy sorozat összes példányának lekérése |
KAP | .. /studies/{study}/series/{series}/metadata | Egy sorozat összes példányának metaadatait kéri le |
KAP | .. /studies/{study}/series/{series}/instances/{instance} | Egyetlen példány lekérése |
KAP | .. /studies/{study}/series/{series}/instances/{instance}/metadata | Egyetlen példány metaadatainak lekérése |
KAP | .. /studies/{study}/series/{series}/instances/{instance}/rendered | Képformátumba renderelt példány lekérése |
KAP | .. /studies/{study}/series/{series}/instances/{instance}/frames/{frames} | Egy vagy több képkockát kér le egyetlen példányból. Egynél több keret megadásához egy vessző választja el az egyes kereteket a visszatéréshez. Például: /studies/1/series/2/instance/3/frames/4,5,6 . |
KAP | .. /studies/{study}/series/{series}/instances/{instance}/frames/{frame}/rendered | Egyetlen képformátumba renderelt keret lekérése |
Példányok lekérése tanulmányon vagy sorozaton belül
A következő Accept
fejlécek támogatottak a példányok tanulmányon vagy sorozaton belüli lekéréséhez.
multipart/related; type="application/dicom"; transfer-syntax=*
multipart/related; type="application/dicom";
(ha nincs megadva átviteli szintaxis, a rendszer alapértelmezés szerint az 1.2.840.10008.1.2.1 értéket használja)multipart/related; type="application/dicom"; transfer-syntax=1.2.840.10008.1.2.1
multipart/related; type="application/dicom"; transfer-syntax=1.2.840.10008.1.2.4.90
*/*
(ha nincs megadva az átvitel szintaxisa, akkor a rendszer alapértelmezettként használja,*
a mediaType pedig alapértelmezés szerint aapplication/dicom
)
Példány lekérése
Az alábbi Accept
fejlécek támogatottak egy adott példány beolvasásához.
application/dicom; transfer-syntax=*
multipart/related; type="application/dicom"; transfer-syntax=*
application/dicom;
(ha nincs megadva átadási szintaxis,1.2.840.10008.1.2.1
akkor a rendszer alapértelmezés szerint használja)multipart/related; type="application/dicom"
(ha nincs megadva átadási szintaxis,1.2.840.10008.1.2.1
akkor a rendszer alapértelmezés szerint használja)application/dicom; transfer-syntax=1.2.840.10008.1.2.1
multipart/related; type="application/dicom"; transfer-syntax=1.2.840.10008.1.2.1
application/dicom; transfer-syntax=1.2.840.10008.1.2.4.90
multipart/related; type="application/dicom"; transfer-syntax=1.2.840.10008.1.2.4.90
*/*
(ha nincs megadva az átvitel szintaxisa, akkor a rendszer alapértelmezettként használja,*
a mediaType pedig alapértelmezés szerint aapplication/dicom
)
Keretek lekérése
A képkockák lekéréséhez az alábbi Accept
fejlécek támogatottak.
multipart/related; type="application/octet-stream"; transfer-syntax=*
multipart/related; type="application/octet-stream";
(ha nincs megadva átadási szintaxis,1.2.840.10008.1.2.1
akkor a rendszer alapértelmezés szerint használja)multipart/related; type="application/octet-stream"; transfer-syntax=1.2.840.10008.1.2.1
multipart/related; type="image/jp2";
(ha nincs megadva átadási szintaxis,1.2.840.10008.1.2.4.90
akkor a rendszer alapértelmezés szerint használja)multipart/related; type="image/jp2";transfer-syntax=1.2.840.10008.1.2.4.90
application/octet-stream; transfer-syntax=*
egykeretes lekéréshez
*/*
(ha nincs megadva az átvitel szintaxisa, akkor a rendszer alapértelmezettként használja,*
a mediaType pedig alapértelmezés szerint aapplication/octet-stream
)
Átvitel szintaxisának lekérése
Ha a kért átvitel szintaxisa eltér az eredeti fájltól, az eredeti fájl át van kódolva a kért átviteli szintaxisra. Az eredeti fájlnak az alábbi formátumok egyikének kell lennie a sikeres átkódoláshoz, ellenkező esetben az átkódolás sikertelen lehet.
- 1.2.840.10008.1.2 (Little Endian Implicit)
- 1.2.840.10008.1.2.1 (Kis Endian Explicit)
- 1.2.840.10008.1.2.2 (Explicit VR Big Endian)
- 1.2.840.10008.1.2.4.50 (JPEG alapfolyamat 1)
- 1.2.840.10008.1.2.4.57 (JPEG veszteségmentes)
- 1.2.840.10008.1.2.4.70 (JPEG veszteségmentes kijelölési érték 1)
- 1.2.840.10008.1.2.4.90 (CSAK JPEG 2000 veszteségmentes)
- 1.2.840.10008.1.2.4.91 (JPEG 2000)
- 1.2.840.10008.1.2.5 (veszteségmentes RLE)
Nem támogatott transfer-syntax
találatok a következőben 406 Not Acceptable
: .
Metaadatok lekérése (tanulmányhoz, sorozathoz vagy példányhoz)
A következő Accept
fejléc támogatott egy tanulmány, sorozat vagy példány metaadatainak lekéréséhez.
application/dicom+json
A metaadatok lekérése nem ad vissza attribútumokat az alábbi értékmegjelenítésekkel.
VR-név | Leírás |
---|---|
OB | Egyéb bájt |
OD | Egyéb dupla |
OF | Egyéb lebegőpontos |
OL | Egyéb hosszú |
OV | Egyéb 64 bites nagyon hosszú |
OW | Egyéb Word |
ENSZ | Ismeretlen |
A lekért metaadatok tartalmazzák a null karaktert, amikor az attribútumot null értékekkel párnázták ki, és a következőképpen tárolták.
Metaadat-gyorsítótár érvényesítésének lekérése (tanulmányhoz, sorozathoz vagy példányhoz)
A gyorsítótár érvényesítése a ETag
mechanizmussal támogatott. A metaadat-kérésre adott válaszban az ETag lesz az egyik fejléc. Ez az ETag gyorsítótárazható, és fejlécként If-None-Match
is hozzáadható ugyanahhoz a metaadathoz a későbbi kérésekben. Kétféle válasz lehetséges, ha az adatok léteznek.
- Az adatok nem változnak az utolsó kérés óta: a rendszer választörzs nélkül küldi el a
HTTP 304 (Not Modified)
választ. - Az adatok az utolsó kérés óta megváltoztak: a rendszer frissített ETag-el küldi a
HTTP 200 (OK)
választ. A szükséges adatok a törzs részeként lesznek visszaadva.
Renderelt kép lekérése (például vagy keret)
A következő Accept
fejlécek támogatottak egy renderelt kép példány vagy keret lekéréséhez.
image/jpeg
image/png
Abban az esetben, ha nincs Accept
megadva fejléc, a szolgáltatás alapértelmezés szerint renderel image/jpeg
.
A szolgáltatás csak egyetlen keret renderelését támogatja. Ha több képkockát tartalmazó példány esetén renderelésre van szükség, alapértelmezés szerint csak az első keret jelenik meg képként.
Egy visszaadandó keret megadásakor a keretindexelés 1-nél kezdődik.
A quality
lekérdezési paraméter is támogatott. A lekérdezési paraméter értékeként egy egész szám 1
100
(1 legrosszabb minőségű, 100 pedig a legjobb minőség) adható át. Ezt a paramétert a rendszer a renderelt jpeg
képekhez használja, és figyelmen kívül hagyja a renderelési kérelmek esetében png
. Ha nincs megadva a paraméter alapértelmezett értéke.100
Eredeti verzió lekérése
A tömeges frissítési művelettel lekérheti egy tanulmány, sorozat vagy példány eredeti vagy legújabb verzióját. A tanulmány, sorozat vagy példány legújabb verziója mindig alapértelmezés szerint vissza lesz adva. Előfordulhat, hogy az eredeti verziót a msdicom-request-original
fejléc true
beállításával adja vissza. Példa a kérelemre:
GET ../studies/{study}/series/{series}/instances/{instance}
Accept: multipart/related; type="application/dicom"; transfer-syntax=*
msdicom-request-original: true
Content-Type: application/dicom
Válaszállapotkódok lekérése
Kód | Leírás |
---|---|
200 (OK) |
A rendszer minden kért adatot lekért. |
304 (Not Modified) |
A kért adatok az utolsó kérés óta nem változnak. Ilyen esetben a rendszer nem ad hozzá tartalmat a válasz törzséhez. További információt a metaadat-gyorsítótár érvényesítésének lekérése (tanulmány, sorozat vagy példány) című szakaszban talál. |
400 (Bad Request) |
A kérés rosszul lett formázva. A megadott tanulmánypéldány-azonosító például nem felelt meg a várt UID-formátumnak, vagy a kért átvitel-szintaxis kódolás nem támogatott. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
404 (Not Found) |
A megadott DICOM-erőforrás nem található, vagy renderelt kérés esetén a példány nem tartalmaz képpontadatokat. |
406 (Not Acceptable) |
A megadott Accept fejléc nem támogatott, vagy renderelt és átkódolt kérések esetén a kért fájl túl nagy volt. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Keresés (QIDO-RS)
A DICOM-objektumok (QIDO) azonosítóján alapuló lekérdezéssel attribútumok alapján kereshet tanulmányokat, sorozatokat és példányokat.
Metódus | Elérési út | Leírás |
---|---|---|
Tanulmányok keresése | ||
KAP | .. /Tanulmányok?... | Tanulmányok keresése |
Sorozat keresése | ||
KAP | .. /sorozat?... | Sorozat keresése |
KAP | .. /studies/{study}/series?... | Sorozat keresése egy tanulmányban |
Példányok keresése | ||
KAP | .. /Példányok?... | Példányok keresése |
KAP | .. /studies/{study}/instances?... | Példányok keresése egy tanulmányban |
KAP | .. /studies/{study}/series/{series}/instances?... | Példányok keresése sorozatban |
A kereséshez az alábbi Accept
fejléc támogatott.
application/dicom+json
Változások keresése az 1. verzióról
A v1 API-ban és a v2-ben is, ha egy kiterjesztett lekérdezéscímke hibát jelez, mert egy vagy több meglévő példány címkeértéke nem indexelhető, akkor a kiterjesztett lekérdezéscímkét tartalmazó későbbi keresési lekérdezések erroneous-dicom-attributes
a dokumentációban leírtak szerint térnek vissza. Az STOW-RS érvényesítési figyelmeztetéseit tartalmazó címkék (más néven attribútumok) azonban nem szerepelnek ebben a fejlécben. Ha egy áruházi kérés érvényesítési figyelmeztetést ad a kereshető attribútumokra a példány tárolásakor, előfordulhat, hogy ezek az attribútumok nem használhatók a tárolt példány keresésére. A sikertelen érvényesítést eredményező kereshető attribútumok azonban akkor adhatnak vissza eredményt, ha az értékeket felülírják ugyanazon tanulmány vagy sorozat azon példányai, amelyek a sikertelen ellenőrzés után vannak tárolva, vagy ha az értékeket egy korábbi példány már megfelelően tárolja. Ha az attribútumértékek nincsenek felülírva, akkor nem hoznak létre keresési eredményeket.
Az attribútumok a következő módokon javíthatók.
- A tárolt példány törlése és új példány feltöltése a javított adatokkal
- Új példány feltöltése ugyanabban a tanulmányban/sorozatban javított adatokkal
Támogatott keresési paraméterek
Az egyes lekérdezésekhez a következő paraméterek támogatottak:
Kulcs | Támogatási értékek | Engedélyezett darabszám | Leírás |
---|---|---|---|
{attributeID}= |
{value} |
0...N | Attribútum-/ értékegyezés keresése a lekérdezésben |
includefield= |
{attributeID} all |
0...N | A válaszban visszaadandó többi attribútum. Mind a nyilvános, mind a privát címkék támogatottak. Ha all meg van adva, további információt a Keresési válaszban talál.Ha a kiszolgáló a rendelkezésre álló és all a {attributeID} rendelkezésre álló keveréket használja, a kiszolgáló alapértelmezés szerint aall |
limit= |
{value} |
0..1 | Egész számérték a válaszban visszaadott értékek számának korlátozásához. Az érték az 1 >= x <= 200 tartomány között lehet. Alapértelmezett érték: 100 |
offset= |
{value} |
0..1 | Az eredmények kihagyása {value} .Ha a keresési lekérdezés eredményeinek számánál nagyobb eltolást ad meg, a rendszer 204(tartalom nélküli) választ ad vissza. |
fuzzymatching= |
true / false |
0..1 | Ha a PatientName attribútumra igaz fuzzy egyezés van alkalmazva. A PatientName értéken belüli névrészek előtagja megegyezik. Ha például a PatientName a "John^Doe", akkor a "joh", a "do", a "jo do", a "Doe" és a "John Doe" egyezik. Az "ohn" azonban nem egyezik. |
Kereshető attribútumok
Az alábbi attribútumok és keresési típusok keresését támogatjuk.
Attribútum kulcsszó | Minden tanulmány | Minden sorozat | Minden példány | Tanulmánysorozat | A tanulmány példányai | Tanulmánysorozat példányai |
---|---|---|---|---|---|---|
StudyInstanceUID |
X | X | X | |||
PatientName |
X | X | X | |||
PatientID |
X | X | X | |||
PatientBirthDate |
X | X | X | |||
AccessionNumber |
X | X | X | |||
ReferringPhysicianName |
X | X | X | |||
StudyDate |
X | X | X | |||
StudyDescription |
X | X | X | |||
ModalitiesInStudy |
X | X | X | |||
SeriesInstanceUID |
X | X | X | X | ||
Modality |
X | X | X | X | ||
PerformedProcedureStepStartDate |
X | X | X | X | ||
ManufacturerModelName |
X | X | X | X | ||
SOPInstanceUID |
X | X | X |
Feljegyzés
Nem támogatjuk az üres sztring használatával történő keresést attribútumok esetében.
Keresés egyeztetése
Az alábbi egyező típusokat támogatjuk.
Keresés típusa | Támogatott attribútum | Példa |
---|---|---|
Tartomány lekérdezése | StudyDate /PatientBirthDate |
{attributeID}={value1}-{value2} . A dátum/idő értékek esetében a címkén egy befogadó tartományt támogatunk. Ennek a tartománynak a megfeleltetésére van leképezve a attributeID >= {value1} AND attributeID <= {value2} rendszer. Ha {value1} nincs megadva, a dátumok/időpontok összes előfordulása megegyezik, beleértve azokat is {value2} . Hasonlóképpen, ha {value2} nincs megadva, a rendszer az összes előfordulást {value1} és az azt követő dátumokat/időpontokat egyezteti. Ezeknek az értékeknek azonban jelen kell lenniük. {attributeID}={value1}- és {attributeID}=-{value2} érvényesek, azonban {attributeID}=- érvénytelenek. |
Pontos egyezés | Minden támogatott attribútum | {attributeID}={value1} |
Homályos egyezés | PatientName , ReferringPhysicianName |
Megfelel a név bármely olyan összetevőjének, amely az értékkel kezdődik |
UID-listaegyezés | StudyInstanceUID |
Megfelel a listában megadott értékek által azonosított vizsgálatoknak. Támogatja a vesszőt (,) vagy a fordított perjelet (\) érvényes elválasztóként. {attributeID}=1.2.3,5.6.7,8.9.0 az összes vizsgálathoz kapcsolódó adatokat adja vissza, mivel azok léteznek. |
Attribútumazonosító
A címkék többféleképpen kódolhatók a lekérdezési paraméterhez. Részben a PS3.18 6.7.1.1.1.1 szabványban meghatározott szabványt implementáltuk. A címkékhez az alábbi kódolások támogatottak.
Érték | Példa |
---|---|
{group}{element} |
0020000D |
{dicomKeyword} |
StudyInstanceUID |
Példa lekérdezés a példányok keresésére:
../instances?Modality=CT&00280011=512&includefield=00280010&limit=5&offset=0
Keresési válasz
A válasz DICOM-adathalmazok tömbje. Az erőforrástól függően alapértelmezés szerint a következő attribútumok lesznek visszaadva.
Alapértelmezett tanulmánycímkék
Címke | Attribútum neve |
---|---|
(0008, 0020) | StudyDate |
(0008, 0050) | AccessionNumber |
(0008, 1030) | StudyDescription |
(0009, 0090) | ReferringPhysicianName |
(0010, 0010) | PatientName |
(0010, 0020) | PatientID |
(0010, 0030) | PatientBirthDate |
(0020, 000D) | StudyInstanceUID |
Alapértelmezett sorozatcímkék
Címke | Attribútum neve |
---|---|
(0008, 0060) | Modality |
(0008, 1090) | ManufacturerModelName |
(0020, 000E) | SeriesInstanceUID |
(0040, 0244) | PerformedProcedureStepStartDate |
Alapértelmezett példánycímkék
Címke | Attribútum neve |
---|---|
(0008, 0018) | SOPInstanceUID |
Ha includefield=all
a rendszer ezeket az attribútumokat az alapértelmezett attribútumokkal együtt tartalmazza. Az alapértelmezett attribútumok mellett ez a lista tartalmazza az egyes erőforrásszinteken támogatott attribútumok teljes listáját.
Egyéb tanulmánycímkék
Címke | Attribútum neve |
---|---|
(0008, 0005) | SpecificCharacterSet |
(0008, 0030) | StudyTime |
(0008, 0056) | InstanceAvailability |
(0008, 0201) | TimezoneOffsetFromUTC |
(0008, 0063) | AnatomicRegionsInStudyCodeSequence |
(0008, 1032) | ProcedureCodeSequence |
(0008, 1060) | NameOfPhysiciansReadingStudy |
(0008, 1080) | AdmittingDiagnosesDescription |
(0008, 1110) | ReferencedStudySequence |
(0010, 1010) | PatientAge |
(0010, 1020) | PatientSize |
(0010, 1030) | PatientWeight |
(0010, 2180) | Occupation |
(0010, 21B0) | AdditionalPatientHistory |
(0010, 0040) | PatientSex |
(0020, 0010) | StudyID |
Egyéb sorozatcímkék
Címke | Attribútum neve |
---|---|
(0008, 0005) | SpecificCharacterSet |
(0008, 0201) | TimezoneOffsetFromUTC |
(0020, 0011) | SeriesNumber |
(0020, 0060) | Oldalirányúság |
(0008, 0021) | SeriesDate |
(0008, 0031) | SeriesTime |
(0008, 103E) | SeriesDescription |
(0040, 0245) | PerformedProcedureStepStartTime |
(0040, 0275) | RequestAttributesSequence |
Egyéb példánycímkék
Címke | Attribútum neve |
---|---|
(0008, 0005) | SpecificCharacterSet |
(0008, 0016) | SOPClassUID |
(0008, 0056) | InstanceAvailability |
(0008, 0201) | TimezoneOffsetFromUTC |
(0020, 0013) | InstanceNumber |
(0028, 0010) | Rows (Sorok) |
(0028, 0011) | Oszlopok |
(0028, 0100) | BitsAllocated |
(0028, 0008) | NumberOfFrames |
A rendszer a következő attribútumokat adja vissza.
- Az erőforrás URL-címében található összes egyező lekérdezési paraméter és felhasználói felület
IncludeField
az adott erőforrásszinten támogatott attribútumok- Ha a célerőforrás az
All Series
, akkorStudy
a rendszer szintattribútumokat is visszaad. - Ha a célerőforrás ,
All Instances
akkorStudy
aSeries
rendszer szintattribútumokat is visszaad. - Ha a célerőforrás az
Study's Instances
, akkorSeries
a rendszer szintattribútumokat is visszaad. NumberOfStudyRelatedInstances
az aggregált attribútum támogatott szintenStudy
includeField
.NumberOfSeriesRelatedInstances
az aggregált attribútum támogatott szintenSeries
includeField
.
Keresési válaszkódok
A lekérdezési API az alábbi állapotkódok egyikét adja vissza a válaszban.
Kód | Leírás |
---|---|
200 (OK) |
A válasz hasznos adatai az összes egyező erőforrást tartalmazzák. |
204 (No Content) |
A keresés sikeresen befejeződött, de nem adott vissza eredményt. |
400 (Bad Request) |
A kiszolgáló nem tudta végrehajtani a lekérdezést, mert a lekérdezési összetevő érvénytelen volt. A válasz törzse a hiba részleteit tartalmazza. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
414 (URI Too Long) |
Az URI túllépte a maximálisan támogatott 8192 karakter hosszúságot. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Jegyzetek
- A lekérdezés
TimezoneOffsetFromUTC (00080201)
nem támogatott. - A lekérdezési API nem ad vissza
413 (request entity too large)
. Ha a kért lekérdezési válaszkorlát kívül esik az elfogadható tartományon, a rendszer hibás kérést ad vissza. Az elfogadható tartományon belül kért kérések feloldódnak. - Ha a célerőforrás Tanulmány/Sorozat, akkor több példányban is előfordulhatnak inkonzisztens tanulmányi/adatsorszintű metaadatok. Két példány például eltérő
patientName
lehet. Ebben az esetben a legújabb nyer, és csak a legújabb adatokra kereshet. - A lapozott eredmények úgy vannak optimalizálva, hogy először a megfeleltetett legújabb példányt adja vissza, ami ismétlődő rekordokat eredményezhet a következő oldalakon, ha újabb, a lekérdezésnek megfelelő adatok lettek hozzáadva.
- Az egyezés nem megkülönbözteti a kis- és nagybetűk megkülönbözteti a PN VR-típusokat.
- Az egyezés nem érzékeny a kis- és nagybetűkre, és más sztring VR-típusok esetében is ékezetes.
- A rendszer csak az első értéket indexeli egyetlen, helytelenül több értékkel rendelkező adatelemhez.
- Az alapértelmezett attribútumok használata vagy a kért eredmények számának korlátozása maximalizálja a teljesítményt.
- Ha egy attribútumot null kitöltéssel tároltak, akkor a null kitöltéssel vagy anélkül is kereshető az uri kódolásban. A lekért eredmények null értékű kitöltéssel és anélkül tárolt attribútumokra vannak tárolva.
Törlés
Ez a tranzakció nem része a hivatalos DICOMweb Standardnak. A DELETE metódus használatával eltávolítja a tanulmányok, sorozatok és példányok reprezentációit az áruházból.
Metódus | Elérési út | Leírás |
---|---|---|
Törlés... | .. /studies/{study} | Egy adott tanulmány összes példányának törlése. |
Törlés... | .. /studies/{study}/series/{series} | Egy adott sorozat összes példányának törlése egy tanulmányon belül. |
Törlés... | .. /studies/{study}/series/{series}/instances/{instance} | Töröljön egy adott példányt egy sorozaton belül. |
study
Paraméterek , series
és instance
megfelelnek a DICOM attribútumoknakStudyInstanceUID
, SeriesInstanceUID
és SopInstanceUID
azoknak.
A kérelem fejlécére, Content-Type
fejlécére Accept
vagy törzs tartalmára nincsenek korlátozások.
Feljegyzés
A törlési tranzakció után a törölt példányok nem lesznek helyreállíthatók.
Válaszállapot-kódok
Kód | Leírás |
---|---|
204 (No Content) |
Az összes SOP-példány törlésekor. |
400 (Bad Request) |
A kérés rosszul lett formázva. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
404 (Not Found) |
Ha a megadott adatsor nem található egy tanulmányban, vagy a megadott példány nem található a sorozaton belül. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Válasz hasznos adatainak törlése
A válasz törzse üres. Az állapotkód az egyetlen hasznos információ, amelyet visszaadott.
Worklist service (UPS-RS)
A DICOM szolgáltatás támogatja a Worklist szolgáltatás (UPS-RS) leküldéses és lekéréses SOP-jait. Ez a szolgáltatás hozzáférést biztosít egy Workitem-et tartalmazó worklistához, amelyek mindegyike egy egységes eljáráslépést (UPS) jelöl.
Az URI-sablon változója {workitem}
a Workitem UID-t jelenti.
Az elérhető UPS-RS-végpontok a következők:
Parancs | Elérési út | Leírás |
---|---|---|
POST | {s}/workitems{? AffectedSOPInstanceUID} | Munkaelem létrehozása |
POST | {s}/workitems/{instance}{?transaction} | Munkaelem frissítése |
KAP | {s}/workitems{?query*} | Munkaelemek keresése |
KAP | {s}/workitems/{instance} | Munkaelem lekérése |
PUT | {s}/workitems/{instance}/state | Munkaelem állapotának módosítása |
POST | {s}/workitems/{instance}/cancelrequest | Munkaelem megszakítása |
POST | {s}/workitems/{instance}/subscribers/{AETitle}{?deletionlock} | Előfizetés létrehozása |
POST | {s}/workitems/1.2.840.10008.5.1.4.34.5/ | Előfizetés felfüggesztése |
Törlés... | {s}/workitems/{instance}/subscribers/{AETitle} | Előfizetés törlése |
KAP | {s}/előfizetők/{AETitle} | Előfizetési csatorna megnyitása |
Workitem létrehozása
Ez a tranzakció a POST metódust használja egy új Workitem létrehozásához.
Metódus | Elérési út | Leírás |
---|---|---|
POST | .. /workitems | Hozzon létre egy Munkatemet. |
POST | .. /workitems? {workitem} | Létrehoz egy Munkatemet a megadott UID azonosítóval. |
Ha az URI nem adja meg, a hasznos adathalmaznak tartalmaznia kell a Workitemet az SOPInstanceUID
attribútumban.
A Accept
kérelemben a fejlécek és Content-Type
a fejlécek megadása kötelező, és mindkettőnek rendelkeznie kell az értékkel application/dicom+json
.
A DICOM-adatattribútumokhoz több követelmény is tartozik egy adott tranzakció kontextusában. Előfordulhat, hogy az attribútumoknak jelen kell lenniük, nem kell jelen lenniük, üresnek kell lenniük, vagy nem kell üresnek lenniük. Ezek a követelmények ebben a táblázatban találhatók.
Feljegyzés
Bár a referenciatábla szerint az SOP-példány UID-jének nem szabad jelen lennie, ez az útmutató a DIMSE protokollra vonatkozik, és a DICOMWebben eltérően kezeli. Az SOP-példány UID-jének szerepelnie kell az adathalmazban, ha nem szerepel az URI-ban.
Feljegyzés
Az összes feltételes követelménykód, beleértve az 1C-t és a 2C-t is, opcionálisként lesz kezelve.
Válaszállapot-kódok létrehozása
Kód | Leírás |
---|---|
201 (Created) |
A cél munkapéldány létrehozása sikeresen megtörtént. |
400 (Bad Request) |
Probléma történt a kéréssel. A kérelem hasznos adatai például nem felelnek meg a követelményeknek. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
409 (Conflict) |
A Workitem már létezik. |
415 (Unsupported Media Type) |
A megadott Content-Type nem támogatott. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Válasz hasznos adatainak létrehozása
A sikeres válasznak nincs hasznos adata. A Location
válaszfejlécek Content-Location
URI-hivatkozást tartalmaznak a létrehozott Munkatemre.
A hibaválasz hasznos adatai a hibát leíró üzenetet tartalmaznak.
Lemondás kérése
Ez a tranzakció lehetővé teszi a felhasználó számára, hogy egy nem saját tulajdonú Workitem törlését kérje.
Négy érvényes Workitem-állapot létezik:
SCHEDULED
IN PROGRESS
CANCELED
COMPLETED
Ez a tranzakció csak a Workitems állapotában SCHEDULED
sikeres. Bármely felhasználó igényelheti a Workitem tulajdonjogát a Tranzakció UID azonosítójának beállításával és állapotának IN PROGRESS
módosításával. Ettől kezdve a felhasználó csak a megfelelő tranzakciós azonosító megadásával módosíthatja a Workitemet. Bár az UPS meghatározza a lemondási kérelmeket és egyéb eseményeket továbbító Watch és Event SOP osztályokat, ez a DICOM szolgáltatás nem implementálja ezeket az osztályokat, így a sikertelenséget visszaküldött munkatemeken IN PROGRESS
történő lemondási kérelmek. A saját tulajdonú Workitem a Workitem állapotának módosítása tranzakcióval törölhető.
Metódus | Elérési út | Leírás |
---|---|---|
POST | .. /workitems/{workitem}/cancelrequest | Ütemezett Munkatem törlésének kérése |
A Content-Type
fejléc kötelező, és meg kell adni az értéket application/dicom+json
.
A kérelem hasznos adatai közé tartozhatnak a DICOM Standardban meghatározott műveletadatok.
Lemondási válasz állapotkódjainak kérése
Kód | Leírás |
---|---|
202 (Accepted) |
A kérést a kiszolgáló elfogadta, de a Target Workitem állapota még nem módosult. |
400 (Bad Request) |
Probléma lépett fel a kérés szintaxisával. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
404 (Not Found) |
A célmunkapéldány nem található. |
409 (Conflict) |
A kérés nem felel meg a célmunkapéldány aktuális állapotának. A Célmunkapéldány például állapotban SCHEDULED van vagy COMPLETED állapotban van. |
415 (Unsupported Media Type) |
A megadott Content-Type nem támogatott. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Lemondási válasz hasznos adatainak kérése
A sikeres válasz nem tartalmaz hasznos adatokat, és a hibaválasz hasznos adatai a hibát leíró üzenetet tartalmaznak.
Ha a Workitem-példány már megszakított állapotban van, a válasz a következő HTTP-figyelmeztetés fejlécet tartalmazza: 299: The UPS is already in the requested state of CANCELED.
Workitem lekérése
Ez a tranzakció egy Workitem-et kér le. Megfelel az UPS DIMSE N-GET műveletnek.
Tekintse meg a következőt: https://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_11.5
Ha a Workitem létezik a forráskiszolgálón, a Workitem elfogadható adathordozó-típusban lesz visszaadva. A visszaadott Workitem nem tartalmazza a Transaction UID (0008,1195) attribútumot. Ez az attribútum hozzáférési zárolásként betöltött szerepének megőrzéséhez szükséges.
Metódus | Elérési út | Leírás |
---|---|---|
KAP | .. /workitems/{workitem} | Workitem lekérésére vonatkozó kérelem |
A Accept
fejléc kötelező, és meg kell adni az értéket application/dicom+json
.
Workitem-válasz állapotkódjainak lekérése
Kód | Leírás |
---|---|
200 (OK) | A Workitem-példány lekérése sikeresen megtörtént. |
400 (Hibás kérés) | Probléma történt a kéréssel. |
401 (jogosulatlan) | Az ügyfél nincs hitelesítve. |
403 (Tiltott) | A felhasználó nincs engedélyezve. |
404 (nem található) | A célmunkapéldány nem található. |
424 (Sikertelen függőség) | A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (A szolgáltatás nem érhető el) | A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Workitem-válasz hasznos adatainak lekérése
- A sikerre adott válasz egyetlen rész hasznos adattartalmat tartalmaz, amely tartalmazza a kért munkapéldányt a kiválasztott médiatípusban.
- A visszaadott Workitem nem tartalmazza a Workitem tranzakciós UID (0008, 1195) attribútumát, mivel ezt csak a tulajdonosnak kell ismernie.
Workitem frissítése
Ez a tranzakció módosítja egy meglévő Workitem attribútumait. Megfelel az UPS DIMSE N-SET műveletnek.
Tekintse meg a következőt: https://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_11.6
Az aktuális állapotban lévő SCHEDULED
Workitem frissítéséhez az Transaction UID
attribútum nem lehet jelen. Az állapotban lévő IN PROGRESS
Workitem esetében a kérésnek tartalmaznia kell az aktuális tranzakciós UID azonosítót lekérdezési paraméterként. Ha a Workitem már szerepel vagy COMPLETED
CANCELED
állapotban van, a válasz a következő 400 (Bad Request)
: .
Metódus | Elérési út | Leírás |
---|---|---|
POST | .. /workitems/{workitem}? {transaction-uid} | Munkatem tranzakció frissítése |
A Content-Type
fejléc kötelező, és meg kell adni az értéket application/dicom+json
.
A kérelem hasznos adattartalma tartalmaz egy adatkészletet, amely a cél munkaelemre alkalmazandó módosításokat tartalmazza. A sorozat módosításakor a kérelemnek tartalmaznia kell a sorozat összes elemét, nem csak a módosítandó elemeket. Ha több attribútumot kell frissítenie csoportként, frissítse őket több attribútumként egyetlen kérelemben, nem pedig több kérelemként.
A DICOM-adatattribútumokhoz számos követelmény kapcsolódik egy adott tranzakció kontextusában. Előfordulhat, hogy az attribútumoknak jelen kell lenniük, nem kell jelen lenniük, üresnek kell lenniük, vagy nem kell üresnek lenniük. Ezek a követelmények ebben a táblázatban találhatók.
Feljegyzés
Az összes feltételes követelménykód, beleértve az 1C-t és a 2C-t is, opcionálisként lesz kezelve.
Feljegyzés
A kérelem nem tudja beállítani az Eljáráslépés állapota (0074 1000) attribútum értékét. Az eljáráslépés állapota az Állapot módosítása tranzakcióval vagy a Kérelemtörlési tranzakcióval kezelhető.
Workitem tranzakciós válasz állapotkódjainak frissítése
Kód | Leírás |
---|---|
200 (OK) |
A célmunkapéldány frissült. |
400 (Bad Request) |
Probléma történt a kéréssel. Például: (1) a Target Workitem értéke COMPLETED vagy CANCELED állapota volt. (2) Hiányzik a tranzakció uID azonosítója. (3) A tranzakció uID azonosítója helytelen. (4) az adathalmaz nem felelt meg a követelményeknek. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
404 (Not Found) |
A célmunkapéldány nem található. |
409 (Conflict) |
A kérés nem felel meg a célmunkapéldány aktuális állapotának. |
415 (Unsupported Media Type) |
A megadott Content-Type nem támogatott. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Workitem tranzakció válasz hasznos adatainak frissítése
A forráskiszolgáló szükség szerint támogatja a fejlécmezőket a 11.6.3-2. táblázatban.
A sikeres válasznak nincs hasznos adata, vagy egy állapotjelentési dokumentumot tartalmazó hasznos adat.
A hibaválasz hasznos adatai tartalmazhatnak egy állapotjelentést, amely leírja az esetleges hibákat, figyelmeztetéseket vagy egyéb hasznos információkat.
Munkatem állapotának módosítása
Ez a tranzakció a Workitem állapotának módosítására szolgál. Megfelel a UPS DIMSE N-ACTION "Change UPS State" műveletnek. Az állapotmódosítások a Workitem tulajdonjogának igénylésére, kiegészítésére vagy visszavonására szolgálnak.
Tekintse meg a következőt: https://dicom.nema.org/medical/dicom/current/output/html/part18.html#sect_11.7
Ha a Workitem létezik a forráskiszolgálón, a Workitem elfogadható adathordozó-típusban lesz visszaadva. A visszaadott Workitem nem tartalmazza a Transaction UID (0008,1195) attribútumot. Erre azért van szükség, hogy az attribútum szerepköre hozzáférési zárolásként megmaradjon az itt leírtak szerint .
Metódus | Elérési út | Leírás |
---|---|---|
PUT | .. /workitems/{workitem}/state | Munkatem állapotának módosítása |
A Accept
fejléc kötelező, és meg kell adni az értéket application/dicom+json
.
A kérelem hasznos adatai tartalmazzák az UPS-állapot adatelemeinek módosítását. Ezek az adatelemek a következők.
- Tranzakció UID azonosítója (0008, 1195). A kérelem hasznos adattartalma tartalmaz egy tranzakciós UID azonosítót. A felhasználói ügynök létrehozza a Transaction UID azonosítót, amikor egy adott Workitem állapotára való
IN PROGRESS
áttérést kér. A felhasználói ügynök biztosítja a Tranzakció UID azonosítóját az adott Workitem későbbi tranzakcióiban. - Eljáráslépés állapota (0074, 1000). A jogi értékek megfelelnek a kért állapotváltásnak. Ezek a következők:
IN PROGRESS
,COMPLETED
vagyCANCELED
.
Workitem állapotválasz állapotkódjainak módosítása
Kód | Leírás |
---|---|
200 (OK) |
A Workitem-példány lekérése sikeresen megtörtént. |
400 (Bad Request) |
A kérés az alábbi okok valamelyike miatt nem hajtható végre: (1) a kérés érvénytelen a célmunkapéldány aktuális állapota miatt. (2) Hiányzik a tranzakció uID azonosítója. (3) a tranzakció uID azonosítója helytelen |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
404 (Not Found) |
A célmunkapéldány nem található. |
409 (Conflict) |
A kérés nem felel meg a célmunkapéldány aktuális állapotának. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
Workitem-állapot válasz hasznos adatainak módosítása
- A válaszok tartalmazzák a 11.7.3.2 szakaszban megadott fejlécmezőket.
- A sikeres válasznak nincs hasznos adata.
- A hibaválasz hasznos adatai tartalmazhatnak egy állapotjelentést, amely leírja az esetleges hibákat, figyelmeztetéseket vagy egyéb hasznos információkat.
Keresés munkaelemekben
Ez a tranzakció lehetővé teszi a Workitems attribútumok szerinti keresését.
Metódus | Elérési út | Leírás |
---|---|---|
KAP | .. /workitems? | Workitems keresése |
A kereséshez az alábbi Accept
fejléc támogatott.
application/dicom+json
Támogatott keresési paraméterek
Az egyes lekérdezésekhez a következő paraméterek támogatottak:
Kulcs | Támogatási értékek | Engedélyezett darabszám | Leírás |
---|---|---|---|
{attributeID}= |
{value} |
0...N | Attribútum-/értékegyeztetés keresése a lekérdezésben. |
includefield= |
{attributeID} all |
0...N | A válaszban visszaadandó többi attribútum. Csak legfelső szintű attribútumok vehetők fel – nem a sorozatok részét képező attribútumok. Mind a nyilvános, mind a privát címkék támogatottak. Ha all meg van adva. További információt az egyes lekérdezéstípusok attribútumairól a Keresési válaszban talál. Ha a kiszolgáló az összeset {attributeID} használja, a all kiszolgáló alapértelmezés szerint az összeset használja. |
limit= |
{value} |
0...1 | Egész számérték a válaszban visszaadott értékek számának korlátozásához. Az érték a tartomány 1 >= x <= 200 között lehet. Alapértelmezett érték: 100 . |
offset= |
{value} |
0...1 | A(z) {value} találatok kihagyása. Ha a keresési lekérdezés eredményeinek számánál nagyobb eltolást ad meg, 204 (no content) a rendszer választ ad vissza. |
fuzzymatching= |
true \ false |
0...1 | Ha a személynév (PN) értékábrázolásával (VR) rendelkező attribútumokra igaz homályos egyezés van alkalmazva. Az attribútumokban található névrészek előtagja megegyezik. Ha például PatientName az John^Doe , akkor joh , do és jo do Doe John Doe az összes egyezik. Azonban ohn nem egyezik. |
Kereshető attribútumok
Az alábbi attribútumok keresését támogatjuk.
Attribútum kulcsszó |
---|
PatientName |
PatientID |
ReferencedRequestSequence.AccessionNumber |
ReferencedRequestSequence.RequestedProcedureID |
ScheduledProcedureStepStartDateTime |
ScheduledStationNameCodeSequence.CodeValue |
ScheduledStationClassCodeSequence.CodeValue |
ScheduledStationGeographicLocationCodeSequence.CodeValue |
ProcedureStepState |
StudyInstanceUID |
Feljegyzés
Nem támogatjuk az üres sztring használatával történő keresést attribútumok esetében.
Keresés egyeztetése
Az alábbi egyező típusokat támogatjuk.
Keresés típusa | Támogatott attribútum | Példa |
---|---|---|
Tartomány lekérdezése | ScheduledProcedureStepStartDateTime |
{attributeID}={value1}-{value2} . A dátum/idő értékek esetében a címkén egy befogadó tartományt támogatunk. Ennek a tartománynak a megfeleltetésére van leképezve a attributeID >= {value1} AND attributeID <= {value2} rendszer. Ha {value1} nincs megadva, a korábbi dátumok/időpontok összes előfordulása és a beleértés {value2} is megegyezik. Hasonlóképpen, ha {value2} nincs megadva, a rendszer az összes előfordulást {value1} és az azt követő dátumokat/időpontokat egyezteti. Ezeknek az értékeknek azonban jelen kell lenniük. {attributeID}={value1}- és {attributeID}=-{value2} érvényesek, {attributeID}=- azonban érvénytelenek. |
Pontos egyezés | Minden támogatott attribútum | {attributeID}={value1} |
Homályos egyezés | PatientName |
Megfelel a név bármely összetevőjének, amely az értékkel kezdődik. |
Helyettesítő karakter egyezése | PatientID , ReferencedRequestSequence.AccessionNumber , ReferencedRequestSequence.RequestedProcedureID , ProcedureStepState , ScheduledStationNameCodeSequence.CodeValue , ScheduledStationClassCodeSequence.CodeValue , ScheduledStationGeographicLocationCodeSequence.CodeValue |
A következő helyettesítő karakterek támogatottak: * – Nulla vagy több karaktert egyezik meg. Például : {attributeID}={val*} "val", "valid", "value", de nem "evaluate". ? - Egyetlen karakterrel egyezik. Például - {attributeID}={valu?} egyezik az "érték", a "valu1" és a "valued" vagy a "valu" értékkel |
Feljegyzés
Bár nem támogatjuk a teljes sorozatmegfeleltetéseket, támogatjuk a sorozatban szereplő attribútumok pontos egyezését.
Attribútumazonosító
A címkék sokféleképpen kódolhatók a lekérdezési paraméterhez. Részben a PS3.18 6.7.1.1.1.1 szabványban meghatározott szabványt implementáltuk. A címkékhez az alábbi kódolások támogatottak.
Érték | Példa |
---|---|
{group}{element} |
00100010 |
{dicomKeyword} |
PatientName |
Példakérdés:
../workitems?PatientID=K123&0040A370.00080050=1423JS&includefield=00404005&limit=5&offset=0
Keresési válasz
A válasz EGY DICOM-adatkészletek tömbje 0...N
, amely a következő attribútumokat adja vissza.
- A DICOM PowerShell 3.4-es tábla CC.2.5-3 összes attribútuma 1 vagy 2 visszatérési kulcstípussal
- A DICOM PowerShell 3.4-es tábla CC.2.5-3 összes attribútuma 1C visszatérési kulcstípussal, amelyhez teljesülnek a feltételes követelmények
- Minden más Workitem-attribútum egyező paraméterként lett átadva
- Minden más Workitem-attribútum paraméterértékként
includefield
lett átadva
Keresési válaszkódok
A lekérdezési API a következő állapotkódok egyikét adja vissza a válaszban:
Kód | Leírás |
---|---|
200 (OK) |
A válasz hasznos adatai az összes egyező erőforrást tartalmazzák. |
206 (Partial Content) |
A válasz hasznos adatai csak a keresési eredmények egy részét tartalmazzák, a többi pedig a megfelelő kéréssel kérhető le. |
204 (No Content) |
A keresés sikeresen befejeződött, de nem adott vissza eredményt. |
400 (Bad Request) |
Probléma történt a kéréssel. Érvénytelen lekérdezési paraméterszintaxis például. A válasz törzse a hiba részleteit tartalmazza. |
401 (Unauthorized) |
Az ügyfél nincs hitelesítve. |
403 (Forbidden) |
A felhasználó nincs engedélyezve. |
424 (Failed Dependency) |
A DICOM szolgáltatás nem tud hozzáférni a kérés teljesítéséhez szükséges erőforráshoz. Ilyen például a csatlakoztatott Data Lake Store vagy az ügyfél által felügyelt kulcstitkosítást támogató kulcstartó elérése. |
503 (Service Unavailable) |
A szolgáltatás nem érhető el vagy foglalt. Próbálkozzon újra később. |
További megjegyzések
A lekérdezési API nem ad vissza 413 (request entity too large)
. Ha a kért lekérdezési válaszkorlát kívül esik az elfogadható tartományon, a rendszer hibás kérést ad vissza. Az elfogadható tartományon belül kért kérések feloldódnak.
- A lapozott eredmények úgy vannak optimalizálva, hogy először egyező legújabb példányt adjanak vissza, ami ismétlődő rekordokat eredményezhet a következő oldalakon, ha újabb, a lekérdezésnek megfelelő adatokat adnak hozzá.
- A PN VR-típusok esetében a kis- és nagybetűk érzéketlenek és ékezetesek.
- Az egyezés a kis- és nagybetűk megkülönböztetése más sztring VR-típusok esetében érzékeny.
- Ha van olyan eset, amikor a Workitem megszakítása és a lekérdezés azonos időben történik, akkor a lekérdezés valószínűleg kizárja a frissített Workitemet, és a válaszkód is.
206 (Partial Content)
Feljegyzés
A DICOM® az Országos Elektromos Gyártók Országos Szövetségének bejegyzett védjegye az orvosi információk digitális kommunikációjával kapcsolatos szabványügyi kiadványaihoz.