Skip to content

Commit

Permalink
update coverage.type #177
Browse files Browse the repository at this point in the history
  • Loading branch information
ziegm committed Oct 15, 2024
1 parent d4766f6 commit e896cc6
Show file tree
Hide file tree
Showing 10 changed files with 21 additions and 66 deletions.
19 changes: 0 additions & 19 deletions input/ch.fhir.ig.ch-orf.xml
Original file line number Diff line number Diff line change
Expand Up @@ -216,18 +216,7 @@
<exampleBoolean value="false"/>
</resource>





<!-- ValueSets-->
<resource>
<reference>
<reference value="ValueSet/ch-orf-vs-coveragetype"/>
</reference>
<name value="Coverage Type"/>
<exampleBoolean value="false"/>
</resource>
<resource>
<reference>
<reference value="ValueSet/ch-orf-vs-coverageidentifiertype"/>
Expand Down Expand Up @@ -281,15 +270,7 @@
<exampleBoolean value="false"/>
</resource>


<!-- CodeSystems -->
<resource>
<reference>
<reference value="CodeSystem/ch-orf-cs-coveragetype"/>
</reference>
<name value="Coverage Type"/>
<exampleBoolean value="false"/>
</resource>
<resource>
<reference>
<reference value="CodeSystem/ch-orf-cs-coverageidentifiertype"/>
Expand Down
4 changes: 2 additions & 2 deletions input/examples/bundle/bundle-order-referral-form.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3496,8 +3496,8 @@
<status value="active"/>
<type>
<coding>
<system value="http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype"/>
<code value="KVG"/>
<system value="http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor"/>
<code value="1"/>
</coding>
</type>
<beneficiary>
Expand Down
6 changes: 3 additions & 3 deletions input/examples/coverage/CoverageMusterfrau.xml
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@
<status value="active" />
<type>
<coding>
<system value="http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype" />
<code value="KVG"/>
<display value="According to KVG"/>
<system value="http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor" />
<code value="1"/>
<display value="Krankenversicherung (obligat.)"/>
</coding>
</type>
<beneficiary>
Expand Down
6 changes: 3 additions & 3 deletions input/examples/coverage/CoverageSelfPatient.xml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,9 @@
<status value="active" />
<type>
<coding>
<system value="http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype" />
<code value="Self"/>
<display value="Self-payer"/>
<system value="http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor" />
<code value="5"/>
<display value="Selbstzahler (z.B. Ausländer ohne Grundversicherung)"/>
</coding>
</type>
<beneficiary>
Expand Down
6 changes: 3 additions & 3 deletions input/examples/coverage/CoverageSelfRelatedPerson.xml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,9 @@
<status value="active" />
<type>
<coding>
<system value="http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype" />
<code value="Self"/>
<display value="Self-payer"/>
<system value="http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor" />
<code value="5"/>
<display value="Selbstzahler (z.B. Ausländer ohne Grundversicherung)"/>
</coding>
</type>
<beneficiary>
Expand Down
18 changes: 0 additions & 18 deletions input/fsh/CS.fsh
Original file line number Diff line number Diff line change
@@ -1,21 +1,3 @@
// Probably better in CH Core -> next release
// Platzhalter
CodeSystem: ChOrfCoverageType
Id: ch-orf-cs-coveragetype
Title: "Coverage Type"
Description: "Code System for CH ORF Coverage Type"
* ^caseSensitive = true
* ^experimental = false
* #KVG "According to KVG"
* #UVG "According to UVG"
* #VVG "According to VVG"
* #IVG "According to IVG"
* #MVG "According to MVG"
* #Self "Self-payer"
* #Other "Other"



CodeSystem: ChOrfConsentStatus
Id: ch-orf-cs-consentstatus
Title: "Consent Status"
Expand Down
2 changes: 1 addition & 1 deletion input/fsh/SD_Profiles.fsh
Original file line number Diff line number Diff line change
Expand Up @@ -336,7 +336,7 @@ This provides an organization or the individual, which will pay for services req
* identifier.value 1.. MS
* status MS
* type MS
* type from ChOrfCoverageType (required)
* type from http://fhir.ch/ig/ch-term/ValueSet/mainguarantor (required)
* beneficiary MS
* beneficiary only Reference(ChCorePatient)
* payor MS
Expand Down
9 changes: 0 additions & 9 deletions input/fsh/VS.fsh
Original file line number Diff line number Diff line change
@@ -1,12 +1,3 @@
// Probably better in CH Core -> next release
ValueSet: ChOrfCoverageType
Id: ch-orf-vs-coveragetype
Title: "Coverage Type"
Description: "Value Set for CH ORF Coverage Type"
* ^experimental = false
* include codes from system ChOrfCoverageType


