CCD ClinicalDocument.id: Каким должно быть значение root? - PullRequest
10 голосов
/ 12 мая 2011

В руководстве по внедрению CDA R2 CCD элемент ClinicalDocument (корневой элемент документа) должен иметь элемент id.

Этот id элемент имеет тип данных "II": http://wiki.hl7.no/index.php/R1:II Это говорит о том, что атрибут root должен иметь значение OID, чтобы идентифицировать тип идентификации, используемый в атрибуте extension.

Теперь, глядя на образец документа CCD, который предоставляет HL7, мы видим:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="CDASchemas\cda\Schemas\CCD.xsl"?>
<ClinicalDocument xmlns="urn:hl7-org:v3" xmlns:voc="urn:hl7-org:v3/voc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:hl7-org:v3 CDA.xsd" >
...
   <id root="db734647-fc99-424c-a864-7e3cda82e703"/>
...
</ClinicalDocument>

Корневое значение db734647-fc99-424c-a864-7e3cda82e703 не является OID. Я не уверен, что это такое, но, возможно, это выглядит как UUID? В любом случае, это статическое значение для всех документов CCD или оно будет отличаться от документа к другому? Почему атрибут extension не используется, не это ли идентифицирует документ?

Обратите внимание, что в этом же примере документа я также вижу такие вещи, как

<id root="2.16.840.1.113883.19.5" />

, которые кажутся OID (в атрибуте root).

РЕДАКТИРОВАТЬ : Образец документа, на который я ссылаюсь, взят из руководства по внедрению CCD HL7, то есть из официального источника, маловероятно, что у них будет явная ошибка в файле примера, которую никто не заметил до этого.

Ответы [ 7 ]

4 голосов
/ 10 декабря 2014

Вы можете скачать документацию CDA Release 2 здесь: http://www.hl7.org/implement/standards/product_brief.cfm?product_id=7

Примечание: вам придется создать учетную запись, но не платную. Кроме того, когда я забыл свой пароль, мне прислали его по электронной почте. Не используйте безопасный пароль здесь.

В datatypes-base.xsd вы можете увидеть объяснение типа II. Root - это UID, и существует 2 типа UID. OID и UUID.

UUID - это GUID (ваш пример). OID - это идентификаторы, обозначенные HL7. Вы можете подать на организационный OID, и вы можете контролировать любые конечные OID с этого момента. Следующий шаблон "[0-2] (\. (0 | [1-9] [0-9] *)) *"

Между корнем и расширением (строкой) II должен быть универсально уникальным. OID может быть уникальным сам по себе. Пара примеров.

