Guía de Implementación de Homologación Regional (PH4H) de Costa Rica
0.1.0 - ci-build
Guía de Implementación de Homologación Regional (PH4H) de Costa Rica - Versión en desarrollo (v0.1.0): borrador de trabajo de la Iniciativa HL7® Costa Rica, que puede cambiar sin aviso.
| Estado de las normas de la página: Draft |
<StructureMap xmlns="http://hl7.org/fhir">
<id value="CRPractitionerToIPS"/>
<language value="es"/>
<text>
<status value="generated"/>
<div xmlns="http://www.w3.org/1999/xhtml"><p class="res-header-id"><b>Narrativa generada: MapaDeEstructura CRPractitionerToIPS</b></p><a name="CRPractitionerToIPS"> </a><a name="hcCRPractitionerToIPS"> </a><pre class="fml">
<b>map</b><span style="color: navy"> "</span>https://hl7.or.cr/fhir/ph4h/StructureMap/CRPractitionerToIPS<span style="color: navy">" = "</span>CRPractitionerToIPS<span style="color: navy">"
</span><b>uses</b><span style="color: navy"> "</span>http://hl7.org/fhir/5.0/StructureDefinition/Practitioner<span style="color: navy">" </span><b>alias </b>Practitioner <b>as </b><b>source</b>
<b>uses</b><span style="color: navy"> "</span>http://hl7.org/fhir/4.0/StructureDefinition/Practitioner<span style="color: navy">" </span><b>alias </b>PractitionerR4 <b>as </b><b>target</b>
<b>imports</b><span style="color: navy"> "</span><a href="StructureMap-CRComun.html" title="CRComun">https://hl7.or.cr/fhir/ph4h/StructureMap/CRComun</a><span style="color: navy">"
</span>
<b>group </b>CRPractitionerToIPS<span style="color: navy">(</span><b>source</b> <span style="color: maroon">src</span><span style="color: navy"> : </span>Practitioner, <b>target</b> <span style="color: maroon">tgt</span><span style="color: navy"> : </span>PractitionerR4<span style="color: navy">)</span><span style="color: navy"> {
</span> src.id<b> as </b><span style="color: maroon">v</span><span style="color: navy"><b> -> </b></span>tgt.id = <span style="color: maroon">v</span><span style="color: navy">;</span>
src<span style="color: navy"><b> -> </b></span>tgt.meta<b> as </b><span style="color: maroon">m</span><b> then</b><span style="color: navy"> {
</span> src<span style="color: navy"><b> -> </b></span>m.profile = <span style="color: blue">'http://hl7.org/fhir/uv/ips/StructureDefinition/Practitioner-uv-ips'</span> <i>"perfil"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"meta"</i><span style="color: navy">;</span>
src.identifier<b> as </b><span style="color: maroon">id</span><b> where </b><span style="color: navy">(</span>use = 'official'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>tgt.identifier<b> as </b><span style="color: maroon">ti</span><b> then</b><span style="color: navy"> {
</span> id<b> then </b>Identificador<span style="color: navy">(</span><span style="color: maroon">id</span><span style="color: navy">, </span><span style="color: maroon">ti</span><span style="color: navy">)</span> <i>"datos"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system.startsWith('https://hl7.or.cr/fhir/sid/colegiado/')<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>ti.assigner<b> as </b><span style="color: maroon">a</span><b> then </b>Colegio<span style="color: navy">(</span><span style="color: maroon">id</span><span style="color: navy">, </span><span style="color: maroon">a</span><span style="color: navy">)</span> <i>"colegio"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"identificador"</i><span style="color: navy">;</span>
src.active<b> as </b><span style="color: maroon">v</span><span style="color: navy"><b> -> </b></span>tgt.active = <span style="color: maroon">v</span> <i>"activo"</i><span style="color: navy">;</span>
src.name<b> as </b><span style="color: maroon">n</span><span style="color: navy"><b> -> </b></span>tgt.name<b> as </b><span style="color: maroon">tn</span><b> then </b>Nombre<span style="color: navy">(</span><span style="color: maroon">n</span><span style="color: navy">, </span><span style="color: maroon">tn</span><span style="color: navy">)</span> <i>"nombre"</i><span style="color: navy">;</span>
src.telecom<b> as </b><span style="color: maroon">t</span><span style="color: navy"><b> -> </b></span>tgt.telecom<b> as </b><span style="color: maroon">tt</span><b> then </b>Telecom<span style="color: navy">(</span><span style="color: maroon">t</span><span style="color: navy">, </span><span style="color: maroon">tt</span><span style="color: navy">)</span><span style="color: navy">;</span>
src.address<b> as </b><span style="color: maroon">a</span><span style="color: navy"><b> -> </b></span>tgt.address<b> as </b><span style="color: maroon">ta</span><b> then </b>Direccion<span style="color: navy">(</span><span style="color: maroon">a</span><span style="color: navy">, </span><span style="color: maroon">ta</span><span style="color: navy">)</span> <i>"direccion"</i><span style="color: navy">;</span>
src.gender<b> as </b><span style="color: maroon">v</span><span style="color: navy"><b> -> </b></span>tgt.gender = <span style="color: maroon">v</span> <i>"sexo"</i><span style="color: navy">;</span>
src.birthDate<b> as </b><span style="color: maroon">v</span><span style="color: navy"><b> -> </b></span>tgt.birthDate = <span style="color: maroon">v</span> <i>"nacimiento"</i><span style="color: navy">;</span>
src.qualification<b> as </b><span style="color: maroon">q</span><span style="color: navy"><b> -> </b></span>tgt.qualification<b> as </b><span style="color: maroon">tq</span><b> then</b><span style="color: navy"> {
</span> q.identifier<b> as </b><span style="color: maroon">id</span><span style="color: navy"><b> -> </b></span>tq.identifier<b> as </b><span style="color: maroon">ti</span><b> then </b>Identificador<span style="color: navy">(</span><span style="color: maroon">id</span><span style="color: navy">, </span><span style="color: maroon">ti</span><span style="color: navy">)</span> <i>"numero"</i><span style="color: navy">;</span>
q.code<b> as </b><span style="color: maroon">c</span><span style="color: navy"><b> -> </b></span>tq.code<b> as </b><span style="color: maroon">tc</span><b> then </b>Concepto<span style="color: navy">(</span><span style="color: maroon">c</span><span style="color: navy">, </span><span style="color: maroon">tc</span><span style="color: navy">)</span> <i>"codigo"</i><span style="color: navy">;</span>
q.period<b> as </b><span style="color: maroon">p</span><span style="color: navy"><b> -> </b></span>tq.period<b> as </b><span style="color: maroon">tp</span><b> then </b>Periodo<span style="color: navy">(</span><span style="color: maroon">p</span><span style="color: navy">, </span><span style="color: maroon">tp</span><span style="color: navy">)</span> <i>"vigencia"</i><span style="color: navy">;</span>
q.issuer<b> as </b><span style="color: maroon">i</span><span style="color: navy"><b> -> </b></span>tq.issuer<b> as </b><span style="color: maroon">ti</span><b> then </b>Referencia<span style="color: navy">(</span><span style="color: maroon">i</span><span style="color: navy">, </span><span style="color: maroon">ti</span><span style="color: navy">)</span> <i>"emisor"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"colegiaturaEspecialidad"</i><span style="color: navy">;</span>
src.communication<b> as </b><span style="color: maroon">c</span><b> then</b><span style="color: navy"> {
</span> c.language<b> as </b><span style="color: maroon">l</span><span style="color: navy"><b> -> </b></span>tgt.communication<b> as </b><span style="color: maroon">tc</span><b> then </b>Concepto<span style="color: navy">(</span><span style="color: maroon">l</span><span style="color: navy">, </span><span style="color: maroon">tc</span><span style="color: navy">)</span> <i>"codigo"</i><span style="color: navy">;</span>
<span style="color: navy">}</span> <i>"idioma"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span><span style="color: navy">// </span><span style="color: green">Nombre del colegio según el sufijo del system del código de colegiado (cr-colegio-profesional).</span>
<b>group </b>Colegio<span style="color: navy">(</span><b>source</b> <span style="color: maroon">id</span><span style="color: navy"> : </span>Identifier, <b>target</b> <span style="color: maroon">a</span><span style="color: navy"> : </span>Reference<span style="color: navy">)</span><span style="color: navy"> {
</span> id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/cmc'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Médicos y Cirujanos de Costa Rica'</span> <i>"cmc"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/ccd'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Cirujanos Dentistas de Costa Rica'</span> <i>"ccd"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/cfc'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Farmacéuticos de Costa Rica'</span> <i>"cfc"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/cmqc'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Microbiólogos y Químicos Clínicos de Costa Rica'</span> <i>"cmqc"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/cecr'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Enfermeras de Costa Rica'</span> <i>"cecr"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/cpp'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Profesionales en Psicología de Costa Rica'</span> <i>"cpp"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/cpn'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Profesionales en Nutrición de Costa Rica'</span> <i>"cpn"</i><span style="color: navy">;</span>
id<b> where </b><span style="color: navy">(</span>system = 'https://hl7.or.cr/fhir/sid/colegiado/ctcr'<span style="color: navy">)</span><span style="color: navy"><b> -> </b></span>a.display = <span style="color: blue">'Colegio de Terapeutas de Costa Rica'</span> <i>"ctcr"</i><span style="color: navy">;</span>
<span style="color: navy">}
</span></pre></div>
</text>
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-standards-status">
<valueCode value="draft">
<extension
url="http://hl7.org/fhir/StructureDefinition/structuredefinition-conformance-derivedFrom">
<valueCanonical
value="https://hl7.or.cr/fhir/ph4h/ImplementationGuide/hl7.fhir.cr.ph4h"/>
</extension>
</valueCode>
</extension>
<url value="https://hl7.or.cr/fhir/ph4h/StructureMap/CRPractitionerToIPS"/>
<version value="0.1.0"/>
<name value="CRPractitionerToIPS"/>
<status value="draft"/>
<date value="2026-10-06T00:22:41-06:00"/>
<publisher value="Iniciativa HL7 Costa Rica"/>
<contact>
<name value="Iniciativa HL7 Costa Rica"/>
<telecom>
<system value="url"/>
<value value="https://hl7.or.cr"/>
</telecom>
</contact>
<jurisdiction>
<coding>
<system value="urn:iso:std:iso:3166"/>
<code value="CR"/>
<display value="Costa Rica"/>
</coding>
</jurisdiction>
<structure>
<url value="http://hl7.org/fhir/5.0/StructureDefinition/Practitioner"/>
<mode value="source"/>
<alias value="Practitioner"/>
</structure>
<structure>
<url value="http://hl7.org/fhir/4.0/StructureDefinition/Practitioner"/>
<mode value="target"/>
<alias value="PractitionerR4"/>
</structure>
<import value="https://hl7.or.cr/fhir/ph4h/StructureMap/CRComun"/>
<group>
<name value="CRPractitionerToIPS"/>
<typeMode value="none"/>
<input>
<name value="src"/>
<type value="Practitioner"/>
<mode value="source"/>
</input>
<input>
<name value="tgt"/>
<type value="PractitionerR4"/>
<mode value="target"/>
</input>
<rule>
<name value="id"/>
<source>
<context value="src"/>
<element value="id"/>
<variable value="v"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="id"/>
<transform value="copy"/>
<parameter>
<valueId value="v"/>
</parameter>
</target>
</rule>
<rule>
<name value="meta"/>
<source>
<context value="src"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="meta"/>
<variable value="m"/>
</target>
<rule>
<name value="perfil"/>
<source>
<context value="src"/>
</source>
<target>
<context value="m"/>
<contextType value="variable"/>
<element value="profile"/>
<transform value="copy"/>
<parameter>
<valueString
value="http://hl7.org/fhir/uv/ips/StructureDefinition/Practitioner-uv-ips"/>
</parameter>
</target>
</rule>
</rule>
<rule>
<name value="identificador"/>
<source>
<context value="src"/>
<element value="identifier"/>
<variable value="id"/>
<condition value="use = 'official'"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="identifier"/>
<variable value="ti"/>
</target>
<rule>
<name value="datos"/>
<source>
<context value="id"/>
</source>
<dependent>
<name value="Identificador"/>
<variable value="id"/>
<variable value="ti"/>
</dependent>
</rule>
<rule>
<name value="colegio"/>
<source>
<context value="id"/>
<condition
value="system.startsWith('https://hl7.or.cr/fhir/sid/colegiado/')"/>
</source>
<target>
<context value="ti"/>
<contextType value="variable"/>
<element value="assigner"/>
<variable value="a"/>
</target>
<dependent>
<name value="Colegio"/>
<variable value="id"/>
<variable value="a"/>
</dependent>
</rule>
</rule>
<rule>
<name value="activo"/>
<source>
<context value="src"/>
<element value="active"/>
<variable value="v"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="active"/>
<transform value="copy"/>
<parameter>
<valueId value="v"/>
</parameter>
</target>
</rule>
<rule>
<name value="nombre"/>
<source>
<context value="src"/>
<element value="name"/>
<variable value="n"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="name"/>
<variable value="tn"/>
</target>
<dependent>
<name value="Nombre"/>
<variable value="n"/>
<variable value="tn"/>
</dependent>
</rule>
<rule>
<name value="telecom"/>
<source>
<context value="src"/>
<element value="telecom"/>
<variable value="t"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="telecom"/>
<variable value="tt"/>
</target>
<dependent>
<name value="Telecom"/>
<variable value="t"/>
<variable value="tt"/>
</dependent>
</rule>
<rule>
<name value="direccion"/>
<source>
<context value="src"/>
<element value="address"/>
<variable value="a"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="address"/>
<variable value="ta"/>
</target>
<dependent>
<name value="Direccion"/>
<variable value="a"/>
<variable value="ta"/>
</dependent>
</rule>
<rule>
<name value="sexo"/>
<source>
<context value="src"/>
<element value="gender"/>
<variable value="v"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="gender"/>
<transform value="copy"/>
<parameter>
<valueId value="v"/>
</parameter>
</target>
</rule>
<rule>
<name value="nacimiento"/>
<source>
<context value="src"/>
<element value="birthDate"/>
<variable value="v"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="birthDate"/>
<transform value="copy"/>
<parameter>
<valueId value="v"/>
</parameter>
</target>
</rule>
<rule>
<name value="colegiaturaEspecialidad"/>
<source>
<context value="src"/>
<element value="qualification"/>
<variable value="q"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="qualification"/>
<variable value="tq"/>
</target>
<rule>
<name value="numero"/>
<source>
<context value="q"/>
<element value="identifier"/>
<variable value="id"/>
</source>
<target>
<context value="tq"/>
<contextType value="variable"/>
<element value="identifier"/>
<variable value="ti"/>
</target>
<dependent>
<name value="Identificador"/>
<variable value="id"/>
<variable value="ti"/>
</dependent>
</rule>
<rule>
<name value="codigo"/>
<source>
<context value="q"/>
<element value="code"/>
<variable value="c"/>
</source>
<target>
<context value="tq"/>
<contextType value="variable"/>
<element value="code"/>
<variable value="tc"/>
</target>
<dependent>
<name value="Concepto"/>
<variable value="c"/>
<variable value="tc"/>
</dependent>
</rule>
<rule>
<name value="vigencia"/>
<source>
<context value="q"/>
<element value="period"/>
<variable value="p"/>
</source>
<target>
<context value="tq"/>
<contextType value="variable"/>
<element value="period"/>
<variable value="tp"/>
</target>
<dependent>
<name value="Periodo"/>
<variable value="p"/>
<variable value="tp"/>
</dependent>
</rule>
<rule>
<name value="emisor"/>
<source>
<context value="q"/>
<element value="issuer"/>
<variable value="i"/>
</source>
<target>
<context value="tq"/>
<contextType value="variable"/>
<element value="issuer"/>
<variable value="ti"/>
</target>
<dependent>
<name value="Referencia"/>
<variable value="i"/>
<variable value="ti"/>
</dependent>
</rule>
</rule>
<rule>
<name value="idioma"/>
<source>
<context value="src"/>
<element value="communication"/>
<variable value="c"/>
</source>
<rule>
<name value="codigo"/>
<source>
<context value="c"/>
<element value="language"/>
<variable value="l"/>
</source>
<target>
<context value="tgt"/>
<contextType value="variable"/>
<element value="communication"/>
<variable value="tc"/>
</target>
<dependent>
<name value="Concepto"/>
<variable value="l"/>
<variable value="tc"/>
</dependent>
</rule>
</rule>
</group>
<group>
<name value="Colegio"/>
<typeMode value="none"/>
<documentation
value="Nombre del colegio según el sufijo del system del código de colegiado (cr-colegio-profesional)."/>
<input>
<name value="id"/>
<type value="Identifier"/>
<mode value="source"/>
</input>
<input>
<name value="a"/>
<type value="Reference"/>
<mode value="target"/>
</input>
<rule>
<name value="cmc"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/cmc'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Colegio de Médicos y Cirujanos de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="ccd"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/ccd'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Colegio de Cirujanos Dentistas de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="cfc"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/cfc'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Colegio de Farmacéuticos de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="cmqc"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/cmqc'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString
value="Colegio de Microbiólogos y Químicos Clínicos de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="cecr"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/cecr'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Colegio de Enfermeras de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="cpp"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/cpp'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString
value="Colegio de Profesionales en Psicología de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="cpn"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/cpn'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString
value="Colegio de Profesionales en Nutrición de Costa Rica"/>
</parameter>
</target>
</rule>
<rule>
<name value="ctcr"/>
<source>
<context value="id"/>
<condition
value="system = 'https://hl7.or.cr/fhir/sid/colegiado/ctcr'"/>
</source>
<target>
<context value="a"/>
<contextType value="variable"/>
<element value="display"/>
<transform value="copy"/>
<parameter>
<valueString value="Colegio de Terapeutas de Costa Rica"/>
</parameter>
</target>
</rule>
</group>
</StructureMap>