Единая платформа цифрового здравоохранения Узбекистана
0.5.0 - ci-build Uzbekistan флаг

Uzbekistan Digital Health Platform, опубликовано Ministry of Health of the Republic of Uzbekistan. Это руководство не является санкционированной публикацией; это непрерывная сборка для версии 0.5.0, созданной FHIR (HL7® FHIR® Standard) CI Build. Эта версия основана на нынешнем содержании https://github.com/uzinfocom-org/digital-health-ig/ и регулярно изменяется. Смотрите каталог опубликованных версий

Профиль ресурса: UZ Core Consent ( Экспериментальный )

Официальный URL: https://dhp.uz/fhir/core/StructureDefinition/uz-core-consent Версия: 0.5.0
Active по состоянию на 2025-06-02 Вычисляемое имя: UZCoreConsent

Uzbekistan Core Consent profile, used to manage patient consent for data sharing and processing

Машинный перевод, требуется проверка человеком. Эта страница автоматически переведена с английского языка с помощью искусственного интеллекта и пока не проверена редактором. При любых расхождениях приоритет имеет оригинальная англоязычная версия.

UZ Core Consent фиксирует собственное решение пациента о том, могут ли его медицинские данные передаваться на Платформе цифрового здравоохранения. Узбекистан использует модель отказа (opt-out): когда для пациента не существует ресурса Consent, передача данных по умолчанию разрешена, и пациент отказывается, записывая Consent, который её запрещает. Модель намеренно бинарна - единственное положение (provision), которое либо разрешает, либо запрещает, - и пациент устанавливает его сам в пациентском портале. Платформа обеспечивает его соблюдение: когда согласие запрещает доступ, запрос данных отклоняется с HTTP 403. Существуют два исключения - путь законного доступа для лечащих врачей и иных юридически уполномоченных сторон, а также путь экстренного доступа (break-glass) (фиксируемый в AuditEvent с целью использования, соответствующей неотложной ситуации). Consent привязан к своему Пациенту.

Обязательные элементы данных и элементы Must Support

Приведённые ниже элементы должны всегда присутствовать (обязательные) либо должны поддерживаться, когда данные доступны (Must Support) - не все из них являются обязательными, но ваша система должна заполнять каждый элемент Must Support, когда она располагает соответствующими данными, и обрабатывать его при получении. Это удобочитаемое для человека резюме; формальные представления ниже дают точные кардинальности, типы и терминологические связки.

Данный профиль не добавляет собственной обязательной кардинальности. Единственным обязательным элементом является унаследованный от базового ресурса: status (состояние самой записи согласия, привязанное к набору значений DHP consent-state).

  • subject - пациента, которому принадлежит согласие;
  • grantor - сторону, предоставляющую решение (пациента);
  • period - начало и конец периода, в течение которого согласие действует;
  • регуляторное основание (regulatory basis), определяющее закон или политику, лежащие в его основе (required связка);
  • decision - permit или deny (required связка);
  • source - либо sourceAttachment (с его url и датой создания), либо sourceReference, несущую исходный документ согласия;
  • provision, сужающее решение, с его action и purpose (обе - required связки).

Решение бинарно по своей конструкции: одно decision - permit или deny. Платформа читает его, чтобы разрешить или отклонить каждый запрос данных.

Построение JSON, шаг за шагом

Consent в основном генерируется системой, когда пациент устанавливает его в портале, поэтому вручную строить почти нечего. Приведённый ниже пример - это полная запись: скопируйте её и адаптируйте; каждое показанное значение проходит валидацию по этому профилю. Полный экземпляр - это пример Consent.

status - единственный строго обязательный элемент, но Consent имеет смысл только тогда, когда называет, чьи данные он охватывает (subject), что он решает (decision - скалярный код permit или deny) и к чему это решение применяется (provision). Поскольку отсутствие Consent уже разрешает передачу, отправляемая вами запись обычно является отказом (opt-out): deny, у которого provision.action указывает, что именно ограничивается, - здесь это раскрытие (disclosure). Каждый ресурс UZ Core должен также называть профиль, которому он заявляет о своём соответствии, в meta.profile:

{
  "resourceType": "Consent",
  "meta": { "profile": ["https://dhp.uz/fhir/core/StructureDefinition/uz-core-consent"] },
  "status": "active",
  "subject": { "reference": "Patient/example-patient" },
  "decision": "deny",
  "provision": [
    {
      "action": [
        { "coding": [{ "system": "http://terminology.hl7.org/CodeSystem/consentaction", "code": "disclose" }] }
      ]
    }
  ]
}

status и decision используют каждое required связку - значение должно происходить из привязанного набора значений (представление Snapshot ниже перечисляет каждое из них). provision.action - это CodeableConcept, поэтому его код находится в массиве coding; subject - это обычная Reference, поэтому её цель находится непосредственно под reference.

Реалистичная запись согласия

