Skip to content

Instantly share code, notes, and snippets.

@litlfred
Created June 9, 2014 13:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save litlfred/726382f7980d9da32208 to your computer and use it in GitHub Desktop.
Save litlfred/726382f7980d9da32208 to your computer and use it in GitHub Desktop.
With the provider_search query in the CSD standard (with the new Change Proposals applied) we can perform validation
of a provider against a facility and service as:
<csd:careServicesRequest xmlns:csd='urn:ihe:iti:csd:2013' xmlns='urn:ihe:iti:csd:2013'>
<function uuid='4e8bbeb9-f5f5-11e2-b778-0800200c9a66'>
<requestParams>
<id oid='2.25.309768652999692686176651983274504471835.646.1.615351552068889518564164611046405512878087'/>
<facilities>
<facility oid='2.25.309768652999692686176651983274504471835.646.2.12312321321'>
<service oisd='2.25.309768652999692686176651983274504471835.646.3.9129312312'/>
</facility>
</facilities>
</requestParams>
</function>
</csd:careServicesRequest>
The response will look something like:
<CSD>
<serviceDirectory/>
<organizationDirectory/>
<facilityDirectory/>
<providerDirectory>
<provider oid=''2.25.309768652999692686176651983274504471835.646.1.615351552068889518564164611046405512878087'>
<!-- POTENTIALLY LARGE AMOUNT OF CONTENT ON THE PROVIDER -->
</provider>
<providerDirectory>
</CSD>
on success. On failure, it would look like:
<CSD>
<serviceDirectory/>
<organizationDirectory/>
<facilityDirectory/>
<providerDirectory/>
</CSD>
Success Condition: encounter it is valid if and only if count(/CSD/providerDirectory/provider) == 1
Issues:
-want to support more complex validation
-don't need all the content
Proposal: in general, we allow the jurisdiction to use any stored query as a validation
as long as it accepts the same parameters and returns a similar format. Here XXXX could be any other stored
query that meets these conditions.
<csd:careServicesRequest xmlns:csd='urn:ihe:iti:csd:2013' xmlns='urn:ihe:iti:csd:2013'>
<function uuid='XXXXXX'>
<requestParams>
<id oid='2.25.309768652999692686176651983274504471835.646.1.615351552068889518564164611046405512878087'/>
<facilities>
<facility oid='2.25.309768652999692686176651983274504471835.646.2.12312321321'>
<service oisd='2.25.309768652999692686176651983274504471835.646.3.9129312312'/>
</facility>
</facilities>
</requestParams>
</function>
</csd:careServicesRequest>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment