Guía de Implementación Core de Costa Rica
0.1.0 - ci-build
Guía de Implementación Core de Costa Rica - Versión en desarrollo (v0.1.0): borrador de trabajo de la Iniciativa HL7® Costa Rica, que puede cambiar sin aviso.
| URL oficial: https://hl7.or.cr/fhir/core/StructureDefinition/cr-observation | Versión: 0.1.0 | ||||
| Standards status: Draft | Nombre computable: CRObservation | ||||
Resultado de una medición, un examen o una evaluación sobre un paciente en Costa Rica: una medida o una impresión de un estudio de imágenes, un resultado de laboratorio, un signo vital. Es la base común que perfila cada guía de dominio. Implementa el modelo lógico de la observación.
Usos:
También puede consultar los usos en las estadísticas de IG de FHIR
Descripción de perfiles, diferenciales, instantáneas y sus representaciones.
| Nombre | Marcas | Card. | Tipo | Descripción y restricciones Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Observation | Observación: resultado de una medición, un examen o una evaluación Constraints: obs-6, obs-7, obs-8, cr-observacion-emision, cr-observacion-resultado, cr-observacion-ucum, cr-observacion-fecha-emision, cr-observacion-cancelada, cr-observacion-sensibilidad, cr-observacion-sensibilidad-v |
![]() ![]() |
SΣ | 1..1 | Meta | Metadatos: las etiquetas de seguridad |
![]() ![]() ![]() |
Σ | 1..* | Coding | Confidencialidad y sensibilidad de la observación Slice: Sin orden, Abierto by value:system Vinculación: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | N | R | V Vinculación: Confidencialidad (required) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-Confidentiality |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | PSY | PSYTHPN | HIV | STD | SDV | SEX | SUD | GDIS Vinculación: Sensibilidad de la información (required) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-ActCode |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
0..* | Resource | Contained, inline Resources | |
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣC | 1..1 | Identifier | Identificador de la observación, el mismo en todas sus versiones Constraints: cr-observacion-system |
![]() ![]() ![]() |
?!Σ | 0..1 | code | official (valor fijo) Vinculación: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official |
![]() ![]() ![]() |
SΣ | 1..1 | uri | https://hl7.or.cr/fhir/sid/observacion/{código del establecimiento} Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() |
SΣC | 1..1 | string | Número de la observación en el sistema del establecimiento Constraints: cr-codigo-interno-value Example General: 123456 Max Length:64 |
![]() ![]() |
?!SΣ | 1..1 | code | Estado: preliminary | final | amended | corrected | cancelled | entered-in-error Vinculación: Estado de la observación (required) |
![]() ![]() |
S | 1..* | CodeableConcept | Categoría: imaging (laboratory y vital-signs se admiten) Vinculación: Categoría de la observación (extensible) |
![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó (LOINC cuando hay un código) Vinculación: LOINCCodes (extensible) |
![]() ![]() |
SΣ | 1..1 | Reference(Paciente) | Paciente observado |
![]() ![]() |
SΣ | 0..1 | Reference(Atención) | Atención en la que se hizo la observación |
![]() ![]() |
SΣC | 1..1 | Cuándo se hizo la observación (fecha clínicamente relevante) Constraints: cr-observacion-fecha-hora | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
SΣ | 0..1 | instant | Cuándo se emitió el resultado (obligatoria en un resultado final) |
![]() ![]() |
SΣ | 1..* | Reference(Rol del profesional | Profesional de salud | Organización) | Quién hizo la observación: el profesional en su rol, o la organización |
![]() ![]() |
SΣC | 0..1 | Resultado: una cantidad (con unidad UCUM), un código, un texto... | |
![]() ![]() ![]() |
Quantity | |||
![]() ![]() ![]() |
CodeableConcept | |||
![]() ![]() ![]() |
string | |||
![]() ![]() ![]() |
boolean | |||
![]() ![]() ![]() |
integer | |||
![]() ![]() ![]() |
Range | |||
![]() ![]() ![]() |
Ratio | |||
![]() ![]() ![]() |
SampledData | |||
![]() ![]() ![]() |
time | |||
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Attachment | |||
![]() ![]() ![]() |
Reference(MolecularSequence) | |||
![]() ![]() |
SC | 0..1 | CodeableConcept | Por qué no hay valor (not-performed si se canceló) Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() |
S | 0..* | CodeableConcept | Interpretación: normal, alto, bajo... (con el texto en español) Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. |
![]() ![]() |
SC | 0..* | BackboneElement | Rango de referencia que aplica al paciente Constraints: obs-3, cr-observacion-rango-ucum |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite inferior (UCUM) |
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite superior (UCUM) |
![]() ![]() ![]() |
SC | 0..1 | markdown | Rango en texto |
![]() ![]() |
SΣC | 0..* | BackboneElement | Partes medidas en el mismo acto (presión sistólica y diastólica) Constraints: cr-observacion-componente, cr-observacion-componente-ucum |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó en esta parte (LOINC) Vinculación: LOINCCodes (extensible) |
![]() ![]() ![]() |
SΣ | 0..1 | Resultado de esta parte | |
![]() ![]() ![]() ![]() |
Quantity | |||
![]() ![]() ![]() ![]() |
CodeableConcept | |||
![]() ![]() ![]() ![]() |
string | |||
![]() ![]() ![]() ![]() |
boolean | |||
![]() ![]() ![]() ![]() |
integer | |||
![]() ![]() ![]() ![]() |
Range | |||
![]() ![]() ![]() ![]() |
Ratio | |||
![]() ![]() ![]() ![]() |
SampledData | |||
![]() ![]() ![]() ![]() |
time | |||
![]() ![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() ![]() |
Attachment | |||
![]() ![]() ![]() ![]() |
Reference(MolecularSequence) | |||
![]() ![]() ![]() |
S | 0..1 | CodeableConcept | Por qué esta parte no tiene valor Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() ![]() |
S | 0..* | CodeableConcept | Interpretación de esta parte Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. |
Documentación de este formato | ||||
| Id | Nivel | Ruta(s) | Descripción | Expression |
| cr-codigo-interno-value | error | Observation.identifier.value | Un código interno tiene de 1 a 64 caracteres, sin espacios. |
matches('^\\S{1,64}$')
|
| cr-observacion-cancelada | error | Observation | Una observación cancelada lleva el motivo sin valor not-performed. |
status = 'cancelled' implies dataAbsentReason.coding.where(system = 'http://terminology.hl7.org/CodeSystem/data-absent-reason' and code = 'not-performed').exists()
|
| cr-observacion-componente | error | Observation.component | Cada componente lleva un valor o un motivo sin valor. |
value.exists() or dataAbsentReason.exists()
|
| cr-observacion-componente-ucum | error | Observation.component | Una cantidad de un componente lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| cr-observacion-emision | error | Observation | Un resultado final, modificado o corregido indica cuándo se emitió (issued). |
status in ('final' | 'amended' | 'corrected') implies issued.exists()
|
| cr-observacion-fecha-emision | error | Observation | La fecha de la observación no es posterior a la fecha de emisión. |
issued.empty() or ((effective.ofType(dateTime).empty() or effective.ofType(dateTime) <= issued) and (effective.ofType(Period).start.empty() or effective.ofType(Period).start <= issued))
|
| cr-observacion-fecha-hora | error | Observation.effective[x] | La fecha de la observación lleva fecha y hora, no solo la fecha. |
ofType(dateTime).all(toString().contains('T')) and ofType(Period).all((start.empty() or start.toString().contains('T')) and (end.empty() or end.toString().contains('T')))
|
| cr-observacion-rango-ucum | error | Observation.referenceRange | Los límites del rango de referencia llevan su unidad en UCUM (system http://unitsofmeasure.org y code). |
(low | high).all(system = 'http://unitsofmeasure.org' and code.exists())
|
| cr-observacion-resultado | error | Observation | Un resultado final, modificado o corregido lleva un valor, un motivo sin valor o componentes. |
status in ('final' | 'amended' | 'corrected') implies (value.exists() or dataAbsentReason.exists() or component.exists())
|
| cr-observacion-sensibilidad | error | Observation | Una observación con una sensibilidad tiene confidencialidad R o V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode').exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code in ('R' | 'V')).exists()
|
| cr-observacion-sensibilidad-v | error | Observation | Una observación con notas de psicoterapia (PSYTHPN) o sobre violencia sexual o doméstica (SDV) tiene confidencialidad V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode' and code in ('PSYTHPN' | 'SDV')).exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code = 'V').exists()
|
| cr-observacion-system | error | Observation.identifier | El system del identificador es https://hl7.or.cr/fhir/sid/observacion/ seguido del código del establecimiento (cj-, cn- o dimex- y el identificador del titular). |
system.matches('^https://hl7\\.or\\.cr/fhir/sid/observacion/(cj-[1-9][0-9]{9}|cn-[1-9][0-9]{8}|dimex-[1-9][0-9]{10,11})$')
|
| cr-observacion-ucum | error | Observation | Una cantidad lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | Observation | 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 | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **TODOS** los elementos | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **TODAS** las extensiones | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| obs-8 | error | Observation | bodyStructure SHALL only be present if Observation.bodySite is not present |
bodySite.exists() implies bodyStructure.empty()
|
Esta estructura se deriva de Observation .
| Nombre | Marcas | Card. | Tipo | Descripción y restricciones Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Observation | Observación: resultado de una medición, un examen o una evaluación Constraints: cr-observacion-emision, cr-observacion-resultado, cr-observacion-ucum, cr-observacion-fecha-emision, cr-observacion-cancelada, cr-observacion-sensibilidad, cr-observacion-sensibilidad-v |
![]() ![]() |
S | 1..1 | Meta | Metadatos: las etiquetas de seguridad |
![]() ![]() ![]() |
1..* | Coding | Confidencialidad y sensibilidad de la observación Slice: Sin orden, Abierto by value:system | |
![]() ![]() ![]() ![]() |
S | 1..1 | Coding | N | R | V Vinculación: Confidencialidad (required) |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-Confidentiality | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | PSY | PSYTHPN | HIV | STD | SDV | SEX | SUD | GDIS Vinculación: Sensibilidad de la información (required) |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-ActCode | |
![]() ![]() |
SC | 1..1 | Identifier | Identificador de la observación, el mismo en todas sus versiones Constraints: cr-observacion-system |
![]() ![]() ![]() |
0..1 | code | official (valor fijo) Required Pattern: official | |
![]() ![]() ![]() |
S | 1..1 | uri | https://hl7.or.cr/fhir/sid/observacion/{código del establecimiento} |
![]() ![]() ![]() |
SC | 1..1 | string | Número de la observación en el sistema del establecimiento Constraints: cr-codigo-interno-value Max Length:64 |
![]() ![]() |
S | 1..1 | code | Estado: preliminary | final | amended | corrected | cancelled | entered-in-error Vinculación: Estado de la observación (required) |
![]() ![]() |
S | 1..* | CodeableConcept | Categoría: imaging (laboratory y vital-signs se admiten) Vinculación: Categoría de la observación (extensible) |
![]() ![]() |
S | 1..1 | CodeableConcept | Qué se observó (LOINC cuando hay un código) Vinculación: LOINCCodes (extensible) |
![]() ![]() |
S | 1..1 | Reference(Paciente) | Paciente observado |
![]() ![]() |
S | 0..1 | Reference(Atención) | Atención en la que se hizo la observación |
![]() ![]() |
SC | 1..1 | Cuándo se hizo la observación (fecha clínicamente relevante) Constraints: cr-observacion-fecha-hora | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
S | 0..1 | instant | Cuándo se emitió el resultado (obligatoria en un resultado final) |
![]() ![]() |
S | 1..* | Reference(Rol del profesional | Profesional de salud | Organización) | Quién hizo la observación: el profesional en su rol, o la organización |
![]() ![]() |
S | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Resultado: una cantidad (con unidad UCUM), un código, un texto... |
![]() ![]() |
S | 0..1 | CodeableConcept | Por qué no hay valor (not-performed si se canceló) |
![]() ![]() |
S | 0..* | CodeableConcept | Interpretación: normal, alto, bajo... (con el texto en español) |
![]() ![]() |
SC | 0..* | BackboneElement | Rango de referencia que aplica al paciente Constraints: cr-observacion-rango-ucum |
![]() ![]() ![]() |
S | 0..1 | SimpleQuantity(5.0.0) | Límite inferior (UCUM) |
![]() ![]() ![]() |
S | 0..1 | SimpleQuantity(5.0.0) | Límite superior (UCUM) |
![]() ![]() ![]() |
S | 0..1 | markdown | Rango en texto |
![]() ![]() |
SC | 0..* | BackboneElement | Partes medidas en el mismo acto (presión sistólica y diastólica) Constraints: cr-observacion-componente, cr-observacion-componente-ucum |
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Qué se observó en esta parte (LOINC) Vinculación: LOINCCodes (extensible) |
![]() ![]() ![]() |
S | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Resultado de esta parte |
![]() ![]() ![]() |
S | 0..1 | CodeableConcept | Por qué esta parte no tiene valor |
![]() ![]() ![]() |
S | 0..* | CodeableConcept | Interpretación de esta parte |
Documentación de este formato | ||||
| Ruta | Estado | Uso | ValueSet | Versión | Fuente |
| Observation.meta.security:confidencialidad | Base | required | Confidencialidad | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.meta.security:sensibilidad | Base | required | Sensibilidad de la información | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.status | Base | required | Estado de la observación | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.category | Base | extensible | Categoría de la observación | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.code | Base | extensible | LOINC Codes | 📦5.0.0 | Estándar FHIR |
| Observation.component.code | Base | extensible | LOINC Codes | 📦5.0.0 | Estándar FHIR |
| Id | Nivel | Ruta(s) | Descripción | Expression |
| cr-codigo-interno-value | error | Observation.identifier.value | Un código interno tiene de 1 a 64 caracteres, sin espacios. |
matches('^\\S{1,64}$')
|
| cr-observacion-cancelada | error | Observation | Una observación cancelada lleva el motivo sin valor not-performed. |
status = 'cancelled' implies dataAbsentReason.coding.where(system = 'http://terminology.hl7.org/CodeSystem/data-absent-reason' and code = 'not-performed').exists()
|
| cr-observacion-componente | error | Observation.component | Cada componente lleva un valor o un motivo sin valor. |
value.exists() or dataAbsentReason.exists()
|
| cr-observacion-componente-ucum | error | Observation.component | Una cantidad de un componente lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| cr-observacion-emision | error | Observation | Un resultado final, modificado o corregido indica cuándo se emitió (issued). |
status in ('final' | 'amended' | 'corrected') implies issued.exists()
|
| cr-observacion-fecha-emision | error | Observation | La fecha de la observación no es posterior a la fecha de emisión. |
issued.empty() or ((effective.ofType(dateTime).empty() or effective.ofType(dateTime) <= issued) and (effective.ofType(Period).start.empty() or effective.ofType(Period).start <= issued))
|
| cr-observacion-fecha-hora | error | Observation.effective[x] | La fecha de la observación lleva fecha y hora, no solo la fecha. |
ofType(dateTime).all(toString().contains('T')) and ofType(Period).all((start.empty() or start.toString().contains('T')) and (end.empty() or end.toString().contains('T')))
|
| cr-observacion-rango-ucum | error | Observation.referenceRange | Los límites del rango de referencia llevan su unidad en UCUM (system http://unitsofmeasure.org y code). |
(low | high).all(system = 'http://unitsofmeasure.org' and code.exists())
|
| cr-observacion-resultado | error | Observation | Un resultado final, modificado o corregido lleva un valor, un motivo sin valor o componentes. |
status in ('final' | 'amended' | 'corrected') implies (value.exists() or dataAbsentReason.exists() or component.exists())
|
| cr-observacion-sensibilidad | error | Observation | Una observación con una sensibilidad tiene confidencialidad R o V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode').exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code in ('R' | 'V')).exists()
|
| cr-observacion-sensibilidad-v | error | Observation | Una observación con notas de psicoterapia (PSYTHPN) o sobre violencia sexual o doméstica (SDV) tiene confidencialidad V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode' and code in ('PSYTHPN' | 'SDV')).exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code = 'V').exists()
|
| cr-observacion-system | error | Observation.identifier | El system del identificador es https://hl7.or.cr/fhir/sid/observacion/ seguido del código del establecimiento (cj-, cn- o dimex- y el identificador del titular). |
system.matches('^https://hl7\\.or\\.cr/fhir/sid/observacion/(cj-[1-9][0-9]{9}|cn-[1-9][0-9]{8}|dimex-[1-9][0-9]{10,11})$')
|
| cr-observacion-ucum | error | Observation | Una cantidad lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| Nombre | Marcas | Card. | Tipo | Descripción y restricciones Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Observation | Observación: resultado de una medición, un examen o una evaluación Constraints: obs-6, obs-7, obs-8, cr-observacion-emision, cr-observacion-resultado, cr-observacion-ucum, cr-observacion-fecha-emision, cr-observacion-cancelada, cr-observacion-sensibilidad, cr-observacion-sensibilidad-v | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
SΣ | 1..1 | Meta | Metadatos: las etiquetas de seguridad | ||||
![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Version specific identifier | ||||
![]() ![]() ![]() |
Σ | 0..1 | instant | When the resource version last changed | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | Identifies where the resource comes from | ||||
![]() ![]() ![]() |
Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
![]() ![]() ![]() |
Σ | 1..* | Coding | Confidencialidad y sensibilidad de la observación Slice: Sin orden, Abierto by value:system Vinculación: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | N | R | V Vinculación: Confidencialidad (required) | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-Confidentiality | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | PSY | PSYTHPN | HIV | STD | SDV | SEX | SUD | GDIS Vinculación: Sensibilidad de la información (required) | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-ActCode | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Tags applied to this resource Vinculación: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones". | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Vinculación: AllLanguages (required): IETF language tag for a human language
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣC | 1..1 | Identifier | Identificador de la observación, el mismo en todas sus versiones Constraints: cr-observacion-system | ||||
![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | official (valor fijo) Vinculación: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Vinculación: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
![]() ![]() ![]() |
SΣ | 1..1 | uri | https://hl7.or.cr/fhir/sid/observacion/{código del establecimiento} Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() |
SΣC | 1..1 | string | Número de la observación en el sistema del establecimiento Constraints: cr-codigo-interno-value Example General: 123456 Max Length:64 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
Σ | 0..1 | canonical(ObservationDefinition), Reference(ObservationDefinition) | Instantiates FHIR ObservationDefinition | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
![]() ![]() |
0..* | BackboneElement | Triggering observation(s) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(Observation) | Triggering observation | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | reflex | repeat | re-run Vinculación: TriggeredBytype (required): The type of TriggeredBy Observation. | ||||
![]() ![]() ![]() |
0..1 | string | Reason that the observation was triggered | |||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy) | Part of referenced event | ||||
![]() ![]() |
?!SΣ | 1..1 | code | Estado: preliminary | final | amended | corrected | cancelled | entered-in-error Vinculación: Estado de la observación (required) | ||||
![]() ![]() |
S | 1..* | CodeableConcept | Categoría: imaging (laboratory y vital-signs se admiten) Vinculación: Categoría de la observación (extensible) | ||||
![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó (LOINC cuando hay un código) Vinculación: LOINCCodes (extensible) | ||||
![]() ![]() |
SΣ | 1..1 | Reference(Paciente) | Paciente observado | ||||
![]() ![]() |
Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
![]() ![]() |
SΣ | 0..1 | Reference(Atención) | Atención en la que se hizo la observación | ||||
![]() ![]() |
SΣC | 1..1 | Cuándo se hizo la observación (fecha clínicamente relevante) Constraints: cr-observacion-fecha-hora | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
SΣ | 0..1 | instant | Cuándo se emitió el resultado (obligatoria en un resultado final) | ||||
![]() ![]() |
SΣ | 1..* | Reference(Rol del profesional | Profesional de salud | Organización) | Quién hizo la observación: el profesional en su rol, o la organización | ||||
![]() ![]() |
SΣC | 0..1 | Resultado: una cantidad (con unidad UCUM), un código, un texto... | |||||
![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Attachment | |||||||
![]() ![]() ![]() |
Reference(MolecularSequence) | |||||||
![]() ![]() |
SC | 0..1 | CodeableConcept | Por qué no hay valor (not-performed si se canceló) Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() |
S | 0..* | CodeableConcept | Interpretación: normal, alto, bajo... (con el texto en español) Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | ||||
![]() ![]() |
0..* | Annotation | Comments about the observation | |||||
![]() ![]() |
C | 0..1 | CodeableConcept | Observed body part Vinculación: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts | ||||
![]() ![]() |
C | 0..1 | Reference(BodyStructure) | Observed body structure | ||||
![]() ![]() |
0..1 | CodeableConcept | How it was done Vinculación: ObservationMethods (example): Methods for simple observations. | |||||
![]() ![]() |
C | 0..1 | Reference(Specimen | Group) | Specimen used for this observation Constraints: obs-9 | ||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | A reference to the device that generates the measurements or the device settings for the device | |||||
![]() ![]() |
SC | 0..* | BackboneElement | Rango de referencia que aplica al paciente Constraints: obs-3, cr-observacion-rango-ucum | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite inferior (UCUM) | ||||
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite superior (UCUM) | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Normal value, if relevant Vinculación: ObservationReferenceRangeNormalValueCodes (extensible): Codes identifying the normal value of the observation. | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Reference range qualifier Vinculación: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | Reference range population Vinculación: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||
![]() ![]() ![]() |
0..1 | Range | Applicable age range, if relevant | |||||
![]() ![]() ![]() |
SC | 0..1 | markdown | Rango en texto | ||||
![]() ![]() |
Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | ||||
![]() ![]() |
Σ | 0..* | Reference(DocumentReference | ImagingStudy | ImagingSelection | QuestionnaireResponse | Observation | MolecularSequence | GenomicStudy) | Related resource from which the observation is made | ||||
![]() ![]() |
SΣC | 0..* | BackboneElement | Partes medidas en el mismo acto (presión sistólica y diastólica) Constraints: cr-observacion-componente, cr-observacion-componente-ucum | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó en esta parte (LOINC) Vinculación: LOINCCodes (extensible) | ||||
![]() ![]() ![]() |
SΣ | 0..1 | Resultado de esta parte | |||||
![]() ![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() ![]() |
Attachment | |||||||
![]() ![]() ![]() ![]() |
Reference(MolecularSequence) | |||||||
![]() ![]() ![]() |
S | 0..1 | CodeableConcept | Por qué esta parte no tiene valor Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() ![]() |
S | 0..* | CodeableConcept | Interpretación de esta parte Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | ||||
![]() ![]() ![]() |
0..* | Vea referenceRange (Observation) | Provides guide for interpretation of component result | |||||
Documentación de este formato | ||||||||
| Id | Nivel | Ruta(s) | Descripción | Expression |
| cr-codigo-interno-value | error | Observation.identifier.value | Un código interno tiene de 1 a 64 caracteres, sin espacios. |
matches('^\\S{1,64}$')
|
| cr-observacion-cancelada | error | Observation | Una observación cancelada lleva el motivo sin valor not-performed. |
status = 'cancelled' implies dataAbsentReason.coding.where(system = 'http://terminology.hl7.org/CodeSystem/data-absent-reason' and code = 'not-performed').exists()
|
| cr-observacion-componente | error | Observation.component | Cada componente lleva un valor o un motivo sin valor. |
value.exists() or dataAbsentReason.exists()
|
| cr-observacion-componente-ucum | error | Observation.component | Una cantidad de un componente lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| cr-observacion-emision | error | Observation | Un resultado final, modificado o corregido indica cuándo se emitió (issued). |
status in ('final' | 'amended' | 'corrected') implies issued.exists()
|
| cr-observacion-fecha-emision | error | Observation | La fecha de la observación no es posterior a la fecha de emisión. |
issued.empty() or ((effective.ofType(dateTime).empty() or effective.ofType(dateTime) <= issued) and (effective.ofType(Period).start.empty() or effective.ofType(Period).start <= issued))
|
| cr-observacion-fecha-hora | error | Observation.effective[x] | La fecha de la observación lleva fecha y hora, no solo la fecha. |
ofType(dateTime).all(toString().contains('T')) and ofType(Period).all((start.empty() or start.toString().contains('T')) and (end.empty() or end.toString().contains('T')))
|
| cr-observacion-rango-ucum | error | Observation.referenceRange | Los límites del rango de referencia llevan su unidad en UCUM (system http://unitsofmeasure.org y code). |
(low | high).all(system = 'http://unitsofmeasure.org' and code.exists())
|
| cr-observacion-resultado | error | Observation | Un resultado final, modificado o corregido lleva un valor, un motivo sin valor o componentes. |
status in ('final' | 'amended' | 'corrected') implies (value.exists() or dataAbsentReason.exists() or component.exists())
|
| cr-observacion-sensibilidad | error | Observation | Una observación con una sensibilidad tiene confidencialidad R o V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode').exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code in ('R' | 'V')).exists()
|
| cr-observacion-sensibilidad-v | error | Observation | Una observación con notas de psicoterapia (PSYTHPN) o sobre violencia sexual o doméstica (SDV) tiene confidencialidad V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode' and code in ('PSYTHPN' | 'SDV')).exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code = 'V').exists()
|
| cr-observacion-system | error | Observation.identifier | El system del identificador es https://hl7.or.cr/fhir/sid/observacion/ seguido del código del establecimiento (cj-, cn- o dimex- y el identificador del titular). |
system.matches('^https://hl7\\.or\\.cr/fhir/sid/observacion/(cj-[1-9][0-9]{9}|cn-[1-9][0-9]{8}|dimex-[1-9][0-9]{10,11})$')
|
| cr-observacion-ucum | error | Observation | Una cantidad lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | Observation | 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 | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **TODOS** los elementos | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **TODAS** las extensiones | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| obs-8 | error | Observation | bodyStructure SHALL only be present if Observation.bodySite is not present |
bodySite.exists() implies bodyStructure.empty()
|
| obs-9 | error | Observation.specimen | If Observation.specimen is a reference to Group, the group can only have specimens |
(reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen)
|
Esta estructura se deriva de Observation .
Resumen
Obligatorios: 11 elementos(1 nested mandatory elemento)
Must-Support: 26 elementos
Estructuras
Esta estructura hace referencia a estas otras estructuras:
Slices
This structure defines the following Slices:
Vista de elementos clave
| Nombre | Marcas | Card. | Tipo | Descripción y restricciones Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Observation | Observación: resultado de una medición, un examen o una evaluación Constraints: obs-6, obs-7, obs-8, cr-observacion-emision, cr-observacion-resultado, cr-observacion-ucum, cr-observacion-fecha-emision, cr-observacion-cancelada, cr-observacion-sensibilidad, cr-observacion-sensibilidad-v |
![]() ![]() |
SΣ | 1..1 | Meta | Metadatos: las etiquetas de seguridad |
![]() ![]() ![]() |
Σ | 1..* | Coding | Confidencialidad y sensibilidad de la observación Slice: Sin orden, Abierto by value:system Vinculación: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. |
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | N | R | V Vinculación: Confidencialidad (required) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-Confidentiality |
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | PSY | PSYTHPN | HIV | STD | SDV | SEX | SUD | GDIS Vinculación: Sensibilidad de la información (required) |
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-ActCode |
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created |
![]() ![]() |
0..* | Resource | Contained, inline Resources | |
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored |
![]() ![]() |
SΣC | 1..1 | Identifier | Identificador de la observación, el mismo en todas sus versiones Constraints: cr-observacion-system |
![]() ![]() ![]() |
?!Σ | 0..1 | code | official (valor fijo) Vinculación: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official |
![]() ![]() ![]() |
SΣ | 1..1 | uri | https://hl7.or.cr/fhir/sid/observacion/{código del establecimiento} Example General: http://www.acme.com/identifiers/patient |
![]() ![]() ![]() |
SΣC | 1..1 | string | Número de la observación en el sistema del establecimiento Constraints: cr-codigo-interno-value Example General: 123456 Max Length:64 |
![]() ![]() |
?!SΣ | 1..1 | code | Estado: preliminary | final | amended | corrected | cancelled | entered-in-error Vinculación: Estado de la observación (required) |
![]() ![]() |
S | 1..* | CodeableConcept | Categoría: imaging (laboratory y vital-signs se admiten) Vinculación: Categoría de la observación (extensible) |
![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó (LOINC cuando hay un código) Vinculación: LOINCCodes (extensible) |
![]() ![]() |
SΣ | 1..1 | Reference(Paciente) | Paciente observado |
![]() ![]() |
SΣ | 0..1 | Reference(Atención) | Atención en la que se hizo la observación |
![]() ![]() |
SΣC | 1..1 | Cuándo se hizo la observación (fecha clínicamente relevante) Constraints: cr-observacion-fecha-hora | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
SΣ | 0..1 | instant | Cuándo se emitió el resultado (obligatoria en un resultado final) |
![]() ![]() |
SΣ | 1..* | Reference(Rol del profesional | Profesional de salud | Organización) | Quién hizo la observación: el profesional en su rol, o la organización |
![]() ![]() |
SΣC | 0..1 | Resultado: una cantidad (con unidad UCUM), un código, un texto... | |
![]() ![]() ![]() |
Quantity | |||
![]() ![]() ![]() |
CodeableConcept | |||
![]() ![]() ![]() |
string | |||
![]() ![]() ![]() |
boolean | |||
![]() ![]() ![]() |
integer | |||
![]() ![]() ![]() |
Range | |||
![]() ![]() ![]() |
Ratio | |||
![]() ![]() ![]() |
SampledData | |||
![]() ![]() ![]() |
time | |||
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() |
Attachment | |||
![]() ![]() ![]() |
Reference(MolecularSequence) | |||
![]() ![]() |
SC | 0..1 | CodeableConcept | Por qué no hay valor (not-performed si se canceló) Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() |
S | 0..* | CodeableConcept | Interpretación: normal, alto, bajo... (con el texto en español) Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. |
![]() ![]() |
SC | 0..* | BackboneElement | Rango de referencia que aplica al paciente Constraints: obs-3, cr-observacion-rango-ucum |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite inferior (UCUM) |
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite superior (UCUM) |
![]() ![]() ![]() |
SC | 0..1 | markdown | Rango en texto |
![]() ![]() |
SΣC | 0..* | BackboneElement | Partes medidas en el mismo acto (presión sistólica y diastólica) Constraints: cr-observacion-componente, cr-observacion-componente-ucum |
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized |
![]() ![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó en esta parte (LOINC) Vinculación: LOINCCodes (extensible) |
![]() ![]() ![]() |
SΣ | 0..1 | Resultado de esta parte | |
![]() ![]() ![]() ![]() |
Quantity | |||
![]() ![]() ![]() ![]() |
CodeableConcept | |||
![]() ![]() ![]() ![]() |
string | |||
![]() ![]() ![]() ![]() |
boolean | |||
![]() ![]() ![]() ![]() |
integer | |||
![]() ![]() ![]() ![]() |
Range | |||
![]() ![]() ![]() ![]() |
Ratio | |||
![]() ![]() ![]() ![]() |
SampledData | |||
![]() ![]() ![]() ![]() |
time | |||
![]() ![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() ![]() |
Period | |||
![]() ![]() ![]() ![]() |
Attachment | |||
![]() ![]() ![]() ![]() |
Reference(MolecularSequence) | |||
![]() ![]() ![]() |
S | 0..1 | CodeableConcept | Por qué esta parte no tiene valor Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. |
![]() ![]() ![]() |
S | 0..* | CodeableConcept | Interpretación de esta parte Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. |
Documentación de este formato | ||||
| Id | Nivel | Ruta(s) | Descripción | Expression |
| cr-codigo-interno-value | error | Observation.identifier.value | Un código interno tiene de 1 a 64 caracteres, sin espacios. |
matches('^\\S{1,64}$')
|
| cr-observacion-cancelada | error | Observation | Una observación cancelada lleva el motivo sin valor not-performed. |
status = 'cancelled' implies dataAbsentReason.coding.where(system = 'http://terminology.hl7.org/CodeSystem/data-absent-reason' and code = 'not-performed').exists()
|
| cr-observacion-componente | error | Observation.component | Cada componente lleva un valor o un motivo sin valor. |
value.exists() or dataAbsentReason.exists()
|
| cr-observacion-componente-ucum | error | Observation.component | Una cantidad de un componente lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| cr-observacion-emision | error | Observation | Un resultado final, modificado o corregido indica cuándo se emitió (issued). |
status in ('final' | 'amended' | 'corrected') implies issued.exists()
|
| cr-observacion-fecha-emision | error | Observation | La fecha de la observación no es posterior a la fecha de emisión. |
issued.empty() or ((effective.ofType(dateTime).empty() or effective.ofType(dateTime) <= issued) and (effective.ofType(Period).start.empty() or effective.ofType(Period).start <= issued))
|
| cr-observacion-fecha-hora | error | Observation.effective[x] | La fecha de la observación lleva fecha y hora, no solo la fecha. |
ofType(dateTime).all(toString().contains('T')) and ofType(Period).all((start.empty() or start.toString().contains('T')) and (end.empty() or end.toString().contains('T')))
|
| cr-observacion-rango-ucum | error | Observation.referenceRange | Los límites del rango de referencia llevan su unidad en UCUM (system http://unitsofmeasure.org y code). |
(low | high).all(system = 'http://unitsofmeasure.org' and code.exists())
|
| cr-observacion-resultado | error | Observation | Un resultado final, modificado o corregido lleva un valor, un motivo sin valor o componentes. |
status in ('final' | 'amended' | 'corrected') implies (value.exists() or dataAbsentReason.exists() or component.exists())
|
| cr-observacion-sensibilidad | error | Observation | Una observación con una sensibilidad tiene confidencialidad R o V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode').exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code in ('R' | 'V')).exists()
|
| cr-observacion-sensibilidad-v | error | Observation | Una observación con notas de psicoterapia (PSYTHPN) o sobre violencia sexual o doméstica (SDV) tiene confidencialidad V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode' and code in ('PSYTHPN' | 'SDV')).exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code = 'V').exists()
|
| cr-observacion-system | error | Observation.identifier | El system del identificador es https://hl7.or.cr/fhir/sid/observacion/ seguido del código del establecimiento (cj-, cn- o dimex- y el identificador del titular). |
system.matches('^https://hl7\\.or\\.cr/fhir/sid/observacion/(cj-[1-9][0-9]{9}|cn-[1-9][0-9]{8}|dimex-[1-9][0-9]{10,11})$')
|
| cr-observacion-ucum | error | Observation | Una cantidad lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | Observation | 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 | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **TODOS** los elementos | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **TODAS** las extensiones | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| obs-8 | error | Observation | bodyStructure SHALL only be present if Observation.bodySite is not present |
bodySite.exists() implies bodyStructure.empty()
|
Vista diferencial
Esta estructura se deriva de Observation .
| Nombre | Marcas | Card. | Tipo | Descripción y restricciones Filter: ![]() ![]() |
|---|---|---|---|---|
![]() |
C | 0..* | Observation | Observación: resultado de una medición, un examen o una evaluación Constraints: cr-observacion-emision, cr-observacion-resultado, cr-observacion-ucum, cr-observacion-fecha-emision, cr-observacion-cancelada, cr-observacion-sensibilidad, cr-observacion-sensibilidad-v |
![]() ![]() |
S | 1..1 | Meta | Metadatos: las etiquetas de seguridad |
![]() ![]() ![]() |
1..* | Coding | Confidencialidad y sensibilidad de la observación Slice: Sin orden, Abierto by value:system | |
![]() ![]() ![]() ![]() |
S | 1..1 | Coding | N | R | V Vinculación: Confidencialidad (required) |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-Confidentiality | |
![]() ![]() ![]() ![]() |
S | 0..* | Coding | PSY | PSYTHPN | HIV | STD | SDV | SEX | SUD | GDIS Vinculación: Sensibilidad de la información (required) |
![]() ![]() ![]() ![]() ![]() |
1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-ActCode | |
![]() ![]() |
SC | 1..1 | Identifier | Identificador de la observación, el mismo en todas sus versiones Constraints: cr-observacion-system |
![]() ![]() ![]() |
0..1 | code | official (valor fijo) Required Pattern: official | |
![]() ![]() ![]() |
S | 1..1 | uri | https://hl7.or.cr/fhir/sid/observacion/{código del establecimiento} |
![]() ![]() ![]() |
SC | 1..1 | string | Número de la observación en el sistema del establecimiento Constraints: cr-codigo-interno-value Max Length:64 |
![]() ![]() |
S | 1..1 | code | Estado: preliminary | final | amended | corrected | cancelled | entered-in-error Vinculación: Estado de la observación (required) |
![]() ![]() |
S | 1..* | CodeableConcept | Categoría: imaging (laboratory y vital-signs se admiten) Vinculación: Categoría de la observación (extensible) |
![]() ![]() |
S | 1..1 | CodeableConcept | Qué se observó (LOINC cuando hay un código) Vinculación: LOINCCodes (extensible) |
![]() ![]() |
S | 1..1 | Reference(Paciente) | Paciente observado |
![]() ![]() |
S | 0..1 | Reference(Atención) | Atención en la que se hizo la observación |
![]() ![]() |
SC | 1..1 | Cuándo se hizo la observación (fecha clínicamente relevante) Constraints: cr-observacion-fecha-hora | |
![]() ![]() ![]() |
dateTime | |||
![]() ![]() ![]() |
Period | |||
![]() ![]() |
S | 0..1 | instant | Cuándo se emitió el resultado (obligatoria en un resultado final) |
![]() ![]() |
S | 1..* | Reference(Rol del profesional | Profesional de salud | Organización) | Quién hizo la observación: el profesional en su rol, o la organización |
![]() ![]() |
S | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Resultado: una cantidad (con unidad UCUM), un código, un texto... |
![]() ![]() |
S | 0..1 | CodeableConcept | Por qué no hay valor (not-performed si se canceló) |
![]() ![]() |
S | 0..* | CodeableConcept | Interpretación: normal, alto, bajo... (con el texto en español) |
![]() ![]() |
SC | 0..* | BackboneElement | Rango de referencia que aplica al paciente Constraints: cr-observacion-rango-ucum |
![]() ![]() ![]() |
S | 0..1 | SimpleQuantity(5.0.0) | Límite inferior (UCUM) |
![]() ![]() ![]() |
S | 0..1 | SimpleQuantity(5.0.0) | Límite superior (UCUM) |
![]() ![]() ![]() |
S | 0..1 | markdown | Rango en texto |
![]() ![]() |
SC | 0..* | BackboneElement | Partes medidas en el mismo acto (presión sistólica y diastólica) Constraints: cr-observacion-componente, cr-observacion-componente-ucum |
![]() ![]() ![]() |
S | 1..1 | CodeableConcept | Qué se observó en esta parte (LOINC) Vinculación: LOINCCodes (extensible) |
![]() ![]() ![]() |
S | 0..1 | Quantity, CodeableConcept, string, boolean, integer, Range, Ratio, SampledData, time, dateTime, Period, Attachment, Reference(MolecularSequence) | Resultado de esta parte |
![]() ![]() ![]() |
S | 0..1 | CodeableConcept | Por qué esta parte no tiene valor |
![]() ![]() ![]() |
S | 0..* | CodeableConcept | Interpretación de esta parte |
Documentación de este formato | ||||
| Ruta | Estado | Uso | ValueSet | Versión | Fuente |
| Observation.meta.security:confidencialidad | Base | required | Confidencialidad | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.meta.security:sensibilidad | Base | required | Sensibilidad de la información | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.status | Base | required | Estado de la observación | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.category | Base | extensible | Categoría de la observación | 📦0.1.0 | Guía de Implementación de Terminología de Costa Rica vnull |
| Observation.code | Base | extensible | LOINC Codes | 📦5.0.0 | Estándar FHIR |
| Observation.component.code | Base | extensible | LOINC Codes | 📦5.0.0 | Estándar FHIR |
| Id | Nivel | Ruta(s) | Descripción | Expression |
| cr-codigo-interno-value | error | Observation.identifier.value | Un código interno tiene de 1 a 64 caracteres, sin espacios. |
matches('^\\S{1,64}$')
|
| cr-observacion-cancelada | error | Observation | Una observación cancelada lleva el motivo sin valor not-performed. |
status = 'cancelled' implies dataAbsentReason.coding.where(system = 'http://terminology.hl7.org/CodeSystem/data-absent-reason' and code = 'not-performed').exists()
|
| cr-observacion-componente | error | Observation.component | Cada componente lleva un valor o un motivo sin valor. |
value.exists() or dataAbsentReason.exists()
|
| cr-observacion-componente-ucum | error | Observation.component | Una cantidad de un componente lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| cr-observacion-emision | error | Observation | Un resultado final, modificado o corregido indica cuándo se emitió (issued). |
status in ('final' | 'amended' | 'corrected') implies issued.exists()
|
| cr-observacion-fecha-emision | error | Observation | La fecha de la observación no es posterior a la fecha de emisión. |
issued.empty() or ((effective.ofType(dateTime).empty() or effective.ofType(dateTime) <= issued) and (effective.ofType(Period).start.empty() or effective.ofType(Period).start <= issued))
|
| cr-observacion-fecha-hora | error | Observation.effective[x] | La fecha de la observación lleva fecha y hora, no solo la fecha. |
ofType(dateTime).all(toString().contains('T')) and ofType(Period).all((start.empty() or start.toString().contains('T')) and (end.empty() or end.toString().contains('T')))
|
| cr-observacion-rango-ucum | error | Observation.referenceRange | Los límites del rango de referencia llevan su unidad en UCUM (system http://unitsofmeasure.org y code). |
(low | high).all(system = 'http://unitsofmeasure.org' and code.exists())
|
| cr-observacion-resultado | error | Observation | Un resultado final, modificado o corregido lleva un valor, un motivo sin valor o componentes. |
status in ('final' | 'amended' | 'corrected') implies (value.exists() or dataAbsentReason.exists() or component.exists())
|
| cr-observacion-sensibilidad | error | Observation | Una observación con una sensibilidad tiene confidencialidad R o V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode').exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code in ('R' | 'V')).exists()
|
| cr-observacion-sensibilidad-v | error | Observation | Una observación con notas de psicoterapia (PSYTHPN) o sobre violencia sexual o doméstica (SDV) tiene confidencialidad V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode' and code in ('PSYTHPN' | 'SDV')).exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code = 'V').exists()
|
| cr-observacion-system | error | Observation.identifier | El system del identificador es https://hl7.or.cr/fhir/sid/observacion/ seguido del código del establecimiento (cj-, cn- o dimex- y el identificador del titular). |
system.matches('^https://hl7\\.or\\.cr/fhir/sid/observacion/(cj-[1-9][0-9]{9}|cn-[1-9][0-9]{8}|dimex-[1-9][0-9]{10,11})$')
|
| cr-observacion-ucum | error | Observation | Una cantidad lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
Vista instantáneaView
| Nombre | Marcas | Card. | Tipo | Descripción y restricciones Filter: ![]() ![]() | ||||
|---|---|---|---|---|---|---|---|---|
![]() |
C | 0..* | Observation | Observación: resultado de una medición, un examen o una evaluación Constraints: obs-6, obs-7, obs-8, cr-observacion-emision, cr-observacion-resultado, cr-observacion-ucum, cr-observacion-fecha-emision, cr-observacion-cancelada, cr-observacion-sensibilidad, cr-observacion-sensibilidad-v | ||||
![]() ![]() |
Σ | 0..1 | id | Logical id of this artifact | ||||
![]() ![]() |
SΣ | 1..1 | Meta | Metadatos: las etiquetas de seguridad | ||||
![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() |
Σ | 0..1 | id | Version specific identifier | ||||
![]() ![]() ![]() |
Σ | 0..1 | instant | When the resource version last changed | ||||
![]() ![]() ![]() |
Σ | 0..1 | uri | Identifies where the resource comes from | ||||
![]() ![]() ![]() |
Σ | 0..* | canonical(StructureDefinition) | Profiles this resource claims to conform to | ||||
![]() ![]() ![]() |
Σ | 1..* | Coding | Confidencialidad y sensibilidad de la observación Slice: Sin orden, Abierto by value:system Vinculación: AllSecurityLabels (extensible): Security Labels from the Healthcare Privacy and Security Classification System. | ||||
![]() ![]() ![]() ![]() |
SΣ | 1..1 | Coding | N | R | V Vinculación: Confidencialidad (required) | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-Confidentiality | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() ![]() |
SΣ | 0..* | Coding | PSY | PSYTHPN | HIV | STD | SDV | SEX | SUD | GDIS Vinculación: Sensibilidad de la información (required) | ||||
![]() ![]() ![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() ![]() ![]() |
Σ | 1..1 | uri | Sistema de códigos del slice (valor fijo) Required Pattern: http://terminology.hl7.org/CodeSystem/v3-ActCode | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | string | Version of the system - if relevant | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | code | Symbol in syntax defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
ΣC | 0..1 | string | Representation defined by the system | ||||
![]() ![]() ![]() ![]() ![]() |
Σ | 0..1 | boolean | If this coding was chosen directly by the user | ||||
![]() ![]() ![]() |
Σ | 0..* | Coding | Tags applied to this resource Vinculación: CommonTags (example): Codes that represent various types of tags, commonly workflow-related; e.g. "Needs review by Dr. Jones". | ||||
![]() ![]() |
?!Σ | 0..1 | uri | A set of rules under which this content was created | ||||
![]() ![]() |
0..1 | code | Language of the resource content Vinculación: AllLanguages (required): IETF language tag for a human language
| |||||
![]() ![]() |
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 | |||||
![]() ![]() |
0..* | Resource | Contained, inline Resources | |||||
![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored | ||||
![]() ![]() |
SΣC | 1..1 | Identifier | Identificador de la observación, el mismo en todas sus versiones Constraints: cr-observacion-system | ||||
![]() ![]() ![]() |
0..1 | id | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations Slice: Sin orden, Abierto by value:url | |||||
![]() ![]() ![]() |
?!Σ | 0..1 | code | official (valor fijo) Vinculación: IdentifierUse (required): Identifies the purpose for this identifier, if known . Required Pattern: official | ||||
![]() ![]() ![]() |
Σ | 0..1 | CodeableConcept | Description of identifier Vinculación: IdentifierTypeCodes (extensible): A coded type for an identifier that can be used to determine which identifier to use for a specific purpose. | ||||
![]() ![]() ![]() |
SΣ | 1..1 | uri | https://hl7.or.cr/fhir/sid/observacion/{código del establecimiento} Example General: http://www.acme.com/identifiers/patient | ||||
![]() ![]() ![]() |
SΣC | 1..1 | string | Número de la observación en el sistema del establecimiento Constraints: cr-codigo-interno-value Example General: 123456 Max Length:64 | ||||
![]() ![]() ![]() |
Σ | 0..1 | Period | Time period when id is/was valid for use | ||||
![]() ![]() ![]() |
Σ | 0..1 | Reference(Organization) | Organization that issued id (may be just text) | ||||
![]() ![]() |
Σ | 0..1 | canonical(ObservationDefinition), Reference(ObservationDefinition) | Instantiates FHIR ObservationDefinition | ||||
![]() ![]() |
Σ | 0..* | Reference(CarePlan | DeviceRequest | ImmunizationRecommendation | MedicationRequest | NutritionOrder | ServiceRequest) | Fulfills plan, proposal or order | ||||
![]() ![]() |
0..* | BackboneElement | Triggering observation(s) | |||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
Σ | 1..1 | Reference(Observation) | Triggering observation | ||||
![]() ![]() ![]() |
Σ | 1..1 | code | reflex | repeat | re-run Vinculación: TriggeredBytype (required): The type of TriggeredBy Observation. | ||||
![]() ![]() ![]() |
0..1 | string | Reason that the observation was triggered | |||||
![]() ![]() |
Σ | 0..* | Reference(MedicationAdministration | MedicationDispense | MedicationStatement | Procedure | Immunization | ImagingStudy | GenomicStudy) | Part of referenced event | ||||
![]() ![]() |
?!SΣ | 1..1 | code | Estado: preliminary | final | amended | corrected | cancelled | entered-in-error Vinculación: Estado de la observación (required) | ||||
![]() ![]() |
S | 1..* | CodeableConcept | Categoría: imaging (laboratory y vital-signs se admiten) Vinculación: Categoría de la observación (extensible) | ||||
![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó (LOINC cuando hay un código) Vinculación: LOINCCodes (extensible) | ||||
![]() ![]() |
SΣ | 1..1 | Reference(Paciente) | Paciente observado | ||||
![]() ![]() |
Σ | 0..* | Reference(Resource) | What the observation is about, when it is not about the subject of record | ||||
![]() ![]() |
SΣ | 0..1 | Reference(Atención) | Atención en la que se hizo la observación | ||||
![]() ![]() |
SΣC | 1..1 | Cuándo se hizo la observación (fecha clínicamente relevante) Constraints: cr-observacion-fecha-hora | |||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() |
SΣ | 0..1 | instant | Cuándo se emitió el resultado (obligatoria en un resultado final) | ||||
![]() ![]() |
SΣ | 1..* | Reference(Rol del profesional | Profesional de salud | Organización) | Quién hizo la observación: el profesional en su rol, o la organización | ||||
![]() ![]() |
SΣC | 0..1 | Resultado: una cantidad (con unidad UCUM), un código, un texto... | |||||
![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() |
Attachment | |||||||
![]() ![]() ![]() |
Reference(MolecularSequence) | |||||||
![]() ![]() |
SC | 0..1 | CodeableConcept | Por qué no hay valor (not-performed si se canceló) Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() |
S | 0..* | CodeableConcept | Interpretación: normal, alto, bajo... (con el texto en español) Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | ||||
![]() ![]() |
0..* | Annotation | Comments about the observation | |||||
![]() ![]() |
C | 0..1 | CodeableConcept | Observed body part Vinculación: SNOMEDCTBodyStructures (example): SNOMED CT Body site concepts | ||||
![]() ![]() |
C | 0..1 | Reference(BodyStructure) | Observed body structure | ||||
![]() ![]() |
0..1 | CodeableConcept | How it was done Vinculación: ObservationMethods (example): Methods for simple observations. | |||||
![]() ![]() |
C | 0..1 | Reference(Specimen | Group) | Specimen used for this observation Constraints: obs-9 | ||||
![]() ![]() |
0..1 | Reference(Device | DeviceMetric) | A reference to the device that generates the measurements or the device settings for the device | |||||
![]() ![]() |
SC | 0..* | BackboneElement | Rango de referencia que aplica al paciente Constraints: obs-3, cr-observacion-rango-ucum | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite inferior (UCUM) | ||||
![]() ![]() ![]() |
SC | 0..1 | SimpleQuantity(5.0.0) | Límite superior (UCUM) | ||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Normal value, if relevant Vinculación: ObservationReferenceRangeNormalValueCodes (extensible): Codes identifying the normal value of the observation. | |||||
![]() ![]() ![]() |
0..1 | CodeableConcept | Reference range qualifier Vinculación: ObservationReferenceRangeMeaningCodes (preferred): Code for the meaning of a reference range. | |||||
![]() ![]() ![]() |
0..* | CodeableConcept | Reference range population Vinculación: ObservationReferenceRangeAppliesToCodes (example): Codes identifying the population the reference range applies to. | |||||
![]() ![]() ![]() |
0..1 | Range | Applicable age range, if relevant | |||||
![]() ![]() ![]() |
SC | 0..1 | markdown | Rango en texto | ||||
![]() ![]() |
Σ | 0..* | Reference(Observation | QuestionnaireResponse | MolecularSequence) | Related resource that belongs to the Observation group | ||||
![]() ![]() |
Σ | 0..* | Reference(DocumentReference | ImagingStudy | ImagingSelection | QuestionnaireResponse | Observation | MolecularSequence | GenomicStudy) | Related resource from which the observation is made | ||||
![]() ![]() |
SΣC | 0..* | BackboneElement | Partes medidas en el mismo acto (presión sistólica y diastólica) Constraints: cr-observacion-componente, cr-observacion-componente-ucum | ||||
![]() ![]() ![]() |
0..1 | string | Unique id for inter-element referencing | |||||
![]() ![]() ![]() |
0..* | Extension | Additional content defined by implementations | |||||
![]() ![]() ![]() |
?!Σ | 0..* | Extension | Extensions that cannot be ignored even if unrecognized | ||||
![]() ![]() ![]() |
SΣC | 1..1 | CodeableConcept | Qué se observó en esta parte (LOINC) Vinculación: LOINCCodes (extensible) | ||||
![]() ![]() ![]() |
SΣ | 0..1 | Resultado de esta parte | |||||
![]() ![]() ![]() ![]() |
Quantity | |||||||
![]() ![]() ![]() ![]() |
CodeableConcept | |||||||
![]() ![]() ![]() ![]() |
string | |||||||
![]() ![]() ![]() ![]() |
boolean | |||||||
![]() ![]() ![]() ![]() |
integer | |||||||
![]() ![]() ![]() ![]() |
Range | |||||||
![]() ![]() ![]() ![]() |
Ratio | |||||||
![]() ![]() ![]() ![]() |
SampledData | |||||||
![]() ![]() ![]() ![]() |
time | |||||||
![]() ![]() ![]() ![]() |
dateTime | |||||||
![]() ![]() ![]() ![]() |
Period | |||||||
![]() ![]() ![]() ![]() |
Attachment | |||||||
![]() ![]() ![]() ![]() |
Reference(MolecularSequence) | |||||||
![]() ![]() ![]() |
S | 0..1 | CodeableConcept | Por qué esta parte no tiene valor Vinculación: DataAbsentReason (extensible): Codes specifying why the result (Observation.value[x]) is missing. | ||||
![]() ![]() ![]() |
S | 0..* | CodeableConcept | Interpretación de esta parte Vinculación: ObservationInterpretationCodes (extensible): Codes identifying interpretations of observations. | ||||
![]() ![]() ![]() |
0..* | Vea referenceRange (Observation) | Provides guide for interpretation of component result | |||||
Documentación de este formato | ||||||||
| Id | Nivel | Ruta(s) | Descripción | Expression |
| cr-codigo-interno-value | error | Observation.identifier.value | Un código interno tiene de 1 a 64 caracteres, sin espacios. |
matches('^\\S{1,64}$')
|
| cr-observacion-cancelada | error | Observation | Una observación cancelada lleva el motivo sin valor not-performed. |
status = 'cancelled' implies dataAbsentReason.coding.where(system = 'http://terminology.hl7.org/CodeSystem/data-absent-reason' and code = 'not-performed').exists()
|
| cr-observacion-componente | error | Observation.component | Cada componente lleva un valor o un motivo sin valor. |
value.exists() or dataAbsentReason.exists()
|
| cr-observacion-componente-ucum | error | Observation.component | Una cantidad de un componente lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| cr-observacion-emision | error | Observation | Un resultado final, modificado o corregido indica cuándo se emitió (issued). |
status in ('final' | 'amended' | 'corrected') implies issued.exists()
|
| cr-observacion-fecha-emision | error | Observation | La fecha de la observación no es posterior a la fecha de emisión. |
issued.empty() or ((effective.ofType(dateTime).empty() or effective.ofType(dateTime) <= issued) and (effective.ofType(Period).start.empty() or effective.ofType(Period).start <= issued))
|
| cr-observacion-fecha-hora | error | Observation.effective[x] | La fecha de la observación lleva fecha y hora, no solo la fecha. |
ofType(dateTime).all(toString().contains('T')) and ofType(Period).all((start.empty() or start.toString().contains('T')) and (end.empty() or end.toString().contains('T')))
|
| cr-observacion-rango-ucum | error | Observation.referenceRange | Los límites del rango de referencia llevan su unidad en UCUM (system http://unitsofmeasure.org y code). |
(low | high).all(system = 'http://unitsofmeasure.org' and code.exists())
|
| cr-observacion-resultado | error | Observation | Un resultado final, modificado o corregido lleva un valor, un motivo sin valor o componentes. |
status in ('final' | 'amended' | 'corrected') implies (value.exists() or dataAbsentReason.exists() or component.exists())
|
| cr-observacion-sensibilidad | error | Observation | Una observación con una sensibilidad tiene confidencialidad R o V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode').exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code in ('R' | 'V')).exists()
|
| cr-observacion-sensibilidad-v | error | Observation | Una observación con notas de psicoterapia (PSYTHPN) o sobre violencia sexual o doméstica (SDV) tiene confidencialidad V. |
meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-ActCode' and code in ('PSYTHPN' | 'SDV')).exists() implies meta.security.where(system = 'http://terminology.hl7.org/CodeSystem/v3-Confidentiality' and code = 'V').exists()
|
| cr-observacion-system | error | Observation.identifier | El system del identificador es https://hl7.or.cr/fhir/sid/observacion/ seguido del código del establecimiento (cj-, cn- o dimex- y el identificador del titular). |
system.matches('^https://hl7\\.or\\.cr/fhir/sid/observacion/(cj-[1-9][0-9]{9}|cn-[1-9][0-9]{8}|dimex-[1-9][0-9]{10,11})$')
|
| cr-observacion-ucum | error | Observation | Una cantidad lleva su unidad en UCUM (system http://unitsofmeasure.org y code). |
value.ofType(Quantity).exists() implies (value.ofType(Quantity).system = 'http://unitsofmeasure.org' and value.ofType(Quantity).code.exists())
|
| dom-2 | error | Observation | If the resource is contained in another resource, it SHALL NOT contain nested Resources |
contained.contained.empty()
|
| dom-3 | error | Observation | 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 | Observation | 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 | Observation | If a resource is contained in another resource, it SHALL NOT have a security label |
contained.meta.security.empty()
|
| dom-6 | best practice | Observation | A resource should have narrative for robust management |
text.`div`.exists()
|
| ele-1 | error | **TODOS** los elementos | All FHIR elements must have a @value or children |
hasValue() or (children().count() > id.count())
|
| ext-1 | error | **TODAS** las extensiones | Must have either extensions or value[x], not both |
extension.exists() != value.exists()
|
| obs-3 | error | Observation.referenceRange | Must have at least a low or a high or text |
low.exists() or high.exists() or text.exists()
|
| obs-6 | error | Observation | dataAbsentReason SHALL only be present if Observation.value[x] is not present |
dataAbsentReason.empty() or value.empty()
|
| obs-7 | error | Observation | If Observation.component.code is the same as Observation.code, then Observation.value SHALL NOT be present (the Observation.component.value[x] holds the value). |
value.empty() or component.code.where(coding.intersect(%resource.code.coding).exists()).empty()
|
| obs-8 | error | Observation | bodyStructure SHALL only be present if Observation.bodySite is not present |
bodySite.exists() implies bodyStructure.empty()
|
| obs-9 | error | Observation.specimen | If Observation.specimen is a reference to Group, the group can only have specimens |
(reference.resolve().exists() and reference.resolve() is Group) implies reference.resolve().member.entity.resolve().all($this is Specimen)
|
Esta estructura se deriva de Observation .
Resumen
Obligatorios: 11 elementos(1 nested mandatory elemento)
Must-Support: 26 elementos
Estructuras
Esta estructura hace referencia a estas otras estructuras:
Slices
This structure defines the following Slices:
Otras representaciones de perfil: CSV, Excel, Schematron
Viaja de dos formas: dentro de un documento clínico, que no necesita nada más, o suelta, enviada directamente al HIE en un Bundle de tipo transaction con su procedencia firmada. El servicio del HIE que recibe las observaciones sueltas todavía no está definido en esta versión.
Ver también Servicios del HIE.