Более полная запись - показанная здесь как предоставляющая доступ, как это сделал бы пациент при повторном согласии (re-opt-in) или при ограничении согласия конкретной целью и периодом, - также фиксирует, кто предоставил решение (grantor, пациент), как долго оно действует (period), закон, на котором оно основано (regulatoryBasis), и provision, сужающее решение до конкретного action и purpose. grantor - это список References, а regulatoryBasis, provision.action и provision.purpose кодированы - каждое значение происходит из привязанного набора значений:

{
  "resourceType": "Consent",
  "meta": { "profile": ["https://dhp.uz/fhir/core/StructureDefinition/uz-core-consent"] },
  "status": "active",
  "subject": { "reference": "Patient/example-patient" },
  "grantor": [
    { "reference": "Patient/example-patient" }
  ],
  "period": {
    "start": "2025-02-15T14:02:52+05:00",
    "end": "2026-02-15T14:02:52+05:00"
  },
  "regulatoryBasis": [
    {
      "coding": [
        { "system": "https://terminology.dhp.uz/fhir/core/CodeSystem/consent-policy-cs", "code": "uz-LRU-547" }
      ]
    }
  ],
  "decision": "permit",
  "provision": [
    {
      "action": [
        { "coding": [{ "system": "http://terminology.hl7.org/CodeSystem/consentaction", "code": "disclose" }] }
      ],
      "purpose": [
        { "system": "http://terminology.hl7.org/CodeSystem/v3-ActReason", "code": "RECORDMGT" }
      ],
      "period": {
        "start": "2025-02-15T14:02:52+05:00",
        "end": "2026-02-15T14:02:52+05:00"
      }
    }
  ]
}

Обратите внимание, что provision.purpose - это Coding напрямую (не обёрнутый в массив coding), тогда как regulatoryBasis и provision.action - это типы CodeableConcept, которые содержат массив coding. Эта запись предоставляет доступ; отказ (opt-out) имеет ту же структуру с decision, установленным в deny, после чего платформа отклоняет каждый запрос данных с HTTP 403. См. Отсутствующие и подавленные данные и Терминология для правил кодированных значений.

Примеры вызовов API и образец полезной нагрузки см. в разделе Быстрый старт внизу этой страницы.

Использование:

You can also check for usages in the FHIR IG Statistics

Формальные представления содержимого профиля

Описание профилей, дифференциалов, снимков и их представлений.

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Consent 0..* Consent(5.0.0) A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... subject SΣ 0..1 Reference(Patient | Practitioner | Group) Who the consent applies to
... period SΣ 0..1 Period Effective period for this Consent
.... start SΣC 0..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... grantor SΣ 0..* Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Who is granting rights according to the policy and rules
... sourceAttachment S 0..* Attachment Source from which this consent is taken
.... url SΣ 0..1 url Uri where the data can be found
Пример General: http://www.acme.com/logo-small.png
.... creation SΣ 0..1 dateTime Date attachment was first created
... sourceReference S 0..* Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) Source from which this consent is taken
... regulatoryBasis S 0..* CodeableConcept Regulations establishing base Consent
Привязка: ConsentPolicyVS (0.5.0) (required)
... decision ?!SΣ 0..1 code deny | permit
Привязка: ConsentProvisionTypeVS (0.5.0) (required)
... provision SΣ 0..* BackboneElement Constraints to the base Consent.policyRule/Consent.policy
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... action Σ 0..* CodeableConcept Actions controlled by this provision
Привязка: ConsentActionVS (0.5.0) (required)
.... purpose Σ 0..* Coding Context of activities covered by this provision
Привязка: ConsentPurposeOfUseVS (0.5.0) (required)

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Consent.status Base required Consent State Codes 📍0.5.0 этот IG
Consent.regulatoryBasis Base required Consent policies 📍0.5.0 этот IG
Consent.decision Base required Consent provision type 📍0.5.0 этот IG
Consent.provision.action Base required Possible consent actions 📍0.5.0 этот IG
Consent.provision.purpose Base required Consent purpose of use 📍0.5.0 этот IG

Ограничения

Id Градация Путь(и) Описание Выражение
dom-2 error Consent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Consent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Consent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Consent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Consent A resource should have narrative for robust management text.`div`.exists()
ele-1 error Consent.implicitRules, Consent.modifierExtension, Consent.status, Consent.subject, Consent.period, Consent.period.start, Consent.period.end, Consent.grantor, Consent.sourceAttachment, Consent.sourceAttachment.url, Consent.sourceAttachment.creation, Consent.sourceReference, Consent.regulatoryBasis, Consent.decision, Consent.provision, Consent.provision.modifierExtension, Consent.provision.action, Consent.provision.purpose All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Consent.modifierExtension, Consent.provision.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Consent 0..* Consent(5.0.0) A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time
... status S 1..1 code draft | active | inactive | not-done | entered-in-error | unknown
Привязка: ConsentStateCodesVS (0.5.0) (required)
... subject S 0..1 Reference(Patient | Practitioner | Group) Who the consent applies to
... period S 0..1 Period Effective period for this Consent
.... start S 0..1 dateTime Starting time with inclusive boundary
.... end S 0..1 dateTime End time with inclusive boundary, if not ongoing
... sourceAttachment S 0..* Attachment Source from which this consent is taken
.... url S 0..1 url Uri where the data can be found
.... creation S 0..1 dateTime Date attachment was first created
... sourceReference S 0..* Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) Source from which this consent is taken
... regulatoryBasis S 0..* CodeableConcept Regulations establishing base Consent
Привязка: ConsentPolicyVS (0.5.0) (required)
... decision S 0..1 code deny | permit
Привязка: ConsentProvisionTypeVS (0.5.0) (required)
... provision S 0..* BackboneElement Constraints to the base Consent.policyRule/Consent.policy
.... action 0..* CodeableConcept Actions controlled by this provision
Привязка: ConsentActionVS (0.5.0) (required)
.... purpose 0..* Coding Context of activities covered by this provision
Привязка: ConsentPurposeOfUseVS (0.5.0) (required)

