====== HL7 NOTAS ====== Práctica del curso HL7 del proyecto [[https://www.gob.pe/institucion/minsa/noticias/14958-historias-clinicas-electronicas-para-madres-gestantes-seran-implementadas-gracias-al-proyecto-wawa-red|wawared]] que luego pasó a llamarse [[https://sihce.minsa.gob.pe/|SIHCE]] ===== Software Necesarios ===== Un editor XML:\\ [[http://xml-copy-editor.sourceforge.net/]] ===== Páginas de Consulta ===== OID:\\ [[http://www.hl7.org/oid/]] LOINC:\\ [[http://search.loinc.org/]] CDA Tools:\\ [[http://cdatools.org/infocenter/index.jsp]] ===== Guias ===== Guia de elementos Mínimos para un CDA HL7v3\\ [[http://www.hl7spain.org/documents/comTec/cda/GuiaElementosMinimosCDA.pdf]] Guía sobre los indicadores XSD\\ [[http://www.w3schools.com/schema/schema_complex_indicators.asp]]\\ [[http://www.milkzoft.com/blog/xml-schema/]] Página antigua con buenos enlaces (en cache de google, ya no existe)\\ [[http://webcache.googleusercontent.com/search?q=cache:YumaatdVrgQJ:hl7book.net/index.php%3Ftitle%3DCDA+&cd=8&hl=es-419&ct=clnk|http://hl7book.net/]] ===== Validadores CDA ===== [[http://cdatools.org/validation/]]\\ [[https://www.lantanagroup.com/validator/]]\\ más recopilación de ejemplos interesantes:\\ [[https://github.com/chb/sample_ccdas]] ====== 1 Estructura General CDA ====== ===== 1.1 Identificando el Cuerpo y la Cabecera ===== Al igual que una página de hipertexto html, tiene una cabecera y un cuerpo como elementos base, aunque la cabecera no está declarada dentro de una etiqueta identificable como como ocurre con html y xhtml, en el xml de HL7v3 CDA los diferentes nodos declarados como hijos de son la cabecera , pues describen al documento en sí mismo, los participantes y las relaciones con otros documentos (hl7spain.org GuiaElementosMinimosCDA pag 27) excepto el nodo , hermano de estos nodos por ser también hijo de , al tener como nodo hijo a cuando es estructurado o cuando no es estructurado, se lo reconoce como el cuerpo; pues encerrará parte del Arbol XML con la información clínica del paciente. Aquí una estructura de XHTML resumida Titulo del documento

esto es un título

Esto es un parrafo

otro título

Esto es otro parrafo

Aquí la estructura XML de CDA (Clinical Document Architecture) resumida con cuerpo estructurado (archivo “SampleCDADocument.xml” ) Good Health Clinic Consultation Note
History of Present Illness Henry Levin, the 7th is a 67 year old male referred for further asthma management. Onset of asthma in his twenties teens. He was hospitalized twice last year, and already twice this year. He has not been able to be weaned off steroids for the past several months.
===== 1.2 Diferencia entre Cuerpo Estructurado y no Estructurado ===== Estructurado
No Estructurado Hurgando en el archivo de definición de esquema XML, el XSD "POCD_MT000040.xsd" La linea 222 declara el nodo "" que está en la definición de "" y del que es hijo que comprende las líneas 194 ~ 227, hay otro nodo con el mismo nombre "" pero hijo de "" al que se declara en la linea 1255 : La linea 238 ~ 251 define a "" a traves del tipo "POCD_MT000040.Component2" * En xs:sequence vemos que puede aparecer, los siguientes elementos (xs:element) en esta secuencia (todos con minOccurs=0 osea son opcionales y dos con maxOccurs="unbounded" osea pueden repetirse ilimitadamente): * realmCode * typeId * templateId * En xs:choice podemos ver que luego de "" se puede declarar "" o "" * En xs:attribute los atributos "nullFlavor", "typeCode" y "contextConductionInd" todos con use="optional" ==== Cuerpo Estructurado : ==== ClinicalDocument > component > structuredBody > component > section > entry : code : title : text Definicion en Linea 1248 ==== Cuerpo No Esctructurado : ==== ClinicalDocument > component > nonXMLBody > text : reference Definición en linea 722 : ===== Detalles de Elementos de encabezado ===== Verificar el cumplimiento de los elementos mínimos en la cabecera: ^ Elementos de cabecera de CDA ^^ ^ Elemento de Cabecera ^ Exigencia ^ | typeId | **Requerido** | | id | **Requerido** | | code | **Requerido** | | title | **Requerido** | | effectiveTime | **Requerido** | | confidentialityCode | **Requerido** | | languageCode | Opcional | | setId | Opcional | | versionNumber | Opcional | | recordTarget | **Requerido** | | author | **Requerido** | | dataEnterer | Opcional | | informant | Opcional | | custodian | **Requerido** | | informationRecipient | Opcional| | legalAuthenticator | Opcional | | authenticator | Opcional | | participant | Opcional | | inFulfillmentOf | **Requerido** | | documentationOf | Opcional | | relatedDocument | Opcional | | authorization | Opcional | | componentOf | Opcional | ==== Analizando la cabecera ==== También son elementos requeridos "​"​ y "<​component>"​ con los nodos hijos "<​structuredBody>"​ o "<​nonXMLBody>" ** ClinicalDocument (Requerido)** - xmlns **(Requerido)** - xmlns:voc **(Requerido)** - xmlns:xsi **(Requerido)** - xsi:schemaLocation **(Requerido)** Pero concentrándose en la cabecera: **typeId (Requerido)** - root **(Requerido)** - extension **(Requerido)** ** id (Requerido)** - root **(Requerido)** - extension **(Requerido)** ** code (Requerido)** - code **(Requerido)** - codeSystem **(Requerido)** - codeSystemName //(Opcional)// - displayName= //(Opcional)// ** effectiveTime (Requerido)** - value **(Requerido)** ** confidentialityCode (Requerido)** - code **(Requerido)** - codeSystem **(Requerido)** ** recordTarget (Requerido)** - Nodo: patientRole **(Requerido)** - Nodo: id **(Requerido)**, Parámetro: extension **(Requerido)**, Parámetro: root **(Requerido)** - Nodo: Patient //(Opcional)// - Nodo: Name //(Opcional)// - Nodo: Given //(Opcional)// - Nodo: Family //(Opcional)// - Nodo: suffix //(Opcional)// - Nodo: administrativeGenderCode //(Opcional)//, Parámetro: code **(Requerido)**, Parámetro: codeSystem **(Requerido)** - Nodo: birthTime //(Opcional)//, Parámetro: value **(Requerido)** - Nodo: providerOrganization //(Opcional)// - Nodo: id //(Opcional)//, Parámetro: root **(Requerido)** - Nodo: name //(Opcional)// Los Parámetros marcados como requeridos en los nodos Opcionales, se refieren que los parámetros son obligatorios para ese nodo más no que el nodo sea obligatorio para la declaración mínima necesaria del HL7v3 CDA ** author (Requerido)** - Nodo: time **(Requerido)**, Parámetro: value **(Requerido)**; - Nodo: assignedAuthor **(Requerido)** - Nodo: id **(Requerido)**, Parámetro: extension **(Requerido)**, Parámetro: root **(Requerido)** - Nodo: assignedPerson //(Opcional)// - Nodo: name //(Opcional)// - Nodo: given //(Opcional)// - Nodo: family //(Opcional)// - Nodo: suffix //(Opcional)// - Nodo: representedOrganization //(Opcional)// - Nodo: id //(Opcional)//, Parámetro: id **(Requerido)** - Nodo: name //(Opcional)// ** custodian (Requerido)** - Nodo: assignedCustodian **(Requerido)** - Nodo: representedCustodianOrganization **(Requerido)** - Nodo: id **(Requerido)**, parametro: root **(Requerido)** - Nodo: mame **(Opcional)** Viendo también el cuerpo, que es del tipo no estructurado : ** component (Requerido) ** - Nodo: nonXMLBody **(Requerido)** - Nodo: text **(Requerido)**, Parámetro: mediaType **(Requerido)** - Nodo: reference **(Requerido)** Parámetro: value **(Requerido)** ===== Buscar los elementos en el archivo CDA con elementos mínimos ===== ==== Elemento ==== El elemento typeId aparece en la línea 10 del archivo "EmptyMinimalCDAnonXMLbody.xml" ==== Elemento ==== puse de root el OID que se asigno para el ejemplo, en extensión puse un correlativo ==== Elemento ==== Este ejemplo se refiere al plan de tratamiento psiquiátrico: Modifico para expresar una nota de "consulta pediátrica", busque en [[http://search.loinc.org/]] la consulta pediátrica en Ingles: ^ LOINC ^ NombreCompleto ^ Componente ^ | 68892-9 | Pediatric dermatology Hospital Consult note | Consultation note| o en otro caso, modifico para declarar una "consulta gineco-obstétrica" ^ LOINC ^ NombreCompleto ^ Componente ^ | 68566-9 | Obstetrics and Gynecology Hospital Consult note | Consultation note | El OID : 2.16.840.1.113883.6.1 hace referencia a que se utilizará un código LOINC como se lo explica aquí:\\ [[http://www.hl7.org/oid/index.cfm?Comp_OID=2.16.840.1.113883.6.1]]\\ [[http://loinc.org/oids/2.16.840.1.113883.6.1]] ==== Elemento ==== <code xml> <title>Psychiatric Rehabilitation Attachment Como se pide en Lenguaje Natural Nota de Consulta Gineco-Obstétrica ==== Elemento ==== El momento en que creo el archivo XML CDA año + mes + día + hora + minuto + segundo + horario local 2014/05/20/15:30:00/UTC-05:00 (zona horaria) año, mes y día son obligatorios, como se ve en el ejemplo de arriba ==== Elemento ==== Confidencialidad restringida : acceso normal Confidencialidad restringida: acceso restringido Confidencialidad muy restringida: acceso muy restringido Modifico el archivo CDA a Acceso Restringido, las etiquetas "codeSystemName" y "displayName" son Opcionales: ==== Elemento ==== Este elemento de la cabecera es opcional Se cambio según como se muestra [[http://msdn.microsoft.com/en-us/library/ms533052%28v=vs.85%29.aspx|aquí]], con el código para Perú : ==== Elemento ==== Elemento opcional que tiene por parámetro un número entero que se usa para identificar la sucesivas versiones del documento. ==== Elemento ==== Elemento obligatorio que indica a quien pertenece y hace referencia el documento: Diego Mauricio López Gutiérrez Normalmente una persona pero en casos especiales, un feto o un grupo de personas. "RecordTarget" como podemos ver en la línea 208 del archivo de definición de esquema XSD (POCD_MT000040.xsd) está declarado con maxOccurs="unbounded" eso significa que la etiqueta es válida en ser declarada en más de una ocasión. En el ejercicio se pide reemplazar los datos del ejemplo, aquí el ejemplo desarrollado con los datos pedidos en el PDF del taller CARLOS ANDRÉS GUZMAN DIAZ Jr blablabla 1234 Los Pescadores La Perla 004 Callao Perú Av. blablabla 1234 Las blablabla San Isidrio < postalCode>005 Lima Peru Datos interesantes sobre telefonia:\\ [[http://www.ietf.org/rfc/rfc2806.txt]] ==== Elemento ==== Ejemplo: Desarrollandolo con otros datos: ==== Elemento ==== Nombre del Hospital cambiandole solo el name Hospital Daniel Alcidez Carrión ===== Cuerpo del CDA ===== ==== No Estructurado, elemento ==== Desarrollando el ejemplo, para un archivo PDF de nombre "HistoriaClinica12345678.pdf": ==== Estructurado, elemento ====
Anamnesis El paciente presenta… .
=== Entry ===