BfArM Terminologies: Unterschied zwischen den Versionen

Aus CTS2-LE
Zur Navigation springen Zur Suche springen
Zeile 5: Zeile 5:
 
<h2 id="packages">Packages</h2>
 
<h2 id="packages">Packages</h2>
 
<p>The packages downloaded from bfarm must be located in directory <strong>LD</strong><code>/packages</code>. The following structure is an example for two packages (ICDGM, OPS) with the specification file <code>fhir-pack-icd.jsonc</code> (<strong>SF</strong>).</p>
 
<p>The packages downloaded from bfarm must be located in directory <strong>LD</strong><code>/packages</code>. The following structure is an example for two packages (ICDGM, OPS) with the specification file <code>fhir-pack-icd.jsonc</code> (<strong>SF</strong>).</p>
<pre><code>bfarm
+
<pre>
 +
bfarm
 
|_ packages
 
|_ packages
 
|  |_ bfarm.terminologien.icd10gm-2025.0.0.tar.gz
 
|  |_ bfarm.terminologien.icd10gm-2025.0.0.tar.gz
Zeile 14: Zeile 15:
 
|  |_ bfarm.terminologien.ops-2025.0.0.tar.gz
 
|  |_ bfarm.terminologien.ops-2025.0.0.tar.gz
 
|_ fhir-pack-icd.jsonc
 
|_ fhir-pack-icd.jsonc
</code></pre>
+
</pre>
 
<h2 id="specification-file-sf">Specification File (<strong>SF</strong>)</h2>
 
<h2 id="specification-file-sf">Specification File (<strong>SF</strong>)</h2>
<pre><code class="language-json"><span class="hljs-punctuation">{</span>
+
<pre>
     <span class="hljs-attr">&quot;terminologyDesignator&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;fhir-package&quot;</span><span class="hljs-punctuation">,</span>
+
{
     <span class="hljs-attr">&quot;canonicalUrlRegex&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;&lt;regex&gt;&quot;</span><span class="hljs-punctuation">,</span> <span class="hljs-comment">// optional</span>
+
     "terminologyDesignator": "fhir-package",
     <span class="hljs-attr">&quot;canonicalPackageRegex&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;&lt;regex&gt;&quot;</span><span class="hljs-punctuation">,</span> <span class="hljs-comment">// optional</span>
+
     "canonicalUrlRegex": "<regex>", // optional
     <span class="hljs-attr">&quot;loadGrouping&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-keyword">true</span> <span class="hljs-comment">// optional</span>
+
     "canonicalPackageRegex": "<regex>", // optional
<span class="hljs-punctuation">}</span>
+
     "loadGrouping": true // optional
</code></pre>
+
}
 +
</pre>
 
<ul>
 
<ul>
 
<li>
 