doco Документация для этого формата

Терминологические привязки (дифференциал)

Путь Статус Использование ValueSet Версия Источник
Consent.status Base required Consent State Codes 📍0.5.0 этот IG
Consent.regulatoryBasis Base required Consent policies 📍0.5.0 этот IG
Consent.decision Base required Consent provision type 📍0.5.0 этот IG
Consent.provision.action Base required Possible consent actions 📍0.5.0 этот IG
Consent.provision.purpose Base required Consent purpose of use 📍0.5.0 этот IG
НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Consent 0..* Consent(5.0.0) A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... identifier Σ 0..* Identifier Identifier for this record (external references)
... status ?!SΣ 1..1 code draft | active | inactive | not-done | entered-in-error | unknown
Привязка: ConsentStateCodesVS (0.5.0) (required)
... category Σ 0..* CodeableConcept Classification of the consent statement - for indexing/retrieval
Привязка: ConsentCategoryCodes (example): A classification of the type of consents found in a consent statement.
... subject SΣ 0..1 Reference(Patient | Practitioner | Group) Who the consent applies to
... date Σ 0..1 date Fully executed date of the consent
... period SΣ 0..1 Period Effective period for this Consent
.... id 0..1 id Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Разрез: Не упорядочено, Открыто от value:url
Constraints: ext-1
.... start SΣC 0..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... grantor SΣ 0..* Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Who is granting rights according to the policy and rules
... grantee Σ 0..* Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Who is agreeing to the policy and rules
... manager 0..* Reference(HealthcareService | Organization | Patient | Practitioner) Consent workflow management
... controller 0..* Reference(HealthcareService | Organization | Patient | Practitioner) Consent Enforcer
... sourceAttachment S 0..* Attachment Source from which this consent is taken
.... id 0..1 id Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Разрез: Не упорядочено, Открыто от value:url
Constraints: ext-1
.... contentType ΣC 0..1 code Mime type of the content, with charset etc.
Привязка: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)
Пример General: text/plain; charset=UTF-8, image/png
.... language Σ 0..1 code Human language of the content (BCP-47)
Привязка: AllLanguages (required): IETF language tag for a human language.
Дополнительные привязкиЦель
CommonLanguages Старт