OID "2.16.840.1.113883" - это Hl7 (https://www.hl7.org/oid/index.cfm). Лист ".10.20.22" - это шаблоны истории здоровья HL7. Лист ".1.2" - это документ о непрерывности медицинской помощи.

<id root="2.16.840.1.113883.10.20.22.1.2" /> is globally unique for a CCD template, extension unneeded

OID "2.16.840.1.113883.5" - это кодовые системы HL7 V3. «.1» - административный пол

<id root="2.16.840.1.113883.5.1" extension="M" /> is globally unique for Male

Это дает вам два варианта создания II для вашего клинического документа. Вы можете создать свой собственный GUID. Или вы можете использовать любой локальный идентификатор, если у вас есть значимый идентификатор в OID / листе, который контролирует ваша организация. Извлечение верхнего OID из реестра hl7 («2.16.840.1.113883.5.3» - это внешние пользователи; «.1» - это ProVation) в качестве примера:

Они могли бы определять листья по мере необходимости; и каждый раз, когда они отправляют документ, он ссылается на один и тот же уникальный документ. Теоретически: 100 = документы; 100.2 = клинические документы; расширение = databaseIdentityColumn.

<id root="2.16.840.1.113883.5.3.1.100.2" extension="1" /> = first document they created
<id root="2.16.840.1.113883.5.3.1.100.2" extension="15" /> = 15th document they created

Также вполне допустимо использовать формат только OID, если он глобально уникален.

<id root="2.16.840.1.113883.5.3.1.100.2.15" /> = 15th document they created

Похож на уникальный в мире SSN

<id root="2.16.840.1.113883.4.1" extension="111-11-1111" />

Тогда локально определенный идентификатор пациента может быть .12 = карта пациента

<id root="2.16.840.1.113883.5.3.1.12" extension="ZZ1234-111111" />
4 голосов
/ 07 июля 2011

Я сам работаю над тем же.В примере, который я получил от нашего органа по сертификации EHR, корень идентификатора был похож на OID.Это было "2.16.840.1.113883.3.72".

Вот ссылка, которая может несколько помочь: http://www.ihe.net/Technical_Framework/upload/ihe_lab_TF_rel2-3.pdf

Я скопировал соответствующий текст ниже.1008 * Этот элемент ДОЛЖЕН присутствовать.Он представляет собой уникальный идентификатор экземпляра клинического документа.Комбинация корневых и расширенных атрибутов ДОЛЖНА предоставлять глобально уникальный идентификатор.Пример:

<id root="2.16.840.1.113883.19.4" extension="abc266"/>
3 голосов
/ 08 сентября 2012

Старый вопрос, я знаю, но я только изучаю этот материал, и мне кажется, что я, наконец, обернул вокруг него голову.

Корни в основном похожи на пространства имен или домены, в которых идентификатор будет действительным и гарантированно уникальным. Например, если ваш орган / организация генерирует CDA, он, скорее всего, подал заявку на получение уникального OID (значение, которое вы видите в корне, является OID 2.16.840.1.113883.19.4).

Итак, для примера выше,

    <id root="2.16.840.1.113883.19.4" extension="abc266"/>

Я собираюсь предположить, что 2.16.840.1.113883.19 является базовым OID для органа, отправляющего CDA, а .4, скорее всего, OID, чтобы указать, что это

<id>

фактически является идентификатором документа (орган определяет эти расширения OID под базовым OID)

«расширение» - это значение уникального идентификатора для этого конкретного документа.

Что касается вашего комментария о том, что в руководстве по внедрению отсутствуют явные ошибки, я обнаружил, что попытался разобраться в этом совершенно наоборот ... существует множество ошибок. Я действительно считаю, что корень всегда должен быть OID, расширения, как правило, UUID или какой-то другой уникальный идентификатор.

2 голосов
/ 22 февраля 2012

Я знаю, что это старый пост, но, как сказал user453441, информация HL7 трудно найти.

Что касается элемента <id>, вот что я думаю:

Согласно некоторым учебным материалам, которые мне дали прочитать на работе, этот элемент является «Идентификатором документа». Это

"уникальный идентификатор для (the) экземпляра документа. (Id) обычно генерируется создателем документа."

Моя интерпретация заключается в том, что этот элемент должен использоваться в целях безопасности и проверки. Я полагаю, что элемент, который является дочерним по отношению к основному элементу <Clinical Document>, используется, чтобы показать получателю CDA, что этот документ действительно произошел от ожидаемого источника. Вы, как отправитель CDA, будете иметь какой-то уникальный идентификатор (кажется, что не существует стандарта, но было бы полезно получить OID для вашей организации).

Корневым атрибутом элемента <id> является уникальный идентификатор для всего документа, уникальный идентификатор вашей организации. Существует также атрибут расширения, который можно использовать для уникальной идентификации отдельных разделов CDA. Вы упомянули, что в CDA есть более одного атрибута, вот почему. Атрибут extension может использоваться для идентификации, например, <assignedAuthor>. Похоже, что все дочерние элементы любого элемента участия используют этот элемент <id>.

Надеюсь, это поможет.

Редактировать: после прочтения у меня есть еще пара деталей. Атрибут root элемента <id>

"... представляет уникальный идентификатор экземпляра (UID)."

Я получаю эти цитаты из учебных материалов из "Asociacion HL7 Argentina -HL7". В их примере это использует номер дела и секвенсор версий для атрибута extension. Таким образом, две разные организации могут использовать одно и то же расширение, но, поскольку они имеют разные UID в атрибуте root, они все равно различаются.

2 голосов
/ 13 мая 2011

Согласно этим двум ссылкам:

http://tl7.intelliware.ca/public/messages/dataTypes/ii.faces и http://cdatools.com/infocenter/index.jsp?topic=/org.openhealthtools.mdht.uml.cda.consol.doc/classes/GeneralHeaderConstraints.html

тип данных "II" принимает как OID, так и UUID в своем элементе root.

Может ли кто-нибудь направить меня к официальной документации, объясняющей это?

Sidenote: Отсутствие надлежащей документации и знаний, доступных в Интернете относительно HL7, весьма разочаровывает, учитывая тот факт, что он широко используется.

0 голосов
/ 21 июня 2019

Когда вы смотрите в спецификациях CDA, что уже было упомянуто, вы видите, что типом элемента ClinicalDocument.id является II (Идентификатор экземпляра).

Если вы смотрите в определение типа данных(можно найти в файле datatypes-base.xsd), вы найдете следующее:

<xs:complexType name="II">
  <xs:annotation>
     <xs:documentation>
        An identifier that uniquely identifies a thing or object.
        Examples are object identifier for HL7 RIM objects,
        medical record number, order id, service catalog item id,
        Vehicle Identification Number (VIN), etc. Instance
        identifiers are defined based on ISO object identifiers.
     </xs:documentation>
     <xs:appinfo>
        <sch:pattern name="validate II">
           <sch:rule abstract="true" id="rule-II">
              <sch:report test="(@root or @nullFlavor) and not(@root and @nullFlavor)">
                 A root component is required or else the II value is NULL.
              </sch:report>
           </sch:rule>
        </sch:pattern>
     </xs:appinfo>
  </xs:annotation>
  <xs:complexContent>
     <xs:extension base="ANY">
        <xs:attribute name="root" type="uid" use="optional">
           <xs:annotation>
              <xs:documentation>
                 A unique identifier that guarantees the global uniqueness
                 of the instance identifier. The root alone may be the
                 entire instance identifier.
              </xs:documentation>
           </xs:annotation>
        </xs:attribute>
        <xs:attribute name="extension" type="st" use="optional">
           <xs:annotation>
              <xs:documentation>
                 A character string as a unique identifier within the
                 scope of the identifier root.
              </xs:documentation>
           </xs:annotation>
        </xs:attribute>
        <xs:attribute name="assigningAuthorityName" type="st" use="optional">
           <xs:annotation>
              <xs:documentation>
                 A human readable name or mnemonic for the assigning
                 authority. This name may be provided solely for the
                 convenience of unaided humans interpreting an II value
                 and can have no computational meaning. Note: no
                 automated processing must depend on the assigning
                 authority name to be present in any form.
              </xs:documentation>
           </xs:annotation>
        </xs:attribute>
        <xs:attribute name="displayable" type="bl" use="optional">
           <xs:annotation>
              <xs:documentation>
                 Specifies if the identifier is intended for human
                 display and data entry (displayable = true) as
                 opposed to pure machine interoperation (displayable
                 = false).
              </xs:documentation>
           </xs:annotation>
        </xs:attribute>
     </xs:extension>
  </xs:complexContent>

Здесь вы видите, что корневой атрибут должен быть идентификатором пользователя сследующая документация:

Уникальный идентификатор, который гарантирует глобальную уникальность идентификатора экземпляра.Один корень может быть целым идентификатором экземпляра.

0 голосов
/ 12 мая 2011

Атрибут 'id' в классе ClinicalDocument документа CDA должен содержать уникальный идентификатор для документа.

Для типа данных II тогда корнем всегда должен быть OID, расширением может быть любая уникальная строка. Я бы предположил, что в вашем примере XML есть ошибка (откуда это было взято).

Само собой разумеется, что в документе CDA будет много разных OID, используемых в зависимости от объекта, для которого они используются.

...