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çin AllergyIntolerance 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 metadatabir 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 CapabilityStatementiçinde bulunabilir. kaynak türleri ValueSetStructureDefinition ve CodeSystem temel oluşturma, okuma, güncelleştirme ve silme (CRUD) işlemleri ve Arama (içinde CapabilityStatementtanımlandığı gibi) ile desteklenir ve sistem tarafından içinde $validatekullanı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.

Not

FHIR®, HL7'nin tescilli ticari markasıdır ve HL7'nin izniyle kullanılır.