Пример General: en-AU
.... data C 0..1 base64Binary Data inline, base64ed
.... url SΣ 0..1 url Uri where the data can be found
Пример General: http://www.acme.com/logo-small.png
.... size Σ 0..1 integer64 Number of bytes of content (if url provided)
.... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
.... title Σ 0..1 string Label to display in place of the data
Пример General: Official Corporate Logo
.... creation SΣ 0..1 dateTime Date attachment was first created
.... height 0..1 positiveInt Height of the image in pixels (photo/video)
.... width 0..1 positiveInt Width of the image in pixels (photo/video)
.... frames 0..1 positiveInt Number of frames if > 1 (photo)
.... duration 0..1 decimal Length in seconds (audio / video)
.... pages 0..1 positiveInt Number of printed pages
... sourceReference S 0..* Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) Source from which this consent is taken
... regulatoryBasis S 0..* CodeableConcept Regulations establishing base Consent
Привязка: ConsentPolicyVS (0.5.0) (required)
... policyBasis 0..1 BackboneElement Computable version of the backing policy
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... reference 0..1 Reference(Resource) Reference backing policy resource
.... url 0..1 url URL to a computable backing policy
... policyText 0..* Reference(DocumentReference) Human Readable Policy
... verification Σ 0..* BackboneElement Consent Verified by patient or family
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... verified Σ 1..1 boolean Has been verified
.... verificationType 0..1 CodeableConcept Business case of verification
Привязка: ConsentVerificationCodes (example): Types of Verification/Validation.
.... verifiedBy 0..1 Reference(Organization | Practitioner | PractitionerRole) Person conducting verification
.... verifiedWith 0..1 Reference(Patient | RelatedPerson) Person who verified
.... verificationDate 0..* dateTime When consent verified
... decision ?!SΣ 0..1 code deny | permit
Привязка: ConsentProvisionTypeVS (0.5.0) (required)
... provision SΣ 0..* BackboneElement Constraints to the base Consent.policyRule/Consent.policy
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... period Σ 0..1 Period Timeframe for this provision
.... actor 0..* BackboneElement Who|what controlled by this provision (or group, by role)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
..... role 0..1 CodeableConcept How the actor is involved
Привязка: ParticipationRoleType (extensible): How an actor is involved in the consent considerations.
..... reference 0..1 Reference(Device | Group | CareTeam | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Resource for the actor (or group, by role)
.... action Σ 0..* CodeableConcept Actions controlled by this provision
Привязка: ConsentActionVS (0.5.0) (required)
.... securityLabel Σ 0..* Coding Security Labels that define affected resources
Привязка: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System.
.... purpose Σ 0..* Coding Context of activities covered by this provision
Привязка: ConsentPurposeOfUseVS (0.5.0) (required)
.... documentType Σ 0..* Coding e.g. Resource Type, Profile, CDA, etc
Привязка: ConsentContentClass (preferred): The document type a consent provision covers.
.... resourceType Σ 0..* Coding e.g. Resource Type, Profile, etc
Привязка: ResourceType (extensible): The resource types a consent provision covers.
.... code Σ 0..* CodeableConcept e.g. LOINC or SNOMED CT code, etc. in the content
Привязка: ConsentContentCodes (example): If this code is found in an instance, then the exception applies.
.... dataPeriod Σ 0..1 Period Timeframe for data controlled by this provision
.... data Σ 0..* BackboneElement Data controlled by this provision
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
..... meaning Σ 1..1 code instance | related | dependents | authoredby
Привязка: ConsentDataMeaning (required): How a resource reference is interpreted when testing consent restrictions.
..... reference Σ 1..1 Reference(Resource) The actual data reference
.... expression 0..1 Expression A computable expression of the consent
.... provision 0..* Смотреть provision (Consent) Nested Exception Provisions

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Consent.language Base required All Languages 📍5.0.0 Стандарт FHIR
Consent.status Base required Consent State Codes 📍0.5.0 этот IG
Consent.category Base example Consent Category Codes 📍5.0.0 Стандарт FHIR
Consent.sourceAttachment.​contentType Base required Mime Types 📍5.0.0 Стандарт FHIR
Consent.sourceAttachment.​language Base required All Languages 📍5.0.0 Стандарт FHIR
Consent.regulatoryBasis Base required Consent policies 📍0.5.0 этот IG
Consent.verification.​verificationType Base example Consent Vefication Codes 📍5.0.0 Стандарт FHIR
Consent.decision Base required Consent provision type 📍0.5.0 этот IG
Consent.provision.actor.​role Base extensible Participation Role Type 📍5.0.0 Стандарт FHIR
Consent.provision.action Base required Possible consent actions 📍0.5.0 этот IG
Consent.provision.securityLabel Base example Example set of Security Labels 📍5.0.0 Стандарт FHIR
Consent.provision.purpose Base required Consent purpose of use 📍0.5.0 этот IG
Consent.provision.documentType Base preferred Consent Content Class 📍5.0.0 Стандарт FHIR
Consent.provision.resourceType Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Consent.provision.code Base example Consent Content Codes 📍5.0.0 Стандарт FHIR
Consent.provision.data.​meaning Base required Consent Data Meaning 📍5.0.0 Стандарт FHIR

Ограничения

Id Градация Путь(и) Описание Выражение
dom-2 error Consent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Consent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Consent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Consent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Consent A resource should have narrative for robust management text.`div`.exists()
ele-1 error Consent.meta, Consent.implicitRules, Consent.language, Consent.text, Consent.extension, Consent.modifierExtension, Consent.identifier, Consent.status, Consent.category, Consent.subject, Consent.date, Consent.period, Consent.period.extension, Consent.period.start, Consent.period.end, Consent.grantor, Consent.grantee, Consent.manager, Consent.controller, Consent.sourceAttachment, Consent.sourceAttachment.extension, Consent.sourceAttachment.contentType, Consent.sourceAttachment.language, Consent.sourceAttachment.data, Consent.sourceAttachment.url, Consent.sourceAttachment.size, Consent.sourceAttachment.hash, Consent.sourceAttachment.title, Consent.sourceAttachment.creation, Consent.sourceAttachment.height, Consent.sourceAttachment.width, Consent.sourceAttachment.frames, Consent.sourceAttachment.duration, Consent.sourceAttachment.pages, Consent.sourceReference, Consent.regulatoryBasis, Consent.policyBasis, Consent.policyBasis.extension, Consent.policyBasis.modifierExtension, Consent.policyBasis.reference, Consent.policyBasis.url, Consent.policyText, Consent.verification, Consent.verification.extension, Consent.verification.modifierExtension, Consent.verification.verified, Consent.verification.verificationType, Consent.verification.verifiedBy, Consent.verification.verifiedWith, Consent.verification.verificationDate, Consent.decision, Consent.provision, Consent.provision.extension, Consent.provision.modifierExtension, Consent.provision.period, Consent.provision.actor, Consent.provision.actor.extension, Consent.provision.actor.modifierExtension, Consent.provision.actor.role, Consent.provision.actor.reference, Consent.provision.action, Consent.provision.securityLabel, Consent.provision.purpose, Consent.provision.documentType, Consent.provision.resourceType, Consent.provision.code, Consent.provision.dataPeriod, Consent.provision.data, Consent.provision.data.extension, Consent.provision.data.modifierExtension, Consent.provision.data.meaning, Consent.provision.data.reference, Consent.provision.expression, Consent.provision.provision All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Consent.extension, Consent.modifierExtension, Consent.period.extension, Consent.sourceAttachment.extension, Consent.policyBasis.extension, Consent.policyBasis.modifierExtension, Consent.verification.extension, Consent.verification.modifierExtension, Consent.provision.extension, Consent.provision.modifierExtension, Consent.provision.actor.extension, Consent.provision.actor.modifierExtension, Consent.provision.data.extension, Consent.provision.data.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()

Summary

Обязательная поддержка: 13 элементs

Просмотр ключевых элементов

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Consent 0..* Consent(5.0.0) A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... contained 0..* Resource Contained, inline Resources
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... subject SΣ 0..1 Reference(Patient | Practitioner | Group) Who the consent applies to
... period SΣ 0..1 Period Effective period for this Consent
.... start SΣC 0..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... grantor SΣ 0..* Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Who is granting rights according to the policy and rules
... sourceAttachment S 0..* Attachment Source from which this consent is taken
.... url SΣ 0..1 url Uri where the data can be found
Пример General: http://www.acme.com/logo-small.png
.... creation SΣ 0..1 dateTime Date attachment was first created
... sourceReference S 0..* Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) Source from which this consent is taken
... regulatoryBasis S 0..* CodeableConcept Regulations establishing base Consent
Привязка: ConsentPolicyVS (0.5.0) (required)
... decision ?!SΣ 0..1 code deny | permit
Привязка: ConsentProvisionTypeVS (0.5.0) (required)
... provision SΣ 0..* BackboneElement Constraints to the base Consent.policyRule/Consent.policy
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... action Σ 0..* CodeableConcept Actions controlled by this provision
Привязка: ConsentActionVS (0.5.0) (required)
.... purpose Σ 0..* Coding Context of activities covered by this provision
Привязка: ConsentPurposeOfUseVS (0.5.0) (required)

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Consent.status Base required Consent State Codes 📍0.5.0 этот IG
Consent.regulatoryBasis Base required Consent policies 📍0.5.0 этот IG
Consent.decision Base required Consent provision type 📍0.5.0 этот IG
Consent.provision.action Base required Possible consent actions 📍0.5.0 этот IG
Consent.provision.purpose Base required Consent purpose of use 📍0.5.0 этот IG

