1
0

Upload files to "/"

This commit is contained in:
hmk
2026-08-12 11:00:46 +00:00
parent 6c84825631
commit 5b5713cb92
5 changed files with 330 additions and 0 deletions
+117
View File
@@ -0,0 +1,117 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1000" height="1070" viewBox="0 0 1000 1070" font-family="Segoe UI, Arial, sans-serif">
<rect width="1000" height="1070" fill="#ffffff"/>
<text x="500.0" y="30" font-size="22" font-weight="700" fill="#1a1a2e" text-anchor="middle">FHIR date-Suchparameter: Alle Präfixe im Überblick</text>
<text x="500.0" y="52" font-family="Segoe UI, Arial" font-size="15" fill="#555" text-anchor="middle">Roter gestrichelter Marker = Suchwert 2023-06-15 • Grüner Bereich = Bereich, der als Treffer gilt</text>
<text x="60" y="86" font-size="15" font-weight="700" fill="#111">eq — gleich (=)</text>
<text x="960" y="86" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=eq2023-06-15</text>
<rect x="485.0" y="113" width="50.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="123" x2="960" y2="123" stroke="#333" stroke-width="2"/>
<polygon points="960,123 952,118 952,128" fill="#333"/>
<text x="960" y="151" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="151" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="485.0" y1="109" x2="485.0" y2="137" stroke="#2e7d32" stroke-width="3" />
<line x1="535.0" y1="109" x2="535.0" y2="137" stroke="#2e7d32" stroke-width="3" />
<line x1="510.0" y1="99" x2="510.0" y2="147" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="123" r="4.5" fill="#c62828"/>
<text x="510.0" y="93" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="169" font-size="12" fill="#444" font-style="italic">Resource-Datum liegt vollständig innerhalb des Suchintervalls.</text>
<text x="60" y="196" font-size="15" font-weight="700" fill="#111">ne — ungleich (≠)</text>
<text x="960" y="196" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ne2023-06-15</text>
<rect x="60" y="223" width="425.0" height="20" fill="#ad1457" opacity="0.22"/>
<line x1="60" y1="233" x2="960" y2="233" stroke="#333" stroke-width="2"/>
<polygon points="960,233 952,228 952,238" fill="#333"/>
<text x="960" y="261" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="261" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="60" y1="219" x2="60" y2="247" stroke="#ad1457" stroke-width="3" />
<line x1="485.0" y1="219" x2="485.0" y2="247" stroke="#ad1457" stroke-width="3" />
<line x1="510.0" y1="209" x2="510.0" y2="257" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="233" r="4.5" fill="#c62828"/>
<text x="510.0" y="203" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="279" font-size="12" fill="#444" font-style="italic">Resource-Datum liegt NICHT vollständig innerhalb des Suchintervalls (Komplement von eq).</text>
<rect x="535.0" y="223" width="425.0" height="20" fill="#ad1457" opacity="0.22"/>
<text x="60" y="306" font-size="15" font-weight="700" fill="#111">gt — größer als (&gt;)</text>
<text x="960" y="306" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=gt2023-06-15</text>
<rect x="535.0" y="333" width="425.0" height="20" fill="#e65100" opacity="0.22"/>
<line x1="60" y1="343" x2="960" y2="343" stroke="#333" stroke-width="2"/>
<polygon points="960,343 952,338 952,348" fill="#333"/>
<text x="960" y="371" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="371" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="535.0" y1="329" x2="535.0" y2="357" stroke="#e65100" stroke-width="3" />
<line x1="510.0" y1="319" x2="510.0" y2="367" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="343" r="4.5" fill="#c62828"/>
<text x="510.0" y="313" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="389" font-size="12" fill="#444" font-style="italic">Resource-Datum beginnt nach dem Ende des Suchintervalls.</text>
<text x="60" y="416" font-size="15" font-weight="700" fill="#111">lt — kleiner als (&lt;)</text>
<text x="960" y="416" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=lt2023-06-15</text>
<rect x="60" y="443" width="425.0" height="20" fill="#00838f" opacity="0.22"/>
<line x1="60" y1="453" x2="960" y2="453" stroke="#333" stroke-width="2"/>
<polygon points="960,453 952,448 952,458" fill="#333"/>
<text x="960" y="481" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="481" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="485.0" y1="439" x2="485.0" y2="467" stroke="#00838f" stroke-width="3" />
<line x1="510.0" y1="429" x2="510.0" y2="477" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="453" r="4.5" fill="#c62828"/>
<text x="510.0" y="423" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="499" font-size="12" fill="#444" font-style="italic">Resource-Datum endet vor dem Beginn des Suchintervalls.</text>
<text x="60" y="526" font-size="15" font-weight="700" fill="#111">ge — größer/gleich (≥)</text>
<text x="960" y="526" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ge2023-06-15</text>
<rect x="485.0" y="553" width="475.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="563" x2="960" y2="563" stroke="#333" stroke-width="2"/>
<polygon points="960,563 952,558 952,568" fill="#333"/>
<text x="960" y="591" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="591" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="485.0" y1="549" x2="485.0" y2="577" stroke="#2e7d32" stroke-width="3" />
<line x1="510.0" y1="539" x2="510.0" y2="587" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="563" r="4.5" fill="#c62828"/>
<text x="510.0" y="533" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="609" font-size="12" fill="#444" font-style="italic">Resource-Datum beginnt am oder nach dem Beginn des Suchintervalls.</text>
<text x="60" y="636" font-size="15" font-weight="700" fill="#111">le — kleiner/gleich (≤)</text>
<text x="960" y="636" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=le2023-06-15</text>
<rect x="60" y="663" width="475.0" height="20" fill="#1565c0" opacity="0.22"/>
<line x1="60" y1="673" x2="960" y2="673" stroke="#333" stroke-width="2"/>
<polygon points="960,673 952,668 952,678" fill="#333"/>
<text x="960" y="701" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="701" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="535.0" y1="659" x2="535.0" y2="687" stroke="#1565c0" stroke-width="3" />
<line x1="510.0" y1="649" x2="510.0" y2="697" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="673" r="4.5" fill="#c62828"/>
<text x="510.0" y="643" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="719" font-size="12" fill="#444" font-style="italic">Resource-Datum endet am oder vor dem Ende des Suchintervalls.</text>
<text x="60" y="746" font-size="15" font-weight="700" fill="#111">sa — startet nach (starts after)</text>
<text x="960" y="746" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=sa2023-06-15</text>
<rect x="535.0" y="773" width="425.0" height="20" fill="#bf360c" opacity="0.22"/>
<line x1="60" y1="783" x2="960" y2="783" stroke="#333" stroke-width="2"/>
<polygon points="960,783 952,778 952,788" fill="#333"/>
<text x="960" y="811" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="811" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="535.0" y1="769" x2="535.0" y2="797" stroke="#bf360c" stroke-width="3" stroke-dasharray="4,4"/>
<line x1="510.0" y1="759" x2="510.0" y2="807" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="783" r="4.5" fill="#c62828"/>
<text x="510.0" y="753" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="829" font-size="12" fill="#444" font-style="italic">Resource-Datum beginnt vollständig nach dem Ende des Suchintervalls (strikter als gt bei Ranges).</text>
<text x="60" y="856" font-size="15" font-weight="700" fill="#111">eb — endet vor (ends before)</text>
<text x="960" y="856" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=eb2023-06-15</text>
<rect x="60" y="883" width="425.0" height="20" fill="#004d40" opacity="0.22"/>
<line x1="60" y1="893" x2="960" y2="893" stroke="#333" stroke-width="2"/>
<polygon points="960,893 952,888 952,898" fill="#333"/>
<text x="960" y="921" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="921" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="485.0" y1="879" x2="485.0" y2="907" stroke="#004d40" stroke-width="3" stroke-dasharray="4,4"/>
<line x1="510.0" y1="869" x2="510.0" y2="917" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="893" r="4.5" fill="#c62828"/>
<text x="510.0" y="863" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="939" font-size="12" fill="#444" font-style="italic">Resource-Datum endet vollständig vor dem Beginn des Suchintervalls (strikter als lt bei Ranges).</text>
<text x="60" y="966" font-size="15" font-weight="700" fill="#111">ap — ungefähr (approximately)</text>
<text x="960" y="966" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ap2023-06-15</text>
<rect x="450.0" y="993" width="120.0" height="20" fill="#6a1b9a" opacity="0.22"/>
<line x1="60" y1="1003" x2="960" y2="1003" stroke="#333" stroke-width="2"/>
<polygon points="960,1003 952,998 952,1008" fill="#333"/>
<text x="960" y="1031" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="1031" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="450.0" y1="989" x2="450.0" y2="1017" stroke="#6a1b9a" stroke-width="3" />
<line x1="570.0" y1="989" x2="570.0" y2="1017" stroke="#6a1b9a" stroke-width="3" />
<line x1="510.0" y1="979" x2="510.0" y2="1027" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="1003" r="4.5" fill="#c62828"/>
<text x="510.0" y="973" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="1049" font-size="12" fill="#444" font-style="italic">Resource-Datum liegt 'in der Nähe' des Suchwerts (Implementierungs-abhängige Toleranz, z.B. ±10%).</text>
</svg>