ValueSet: ChOrfCoverageIdentifierType
Id: ch-orf-vs-coverageidentifiertype
Title: "Coverage Identifier Type"
Expand Down
1 change: 1 addition & 0 deletions input/pagecontent/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ See also open issues on [GitHub](https://github.com/hl7ch/ch-orf/issues).
* [#185](https://github.com/hl7ch/ch-orf/issues/185): Add dates to the published versions in the changelog
* [#182](https://github.com/hl7ch/ch-orf/issues/182): Translations optimized in the French use case
* [#179](https://github.com/hl7ch/ch-orf/issues/179): Unify spelling
* [#177](https://github.com/hl7ch/ch-orf/issues/177): Update to the CH Core Coverage (parent) -> usage of the revised CS/VS in CH Core for Coverage.type (remove the CH ORF own CS/VS)

#### Fixed

Expand Down
16 changes: 8 additions & 8 deletions input/resources/OrfQrToBundle.map
Original file line number Diff line number Diff line change
Expand Up @@ -580,7 +580,7 @@ group RequestedEncounterItems(source src, target bundle: Bundle, target patient:
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'KVG' then {
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '1' then {
item.item as item where (linkId.value = 'coverage.kvg.name' and answer.exists()) ->
coverage.payor as payor, payor.reference as refcontained, refcontained.value = '#org',
coverage.contained = create('Organization') as organization, organization.id = 'org', organization.name = (%item.answer.value) "coverageKvgName";
Expand All @@ -598,7 +598,7 @@ group RequestedEncounterItems(source src, target bundle: Bundle, target patient:
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'UVG' then {
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '4' then {
item.item as item where (linkId.value = 'coverage.uvg.name' and answer.exists()) ->
coverage.payor as payor, payor.reference as refcontained, refcontained.value = '#org',
coverage.contained = create('Organization') as organization, organization.id = 'org', organization.name = (%item.answer.value) "coverageUvgName";
Expand All @@ -616,7 +616,7 @@ group RequestedEncounterItems(source src, target bundle: Bundle, target patient:
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'VVG' then {
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/mainguarantor', coding.code = 'ZV' then {
item.item as item where (linkId.value = 'coverage.vvg.name' and answer.exists()) ->
coverage.payor as payor, payor.reference as refcontained, refcontained.value = '#org',
coverage.contained = create('Organization') as organization, organization.id = 'org', organization.name = (%item.answer.value) "coverageVvgName";
Expand All @@ -634,7 +634,7 @@ src.item as item where where (linkId.value = 'coverage.iv') -> bundle.entry as e
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'IVG' then {
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '2' then {
item.item as item where (linkId.value = 'coverage.iv.verfuegungsnummer' and answer.exists()) ->
coverage.identifier as identifier, identifier.type as typeid, typeid.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coverageidentifiertype', coding.code = 'IV',
identifier.value = (%item.answer.value),
Expand All @@ -651,7 +651,7 @@ src.item as item where where (linkId.value = 'coverage.mv') -> bundle.entry as e
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'MVG' then {
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '3' then {
item.item as item where (linkId.value = 'coverage.mv.versichertennummer' and answer.exists()) ->
coverage.identifier as identifier, identifier.type as typeid, typeid.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coverageidentifiertype', coding.code = 'MV',
identifier.value = (%item.answer.value),
Expand All @@ -672,7 +672,7 @@ src.item as item where where (linkId.value = 'coverage.mv') -> bundle.entry as e
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'Self',
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '5',
coverage.payor as subject, subject.reference = ('urn:uuid:'+%patient.id) "payor";

item.item as item2 where (linkId.value = 'coverage.self.patientRelatedPerson' and answer.exists() and answer.value) then {
Expand All @@ -684,7 +684,7 @@ src.item as item where where (linkId.value = 'coverage.mv') -> bundle.entry as e
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'Self',
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '5',
bundle.entry as e6,
e6.resource = create('RelatedPerson') as relatedPerson,
relatedPerson.id = uuid() as uuid6,
Expand All @@ -707,7 +707,7 @@ src.item as item where where (linkId.value = 'coverage.mv') -> bundle.entry as e
serviceRequest.insurance as insurance, insurance.reference = ('urn:uuid:'+%uuid4),
coverage.status = 'active',
coverage.beneficiary = create('Reference') as subject, subject.reference = ('urn:uuid:'+%patient.id),
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-orf/CodeSystem/ch-orf-cs-coveragetype', coding.code = 'Other' then {
coverage.type as type, type.coding as coding, coding.system = 'http://fhir.ch/ig/ch-core/CodeSystem/bfs-medstats-25-mainguarantor', coding.code = '8' then {
item.item as item where (linkId.value = 'coverage.other.name' and answer.exists()) ->
coverage.payor as payor, payor.reference as refcontained, refcontained.value = '#org',
coverage.contained = create('Organization') as organization, organization.id = 'org', organization.name = (%item.answer.value) "coverageOtherName";
Expand Down

0 comments on commit e896cc6

Please sign in to comment.