Ограничения

Id Градация Путь(и) Описание Выражение
dom-2 error Consent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Consent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Consent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Consent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Consent A resource should have narrative for robust management text.`div`.exists()
ele-1 error Consent.implicitRules, Consent.modifierExtension, Consent.status, Consent.subject, Consent.period, Consent.period.start, Consent.period.end, Consent.grantor, Consent.sourceAttachment, Consent.sourceAttachment.url, Consent.sourceAttachment.creation, Consent.sourceReference, Consent.regulatoryBasis, Consent.decision, Consent.provision, Consent.provision.modifierExtension, Consent.provision.action, Consent.provision.purpose All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Consent.modifierExtension, Consent.provision.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()

Дифференциальный вид

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Consent 0..* Consent(5.0.0) A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time
... status S 1..1 code draft | active | inactive | not-done | entered-in-error | unknown
Привязка: ConsentStateCodesVS (0.5.0) (required)
... subject S 0..1 Reference(Patient | Practitioner | Group) Who the consent applies to
... period S 0..1 Period Effective period for this Consent
.... start S 0..1 dateTime Starting time with inclusive boundary
.... end S 0..1 dateTime End time with inclusive boundary, if not ongoing
... sourceAttachment S 0..* Attachment Source from which this consent is taken
.... url S 0..1 url Uri where the data can be found
.... creation S 0..1 dateTime Date attachment was first created
... sourceReference S 0..* Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) Source from which this consent is taken
... regulatoryBasis S 0..* CodeableConcept Regulations establishing base Consent
Привязка: ConsentPolicyVS (0.5.0) (required)
... decision S 0..1 code deny | permit
Привязка: ConsentProvisionTypeVS (0.5.0) (required)
... provision S 0..* BackboneElement Constraints to the base Consent.policyRule/Consent.policy
.... action 0..* CodeableConcept Actions controlled by this provision
Привязка: ConsentActionVS (0.5.0) (required)
.... purpose 0..* Coding Context of activities covered by this provision
Привязка: ConsentPurposeOfUseVS (0.5.0) (required)

doco Документация для этого формата

