fhirbase / fhirbase-plv8

[DEPRECATED] Fhirbase 2.0 is an FHIR relational storage
https://health-samurai.io/fhirbase
Other
105 stars 39 forks source link

custom Subscriber searchparameter for resource Coverage fails :((( #147

Open algusen opened 8 years ago

algusen commented 8 years ago

We added a new custom searchparameter - subscriber:

INSERT INTO searchparameter(id,version_id, resource_type, resource, created_at, updated_at) VALUES ('Coverage-subscriber','Coverage-subscriber','SearchParameter' ,'{ "id": "Coverage-subscriber", "url": "http://hl7.org/fhir/SearchParameter/Coverage-subscriber", "base": "Coverage", "code": "subscriber", "date": "2016-05-11T13:22:00+00:00", "name": "subscriber", "type": "reference", "xpath": "f:Coverage/f:subscriber", "target": ["Patient"], "contact": [{ "telecom": [{ "value": "http://hl7.org/fhir", "system": "other" }] }, { "telecom": [{ "value": "http://www.hl7.org/Special/committees/fiwg/index.cfm", "system": "other" }] }], "publisher": "Health Level Seven International (FHIR Infrastructure)", "xpathUsage": "normal", "description": "subscriber", "resourceType": "SearchParameter" }'::jsonb

,CURRENT_TIMESTAMP,CURRENT_TIMESTAMP);

But

SELECT fhir_search('{"resourceType": "Coverage", "queryString": "subscriber=02255d1f-548c-4b04-9ac2-7c97d3efad1a"}');

or

SELECT fhir_index_parameter('{"resourceType": "Coverage", "name": "subscriber"}');

fail with the following error:

[Err] ERROR: Error: MetaIndex: Element [["Coverage","subscriber"]] -> Patient.subscriber not found DETAIL: plv8_init() LINE 3641: throw new Error("MetaIndex: Element [" + (JSON.stringify(path)) + "] -

What's wrong with the subscriber parameter??

niquola commented 8 years ago

Looks like there is no Coverage.subscriber element in fhirbase FHIR metadata. I think we should update it. Do you use STU3? To quick fix just update Coverage StructureDefinition with new one.

Semalexa commented 8 years ago

Coverage.subscriber was in FHIR v1.0.2. In FHIR v1.4.0 this field was removed, now there are Coverage.planholder[x] (planholderIdentifier, planholderReference) and beneficiary[x] (beneficiaryIdentifier, beneficiaryReference). So the search should be like [base]/fhir/Coverage?beneficiaryreference=Patient/<id>

agusenko commented 8 years ago

Which release of fhirbase to take for HL7+FHIR DSTU2 (v1.0.2-7202) standard?

We work with standard HL7+FHIR DSTU2 (v1.0.2-7202) (http://hl7.org/fhir/), so which release of fhirbase should I take for my new database to follow this standard? Just now I took simply the last one (v.1.4.0.0), is it correct?