CTS2-LE REST API: Resolve Value Set: Unterschied zwischen den Versionen

Aus CTS2-LE
Zur Navigation springen Zur Suche springen
 
(14 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
== Operation Signature ==
+
This REST call fetches the full content of a defined value set or codesystem. In case a value set is requested, this call responds with the '''expanded''' content of the value set, which means that all code references are resolved from their underlying codesystems.
  
<h5><span style='font-family:"Segoe UI","sans-serif"'><span
+
This rest call is a variant of [[CTS2-LE REST API: Resolve Value Set MM|Resolve Value Set (multi-modal)]] with the minimal required parameter set <b>_query</b>=expandResource, <b>identifier</b>.
style='color:black;text-decoration:none'>Response</span> <span
 
style='color:black;text-decoration:none'>webCts2Le</span>.<span
 
style='color:black;text-decoration:none'>rest</span>.<span
 
style='color:black;text-decoration:none'>FhirValueSets</span>.resolveValueSet(</span><span
 
style='font-family:"Segoe UI","sans-serif";font-weight:normal'>@<span
 
style='color:black;text-decoration:none'>Context</span> </span><span
 
style='font-family:"Segoe UI","sans-serif"'><span
 
style='color:black;text-decoration:none'>HttpServletRequest</span> request,
 
</span><span style='font-family:"Segoe UI","sans-serif";
 
font-weight:normal'>@<span
 
style='color:black;text-decoration:none'>QueryParam</span>(<span
 
style='color:black;text-decoration:none'>value</span>=&quot;_query&quot;) </span><span
 
style='font-family:"Segoe UI","sans-serif"'><span
 
style='color:black;text-decoration:none'>String</span> query, </span><span
 
style='font-family:"Segoe UI","sans-serif";font-weight:normal'>@<span
 
style='color:black;text-decoration:none'>QueryParam</span>(<span
 
style='color:black;text-decoration:none'>value</span>=&quot;identifier&quot;)
 
</span><span style='font-family:"Segoe UI","sans-serif"'><span
 
style='color:black;text-decoration:none'>String</span> identifier, </span><span
 
style='font-family:"Segoe UI","sans-serif";font-weight:normal'>@<span
 
style='color:black;text-decoration:none'>QueryParam</span>(<span
 
style='color:black;text-decoration:none'>value</span>=&quot;codeSystemUri&quot;)
 
</span><span style='font-family:"Segoe UI","sans-serif"'><span
 
style='color:black;text-decoration:none'>String</span> codeSystemUri, </span><span
 
style='font-family:"Segoe UI","sans-serif";font-weight:normal'>@<span
 
style='color:black;text-decoration:none'>QueryParam</span>(<span
 
style='color:black;text-decoration:none'>value</span>=&quot;code&quot;) </span><span
 
style='font-family:"Segoe UI","sans-serif"'><span
 
style='color:black;text-decoration:none'>String</span> code, </span><span
 
style='font-family:"Segoe UI","sans-serif";font-weight:normal'>@<span
 
style='color:black;text-decoration:none'>QueryParam</span>(<span
 
style='color:black;text-decoration:none'>value</span>=&quot;stylesheet&quot;)
 
</span><span style='font-family:"Segoe UI","sans-serif"'><span
 
style='color:black;text-decoration:none'>String</span> stylesheet)</span></h5>
 
  
<p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
+
== Example ==
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>&nbsp;</span></p>
 
  
<p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><span
+
The main purpose of the method is to resolve value sets in order to allow for
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>@GET<br>
+
# display value set items to the user
@Produces(value={&quot;application/xml&quot;})</span></p>
+
# validation of code system/value set references of an electronic health record
  
<p><span style='font-family:"Segoe UI","sans-serif"'>Value set
+
In order to reference the value set properly, one has to use its identifier, e.g.
resolution. This REST function is a multi-modal function to retrieve value set
+
<code>http://hl7.org/fhir/vs/administrative-gender</code>
resolutions.</span></p>
 
  
<p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
+
This identifier has to be part of the http-call
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>Parameters:</span></b></p>
+
<pre>
 +
http://<host>/WebCts2LE/rest/fhir/ValueSet?_query=expandResource&identifier=http://hl7.org/fhir/vs/administrative-gender
 +
</pre>
 +
that will return the following value set expansion
  
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
+
<syntaxhighlight lang="xml">
margin-left:36.0pt;margin-bottom:.0001pt'><b><span style='
+
<atom:feed xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://hl7.org/fhir"
line-height:115%;font-family:"Segoe UI","sans-serif"'>request</span></b><span
+
  xmlns:at="http://purl.org/atompub/tombstones/1.0" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
+
  xmlns:os="http://a9.com/-/spec/opensearch/1.1/" xmlns:xhtml="http://www.w3.org/1999/xhtml"
HTTP request.</span></p>
+
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 +
  <atom:title>Value Set Expansion</atom:title>
 +
  <atom:id>urn:uuid:dc9f2f7e-6a1b-4389-9b88-7048787227c2</atom:id>
 +
  <atom:updated>2015-04-05T13:46:55</atom:updated>
 +
  <atom:entry>
 +
      <atom:title>Value Set Resolution</atom:title>
 +
      <atom:id>http://hl7.org/fhir/vs/administrative-gender</atom:id>
 +
      <atom:updated>2015-04-05T13:46:55</atom:updated>
 +
      <atom:content>
 +
        <ValueSet xmlns="http://hl7.org/fhir">
 +
            <name value="..." />
 +
            <description value="..." />
 +
            <status value="draft" />
 +
            <expansion>
 +
              <timestamp />
 +
              <contains xmlns="http://hl7.org/fhir">
 +
                  <system value="urn:oid:2.16.840.1.113883.5.1" />
 +
                  <code value="F" />
 +
                  <display value="Female" />
 +
              </contains>
 +
              <contains xmlns="http://hl7.org/fhir">
 +
                  <system value="urn:oid:2.16.840.1.113883.5.1" />
 +
                  <code value="M" />
 +
                  <display value="Male" />
 +
              </contains>
 +
              <contains xmlns="http://hl7.org/fhir">
 +
                  <system value="urn:oid:2.16.840.1.113883.5.1" />
 +
                  <code value="UN" />
 +
                  <display value="Undifferentiated" />
 +
              </contains>
 +
              <contains xmlns="http://hl7.org/fhir">
 +
                  <system value="urn:oid:2.16.840.1.113883.5.1008" />
 +
                  <code value="UNK" />
 +
                  <display value="unknown" />
 +
              </contains>
 +
            </expansion>
 +
        </ValueSet>
 +
      </atom:content>
 +
  </atom:entry>
 +
</atom:feed>
 +
</syntaxhighlight>
  
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
+
Appropriate XPATH expressions should select the code list. E.g., the XPATH expression
margin-left:36.0pt;margin-bottom:.0001pt'><b><span style='
+
<pre>
line-height:115%;font-family:"Segoe UI","sans-serif"'>query</span></b><span
+
/atom:feed/atom:entry/atom:content/ValueSet/expansion/contains
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
+
</pre>
Query refinement. </span><code><span style='font-size:10.0pt;line-height:115%'>_query</span></code><span
+
retrieves all (code, code system)-pairs with their display name.
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
 
must match </span><code><span style='font-size:10.0pt;line-height:115%'>'(expand|expandDefinedCodeSystem|expandResource)'</span></code><span
 
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>.</span></p>
 
 
 
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
 
margin-left:36.0pt;margin-bottom:.0001pt'><b><span style='
 
line-height:115%;font-family:"Segoe UI","sans-serif"'>identifier</span></b><span
 
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
 
Identifier of a resource.</span></p>
 
 
 
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
 
margin-left:36.0pt;margin-bottom:.0001pt'><b><span style='
 
line-height:115%;font-family:"Segoe UI","sans-serif"'>codeSystemUri</span></b><span
 
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
 
Code system URI.</span></p>
 
 
 
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
 
margin-left:36.0pt;margin-bottom:.0001pt'><b><span style='
 
line-height:115%;font-family:"Segoe UI","sans-serif"'>code</span></b><span
 
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
 
Code.</span></p>
 
 
 
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
 
margin-left:36.0pt;margin-bottom:.0001pt'><b><span style='
 
line-height:115%;font-family:"Segoe UI","sans-serif"'>stylesheet</span></b><span
 
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>
 
the stylesheet that will be referenced within the XML response.</span></p>
 
 
 
<p class=MsoNormal style='margin-bottom:0cm;margin-bottom:.0001pt'><b><span
 
style='line-height:115%;font-family:"Segoe UI","sans-serif"'>Returns:</span></b></p>
 
 
 
<p class=MsoNormal style='margin-top:0cm;margin-right:0cm;margin-bottom:0cm;
 
margin-left:36.0pt;margin-bottom:.0001pt'><span style='
 
line-height:115%;font-family:"Segoe UI","sans-serif"'>FHIR expansion according
 
to <a href="http://www.hl7.org/fhir/valueset.html">FHIR</a>, or an error XML</span></p>
 
 
 
== xx ==
 

Aktuelle Version vom 25. Oktober 2016, 19:37 Uhr

This REST call fetches the full content of a defined value set or codesystem. In case a value set is requested, this call responds with the expanded content of the value set, which means that all code references are resolved from their underlying codesystems.

This rest call is a variant of Resolve Value Set (multi-modal) with the minimal required parameter set _query=expandResource, identifier.

Example

The main purpose of the method is to resolve value sets in order to allow for

  1. display value set items to the user
  2. validation of code system/value set references of an electronic health record

In order to reference the value set properly, one has to use its identifier, e.g. http://hl7.org/fhir/vs/administrative-gender

This identifier has to be part of the http-call

http://<host>/WebCts2LE/rest/fhir/ValueSet?_query=expandResource&identifier=http://hl7.org/fhir/vs/administrative-gender

that will return the following value set expansion

<atom:feed xmlns:atom="http://www.w3.org/2005/Atom" xmlns="http://hl7.org/fhir"
   xmlns:at="http://purl.org/atompub/tombstones/1.0" xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
   xmlns:os="http://a9.com/-/spec/opensearch/1.1/" xmlns:xhtml="http://www.w3.org/1999/xhtml"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <atom:title>Value Set Expansion</atom:title>
   <atom:id>urn:uuid:dc9f2f7e-6a1b-4389-9b88-7048787227c2</atom:id>
   <atom:updated>2015-04-05T13:46:55</atom:updated>
   <atom:entry>
      <atom:title>Value Set Resolution</atom:title>
      <atom:id>http://hl7.org/fhir/vs/administrative-gender</atom:id>
      <atom:updated>2015-04-05T13:46:55</atom:updated>
      <atom:content>
         <ValueSet xmlns="http://hl7.org/fhir">
            <name value="..." />
            <description value="..." />
            <status value="draft" />
            <expansion>
               <timestamp />
               <contains xmlns="http://hl7.org/fhir">
                  <system value="urn:oid:2.16.840.1.113883.5.1" />
                  <code value="F" />
                  <display value="Female" />
               </contains>
               <contains xmlns="http://hl7.org/fhir">
                  <system value="urn:oid:2.16.840.1.113883.5.1" />
                  <code value="M" />
                  <display value="Male" />
               </contains>
               <contains xmlns="http://hl7.org/fhir">
                  <system value="urn:oid:2.16.840.1.113883.5.1" />
                  <code value="UN" />
                  <display value="Undifferentiated" />
               </contains>
               <contains xmlns="http://hl7.org/fhir">
                  <system value="urn:oid:2.16.840.1.113883.5.1008" />
                  <code value="UNK" />
                  <display value="unknown" />
               </contains>
            </expansion>
         </ValueSet>
      </atom:content>
   </atom:entry>
</atom:feed>

Appropriate XPATH expressions should select the code list. E.g., the XPATH expression

/atom:feed/atom:entry/atom:content/ValueSet/expansion/contains

retrieves all (code, code system)-pairs with their display name.