After

Width:  |  Height:  |  Size: 11 KiB

+45
View File
@@ -0,0 +1,45 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1000" height="600" viewBox="0 0 1000 600" font-family="Segoe UI, Arial, sans-serif">
<rect width="1000" height="600" fill="#ffffff"/>
<text x="500.0" y="30" font-size="22" font-weight="700" fill="#1a1a2e" text-anchor="middle">FHIR date-Suchparameter: Kombination mehrerer Parameter (UND-Verknüpfung)</text>
<text x="500.0" y="52" font-family="Segoe UI, Arial" font-size="15" fill="#555" text-anchor="middle">Mehrere date-Parameter in derselben Query werden UND-verknüpft und ergeben einen Bereich</text>
<text x="60" y="88" font-size="15" font-weight="700" fill="#111">Geschlossenes Intervall (inklusiv)</text>
<text x="960" y="88" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ge2023-01-01&amp;date=le2023-12-31</text>
<rect x="350.0" y="115" width="320.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="125" x2="960" y2="125" stroke="#333" stroke-width="2"/>
<polygon points="960,125 952,120 952,130" fill="#333"/>
<line x1="350.0" y1="109" x2="350.0" y2="141" stroke="#2e7d32" stroke-width="3" />
<line x1="670.0" y1="109" x2="670.0" y2="141" stroke="#2e7d32" stroke-width="3" />
<text x="350.0" y="101" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">ge (geschlossen)</text>
<text x="670.0" y="101" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">le (geschlossen)</text>
<text x="60" y="165" font-size="12" fill="#444" font-style="italic">Beide Grenzen sind inklusive Teil des Ergebnisses — klassischer 'Jahresbereich'.</text>
<text x="60" y="218" font-size="15" font-weight="700" fill="#111">Offenes Intervall (exklusiv)</text>
<text x="960" y="218" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=gt2023-01-01&amp;date=lt2023-12-31</text>
<rect x="350.0" y="245" width="320.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="255" x2="960" y2="255" stroke="#333" stroke-width="2"/>
<polygon points="960,255 952,250 952,260" fill="#333"/>
<line x1="350.0" y1="239" x2="350.0" y2="271" stroke="#2e7d32" stroke-width="3" stroke-dasharray="4,4"/>
<line x1="670.0" y1="239" x2="670.0" y2="271" stroke="#2e7d32" stroke-width="3" stroke-dasharray="4,4"/>
<text x="350.0" y="231" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">gt (offen)</text>
<text x="670.0" y="231" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">lt (offen)</text>
<text x="60" y="295" font-size="12" fill="#444" font-style="italic">Randwerte selbst sind ausgeschlossen — enger als ge/le.</text>
<text x="60" y="348" font-size="15" font-weight="700" fill="#111">Strikt getrennter Bereich (sa + eb)</text>
<text x="960" y="348" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=sa2023-01-01&amp;date=eb2023-12-31</text>
<rect x="350.0" y="375" width="320.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="385" x2="960" y2="385" stroke="#333" stroke-width="2"/>
<polygon points="960,385 952,380 952,390" fill="#333"/>
<line x1="350.0" y1="369" x2="350.0" y2="401" stroke="#2e7d32" stroke-width="3" stroke-dasharray="4,4"/>
<line x1="670.0" y1="369" x2="670.0" y2="401" stroke="#2e7d32" stroke-width="3" stroke-dasharray="4,4"/>
<text x="350.0" y="361" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">sa (offen)</text>
<text x="670.0" y="361" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">eb (offen)</text>
<text x="60" y="425" font-size="12" fill="#444" font-style="italic">Nur für Perioden/Ranges relevant: Resource-Range muss vollständig NACH dem 1. und vollständig VOR dem 2. Wert liegen.</text>
<text x="60" y="478" font-size="15" font-weight="700" fill="#111">Untere Grenze + oberer Ausschluss</text>
<text x="960" y="478" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ge2023-06-01&amp;date=lt2023-07-01</text>
<rect x="350.0" y="505" width="320.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="515" x2="960" y2="515" stroke="#333" stroke-width="2"/>
<polygon points="960,515 952,510 952,520" fill="#333"/>
<line x1="350.0" y1="499" x2="350.0" y2="531" stroke="#2e7d32" stroke-width="3" />
<line x1="670.0" y1="499" x2="670.0" y2="531" stroke="#2e7d32" stroke-width="3" stroke-dasharray="4,4"/>
<text x="350.0" y="491" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">ge (geschlossen)</text>
<text x="670.0" y="491" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">lt (offen)</text>
<text x="60" y="555" font-size="12" fill="#444" font-style="italic">Typisches Muster für 'genau ein Monat' bei Timestamp-Feldern: [start, ende).</text>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