Терминологические привязки (дифференциал)

Путь Статус Использование ValueSet Версия Источник
Consent.status Base required Consent State Codes 📍0.5.0 этот IG
Consent.regulatoryBasis Base required Consent policies 📍0.5.0 этот IG
Consent.decision Base required Consent provision type 📍0.5.0 этот IG
Consent.provision.action Base required Possible consent actions 📍0.5.0 этот IG
Consent.provision.purpose Base required Consent purpose of use 📍0.5.0 этот IG

Обзор моментальных снимковView

НаименованиеФлагиКарта.ТипОписание и ограничения    Filter: Filtersdoco
.. Consent 0..* Consent(5.0.0) A healthcare consumer's or third party's choices to permit or deny recipients or roles to perform actions for specific purposes and periods of time
... id Σ 0..1 id Logical id of this artifact
... meta Σ 0..1 Meta Metadata about the resource
... implicitRules ?!Σ 0..1 uri A set of rules under which this content was created
... text 0..1 Narrative Text summary of the resource, for human interpretation
This profile does not constrain the narrative in regard to content, language, or traceability to data elements
... contained 0..* Resource Contained, inline Resources
... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored
Constraints: ext-1
... identifier Σ 0..* Identifier Identifier for this record (external references)
... status ?!SΣ 1..1 code draft | active | inactive | not-done | entered-in-error | unknown
Привязка: ConsentStateCodesVS (0.5.0) (required)
... category Σ 0..* CodeableConcept Classification of the consent statement - for indexing/retrieval
Привязка: ConsentCategoryCodes (example): A classification of the type of consents found in a consent statement.
... subject SΣ 0..1 Reference(Patient | Practitioner | Group) Who the consent applies to
... date Σ 0..1 date Fully executed date of the consent
... period SΣ 0..1 Period Effective period for this Consent
.... id 0..1 id Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Разрез: Не упорядочено, Открыто от value:url
Constraints: ext-1
.... start SΣC 0..1 dateTime Starting time with inclusive boundary
.... end SΣC 0..1 dateTime End time with inclusive boundary, if not ongoing
... grantor SΣ 0..* Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Who is granting rights according to the policy and rules
... grantee Σ 0..* Reference(CareTeam | HealthcareService | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Who is agreeing to the policy and rules
... manager 0..* Reference(HealthcareService | Organization | Patient | Practitioner) Consent workflow management
... controller 0..* Reference(HealthcareService | Organization | Patient | Practitioner) Consent Enforcer
... sourceAttachment S 0..* Attachment Source from which this consent is taken
.... id 0..1 id Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Разрез: Не упорядочено, Открыто от value:url
Constraints: ext-1
.... contentType ΣC 0..1 code Mime type of the content, with charset etc.
Привязка: MimeTypes (required): BCP 13 (RFCs 2045, 2046, 2047, 4288, 4289 and 2049)
Пример General: text/plain; charset=UTF-8, image/png
.... language Σ 0..1 code Human language of the content (BCP-47)
Привязка: AllLanguages (required): IETF language tag for a human language.
Дополнительные привязкиЦель
CommonLanguages Старт

Пример General: en-AU
.... data C 0..1 base64Binary Data inline, base64ed
.... url SΣ 0..1 url Uri where the data can be found
Пример General: http://www.acme.com/logo-small.png
.... size Σ 0..1 integer64 Number of bytes of content (if url provided)
.... hash Σ 0..1 base64Binary Hash of the data (sha-1, base64ed)
.... title Σ 0..1 string Label to display in place of the data
Пример General: Official Corporate Logo
.... creation SΣ 0..1 dateTime Date attachment was first created
.... height 0..1 positiveInt Height of the image in pixels (photo/video)
.... width 0..1 positiveInt Width of the image in pixels (photo/video)
.... frames 0..1 positiveInt Number of frames if > 1 (photo)
.... duration 0..1 decimal Length in seconds (audio / video)
.... pages 0..1 positiveInt Number of printed pages
... sourceReference S 0..* Reference(Consent | DocumentReference | Contract | QuestionnaireResponse) Source from which this consent is taken
... regulatoryBasis S 0..* CodeableConcept Regulations establishing base Consent
Привязка: ConsentPolicyVS (0.5.0) (required)
... policyBasis 0..1 BackboneElement Computable version of the backing policy
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... reference 0..1 Reference(Resource) Reference backing policy resource
.... url 0..1 url URL to a computable backing policy
... policyText 0..* Reference(DocumentReference) Human Readable Policy
... verification Σ 0..* BackboneElement Consent Verified by patient or family
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... verified Σ 1..1 boolean Has been verified
.... verificationType 0..1 CodeableConcept Business case of verification
Привязка: ConsentVerificationCodes (example): Types of Verification/Validation.
.... verifiedBy 0..1 Reference(Organization | Practitioner | PractitionerRole) Person conducting verification
.... verifiedWith 0..1 Reference(Patient | RelatedPerson) Person who verified
.... verificationDate 0..* dateTime When consent verified
... decision ?!SΣ 0..1 code deny | permit
Привязка: ConsentProvisionTypeVS (0.5.0) (required)
... provision SΣ 0..* BackboneElement Constraints to the base Consent.policyRule/Consent.policy
.... id 0..1 string Unique id for inter-element referencing
.... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
.... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
.... period Σ 0..1 Period Timeframe for this provision
.... actor 0..* BackboneElement Who|what controlled by this provision (or group, by role)
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
..... role 0..1 CodeableConcept How the actor is involved
Привязка: ParticipationRoleType (extensible): How an actor is involved in the consent considerations.
..... reference 0..1 Reference(Device | Group | CareTeam | Organization | Patient | Practitioner | RelatedPerson | PractitionerRole) Resource for the actor (or group, by role)
.... action Σ 0..* CodeableConcept Actions controlled by this provision
Привязка: ConsentActionVS (0.5.0) (required)
.... securityLabel Σ 0..* Coding Security Labels that define affected resources
Привязка: SecurityLabelExamples (example): Example Security Labels from the Healthcare Privacy and Security Classification System.
.... purpose Σ 0..* Coding Context of activities covered by this provision
Привязка: ConsentPurposeOfUseVS (0.5.0) (required)
.... documentType Σ 0..* Coding e.g. Resource Type, Profile, CDA, etc
Привязка: ConsentContentClass (preferred): The document type a consent provision covers.
.... resourceType Σ 0..* Coding e.g. Resource Type, Profile, etc
Привязка: ResourceType (extensible): The resource types a consent provision covers.
.... code Σ 0..* CodeableConcept e.g. LOINC or SNOMED CT code, etc. in the content
Привязка: ConsentContentCodes (example): If this code is found in an instance, then the exception applies.
.... dataPeriod Σ 0..1 Period Timeframe for data controlled by this provision
.... data Σ 0..* BackboneElement Data controlled by this provision
..... id 0..1 string Unique id for inter-element referencing
..... extension 0..* Extension Additional content defined by implementations
Constraints: ext-1
..... modifierExtension ?!Σ 0..* Extension Extensions that cannot be ignored even if unrecognized
Constraints: ext-1
..... meaning Σ 1..1 code instance | related | dependents | authoredby
Привязка: ConsentDataMeaning (required): How a resource reference is interpreted when testing consent restrictions.
..... reference Σ 1..1 Reference(Resource) The actual data reference
.... expression 0..1 Expression A computable expression of the consent
.... provision 0..* Смотреть provision (Consent) Nested Exception Provisions

doco Документация для этого формата

Привязки к терминологии

Путь Статус Использование ValueSet Версия Источник
Consent.language Base required All Languages 📍5.0.0 Стандарт FHIR
Consent.status Base required Consent State Codes 📍0.5.0 этот IG
Consent.category Base example Consent Category Codes 📍5.0.0 Стандарт FHIR
Consent.sourceAttachment.​contentType Base required Mime Types 📍5.0.0 Стандарт FHIR
Consent.sourceAttachment.​language Base required All Languages 📍5.0.0 Стандарт FHIR
Consent.regulatoryBasis Base required Consent policies 📍0.5.0 этот IG
Consent.verification.​verificationType Base example Consent Vefication Codes 📍5.0.0 Стандарт FHIR
Consent.decision Base required Consent provision type 📍0.5.0 этот IG
Consent.provision.actor.​role Base extensible Participation Role Type 📍5.0.0 Стандарт FHIR
Consent.provision.action Base required Possible consent actions 📍0.5.0 этот IG
Consent.provision.securityLabel Base example Example set of Security Labels 📍5.0.0 Стандарт FHIR
Consent.provision.purpose Base required Consent purpose of use 📍0.5.0 этот IG
Consent.provision.documentType Base preferred Consent Content Class 📍5.0.0 Стандарт FHIR
Consent.provision.resourceType Base extensible Resource Types 📍5.0.0 Стандарт FHIR
Consent.provision.code Base example Consent Content Codes 📍5.0.0 Стандарт FHIR
Consent.provision.data.​meaning Base required Consent Data Meaning 📍5.0.0 Стандарт FHIR

Ограничения

Id Градация Путь(и) Описание Выражение
dom-2 error Consent If the resource is contained in another resource, it SHALL NOT contain nested Resources contained.contained.empty()
dom-3 error Consent If the resource is contained in another resource, it SHALL be referred to from elsewhere in the resource or SHALL refer to the containing resource contained.where((('#'+id in (%resource.descendants().reference | %resource.descendants().ofType(canonical) | %resource.descendants().ofType(uri) | %resource.descendants().ofType(url))) or descendants().where(reference = '#').exists() or descendants().where(ofType(canonical) = '#').exists() or descendants().where(ofType(canonical) = '#').exists()).not()).trace('unmatched', id).empty()
dom-4 error Consent If a resource is contained in another resource, it SHALL NOT have a meta.versionId or a meta.lastUpdated contained.meta.versionId.empty() and contained.meta.lastUpdated.empty()
dom-5 error Consent If a resource is contained in another resource, it SHALL NOT have a security label contained.meta.security.empty()
dom-6 лучшая практика Consent A resource should have narrative for robust management text.`div`.exists()
ele-1 error Consent.meta, Consent.implicitRules, Consent.language, Consent.text, Consent.extension, Consent.modifierExtension, Consent.identifier, Consent.status, Consent.category, Consent.subject, Consent.date, Consent.period, Consent.period.extension, Consent.period.start, Consent.period.end, Consent.grantor, Consent.grantee, Consent.manager, Consent.controller, Consent.sourceAttachment, Consent.sourceAttachment.extension, Consent.sourceAttachment.contentType, Consent.sourceAttachment.language, Consent.sourceAttachment.data, Consent.sourceAttachment.url, Consent.sourceAttachment.size, Consent.sourceAttachment.hash, Consent.sourceAttachment.title, Consent.sourceAttachment.creation, Consent.sourceAttachment.height, Consent.sourceAttachment.width, Consent.sourceAttachment.frames, Consent.sourceAttachment.duration, Consent.sourceAttachment.pages, Consent.sourceReference, Consent.regulatoryBasis, Consent.policyBasis, Consent.policyBasis.extension, Consent.policyBasis.modifierExtension, Consent.policyBasis.reference, Consent.policyBasis.url, Consent.policyText, Consent.verification, Consent.verification.extension, Consent.verification.modifierExtension, Consent.verification.verified, Consent.verification.verificationType, Consent.verification.verifiedBy, Consent.verification.verifiedWith, Consent.verification.verificationDate, Consent.decision, Consent.provision, Consent.provision.extension, Consent.provision.modifierExtension, Consent.provision.period, Consent.provision.actor, Consent.provision.actor.extension, Consent.provision.actor.modifierExtension, Consent.provision.actor.role, Consent.provision.actor.reference, Consent.provision.action, Consent.provision.securityLabel, Consent.provision.purpose, Consent.provision.documentType, Consent.provision.resourceType, Consent.provision.code, Consent.provision.dataPeriod, Consent.provision.data, Consent.provision.data.extension, Consent.provision.data.modifierExtension, Consent.provision.data.meaning, Consent.provision.data.reference, Consent.provision.expression, Consent.provision.provision All FHIR elements must have a @value or children hasValue() or (children().count() > id.count())
ext-1 error Consent.extension, Consent.modifierExtension, Consent.period.extension, Consent.sourceAttachment.extension, Consent.policyBasis.extension, Consent.policyBasis.modifierExtension, Consent.verification.extension, Consent.verification.modifierExtension, Consent.provision.extension, Consent.provision.modifierExtension, Consent.provision.actor.extension, Consent.provision.actor.modifierExtension, Consent.provision.data.extension, Consent.provision.data.modifierExtension Must have either extensions or value[x], not both extension.exists() != value.exists()

Summary

Обязательная поддержка: 13 элементs

 

Другие представления профиля: CSV, Excel, Schematron

Машинный перевод, требуется проверка человеком. Эта страница автоматически переведена с английского языка с помощью искусственного интеллекта и пока не проверена редактором. При любых расхождениях приоритет имеет оригинальная англоязычная версия.

Быстрый старт

Распространённые варианты взаимодействия с API для данного профиля. Запросы требуют JWT-токена доступа - см. Безопасность и аутентификация. [base] - это базовый URL FHIR-сервера; | отделяет систему кодов от её значения и должен быть URL-закодирован как %7C.

Чтение по идентификатору сервера

GET [base]/Consent/[id]

Поиск решений о согласии пациента

GET [base]/Consent?patient=Patient/[id]
GET [base]/Consent?patient=Patient/[id]&status=active
GET [base]/Consent?patient=Patient/[id]&category=http://terminology.hl7.org/CodeSystem/consentcategorycodes%7Cinfa
GET [base]/Consent?patient=Patient/[id]&period=ge2025-01-01
GET [base]/Consent?patient=Patient/[id]&date=ge2025-01-01

Создание (отказ пациента от участия - при отсутствии ресурса Consent обмен данными разрешён по умолчанию)

POST [base]/Consent
{
  "resourceType": "Consent",
  "meta": { "profile": [ "https://dhp.uz/fhir/core/StructureDefinition/uz-core-consent" ] },
  "status": "active",
  "subject": { "reference": "Patient/[id]" },
  "decision": "deny",
  ...
}

Обновление (например, пациент отзывает или повторно предоставляет согласие) - выполните PUT с полным ресурсом и новым значением decision:

PUT [base]/Consent/[id]
If-Match: W/"3"   # the ETag from your last read; 412 if it changed since

Согласие обычно устанавливается пациентом в портале. Отклонённое согласие приводит к отказу в запросах данных с кодом HTTP 403; клиенты должны обрабатывать такой исход.

Полный список поддерживаемых поисковых параметров см. в CapabilityStatement.

Связанные материалы