FHIR için Azure API'de profilleri depolama
Önemli
FHIR İçin Azure API'si 30 Eylül 2026 tarihinde kullanımdan kaldırılacaktır. Bu tarihe kadar Azure Health Data Services FHIR® hizmetine geçiş yapmak için geçiş stratejilerini izleyin. FHIR İçin Azure API'sinin kullanımdan kaldırılması nedeniyle 1 Nisan 2025 tarihinden itibaren yeni dağıtımlara izin verilmeyecektir. Azure Health Data Services FHIR hizmeti , müşterilerin FHIR, DICOM ve MedTech hizmetlerini diğer Azure hizmetleriyle tümleştirmelerle yönetmesine olanak tanıyan FHIR için Azure API'sinin gelişmiş sürümüdür.
HL7 Hızlı Sağlık Hizmetleri Birlikte Çalışabilirlik Kaynakları (FHIR®), sağlık verilerini depolamak ve değiştirmek için standart ve birlikte çalışabilir bir yol tanımlar. Temel FHIR belirtimi içinde bile, FHIR'nin kullanıldığı bağlama göre diğer kuralları veya uzantıları tanımlamak yararlı olabilir. FHIR'nin bağlama özgü bu tür kullanımları için FHIR profilleri, ek belirtim katmanı için kullanılır. FHIR profili , kısıtlamaları ve uzantıları kullanarak kaynak tanımlarını daraltmanıza ve özelleştirmenize olanak tanır.
FHIR için Azure API, kaynakların profillere uygun olup olmadığını görmek için kaynakları profillerde doğrulamaya olanak tanır. Bu makale, FHIR profillerinin temelleri ve bunların nasıl depolabileceğiniz konusunda size yol gösterir. Bu makalenin dışındaki FHIR profilleri hakkında daha fazla bilgi için HL7.org adresini ziyaret edin.
FHIR profili: temel bilgiler
Profil, kaynak olarak temsil edilen kaynakta ek bağlam StructureDefinition
ayarlar. , StructureDefinition
bir kaynağın içeriği veya veri türü üzerinde, kaynağın hangi öğelerine sahip olduğu ve bu öğelerin hangi değerleri alabildiği gibi bir dizi kuralı tanımlar.
Profillerin temel kaynağı nasıl değiştirebileceğine ilişkin bazı örnekler şunlardır:
- Kardinaliteyi kısıtla: Örneğin, bir öğedeki en yüksek kardinaliteyi 0 olarak ayarlayabilirsiniz; bu da öğenin belirli bağlamda elendiği anlamına gelir.
- Bir öğenin içeriğini tek bir sabit değerle kısıtlayın.
- Kaynak için gerekli uzantıları tanımlayın.
A StructureDefinition
, kurallı URL'si ile tanımlanır: http://hl7.org/fhir/StructureDefinition/{profile}
.
İşte bazı örnekler.
http://hl7.org/fhir/StructureDefinition/patient-birthPlace
hastanın kayıtlı doğum adresi hakkında bilgi gerektiren bir temel profildir.http://hl7.org/fhir/StructureDefinition/bmi
, Vücut Kütle İndeksi (BMI) gözlemlerini temsil eden başka bir temel profildir.http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance
bir hastayla ilişkili kaynak içinAllergyIntolerance
minimum beklentileri ayarlayan ve uzantılar ve değer kümeleri gibi zorunlu alanları tanımlayan bir ABD Çekirdeği profilidir.
Bir kaynak bir profile uygun olduğunda, profil kaynağın profile
öğesi içinde belirtilir. Aşağıda, profiline http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patientsahip bir Patient
kaynağın başlangıcına örnek verilmiştir.
{
"resourceType" : "Patient",
"id" : "ExamplePatient1",
"meta" : {
"lastUpdated" : "2020-10-30T09:48:01.8512764-04:00",
"source" : "Organization/PayerOrganizationExample1",
"profile" : [
"http://hl7.org/fhir/us/carin-bb/StructureDefinition/C4BB-Patient"
]
},
Not
Profiller temel kaynağın üzerinde oluşturulmalıdır ve temel kaynakla çakışamaz. Örneğin, bir öğenin kardinalitesi 1..1 ise, profil bunu isteğe bağlı yapamaz.
Profiller çeşitli Uygulama Kılavuzları (IG) tarafından belirtilir. Yaygın IG'lerin listesi aşağıdadır. Daha fazla bilgi için, IG ve içinde tanımlanan profiller hakkında daha fazla bilgi edinmek için belirli IG sitesini ziyaret edin.
Not
FHIR için Azure API'sinde varsayılan olarak uygulama kılavuzlarından hiçbir profil depolanmaz. Bunları FHIR için Azure API'sine yüklemeniz gerekir.
Profillere erişme ve profilleri depolama
Profilleri depolama
FHIR için Azure API'de profilleri depolamak için, isteğin gövdesindeki profil içeriğiyle öğesini yapabilirsiniz PUT
StructureDefinition
. Güncelleştirme veya koşullu güncelleştirme, FHIR hizmetinde profilleri depolamak için iyi yöntemlerdir. Hangisini kullanacağınızdan emin değilseniz koşullu güncelleştirmeyi kullanın.
Standart PUT
: PUT http://<your Azure API for FHIR base URL>/StructureDefinition/profile-id
veya
Koşullu güncelleştirme: PUT http://<your Azure API for FHIR base URL>/StructureDefinition?url=http://sample-profile-url
{
"resourceType" : "StructureDefinition",
"id" : "profile-id",
"url": "http://sample-profile-url"
…
}
Örneğin, profili depolamak us-core-allergyintolerance
isterseniz, aşağıdaki rest komutunu vücuttaKI ABD Çekirdeği alerji intoleransı profiliyle birlikte kullanırsınız. Örnek için bu profilin bir parçacığını dahil ettik.
PUT https://myAzureAPIforFHIR.azurehealthcareapis.com/StructureDefinition?url=http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance
{
"resourceType" : "StructureDefinition",
"id" : "us-core-allergyintolerance",
"text" : {
"status" : "extensions"
},
"url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-allergyintolerance",
"version" : "3.1.1",
"name" : "USCoreAllergyIntolerance",
"title" : "US Core AllergyIntolerance Profile",
"status" : "active",
"experimental" : false,
"date" : "2020-06-29",
"publisher" : "HL7 US Realm Steering Committee",
"contact" : [
{
"telecom" : [
{
"system" : "url",
"value" : "http://www.healthit.gov"
}
]
}
],
"description" : "Defines constraints and extensions on the AllergyIntolerance resource for the minimal set of data to query and retrieve allergy information.",
Daha fazla örnek için açık kaynak sitede US Core profillerini depolama konusunda yol gösteren US Core örnek REST dosyasına bakın. En güncel profilleri almak için profilleri doğrudan HL7'den ve bunları tanımlayan uygulama kılavuzundan almanız gerekir.
Profilleri görüntüleme
Mevcut özel profillerinize, GET http://<your Azure API for FHIR base URL>/StructureDefinition?url={canonicalUrl}
{canonicalUrl}
profilinizin kurallı URL'si olan bir GET
istek kullanarak erişebilirsiniz.
Örneğin, bir ABD Çekirdek Hedefi kaynak profilini görüntülemek istiyorsanız aşağıdakileri kullanın.
GET https://myworkspace-myfhirserver.fhir.azurehealthcareapis.com/StructureDefinition?url=http://hl7.org/fhir/us/core/StructureDefinition/us-core-goal
Bu, AŞAĞıDAKI gibi başlayan ABD Çekirdek Hedefi profilinin kaynağını döndürür StructureDefinition
.
{
"resourceType" : "StructureDefinition",
"id" : "us-core-goal",
"url" : "http://hl7.org/fhir/us/core/StructureDefinition/us-core-goal",
"version" : "3.1.1",
"name" : "USCoreGoalProfile",
"title" : "US Core Goal Profile",
"status" : "active",
"experimental" : false,
"date" : "2020-07-21",
"publisher" : "HL7 US Realm Steering Committee",
"contact" : [
{
"telecom" : [
{
"system" : "url",
"value" : "http://www.healthit.gov"
}
]
}
],
"description" : "Defines constraints and extensions on the Goal resource for the minimal set of data to query and retrieve a patient's goal(s).",
}
Not
Yalnızca FHIR için Azure API'ye yüklediğiniz profilleri görürsünüz.
FHIR için Azure API, temel profillerin örneklerini döndürmez StructureDefinition
, ancak HL7 web sitesinde bulunabilir.
http://hl7.org/fhir/Observation.profile.json.html
http://hl7.org/fhir/Patient.profile.json.html
Yetenek deyimindeki profiller
FHIR Capability Statement
için Azure API'nin tüm olası davranışlarını listeler. FHIR için Azure API, yetenek deyimini aşağıdaki formlarda depolanan profillerin ayrıntılarıyla güncelleştirir.
CapabilityStatement.rest.resource.profile
CapabilityStatement.rest.resource.supportedProfile
Örneğin, aşağıdaki gibi başlayan bir ABD Çekirdek Hasta profili kaydederseniz.
{
"resourceType": "StructureDefinition",
"id": "us-core-patient",
"url": "http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient",
"version": "3.1.1",
"name": "USCorePatientProfile",
"title": "US Core Patient Profile",
"status": "active",
"experimental": false,
"date": "2020-06-27",
"publisher": "HL7 US Realm Steering Committee",
Ve için metadata
bir GET
istek gönderin:
GET http://<your Azure API for FHIR base URL>/metadata
FHIR için Azure API'sine yüklediğiniz US Core Patient profiliyle ilgili aşağıdaki bilgileri içeren bir CapabilityStatement
döndürülür.
...
{
"type": "Patient",
"profile": "http://hl7.org/fhir/StructureDefinition/Patient",
"supportedProfile":[
"http://hl7.org/fhir/us/core/StructureDefinition/us-core-patient"
],
Profillerdeki Bağlamalar
Terminoloji hizmeti, kodları doğrulama, kodları çevirme, değer kümelerini genişletme ve diğer işlemler gibi tıbbi "terminolojiler" üzerinde işlemler gerçekleştirebilen bir dizi işlevdir.
FHIR için Azure API hizmeti terminoloji hizmetini desteklemez. Desteklenen işlemler ($
), kaynak türleri ve etkileşimler için bilgiler hizmetin CapabilityStatement
içinde bulunabilir. kaynak türleri ValueSet
StructureDefinition
ve CodeSystem
temel oluşturma, okuma, güncelleştirme ve silme (CRUD) işlemleri ve Arama (içinde CapabilityStatement
tanımlandığı gibi) ile desteklenir ve sistem tarafından içinde $validate
kullanılmak üzere kullanılır.
ValueSets karmaşık bir kural kümesi ve dış başvurular içerebilir. Günümüzde hizmet yalnızca önceden genişletilmiş satır içi kodları dikkate alır. Müşterilerin, işlemi kullanmadan önce desteklenen ValueSet'leri FHIR sunucusuna yüklemeleri $validate
gerekir. KaynaklarValueSet
, depolama profilleri bölümünde belirtildiği gibi PUT veya koşullu güncelleştirme kullanılarak FHIR sunucusuna yüklenmelidir.
Sonraki adımlar
Bu makalede FHIR profillerini öğrendiniz. Ardından, kaynakların bu profillere uygun olduğundan emin olmak için nasıl kullanabileceğinizi $validate
öğrenebilirsiniz.