+81
View File
@@ -0,0 +1,81 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1100" height="650" viewBox="0 0 1100 650" font-family="Segoe UI, Arial, sans-serif">
<rect width="1100" height="650" fill="#ffffff"/>
<text x="550.0" y="32" font-size="22" font-weight="700" fill="#1a1a2e" text-anchor="middle">FHIR date: 3x3-Matrix der Bereichs-Kombinationen (Untergrenze x Obergrenze)</text>
<text x="550.0" y="56" font-size="14" fill="#555" text-anchor="middle">Jede Zelle = eine gueltige Kombination aus zwei date-Parametern (z.B. date=ge...&amp;date=le...)</text>
<text x="380.0" y="115" font-size="16" font-weight="700" fill="#1565c0" text-anchor="middle">le</text>
<text x="380.0" y="132" font-size="11" fill="#1565c0" text-anchor="middle">≤ (bis einschl.)</text>
<text x="700.0" y="115" font-size="16" font-weight="700" fill="#1565c0" text-anchor="middle">lt</text>
<text x="700.0" y="132" font-size="11" fill="#1565c0" text-anchor="middle">&lt; (davor)</text>
<text x="1020.0" y="115" font-size="16" font-weight="700" fill="#1565c0" text-anchor="middle">eb</text>
<text x="1020.0" y="132" font-size="11" fill="#1565c0" text-anchor="middle">ends before (strikt davor)</text>
<text x="200" y="209.0" font-size="16" font-weight="700" fill="#2e7d32" text-anchor="end">ge</text>
<text x="200" y="227.0" font-size="11" fill="#2e7d32" text-anchor="end">≥ (ab einschl.)</text>
<text x="200" y="359.0" font-size="16" font-weight="700" fill="#2e7d32" text-anchor="end">gt</text>
<text x="200" y="377.0" font-size="11" fill="#2e7d32" text-anchor="end">&gt; (danach)</text>
<text x="200" y="509.0" font-size="16" font-weight="700" fill="#2e7d32" text-anchor="end">sa</text>
<text x="200" y="527.0" font-size="11" fill="#2e7d32" text-anchor="end">starts after (strikt danach)</text>
<rect x="226" y="146" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="341.6" y="224.0" width="76.79999999999995" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="240" y1="233.0" x2="520" y2="233.0" stroke="#333" stroke-width="1.5"/>
<line x1="341.6" y1="220.0" x2="341.6" y2="246.0" stroke="#c62828" stroke-width="2.5" />
<line x1="418.4" y1="220.0" x2="418.4" y2="246.0" stroke="#c62828" stroke-width="2.5" />
<text x="380.0" y="276" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=ge...&amp;date=le...</text>
<text x="380.0" y="260" font-size="11" fill="#555" text-anchor="middle">geschl. / geschl.</text>
<rect x="546" y="146" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="661.6" y="224.0" width="76.79999999999995" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="560" y1="233.0" x2="840" y2="233.0" stroke="#333" stroke-width="1.5"/>
<line x1="661.6" y1="220.0" x2="661.6" y2="246.0" stroke="#c62828" stroke-width="2.5" />
<line x1="738.4" y1="220.0" x2="738.4" y2="246.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<text x="700.0" y="276" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=ge...&amp;date=lt...</text>
<text x="700.0" y="260" font-size="11" fill="#555" text-anchor="middle">geschl. / offen</text>
<rect x="866" y="146" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="981.6" y="224.0" width="76.80000000000007" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="880" y1="233.0" x2="1160" y2="233.0" stroke="#333" stroke-width="1.5"/>
<line x1="981.6" y1="220.0" x2="981.6" y2="246.0" stroke="#c62828" stroke-width="2.5" />
<line x1="1058.4" y1="220.0" x2="1058.4" y2="246.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<text x="1020.0" y="276" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=ge...&amp;date=eb...</text>
<text x="1020.0" y="260" font-size="11" fill="#555" text-anchor="middle">geschl. / offen</text>
<rect x="226" y="296" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="341.6" y="374.0" width="76.79999999999995" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="240" y1="383.0" x2="520" y2="383.0" stroke="#333" stroke-width="1.5"/>
<line x1="341.6" y1="370.0" x2="341.6" y2="396.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<line x1="418.4" y1="370.0" x2="418.4" y2="396.0" stroke="#c62828" stroke-width="2.5" />
<text x="380.0" y="426" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=gt...&amp;date=le...</text>
<text x="380.0" y="410" font-size="11" fill="#555" text-anchor="middle">offen / geschl.</text>
<rect x="546" y="296" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="661.6" y="374.0" width="76.79999999999995" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="560" y1="383.0" x2="840" y2="383.0" stroke="#333" stroke-width="1.5"/>
<line x1="661.6" y1="370.0" x2="661.6" y2="396.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<line x1="738.4" y1="370.0" x2="738.4" y2="396.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<text x="700.0" y="426" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=gt...&amp;date=lt...</text>
<text x="700.0" y="410" font-size="11" fill="#555" text-anchor="middle">offen / offen</text>
<rect x="866" y="296" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="981.6" y="374.0" width="76.80000000000007" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="880" y1="383.0" x2="1160" y2="383.0" stroke="#333" stroke-width="1.5"/>
<line x1="981.6" y1="370.0" x2="981.6" y2="396.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<line x1="1058.4" y1="370.0" x2="1058.4" y2="396.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<text x="1020.0" y="426" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=gt...&amp;date=eb...</text>
<text x="1020.0" y="410" font-size="11" fill="#555" text-anchor="middle">offen / offen</text>
<rect x="226" y="446" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="341.6" y="524.0" width="76.79999999999995" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="240" y1="533.0" x2="520" y2="533.0" stroke="#333" stroke-width="1.5"/>
<line x1="341.6" y1="520.0" x2="341.6" y2="546.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<line x1="418.4" y1="520.0" x2="418.4" y2="546.0" stroke="#c62828" stroke-width="2.5" />
<text x="380.0" y="576" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=sa...&amp;date=le...</text>
<text x="380.0" y="560" font-size="11" fill="#555" text-anchor="middle">offen / geschl.</text>
<rect x="546" y="446" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="661.6" y="524.0" width="76.79999999999995" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="560" y1="533.0" x2="840" y2="533.0" stroke="#333" stroke-width="1.5"/>
<line x1="661.6" y1="520.0" x2="661.6" y2="546.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<line x1="738.4" y1="520.0" x2="738.4" y2="546.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<text x="700.0" y="576" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=sa...&amp;date=lt...</text>
<text x="700.0" y="560" font-size="11" fill="#555" text-anchor="middle">offen / offen</text>
<rect x="866" y="446" width="308" height="138" fill="#fafafa" stroke="#ddd" stroke-width="1" rx="6"/>
<rect x="981.6" y="524.0" width="76.80000000000007" height="18" fill="#2e7d32" opacity="0.25"/>
<line x1="880" y1="533.0" x2="1160" y2="533.0" stroke="#333" stroke-width="1.5"/>
<line x1="981.6" y1="520.0" x2="981.6" y2="546.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<line x1="1058.4" y1="520.0" x2="1058.4" y2="546.0" stroke="#c62828" stroke-width="2.5" stroke-dasharray="4,3"/>
<text x="1020.0" y="576" font-size="11.5" fill="#6a1b9a" text-anchor="middle" font-family="Consolas, Menlo, monospace">date=sa...&amp;date=eb...</text>
<text x="1020.0" y="560" font-size="11" fill="#555" text-anchor="middle">offen / offen</text>
<text x="220" y="632" font-size="12" fill="#444" font-style="italic">Gestrichelte Grenze = exklusiv (Wert selbst nicht im Treffer) | Durchgezogene Grenze = inklusiv</text>
</svg>