<li>
<p><code>canonicalUrlRegex</code>: this filter loads only terminologies whose <a href="https://hl7.org/fhir/R4/datatypes.html#canonical">canonical URL</a> conforms to <code>&lt;regex&gt;</code>. E.g., regex <code>.*(agerejec|agelow).*</code> will only load the terminologies <code>CodeSystem-icd10gm-agereject-2025.json</code> and <code>CodeSystem-icd10gm-agelow-2025.json</code> because its canonical URLs are <code>https://terminologien.bfarm.de/fhir/CodeSystem/icd10gm-agereject|2025</code> and <code>https://terminologien.bfarm.de/fhir/CodeSystem/icd10gm-agelow|2025</code>, respectively.</p>
+
<p><code>canonicalUrlRegex</code>: this filter loads only terminologies whose <em>canonical URL</em> (<code>https://hl7.org/fhir/R4/datatypes.html#canonical</code>) conforms to <code>&lt;regex&gt;</code>. E.g., regex <code>.*(agerejec|agelow).*</code> will only load the terminologies <code>CodeSystem-icd10gm-agereject-2025.json</code> and <code>CodeSystem-icd10gm-agelow-2025.json</code> because its canonical URLs are</p>
 +
<ul>
 +
<li><code>https: //terminologien.bfarm.de/fhir/CodeSystem/icd10gm-agereject|2025</code> and</li>
 +
<li><code>https: //terminologien.bfarm.de/fhir/CodeSystem/icd10gm-agelow|2025</code>, respectively.</li>
 +
</ul>
 
</li>
 
</li>
 
<li>
 
<li>
<p><code>canonicalPackageRegex</code>: this filter loads only terminologies whose <em>canonical package regex</em> conforms to <code>&lt;regex&gt;</code>. The <em>canonical package regex</em> ist defined as the form <code>&lt;name&gt;|&lt;version&gt;</code> where <code>name</code> and <code>version</code> are the properties in the package definition file <code>bfarm/packages/bfarm.terminologien.icd10gm-2025.0.0.tar.gz/package/package.json</code> (see section <a href="#packages">Packages</a>). E.g., regex <code>.*(icd10gm\\|2025|ops\\|2025).*</code></p>
+
<p><code>canonicalPackageRegex</code>: this filter loads only terminologies whose <em>canonical package regex</em> conforms to <code>&lt;regex&gt;</code>. The <em>canonical package regex</em> ist defined as the form <code>&lt;name&gt;|&lt;version&gt;</code> where <code>name</code> and <code>version</code> are the properties in the package definition file <code>bfarm/packages/bfarm.terminologien.icd10gm-2025.0.0.tar.gz/package/package.json</code> (see section Packages above). E.g., regex <code>.*(icd10gm\\|2025|ops\\|2025).*</code> will only load the ICD and OPS package.</p>
 
</li>
 
</li>
 
<li>
 
<li>
<p><code>loadGrouping</code>: if enabled the grouping for the navigator is automatically set.</p>
+
<p><code>loadGrouping</code>: if enabled the grouping for the navigator is automatically set. Note that it overwrites the present grouping. If the grouping is to be integrated into an existing one, interface [[BfArM Terminologies|BfArM Terminologies]] can be used.</p>
 
</li>
 
</li>
 
</ul>
 
</ul>
 
<h3 id="example">Example</h3>
 
<h3 id="example">Example</h3>
<pre><code class="language-json"><span class="hljs-punctuation">{</span>
+
<pre>
     <span class="hljs-attr">&quot;terminologyDesignator&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;fhir-package&quot;</span><span class="hljs-punctuation">,</span>
+
{
     <span class="hljs-attr">&quot;canonicalUrlRegex&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;.*(agerejec|exotic|einmalk|icf-q-anatomische-lokalisation).*&quot;</span><span class="hljs-punctuation">,</span>
+
     "terminologyDesignator": "fhir-package",
     <span class="hljs-attr">&quot;canonicalPackageRegex&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-string">&quot;.*(icd10gm\\|2025|ops\\|2025).*&quot;</span><span class="hljs-punctuation">,</span>
+
     "canonicalUrlRegex": ".*(agerejec|exotic|einmalk|icf-q-anatomische-lokalisation).*",
     <span class="hljs-attr">&quot;loadGrouping&quot;</span><span class="hljs-punctuation">:</span> <span class="hljs-keyword">true</span>
+
     "canonicalPackageRegex": ".*(icd10gm\\|2025|ops\\|2025).*",
<span class="hljs-punctuation">}</span>
+
     "loadGrouping": true
</code></pre>
+
}
 +
</pre>
 
<h2 id="rest-interface">REST interface</h2>
 
<h2 id="rest-interface">REST interface</h2>
 
<p>see !!!</p>
 
<p>see !!!</p>

Version vom 22. September 2025, 13:29 Uhr

Loading BfArM Terminologies

BfArM (Bundesinstitut für Arzneimittel und Medizinprodukte) provides the standard terminologies for Germany. To simplify the loading process, an extra Y is defined, which can be executed with the existing interface for loading standard terminologies. Due to license policies of standard terminology providers we do not make available provider input files. Customers have to download these files from provider sites.

To load these standard terminologies the customer has to create a dedicated directory (called LD in the following) together with a specification json file (SF). In context of docker, kubernetes etc. a dedicated volume should be used.

Packages

The packages downloaded from bfarm must be located in directory LD/packages. The following structure is an example for two packages (ICDGM, OPS) with the specification file fhir-pack-icd.jsonc (SF).

bfarm
|_ packages
|  |_ bfarm.terminologien.icd10gm-2025.0.0.tar.gz
|  |  |_ CodeSystem-icd10gm-agelow-2025.json
|  |  |_ CodeSystem-icd10gm-agereject-2025.json
|  |  |_ package.json
|  |  |_ ...
|  |_ bfarm.terminologien.ops-2025.0.0.tar.gz
|_ fhir-pack-icd.jsonc

Specification File (SF)

{
    "terminologyDesignator": "fhir-package",
    "canonicalUrlRegex": "<regex>", // optional
    "canonicalPackageRegex": "<regex>", // optional
    "loadGrouping": true // optional
}
  • canonicalUrlRegex: this filter loads only terminologies whose canonical URL (https://hl7.org/fhir/R4/datatypes.html#canonical) conforms to <regex>. E.g., regex .*(agerejec|agelow).* will only load the terminologies CodeSystem-icd10gm-agereject-2025.json and CodeSystem-icd10gm-agelow-2025.json because its canonical URLs are

    • https: //terminologien.bfarm.de/fhir/CodeSystem/icd10gm-agereject|2025 and
    • https: //terminologien.bfarm.de/fhir/CodeSystem/icd10gm-agelow|2025, respectively.
  • canonicalPackageRegex: this filter loads only terminologies whose canonical package regex conforms to <regex>. The canonical package regex ist defined as the form <name>|<version> where name and version are the properties in the package definition file bfarm/packages/bfarm.terminologien.icd10gm-2025.0.0.tar.gz/package/package.json (see section Packages above). E.g., regex .*(icd10gm\\|2025|ops\\|2025).* will only load the ICD and OPS package.

  • loadGrouping: if enabled the grouping for the navigator is automatically set. Note that it overwrites the present grouping. If the grouping is to be integrated into an existing one, interface BfArM Terminologies can be used.

Example

{
    "terminologyDesignator": "fhir-package",
    "canonicalUrlRegex": ".*(agerejec|exotic|einmalk|icf-q-anatomische-lokalisation).*",
    "canonicalPackageRegex": ".*(icd10gm\\|2025|ops\\|2025).*",
    "loadGrouping": true
}

REST interface

see !!!