After

Width:  |  Height:  |  Size: 8.3 KiB

+29
View File
@@ -0,0 +1,29 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1000" height="320" viewBox="0 0 1000 320" font-family="Segoe UI, Arial, sans-serif">
<rect width="1000" height="320" fill="#ffffff"/>
<text x="500.0" y="30" font-size="22" font-weight="700" fill="#1a1a2e" text-anchor="middle">FHIR date-Suchparameter: OHNE Präfix (impliziert 'eq')</text>
<text x="500.0" y="52" font-family="Segoe UI, Arial" font-size="15" fill="#555" text-anchor="middle">Ohne Präfix wird 'eq' angenommen — die Genauigkeit (Precision) des Suchwerts bestimmt das Intervall</text>
<text x="60" y="88" font-size="15" font-weight="700" fill="#111">Suchwert mit Tages-Genauigkeit</text>
<text x="960" y="88" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=2023-06-15</text>
<rect x="485.0" y="115" width="50.0" height="20" fill="#2e7d32" opacity="0.22"/>
<line x1="60" y1="125" x2="960" y2="125" stroke="#333" stroke-width="2"/>
<polygon points="960,125 952,120 952,130" fill="#333"/>
<text x="960" y="153" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="153" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="485.0" y1="111" x2="485.0" y2="139" stroke="#2e7d32" stroke-width="3" />
<line x1="535.0" y1="111" x2="535.0" y2="139" stroke="#2e7d32" stroke-width="3" />
<line x1="510.0" y1="101" x2="510.0" y2="149" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="125" r="4.5" fill="#c62828"/>
<text x="510.0" y="95" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">2023-06-15</text>
<text x="60" y="171" font-size="12" fill="#444" font-style="italic">Intervall = genau dieser Tag (00:0024:00). Resource-Datum muss vollständig in diesem Intervall liegen.</text><text x="60" y="198" font-size="15" font-weight="700" fill="#111">Suchwert mit Monats-Genauigkeit</text>
<text x="960" y="198" font-size="13" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=2023-06</text>
<rect x="420.0" y="225" width="180.0" height="20" fill="#1565c0" opacity="0.22"/>
<line x1="60" y1="235" x2="960" y2="235" stroke="#333" stroke-width="2"/>
<polygon points="960,235 952,230 952,240" fill="#333"/>
<text x="960" y="263" font-size="11" fill="#888" text-anchor="end">Zukunft →</text>
<text x="60" y="263" font-size="11" fill="#888" text-anchor="start">← Vergangenheit</text>
<line x1="420.0" y1="221" x2="420.0" y2="249" stroke="#1565c0" stroke-width="3" />
<line x1="600.0" y1="221" x2="600.0" y2="249" stroke="#1565c0" stroke-width="3" />
<line x1="510.0" y1="211" x2="510.0" y2="259" stroke="#c62828" stroke-width="2" stroke-dasharray="5,3"/>
<circle cx="510.0" cy="235" r="4.5" fill="#c62828"/>
<text x="510.0" y="205" font-size="12" fill="#c62828" text-anchor="middle" font-weight="600">Juni 2023</text>
<text x="60" y="281" font-size="12" fill="#444" font-style="italic">Intervall = ganzer Monat (2023-06-01 00:00 bis 2023-07-01 00:00). Je gröber die Precision, desto breiter das Intervall.</text></svg>

After

Width:  |  Height:  |  Size: 3.0 KiB

+58
View File
@@ -0,0 +1,58 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1000" height="860" viewBox="0 0 1000 860" font-family="Segoe UI, Arial, sans-serif">
<rect width="1000" height="860" fill="#ffffff"/>
<text x="500.0" y="30" font-size="22" font-weight="700" fill="#1a1a2e" text-anchor="middle">FHIR date: Sonderfaelle bei Parameter-Kombinationen</text>
<text x="500.0" y="52" font-size="14" fill="#555" text-anchor="middle">Redundante, widerspruechliche und ungewoehnliche, aber spec-konforme Kombinationen</text>
<rect x="60" y="56" width="150" height="20" rx="4" fill="#f9a825" opacity="0.15"/>
<text x="135" y="70" font-size="11" font-weight="700" fill="#f9a825" text-anchor="middle">REDUNDANT</text>
<text x="60" y="92" font-size="15" font-weight="700" fill="#111">Redundant: eq + Grenzwert</text>
<text x="960" y="92" font-size="12.5" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=eq2023-06-15&amp;date=ge2020-01-01</text>
<line x1="60" y1="125" x2="960" y2="125" stroke="#333" stroke-width="2"/>
<polygon points="960,125 952,120 952,130" fill="#333"/>
<rect x="410.0" y="115" width="200" height="20" fill="#f9a825" opacity="0.25"/>
<line x1="610.0" y1="109" x2="610.0" y2="141" stroke="#f9a825" stroke-width="3"/>
<text x="60" y="176" font-size="12.5" fill="#444" font-style="italic">eq2023-06-15 deckt bereits ein volles Intervall ab; die zusaetzliche ge-Bedingung aendert nichts, da 2023 &gt; 2020 ohnehin erfuellt ist.</text>
<rect x="60" y="186" width="150" height="20" rx="4" fill="#c62828" opacity="0.15"/>
<text x="135" y="200" font-size="11" font-weight="700" fill="#c62828" text-anchor="middle">LEERES ERGEBNIS</text>
<text x="60" y="222" font-size="15" font-weight="700" fill="#111">Widerspruch: eq + ne auf denselben Wert</text>
<text x="960" y="222" font-size="12.5" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=eq2023-06-15&amp;date=ne2023-06-15</text>
<line x1="60" y1="255" x2="960" y2="255" stroke="#333" stroke-width="2"/>
<polygon points="960,255 952,250 952,260" fill="#333"/>
<line x1="495.0" y1="240" x2="525.0" y2="270" stroke="#c62828" stroke-width="4"/>
<line x1="495.0" y1="270" x2="525.0" y2="240" stroke="#c62828" stroke-width="4"/>
<text x="60" y="306" font-size="12.5" fill="#444" font-style="italic">eq verlangt Enthaltensein, ne verlangt Nicht-Enthaltensein im selben Intervall -&gt; IMMER leeres Ergebnis.</text>
<rect x="60" y="316" width="150" height="20" rx="4" fill="#c62828" opacity="0.15"/>
<text x="135" y="330" font-size="11" font-weight="700" fill="#c62828" text-anchor="middle">LEERES ERGEBNIS</text>
<text x="60" y="352" font-size="15" font-weight="700" fill="#111">Widerspruch: sich ausschliessende Grenzen</text>
<text x="960" y="352" font-size="12.5" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ge2023-06-01&amp;date=le2023-01-01</text>
<line x1="60" y1="385" x2="960" y2="385" stroke="#333" stroke-width="2"/>
<polygon points="960,385 952,380 952,390" fill="#333"/>
<line x1="495.0" y1="370" x2="525.0" y2="400" stroke="#c62828" stroke-width="4"/>
<line x1="495.0" y1="400" x2="525.0" y2="370" stroke="#c62828" stroke-width="4"/>
<text x="60" y="436" font-size="12.5" fill="#444" font-style="italic">Untergrenze liegt NACH der Obergrenze -&gt; kein Datum kann beide Bedingungen erfuellen -&gt; leeres Ergebnis.</text>
<rect x="60" y="446" width="150" height="20" rx="4" fill="#f9a825" opacity="0.15"/>
<text x="135" y="460" font-size="11" font-weight="700" fill="#f9a825" text-anchor="middle">REDUNDANT</text>
<text x="60" y="482" font-size="15" font-weight="700" fill="#111">Redundant: gleicher Praefix doppelt</text>
<text x="960" y="482" font-size="12.5" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ge2020-01-01&amp;date=ge2023-01-01</text>
<line x1="60" y1="515" x2="960" y2="515" stroke="#333" stroke-width="2"/>
<polygon points="960,515 952,510 952,520" fill="#333"/>
<rect x="410.0" y="505" width="200" height="20" fill="#f9a825" opacity="0.25"/>
<line x1="610.0" y1="499" x2="610.0" y2="531" stroke="#f9a825" stroke-width="3"/>
<text x="60" y="566" font-size="12.5" fill="#444" font-style="italic">Beide Bedingungen sind vom Typ ge; nur die strengere (spaetere) Untergrenze 2023 ist effektiv wirksam.</text>
<rect x="60" y="576" width="150" height="20" rx="4" fill="#6a1b9a" opacity="0.15"/>
<text x="135" y="590" font-size="11" font-weight="700" fill="#6a1b9a" text-anchor="middle">SONDERFALL</text>
<text x="60" y="612" font-size="15" font-weight="700" fill="#111">Sonderfall: drei Parameter (Ausschluss einer Teilspanne)</text>
<text x="960" y="612" font-size="12.5" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ge2023-01-01&amp;date=le2023-12-31&amp;date=ne2023-06-15</text>
<line x1="60" y1="645" x2="960" y2="645" stroke="#333" stroke-width="2"/>
<polygon points="960,645 952,640 952,650" fill="#333"/>
<rect x="390.0" y="635" width="240" height="20" fill="#6a1b9a" opacity="0.2"/>
<rect x="502.0" y="635" width="16" height="20" fill="#ffffff"/>
<text x="60" y="696" font-size="12.5" fill="#444" font-style="italic">Spec-konform: Jahresbereich, aus dem zusaetzlich ein einzelner Tag per ne ausgeschlossen wird.</text>
<rect x="60" y="706" width="150" height="20" rx="4" fill="#6a1b9a" opacity="0.15"/>
<text x="135" y="720" font-size="11" font-weight="700" fill="#6a1b9a" text-anchor="middle">SONDERFALL</text>
<text x="60" y="742" font-size="15" font-weight="700" fill="#111">Sonderfall: ap kombiniert mit Grenze</text>
<text x="960" y="742" font-size="12.5" fill="#6a1b9a" text-anchor="end" font-family="Consolas, Menlo, monospace">date=ap2023-06-15&amp;date=ge2023-01-01</text>
<line x1="60" y1="775" x2="960" y2="775" stroke="#333" stroke-width="2"/>
<polygon points="960,775 952,770 952,780" fill="#333"/>
<rect x="390.0" y="765" width="240" height="20" fill="#6a1b9a" opacity="0.2"/>
<text x="60" y="826" font-size="12.5" fill="#444" font-style="italic">Selten verwendet: unscharfe Naeherung zusaetzlich auf einen Mindestwert eingeschraenkt (Toleranz ist serverabhaengig).</text>
</svg>

After

Width:  |  Height:  |  Size: 6.0 KiB