From c20890b173d36e479d0b3cc670746d77af567ec7 Mon Sep 17 00:00:00 2001 From: angela-helios Date: Fri, 10 Jul 2026 18:40:47 -0400 Subject: [PATCH 1/8] feat(ui): SearchParameter viewer and Compartment viewer + route tester MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implements the read halves of #238 and #237 in helios-ui, following the docs/237-238-mockups designs on the existing design system. /ui/search-parameters (#238): read-only viewer over the same snapshot the storage backends seed their registries from (embedded fallback + the spec bundle in HFS_DATA_DIR, first canonical URL wins). Resource Filter rail with live counts and a Recently-used group (localStorage enhancement; everything else is links + GET forms, so the page works without JavaScript), type/source facet rows scoped to the current base, pagination instead of a render cap, and a detail panel with (base, code) slot chips per the #242 precedence semantics - cross-source shadows are informational overrides, same-source collisions are the blocking DuplicateCode conflict - plus empty-expression / missing- target warnings and the choice-type rewrite note. A missing spec bundle renders a visible warning instead of under-reporting silently. Write paths stay off pending #235, and the page says so. /ui/compartments (#237): definition rail with member counts, read-only Definition tab, Members tab with member/excluded chips and per-type linking params, and the tester. Everything membership-shaped resolves through helios_fhir::compartment_params() - the codegen'd table the REST compartment handler consults - so the tester's member / 404 + OperationOutcome / *-fan-out / {def} answers are the answers the API gives. Definition metadata comes from the spec CompartmentDefinition JSONs vendored under crates/ui/data/ (include_str! across crates would break cargo package); a parity test asserts every (compartment, type) slot matches the codegen table for every enabled version, so the vendored copies cannot drift silently. The questionnaire.json oddity (no code, zero resources) is not vendored, per issue open question 4. helios-ui grows R4/R4B/R5/R6 features forwarded from hfs (helios-ui?/…) so the version pill covers exactly the versions the server is built with; mount() takes the data dir. Semantic --ok/--warn/--danger tokens join app.css for both themes, held off the accent hue. Sidebar's Compartments entry goes live and Search Parameters joins the Server section; strings in en/es/de. Verified end to end against a running hfs: both pages serve the real R4 registry (1377 definitions; Patient 66/145 members), the tester round-trips member, 404, and fan-out cases, and the ES locale renders. --- Cargo.lock | 3 + crates/hfs/Cargo.toml | 14 +- crates/hfs/src/main.rs | 2 +- crates/ui/Cargo.toml | 22 + crates/ui/README.md | 14 + crates/ui/assets/app.css | 601 +++++++++++++ crates/ui/assets/resource-filter.js | 60 ++ .../r4/compartmentdefinition-device.json | 578 +++++++++++++ .../r4/compartmentdefinition-encounter.json | 540 ++++++++++++ .../r4/compartmentdefinition-patient.json | 697 +++++++++++++++ .../compartmentdefinition-practitioner.json | 671 ++++++++++++++ .../compartmentdefinition-relatedperson.json | 569 ++++++++++++ .../r4b/compartmentdefinition-device.json | 563 ++++++++++++ .../r4b/compartmentdefinition-encounter.json | 525 +++++++++++ .../r4b/compartmentdefinition-patient.json | 682 +++++++++++++++ .../compartmentdefinition-practitioner.json | 656 ++++++++++++++ .../compartmentdefinition-relatedperson.json | 554 ++++++++++++ .../r5/compartmentdefinition-device.json | 606 +++++++++++++ .../r5/compartmentdefinition-encounter.json | 579 +++++++++++++ .../r5/compartmentdefinition-patient.json | 753 ++++++++++++++++ .../compartmentdefinition-practitioner.json | 696 +++++++++++++++ .../compartmentdefinition-relatedperson.json | 598 +++++++++++++ .../r6/compartmentdefinition-device.json | 642 ++++++++++++++ .../r6/compartmentdefinition-encounter.json | 602 +++++++++++++ .../r6/compartmentdefinition-group.json | 681 +++++++++++++++ .../r6/compartmentdefinition-patient.json | 761 ++++++++++++++++ .../compartmentdefinition-practitioner.json | 710 +++++++++++++++ .../compartmentdefinition-relatedperson.json | 631 ++++++++++++++ crates/ui/src/compartments.rs | 610 +++++++++++++ crates/ui/src/lib.rs | 121 ++- crates/ui/src/search_params.rs | 816 ++++++++++++++++++ crates/ui/templates/layouts/base.html | 10 +- crates/ui/templates/pages/compartments.html | 152 ++++ .../ui/templates/pages/search-parameters.html | 197 +++++ crates/ui/tests/i18n_http.rs | 2 +- crates/ui/tests/router_http.rs | 96 ++- locales/de/main.ftl | 95 ++ locales/en/main.ftl | 95 ++ locales/es/main.ftl | 95 ++ 39 files changed, 16283 insertions(+), 16 deletions(-) create mode 100644 crates/ui/assets/resource-filter.js create mode 100644 crates/ui/data/compartments/r4/compartmentdefinition-device.json create mode 100644 crates/ui/data/compartments/r4/compartmentdefinition-encounter.json create mode 100644 crates/ui/data/compartments/r4/compartmentdefinition-patient.json create mode 100644 crates/ui/data/compartments/r4/compartmentdefinition-practitioner.json create mode 100644 crates/ui/data/compartments/r4/compartmentdefinition-relatedperson.json create mode 100644 crates/ui/data/compartments/r4b/compartmentdefinition-device.json create mode 100644 crates/ui/data/compartments/r4b/compartmentdefinition-encounter.json create mode 100644 crates/ui/data/compartments/r4b/compartmentdefinition-patient.json create mode 100644 crates/ui/data/compartments/r4b/compartmentdefinition-practitioner.json create mode 100644 crates/ui/data/compartments/r4b/compartmentdefinition-relatedperson.json create mode 100644 crates/ui/data/compartments/r5/compartmentdefinition-device.json create mode 100644 crates/ui/data/compartments/r5/compartmentdefinition-encounter.json create mode 100644 crates/ui/data/compartments/r5/compartmentdefinition-patient.json create mode 100644 crates/ui/data/compartments/r5/compartmentdefinition-practitioner.json create mode 100644 crates/ui/data/compartments/r5/compartmentdefinition-relatedperson.json create mode 100644 crates/ui/data/compartments/r6/compartmentdefinition-device.json create mode 100644 crates/ui/data/compartments/r6/compartmentdefinition-encounter.json create mode 100644 crates/ui/data/compartments/r6/compartmentdefinition-group.json create mode 100644 crates/ui/data/compartments/r6/compartmentdefinition-patient.json create mode 100644 crates/ui/data/compartments/r6/compartmentdefinition-practitioner.json create mode 100644 crates/ui/data/compartments/r6/compartmentdefinition-relatedperson.json create mode 100644 crates/ui/src/compartments.rs create mode 100644 crates/ui/src/search_params.rs create mode 100644 crates/ui/templates/pages/compartments.html create mode 100644 crates/ui/templates/pages/search-parameters.html diff --git a/Cargo.lock b/Cargo.lock index 6d22be996..a1cfff385 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3640,8 +3640,11 @@ dependencies = [ "axum-htmx", "fluent-syntax 0.11.1", "fluent-templates", + "helios-fhir", "http-body-util", "rust-embed", + "serde", + "serde_json", "tokio", "tower", "unic-langid", diff --git a/crates/hfs/Cargo.toml b/crates/hfs/Cargo.toml index 83bf523dc..16acdac1b 100644 --- a/crates/hfs/Cargo.toml +++ b/crates/hfs/Cargo.toml @@ -17,11 +17,13 @@ path = "src/main.rs" [features] default = ["R4", "sqlite", "ui"] -# FHIR version features -R4 = ["helios-fhir/R4", "helios-rest/R4", "helios-audit/R4"] -R4B = ["helios-fhir/R4B", "helios-rest/R4B", "helios-audit/R4B"] -R5 = ["helios-fhir/R5", "helios-rest/R5", "helios-audit/R5"] -R6 = ["helios-fhir/R6", "helios-rest/R6", "helios-audit/R6"] +# FHIR version features. `helios-ui?/…` keeps the UI's viewers (search +# parameters, compartments) scoped to the same versions as the server when +# the optional `ui` feature is on. +R4 = ["helios-fhir/R4", "helios-rest/R4", "helios-audit/R4", "helios-ui?/R4"] +R4B = ["helios-fhir/R4B", "helios-rest/R4B", "helios-audit/R4B", "helios-ui?/R4B"] +R5 = ["helios-fhir/R5", "helios-rest/R5", "helios-audit/R5", "helios-ui?/R5"] +R6 = ["helios-fhir/R6", "helios-rest/R6", "helios-audit/R6", "helios-ui?/R6"] # Build options skip-r6-download = [] @@ -61,7 +63,7 @@ helios-sof = { path = "../sof", version = "0.2.1", default-features = false } helios-auth = { path = "../auth", version = "0.2.1" } helios-audit = { path = "../audit", version = "0.2.1", default-features = false } helios-subscriptions = { path = "../subscriptions", version = "0.2.1", optional = true, default-features = false } -helios-ui = { path = "../ui", version = "0.2.1", optional = true } +helios-ui = { path = "../ui", version = "0.2.1", optional = true, default-features = false } helios-observability = { path = "../observability", version = "0.2.1" } # Export job controller diff --git a/crates/hfs/src/main.rs b/crates/hfs/src/main.rs index 019f26ce1..b7226418a 100644 --- a/crates/hfs/src/main.rs +++ b/crates/hfs/src/main.rs @@ -568,7 +568,7 @@ async fn serve( audit_state: Option>, ) -> anyhow::Result<()> { #[cfg(all(feature = "ui", not(feature = "headless")))] - let app = helios_ui::mount(app, env!("CARGO_PKG_VERSION")); + let app = helios_ui::mount(app, env!("CARGO_PKG_VERSION"), config.data_dir.clone()); let addr = config.socket_addr(); info!(address = %addr, "Server listening"); diff --git a/crates/ui/Cargo.toml b/crates/ui/Cargo.toml index 2ef07d928..854b695fa 100644 --- a/crates/ui/Cargo.toml +++ b/crates/ui/Cargo.toml @@ -9,7 +9,29 @@ repository.workspace = true homepage = "https://github.com/HeliosSoftware/hfs/tree/main/crates/ui" keywords = ["helios-software", "fhir", "ui", "htmx"] +[features] +# FHIR version features forward to helios-fhir so the viewer read paths +# (SearchParameter registry snapshot, compartment definitions) cover exactly +# the versions the server is built with. R4 is the workspace default. +default = ["R4"] +R4 = ["helios-fhir/R4"] +R4B = ["helios-fhir/R4B"] +R5 = ["helios-fhir/R5"] +R6 = ["helios-fhir/R6"] + [dependencies] +# Read paths into the rest of the workspace: the SearchParameter spec loader +# and registry types (#238) and the per-version compartment-params table +# (#237). Data flows one way — the UI depends on the workspace, never the +# reverse. +helios-fhir = { path = "../fhir", version = "0.2.1", default-features = false } + +# Parses the vendored CompartmentDefinition spec JSONs (data/compartments/) +# at first use, and derives the query-string extractors. Both already in the +# workspace dependency graph via helios-fhir. +serde = { version = "1", features = ["derive"] } +serde_json = "1" + # Web framework (matches the version used by helios-hfs / helios-rest) axum = "0.8" diff --git a/crates/ui/README.md b/crates/ui/README.md index 37be6c375..abaaaffd5 100644 --- a/crates/ui/README.md +++ b/crates/ui/README.md @@ -163,6 +163,20 @@ Mounted under `/ui` when running `hfs` (the `ui` feature is on by default; the `headless` feature disables it): - `GET /ui` — full landing page (`pages/index.html` → `layouts/base.html`). +- `GET /ui/queries` — saved FHIR queries per resource type (#234), hydrated + client-side from the per-user settings document. +- `GET /ui/search-parameters` — read-only SearchParameter viewer (#238): + Resource Filter rail, type/source facet rows, paginated table, and a detail + panel, over the same snapshot the storage backends seed their registries + from (embedded fallback + the spec bundle in `HFS_DATA_DIR`). Every filter + is a link, so the whole screen works without JavaScript; the write half + lands behind #235. +- `GET /ui/compartments` — Compartment viewer & route tester (#237): the + vendored spec `CompartmentDefinition`s (`data/compartments/`, parity-tested + against the codegen'd `get_compartment_params()` table), a Members tab, and + a tester that answers "is this type in this compartment, via which + parameters, and what search does the server run?" — resolved through the + same table the REST compartment handler consults. - `GET /ui/status` — a system-status read path. Returns the `partials/status.html` **fragment** on `HX-Request`, and the **full page** on a hard navigation — demonstrating the same URL working with and without JS. diff --git a/crates/ui/assets/app.css b/crates/ui/assets/app.css index 9f672120f..152ddd12a 100644 --- a/crates/ui/assets/app.css +++ b/crates/ui/assets/app.css @@ -58,6 +58,14 @@ --accent-soft: rgb(51 184 255 / 15%); /* Menu panel input */ --input-bg: #f5f5f5; + /* Semantic status tokens, held off the accent hue so state never reads + as branding (#237/#238 design notes). */ + --ok: #2fae64; + --ok-soft: rgb(47 174 100 / 14%); + --warn: #d9930d; + --warn-soft: rgb(217 147 13 / 14%); + --danger: #d94f4f; + --danger-soft: rgb(217 79 79 / 12%); font-family: Figtree, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; background: var(--bg); @@ -77,6 +85,9 @@ --outline: #353535; --grid-line: rgb(255 255 255 / 12%); --input-bg: #1a1a1a; + --ok: #4cc57e; + --warn: #e5a83a; + --danger: #e57373; } * { @@ -761,3 +772,593 @@ a.nav-item:hover { flex-wrap: wrap; } } + +/* ---- Registry viewers: shared filter layout (#237/#238) ----------------- */ + +/* These pages want the full pane width; .content keeps its dashboard cap. */ +.content--wide { + max-width: none; +} + +.notice { + margin: 0 0 16px; + padding: 10px 14px; + font-size: 13px; + border-radius: 10px; +} + +.notice--warn { + color: var(--text); + background: var(--warn-soft); + border: 1px solid var(--warn); +} + +.filter-layout { + display: grid; + grid-template-columns: 280px minmax(0, 1fr) 360px; + gap: 20px; + align-items: start; +} + +.filter-layout--two { + grid-template-columns: 280px minmax(0, 1fr); +} + +.version-switch { + display: flex; + gap: 4px; + margin-top: 10px; +} + +.version-switch a { + padding: 4px 10px; + border: 1px solid var(--outline); + border-radius: 999px; + font-size: 12px; + font-weight: 500; + color: var(--muted); + text-decoration: none; +} + +.version-switch a[aria-current="true"] { + background: var(--accent-soft); + border-color: var(--accent); + color: var(--text-strong); +} + +/* Resource Filter rail (shared primitive; the Resources screen reuses it). */ + +.filter-rail { + position: sticky; + top: 20px; + display: flex; + flex-direction: column; + gap: 10px; + max-height: calc(100vh - 110px); + padding: 14px; +} + +.filter-rail__search { + display: flex; + align-items: center; + gap: 8px; + padding: 0 10px; + background: var(--input-bg); + border: 1px solid var(--surface-border); + border-radius: 10px; + color: var(--muted); +} + +.filter-rail__search input { + flex: 1; + height: 34px; + border: 0; + background: transparent; + font: inherit; + font-size: 13px; + color: var(--text); + outline: none; +} + +.filter-rail__heading { + margin: 6px 4px 0; + font-size: 10px; + font-weight: 600; + letter-spacing: 0.6px; + text-transform: uppercase; + color: var(--muted); +} + +.filter-rail__list { + display: flex; + flex-direction: column; + gap: 2px; + overflow-y: auto; +} + +.filter-rail__group { + display: flex; + flex-direction: column; + gap: 2px; +} + +.filter-rail__item { + display: flex; + align-items: center; + gap: 8px; + width: 100%; + padding: 7px 10px; + border-radius: 9px; + font-size: 13px; + font-weight: 500; + color: var(--text); + text-decoration: none; +} + +.filter-rail__item:hover { + background: var(--accent-soft); +} + +.filter-rail__item[aria-current="true"] { + background: var(--accent-soft); + color: var(--text-strong); + font-weight: 600; +} + +.filter-rail__item .count { + margin-left: auto; + font-size: 11px; + color: var(--muted); + font-variant-numeric: tabular-nums; +} + +.filter-rail__note { + margin: 8px 4px 0; + padding-top: 10px; + border-top: 1px solid var(--surface-border); + font-size: 11.5px; + line-height: 1.5; + color: var(--muted); +} + +.filter-center { + display: flex; + flex-direction: column; + gap: 14px; + min-width: 0; +} + +/* Facet chip rows */ + +.facets { + display: flex; + flex-wrap: wrap; + gap: 6px; + align-items: center; + padding: 12px 14px; +} + +.facets--bare { + padding: 0 0 12px; +} + +.facet-label { + margin-right: 4px; + font-size: 10px; + font-weight: 600; + letter-spacing: 0.6px; + text-transform: uppercase; + color: var(--muted); +} + +.chip { + display: inline-flex; + align-items: center; + gap: 6px; + height: 26px; + padding: 0 10px; + border: 1px solid var(--surface-border); + border-radius: 999px; + font-size: 12px; + color: var(--text); + text-decoration: none; +} + +.chip:hover { + border-color: var(--accent); +} + +.chip[aria-current="true"] { + background: var(--accent-soft); + border-color: var(--accent); + color: var(--text-strong); + font-weight: 600; +} + +.chip .count { + font-size: 11px; + color: var(--muted); + font-variant-numeric: tabular-nums; +} + +/* Data table */ + +.table-wrap { + overflow-x: auto; +} + +.data-table { + width: 100%; + border-collapse: collapse; + font-size: 13px; +} + +.data-table th { + padding: 12px 14px 8px; + border-bottom: 1px solid var(--surface-border); + font-size: 10px; + font-weight: 600; + letter-spacing: 0.6px; + text-transform: uppercase; + text-align: left; + color: var(--muted); +} + +.data-table td { + padding: 9px 14px; + border-bottom: 1px solid var(--surface-border); + vertical-align: top; +} + +.data-table tbody tr:hover td, +.data-table tbody tr[aria-selected="true"] td { + background: var(--accent-soft); +} + +.row-link { + display: flex; + flex-direction: column; + gap: 2px; + color: inherit; + text-decoration: none; +} + +.row-link .code, +.data-table .code { + font-weight: 600; + color: var(--text-strong); +} + +.url { + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 11px; + color: var(--muted); + overflow-wrap: anywhere; +} + +.table-foot { + display: flex; + flex-wrap: wrap; + gap: 10px; + align-items: center; + justify-content: space-between; + padding: 10px 14px; + font-size: 12px; + color: var(--muted); +} + +.pagination { + display: flex; + flex-wrap: wrap; + gap: 4px; +} + +.btn--current { + background: var(--accent-soft); + border-color: var(--accent); + color: var(--text-strong); +} + +/* Status tags (small pills). Distinct from .pill, the large control chip. */ + +.tag { + display: inline-flex; + align-items: center; + height: 20px; + padding: 0 8px; + border-radius: 999px; + font-size: 11px; + font-weight: 600; +} + +.tag--type { + background: var(--accent-soft); + color: var(--text); +} + +.tag--param { + background: var(--accent-soft); + color: var(--text); + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-weight: 500; +} + +.tag--embedded { + background: var(--input-bg); + border: 1px solid var(--surface-border); + color: var(--muted); +} + +.tag--stored, +.tag--member { + background: var(--ok-soft); + color: var(--ok); +} + +.tag--config, +.tag--overrides, +.tag--shadowed { + background: var(--warn-soft); + color: var(--warn); +} + +.tag--conflict, +.tag--excluded { + background: var(--danger-soft); + color: var(--danger); +} + +/* Detail panel (right rail on the SearchParameter viewer) */ + +.detail { + position: sticky; + top: 20px; + display: flex; + flex-direction: column; + gap: 12px; + max-height: calc(100vh - 110px); + padding: 16px; + overflow-y: auto; +} + +.detail__title { + display: flex; + align-items: center; + gap: 8px; + margin: 0; + font-size: 15px; + color: var(--text-strong); +} + +.detail__field { + display: flex; + flex-direction: column; + gap: 5px; + font-size: 13px; +} + +.detail__field > span { + font-size: 10px; + font-weight: 600; + letter-spacing: 0.6px; + text-transform: uppercase; + color: var(--muted); +} + +.detail__field code { + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 11.5px; + overflow-wrap: anywhere; +} + +.detail__field input { + height: 34px; + padding: 0 10px; + font: inherit; + font-size: 13px; + color: var(--text); + background: var(--input-bg); + border: 1px solid var(--surface-border); + border-radius: 9px; + outline: none; +} + +.detail__field input:focus { + border-color: var(--accent); +} + +.detail__tags { + display: flex; + flex-wrap: wrap; + gap: 5px; +} + +.detail__code { + margin: 0; + padding: 10px 12px; + background: var(--input-bg); + border-radius: 9px; + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 12px; + line-height: 1.55; + overflow-x: auto; + color: var(--text); + white-space: pre-wrap; + overflow-wrap: anywhere; +} + +.detail__hint { + margin: 0; + font-size: 11.5px; + line-height: 1.5; + color: var(--muted); +} + +.detail__hint-inline { + font-size: 11.5px; + color: var(--muted); +} + +/* Lint findings (the validation surface the editor grows into) */ + +.lint { + display: flex; + flex-direction: column; + gap: 6px; +} + +.lint__item { + display: flex; + gap: 8px; + padding: 8px 10px; + border-radius: 9px; + font-size: 12px; + line-height: 1.45; +} + +.lint__item--error { + background: var(--danger-soft); + border: 1px solid var(--danger); +} + +.lint__item--warn { + background: var(--warn-soft); + border: 1px solid var(--warn); +} + +.lint__item--info { + background: var(--accent-soft); + border: 1px solid var(--accent); +} + +.lint__sev { + flex-shrink: 0; + font-weight: 700; +} + +.lint__item--error .lint__sev { color: var(--danger); } +.lint__item--warn .lint__sev { color: var(--warn); } +.lint__item--info .lint__sev { color: var(--accent); } + +/* Compartment viewer: tabs, members, tester */ + +.tabs { + display: flex; + gap: 4px; + padding: 8px; +} + +.tab { + padding: 8px 16px; + border-radius: 9px; + font-size: 13px; + font-weight: 600; + color: var(--muted); + text-decoration: none; +} + +.tab:hover { + color: var(--text); +} + +.tab[aria-current="true"] { + background: var(--accent-soft); + color: var(--text-strong); +} + +.panel { + padding: 18px; +} + +.kv-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 14px 18px; + margin-bottom: 14px; +} + +.detail__field--wide { + grid-column: 1 / -1; +} + +.members { + display: flex; + flex-direction: column; + max-height: 560px; + overflow-y: auto; +} + +.member { + display: flex; + align-items: center; + gap: 10px; + padding: 8px 6px; + border-bottom: 1px solid var(--surface-border); + font-size: 13px; +} + +.member__name { + flex-shrink: 0; + width: 220px; + font-weight: 600; + color: var(--text-strong); +} + +.member__params { + display: flex; + flex: 1; + flex-wrap: wrap; + gap: 5px; + align-items: center; +} + +.tester { + display: flex; + flex-wrap: wrap; + gap: 10px; + align-items: end; +} + +.tester .detail__field { + min-width: 170px; +} + +.tester-result { + margin-top: 16px; + display: flex; + flex-direction: column; + gap: 8px; + padding: 14px 16px; + background: var(--bg-content); + border: 1px solid var(--surface-border); + border-radius: 12px; +} + +.tester-result__title { + margin: 0; + font-size: 13px; + color: var(--text-strong); +} + +.tester-result__title--ok { color: var(--ok); } +.tester-result__title--danger { color: var(--danger); } + +@media (max-width: 1250px) { + .filter-layout { + grid-template-columns: 1fr; + } + + .filter-rail, + .detail { + position: static; + max-height: none; + } + + .member__name { + width: 150px; + } + + .kv-grid { + grid-template-columns: 1fr; + } +} diff --git a/crates/ui/assets/resource-filter.js b/crates/ui/assets/resource-filter.js new file mode 100644 index 000000000..122a0ca67 --- /dev/null +++ b/crates/ui/assets/resource-filter.js @@ -0,0 +1,60 @@ +/* + * Resource Filter rail: "Recently used" group (#238). + * + * Progressive enhancement only — the rail is fully server-rendered and works + * without this script; recents are a per-browser convenience kept in + * localStorage (`data-recent-key` on the group container). The group stays + * hidden until it has at least one entry, and entries are clones of the + * server-rendered rail items so hrefs, counts, and i18n come from the page, + * never from here. + */ +(function () { + "use strict"; + + var MAX_RECENT = 3; + + var group = document.querySelector("[data-recent-key]"); + var list = document.getElementById("sp-rail-list"); + if (!group || !list) return; + var key = group.getAttribute("data-recent-key"); + + function readRecents() { + try { + var parsed = JSON.parse(localStorage.getItem(key) || "[]"); + return Array.isArray(parsed) ? parsed.filter(function (n) { return typeof n === "string"; }) : []; + } catch (e) { + return []; + } + } + + function writeRecents(names) { + try { + localStorage.setItem(key, JSON.stringify(names.slice(0, MAX_RECENT))); + } catch (e) { + /* Private mode / quota: recents just don't persist. */ + } + } + + function renderRecents() { + group.querySelectorAll(".filter-rail__item").forEach(function (n) { n.remove(); }); + var shown = 0; + readRecents().forEach(function (name) { + var item = list.querySelector('[data-type="' + CSS.escape(name) + '"]'); + if (!item) return; + group.appendChild(item.cloneNode(true)); + shown++; + }); + group.hidden = shown === 0; + } + + document.addEventListener("click", function (event) { + var item = event.target.closest("[data-type]"); + if (!item) return; + var name = item.getAttribute("data-type"); + var recents = readRecents().filter(function (n) { return n !== name; }); + recents.unshift(name); + writeRecents(recents); + }); + + renderRecents(); +})(); diff --git a/crates/ui/data/compartments/r4/compartmentdefinition-device.json b/crates/ui/data/compartments/r4/compartmentdefinition-device.json new file mode 100644 index 000000000..30e9b48d7 --- /dev/null +++ b/crates/ui/data/compartments/r4/compartmentdefinition-device.json @@ -0,0 +1,578 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "device", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice, subject, requester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003etarget\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, device\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"effectevidencesynthesis.html\"\u003eEffectEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproduct.html\"\u003eMedicinalProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductauthorization.html\"\u003eMedicinalProductAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductcontraindication.html\"\u003eMedicinalProductContraindication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductindication.html\"\u003eMedicinalProductIndication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductingredient.html\"\u003eMedicinalProductIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductinteraction.html\"\u003eMedicinalProductInteraction\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductmanufactured.html\"\u003eMedicinalProductManufactured\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpackaged.html\"\u003eMedicinalProductPackaged\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpharmaceutical.html\"\u003eMedicinalProductPharmaceutical\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductundesirableeffect.html\"\u003eMedicinalProductUndesirableEffect\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskevidencesynthesis.html\"\u003eRiskEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancespecification.html\"\u003eSubstanceSpecification\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/device", + "version": "4.0.1", + "name": "Base FHIR compartment definition for Device", + "status": "draft", + "experimental": true, + "date": "2019-11-01T09:29:23+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the device compartment for each Device resource, and the identity of the compartment is the same as the Device. The set of resources associated with a particular device", + "code": "Device", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdverseEvent" + }, + { + "code": "AllergyIntolerance" + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ] + }, + { + "code": "Basic" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan" + }, + { + "code": "CareTeam" + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Claim", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition" + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "device", + "subject", + "requester", + "performer" + ] + }, + { + "code": "DeviceUseStatement", + "param": [ + "device" + ] + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "subject", + "author" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ] + }, + { + "code": "EffectEvidenceSynthesis" + }, + { + "code": "Encounter" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag", + "param": [ + "author" + ] + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "participant" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media", + "param": [ + "subject" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "device" + ] + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest" + }, + { + "code": "MedicationStatement" + }, + { + "code": "MedicinalProduct" + }, + { + "code": "MedicinalProductAuthorization" + }, + { + "code": "MedicinalProductContraindication" + }, + { + "code": "MedicinalProductIndication" + }, + { + "code": "MedicinalProductIngredient" + }, + { + "code": "MedicinalProductInteraction" + }, + { + "code": "MedicinalProductManufactured" + }, + { + "code": "MedicinalProductPackaged" + }, + { + "code": "MedicinalProductPharmaceutical" + }, + { + "code": "MedicinalProductUndesirableEffect" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "target" + ] + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder" + }, + { + "code": "Observation", + "param": [ + "subject", + "device" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure" + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author" + ] + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestGroup", + "param": [ + "author" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ] + }, + { + "code": "RiskEvidenceSynthesis" + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SubstanceSpecification" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4/compartmentdefinition-encounter.json b/crates/ui/data/compartments/r4/compartmentdefinition-encounter.json new file mode 100644 index 000000000..60beecf37 --- /dev/null +++ b/crates/ui/data/compartments/r4/compartmentdefinition-encounter.json @@ -0,0 +1,540 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "encounter", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003econtext\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erelated-ref\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003econtext\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"effectevidencesynthesis.html\"\u003eEffectEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproduct.html\"\u003eMedicinalProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductauthorization.html\"\u003eMedicinalProductAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductcontraindication.html\"\u003eMedicinalProductContraindication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductindication.html\"\u003eMedicinalProductIndication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductingredient.html\"\u003eMedicinalProductIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductinteraction.html\"\u003eMedicinalProductInteraction\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductmanufactured.html\"\u003eMedicinalProductManufactured\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpackaged.html\"\u003eMedicinalProductPackaged\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpharmaceutical.html\"\u003eMedicinalProductPharmaceutical\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductundesirableeffect.html\"\u003eMedicinalProductUndesirableEffect\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskevidencesynthesis.html\"\u003eRiskEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancespecification.html\"\u003eSubstanceSpecification\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/encounter", + "version": "4.0.1", + "name": "Base FHIR compartment definition for Encounter", + "status": "draft", + "experimental": true, + "date": "2019-11-01T09:29:23+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the encounter compartment for each encounter resource, and the identity of the compartment is the same as the encounter. The set of resources associated with a particular encounter", + "code": "Encounter", + "search": true, + "resource": [ + { + "code": "Account" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdverseEvent" + }, + { + "code": "AllergyIntolerance" + }, + { + "code": "Appointment" + }, + { + "code": "AppointmentResponse" + }, + { + "code": "AuditEvent" + }, + { + "code": "Basic" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "encounter" + ] + }, + { + "code": "CareTeam", + "param": [ + "encounter" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "context" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Claim", + "param": [ + "encounter" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression", + "param": [ + "encounter" + ] + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "encounter" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "encounter" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "encounter" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "encounter" + ] + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue" + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "encounter" + ] + }, + { + "code": "DeviceUseStatement" + }, + { + "code": "DiagnosticReport", + "param": [ + "encounter" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "related-ref" + ] + }, + { + "code": "DocumentReference", + "param": [ + "encounter" + ] + }, + { + "code": "EffectEvidenceSynthesis" + }, + { + "code": "Encounter", + "param": [ + "{def}" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "encounter" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice" + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List" + }, + { + "code": "Location" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media", + "param": [ + "encounter" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "context" + ] + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "encounter" + ] + }, + { + "code": "MedicationStatement" + }, + { + "code": "MedicinalProduct" + }, + { + "code": "MedicinalProductAuthorization" + }, + { + "code": "MedicinalProductContraindication" + }, + { + "code": "MedicinalProductIndication" + }, + { + "code": "MedicinalProductIngredient" + }, + { + "code": "MedicinalProductInteraction" + }, + { + "code": "MedicinalProductManufactured" + }, + { + "code": "MedicinalProductPackaged" + }, + { + "code": "MedicinalProductPharmaceutical" + }, + { + "code": "MedicinalProductUndesirableEffect" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder", + "param": [ + "encounter" + ] + }, + { + "code": "Observation", + "param": [ + "encounter" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "encounter" + ] + }, + { + "code": "Provenance" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "encounter" + ] + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestGroup", + "param": [ + "encounter" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment" + }, + { + "code": "RiskEvidenceSynthesis" + }, + { + "code": "Schedule" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "encounter" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SubstanceSpecification" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest" + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "encounter" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4/compartmentdefinition-patient.json b/crates/ui/data/compartments/r4/compartmentdefinition-patient.json new file mode 100644 index 000000000..e24b22a99 --- /dev/null +++ b/crates/ui/data/compartments/r4/compartmentdefinition-patient.json @@ -0,0 +1,697 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "patient", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, recorder, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, sender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, sender, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, beneficiary, payor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer, subject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eindividual\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"effectevidencesynthesis.html\"\u003eEffectEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproduct.html\"\u003eMedicinalProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductauthorization.html\"\u003eMedicinalProductAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductcontraindication.html\"\u003eMedicinalProductContraindication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductindication.html\"\u003eMedicinalProductIndication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductingredient.html\"\u003eMedicinalProductIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductinteraction.html\"\u003eMedicinalProductInteraction\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductmanufactured.html\"\u003eMedicinalProductManufactured\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpackaged.html\"\u003eMedicinalProductPackaged\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpharmaceutical.html\"\u003eMedicinalProductPharmaceutical\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductundesirableeffect.html\"\u003eMedicinalProductUndesirableEffect\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskevidencesynthesis.html\"\u003eRiskEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancespecification.html\"\u003eSubstanceSpecification\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/patient", + "version": "4.0.1", + "name": "Base FHIR compartment definition for Patient", + "status": "draft", + "experimental": true, + "date": "2019-11-01T09:29:23+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the patient compartment for each patient resource, and the identity of the compartment is the same as the patient. When a patient is linked to another patient, all the records associated with the linked patient are in the compartment associated with the target of the link.. The set of resources associated with a particular patient", + "code": "Patient", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "subject" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "patient", + "recorder", + "asserter" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent", + "param": [ + "patient" + ] + }, + { + "code": "Basic", + "param": [ + "patient", + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure", + "param": [ + "patient" + ] + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "patient", + "performer" + ] + }, + { + "code": "CareTeam", + "param": [ + "patient", + "participant" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "subject" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Claim", + "param": [ + "patient", + "payee" + ] + }, + { + "code": "ClaimResponse", + "param": [ + "patient" + ] + }, + { + "code": "ClinicalImpression", + "param": [ + "subject" + ] + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "subject", + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "subject", + "sender", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "patient", + "asserter" + ] + }, + { + "code": "Consent", + "param": [ + "patient" + ] + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "beneficiary", + "payor" + ] + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "patient" + ] + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "patient" + ] + }, + { + "code": "DetectedIssue", + "param": [ + "patient" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "DeviceUseStatement", + "param": [ + "subject" + ] + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "subject", + "author", + "recipient" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ] + }, + { + "code": "EffectEvidenceSynthesis" + }, + { + "code": "Encounter", + "param": [ + "patient" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest", + "param": [ + "subject" + ] + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "patient" + ] + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "patient", + "payee" + ] + }, + { + "code": "FamilyMemberHistory", + "param": [ + "patient" + ] + }, + { + "code": "Flag", + "param": [ + "patient" + ] + }, + { + "code": "Goal", + "param": [ + "patient" + ] + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy", + "param": [ + "patient" + ] + }, + { + "code": "Immunization", + "param": [ + "patient" + ] + }, + { + "code": "ImmunizationEvaluation", + "param": [ + "patient" + ] + }, + { + "code": "ImmunizationRecommendation", + "param": [ + "patient" + ] + }, + { + "code": "ImplementationGuide" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "subject", + "patient", + "recipient" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "param": [ + "patient" + ] + }, + { + "code": "Media", + "param": [ + "subject" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "patient", + "performer", + "subject" + ] + }, + { + "code": "MedicationDispense", + "param": [ + "subject", + "patient", + "receiver" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "subject" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "subject" + ] + }, + { + "code": "MedicinalProduct" + }, + { + "code": "MedicinalProductAuthorization" + }, + { + "code": "MedicinalProductContraindication" + }, + { + "code": "MedicinalProductIndication" + }, + { + "code": "MedicinalProductIngredient" + }, + { + "code": "MedicinalProductInteraction" + }, + { + "code": "MedicinalProductManufactured" + }, + { + "code": "MedicinalProductPackaged" + }, + { + "code": "MedicinalProductPharmaceutical" + }, + { + "code": "MedicinalProductUndesirableEffect" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence", + "param": [ + "patient" + ] + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder", + "param": [ + "patient" + ] + }, + { + "code": "Observation", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "Patient", + "param": [ + "link" + ] + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person", + "param": [ + "patient" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "patient", + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "patient" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "subject", + "author" + ] + }, + { + "code": "RelatedPerson", + "param": [ + "patient" + ] + }, + { + "code": "RequestGroup", + "param": [ + "subject", + "participant" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject", + "param": [ + "individual" + ] + }, + { + "code": "RiskAssessment", + "param": [ + "subject" + ] + }, + { + "code": "RiskEvidenceSynthesis" + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SubstanceSpecification" + }, + { + "code": "SupplyDelivery", + "param": [ + "patient" + ] + }, + { + "code": "SupplyRequest", + "param": [ + "subject" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "patient" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4/compartmentdefinition-practitioner.json b/crates/ui/data/compartments/r4/compartmentdefinition-practitioner.json new file mode 100644 index 000000000..b8542b743 --- /dev/null +++ b/crates/ui/data/compartments/r4/compartmentdefinition-practitioner.json @@ -0,0 +1,671 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "practitioner", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eassessor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, authenticator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecare-manager\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, operator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereceiver, author, responsible, enterer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprovider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003egeneral-practitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprovider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprincipalinvestigator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecollector\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esupplier, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprescriber\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"effectevidencesynthesis.html\"\u003eEffectEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproduct.html\"\u003eMedicinalProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductauthorization.html\"\u003eMedicinalProductAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductcontraindication.html\"\u003eMedicinalProductContraindication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductindication.html\"\u003eMedicinalProductIndication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductingredient.html\"\u003eMedicinalProductIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductinteraction.html\"\u003eMedicinalProductInteraction\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductmanufactured.html\"\u003eMedicinalProductManufactured\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpackaged.html\"\u003eMedicinalProductPackaged\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpharmaceutical.html\"\u003eMedicinalProductPharmaceutical\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductundesirableeffect.html\"\u003eMedicinalProductUndesirableEffect\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskevidencesynthesis.html\"\u003eRiskEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancespecification.html\"\u003eSubstanceSpecification\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/practitioner", + "version": "4.0.1", + "name": "Base FHIR compartment definition for Practitioner", + "status": "draft", + "experimental": true, + "date": "2019-11-01T09:29:23+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the practitioner compartment for each Practitioner resource, and the identity of the compartment is the same as the Practitioner. The set of resources associated with a particular practitioner", + "code": "Practitioner", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "recorder", + "asserter" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ] + }, + { + "code": "Basic", + "param": [ + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "performer" + ] + }, + { + "code": "CareTeam", + "param": [ + "participant" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Claim", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ] + }, + { + "code": "ClaimResponse", + "param": [ + "requestor" + ] + }, + { + "code": "ClinicalImpression", + "param": [ + "assessor" + ] + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "sender", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "asserter" + ] + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "enterer", + "provider" + ] + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "requestor" + ] + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "requester", + "performer" + ] + }, + { + "code": "DeviceUseStatement" + }, + { + "code": "DiagnosticReport", + "param": [ + "performer" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "subject", + "author", + "recipient" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author", + "authenticator" + ] + }, + { + "code": "EffectEvidenceSynthesis" + }, + { + "code": "Encounter", + "param": [ + "practitioner", + "participant" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "care-manager" + ] + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag", + "param": [ + "author" + ] + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization", + "param": [ + "performer" + ] + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "participant" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage", + "param": [ + "author" + ] + }, + { + "code": "List", + "param": [ + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media", + "param": [ + "subject", + "operator" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "performer" + ] + }, + { + "code": "MedicationDispense", + "param": [ + "performer", + "receiver" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "requester" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ] + }, + { + "code": "MedicinalProduct" + }, + { + "code": "MedicinalProductAuthorization" + }, + { + "code": "MedicinalProductContraindication" + }, + { + "code": "MedicinalProductIndication" + }, + { + "code": "MedicinalProductIngredient" + }, + { + "code": "MedicinalProductInteraction" + }, + { + "code": "MedicinalProductManufactured" + }, + { + "code": "MedicinalProductPackaged" + }, + { + "code": "MedicinalProductPharmaceutical" + }, + { + "code": "MedicinalProductUndesirableEffect" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "receiver", + "author", + "responsible", + "enterer" + ] + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder", + "param": [ + "provider" + ] + }, + { + "code": "Observation", + "param": [ + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "Patient", + "param": [ + "general-practitioner" + ] + }, + { + "code": "PaymentNotice", + "param": [ + "provider" + ] + }, + { + "code": "PaymentReconciliation", + "param": [ + "requestor" + ] + }, + { + "code": "Person", + "param": [ + "practitioner" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner", + "param": [ + "{def}" + ] + }, + { + "code": "PractitionerRole", + "param": [ + "practitioner" + ] + }, + { + "code": "Procedure", + "param": [ + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ] + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestGroup", + "param": [ + "participant", + "author" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy", + "param": [ + "principalinvestigator" + ] + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ] + }, + { + "code": "RiskEvidenceSynthesis" + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "collector" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SubstanceSpecification" + }, + { + "code": "SupplyDelivery", + "param": [ + "supplier", + "receiver" + ] + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "prescriber" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4/compartmentdefinition-relatedperson.json b/crates/ui/data/compartments/r4/compartmentdefinition-relatedperson.json new file mode 100644 index 000000000..0b7100860 --- /dev/null +++ b/crates/ui/data/compartments/r4/compartmentdefinition-relatedperson.json @@ -0,0 +1,569 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "relatedPerson", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, payor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"effectevidencesynthesis.html\"\u003eEffectEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproduct.html\"\u003eMedicinalProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductauthorization.html\"\u003eMedicinalProductAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductcontraindication.html\"\u003eMedicinalProductContraindication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductindication.html\"\u003eMedicinalProductIndication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductingredient.html\"\u003eMedicinalProductIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductinteraction.html\"\u003eMedicinalProductInteraction\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductmanufactured.html\"\u003eMedicinalProductManufactured\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpackaged.html\"\u003eMedicinalProductPackaged\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductpharmaceutical.html\"\u003eMedicinalProductPharmaceutical\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductundesirableeffect.html\"\u003eMedicinalProductUndesirableEffect\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskevidencesynthesis.html\"\u003eRiskEvidenceSynthesis\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancespecification.html\"\u003eSubstanceSpecification\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/relatedPerson", + "version": "4.0.1", + "name": "Base FHIR compartment definition for RelatedPerson", + "status": "draft", + "experimental": true, + "date": "2019-11-01T09:29:23+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the relatedPerson compartment for each relatedPerson resource, and the identity of the compartment is the same as the relatedPerson. The set of resources associated with a particular \u0027related person\u0027", + "code": "RelatedPerson", + "search": true, + "resource": [ + { + "code": "Account" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "asserter" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent" + }, + { + "code": "Basic", + "param": [ + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "performer" + ] + }, + { + "code": "CareTeam", + "param": [ + "participant" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Claim", + "param": [ + "payee" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "sender", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "asserter" + ] + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "payor" + ] + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue" + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest" + }, + { + "code": "DeviceUseStatement" + }, + { + "code": "DiagnosticReport" + }, + { + "code": "DocumentManifest", + "param": [ + "author", + "recipient" + ] + }, + { + "code": "DocumentReference", + "param": [ + "author" + ] + }, + { + "code": "EffectEvidenceSynthesis" + }, + { + "code": "Encounter", + "param": [ + "participant" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "payee" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "recipient" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List" + }, + { + "code": "Location" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "performer" + ] + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest" + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ] + }, + { + "code": "MedicinalProduct" + }, + { + "code": "MedicinalProductAuthorization" + }, + { + "code": "MedicinalProductContraindication" + }, + { + "code": "MedicinalProductIndication" + }, + { + "code": "MedicinalProductIngredient" + }, + { + "code": "MedicinalProductInteraction" + }, + { + "code": "MedicinalProductManufactured" + }, + { + "code": "MedicinalProductPackaged" + }, + { + "code": "MedicinalProductPharmaceutical" + }, + { + "code": "MedicinalProductUndesirableEffect" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder" + }, + { + "code": "Observation", + "param": [ + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "Patient", + "param": [ + "link" + ] + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person", + "param": [ + "link" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ] + }, + { + "code": "RelatedPerson", + "param": [ + "{def}" + ] + }, + { + "code": "RequestGroup", + "param": [ + "participant" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment" + }, + { + "code": "RiskEvidenceSynthesis" + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SubstanceSpecification" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4b/compartmentdefinition-device.json b/crates/ui/data/compartments/r4b/compartmentdefinition-device.json new file mode 100644 index 000000000..bc91a250a --- /dev/null +++ b/crates/ui/data/compartments/r4b/compartmentdefinition-device.json @@ -0,0 +1,563 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "device", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice, subject, requester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003etarget\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, device\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/device", + "version": "4.3.0", + "name": "Base FHIR compartment definition for Device", + "status": "draft", + "experimental": true, + "date": "2022-05-28T12:47:40+10:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the device compartment for each Device resource, and the identity of the compartment is the same as the Device. The set of resources associated with a particular device", + "code": "Device", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent" + }, + { + "code": "AllergyIntolerance" + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ] + }, + { + "code": "Basic" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan" + }, + { + "code": "CareTeam" + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition" + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "device", + "subject", + "requester", + "performer" + ] + }, + { + "code": "DeviceUseStatement", + "param": [ + "device" + ] + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "subject", + "author" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ] + }, + { + "code": "Encounter" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag", + "param": [ + "author" + ] + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "participant" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media", + "param": [ + "subject" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "device" + ] + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest" + }, + { + "code": "MedicationStatement" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "target" + ] + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "subject", + "device" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure" + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestGroup", + "param": [ + "author" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ] + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4b/compartmentdefinition-encounter.json b/crates/ui/data/compartments/r4b/compartmentdefinition-encounter.json new file mode 100644 index 000000000..50f7837ee --- /dev/null +++ b/crates/ui/data/compartments/r4b/compartmentdefinition-encounter.json @@ -0,0 +1,525 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "encounter", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003econtext\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erelated-ref\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003econtext\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/encounter", + "version": "4.3.0", + "name": "Base FHIR compartment definition for Encounter", + "status": "draft", + "experimental": true, + "date": "2022-05-28T12:47:40+10:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the encounter compartment for each encounter resource, and the identity of the compartment is the same as the encounter. The set of resources associated with a particular encounter", + "code": "Encounter", + "search": true, + "resource": [ + { + "code": "Account" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent" + }, + { + "code": "AllergyIntolerance" + }, + { + "code": "Appointment" + }, + { + "code": "AppointmentResponse" + }, + { + "code": "AuditEvent" + }, + { + "code": "Basic" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "encounter" + ] + }, + { + "code": "CareTeam", + "param": [ + "encounter" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "context" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "encounter" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression", + "param": [ + "encounter" + ] + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "encounter" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "encounter" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "encounter" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "encounter" + ] + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue" + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "encounter" + ] + }, + { + "code": "DeviceUseStatement" + }, + { + "code": "DiagnosticReport", + "param": [ + "encounter" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "related-ref" + ] + }, + { + "code": "DocumentReference", + "param": [ + "encounter" + ] + }, + { + "code": "Encounter", + "param": [ + "{def}" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "encounter" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice" + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media", + "param": [ + "encounter" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "context" + ] + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "encounter" + ] + }, + { + "code": "MedicationStatement" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder", + "param": [ + "encounter" + ] + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "encounter" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "encounter" + ] + }, + { + "code": "Provenance" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "encounter" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestGroup", + "param": [ + "encounter" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment" + }, + { + "code": "Schedule" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "encounter" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest" + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "encounter" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4b/compartmentdefinition-patient.json b/crates/ui/data/compartments/r4b/compartmentdefinition-patient.json new file mode 100644 index 000000000..754575a95 --- /dev/null +++ b/crates/ui/data/compartments/r4b/compartmentdefinition-patient.json @@ -0,0 +1,682 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "patient", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, recorder, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, sender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, sender, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, beneficiary, payor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer, subject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eindividual\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/patient", + "version": "4.3.0", + "name": "Base FHIR compartment definition for Patient", + "status": "draft", + "experimental": true, + "date": "2022-05-28T12:47:40+10:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the patient compartment for each patient resource, and the identity of the compartment is the same as the patient. When a patient is linked to another patient, all the records associated with the linked patient are in the compartment associated with the target of the link.. The set of resources associated with a particular patient", + "code": "Patient", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "subject" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "patient", + "recorder", + "asserter" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent", + "param": [ + "patient" + ] + }, + { + "code": "Basic", + "param": [ + "patient", + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure", + "param": [ + "patient" + ] + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "patient", + "performer" + ] + }, + { + "code": "CareTeam", + "param": [ + "patient", + "participant" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "subject" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "patient", + "payee" + ] + }, + { + "code": "ClaimResponse", + "param": [ + "patient" + ] + }, + { + "code": "ClinicalImpression", + "param": [ + "subject" + ] + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "subject", + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "subject", + "sender", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "patient", + "asserter" + ] + }, + { + "code": "Consent", + "param": [ + "patient" + ] + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "beneficiary", + "payor" + ] + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "patient" + ] + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "patient" + ] + }, + { + "code": "DetectedIssue", + "param": [ + "patient" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "DeviceUseStatement", + "param": [ + "subject" + ] + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "subject", + "author", + "recipient" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ] + }, + { + "code": "Encounter", + "param": [ + "patient" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest", + "param": [ + "subject" + ] + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "patient" + ] + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "patient", + "payee" + ] + }, + { + "code": "FamilyMemberHistory", + "param": [ + "patient" + ] + }, + { + "code": "Flag", + "param": [ + "patient" + ] + }, + { + "code": "Goal", + "param": [ + "patient" + ] + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy", + "param": [ + "patient" + ] + }, + { + "code": "Immunization", + "param": [ + "patient" + ] + }, + { + "code": "ImmunizationEvaluation", + "param": [ + "patient" + ] + }, + { + "code": "ImmunizationRecommendation", + "param": [ + "patient" + ] + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "subject", + "patient", + "recipient" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "param": [ + "patient" + ] + }, + { + "code": "Media", + "param": [ + "subject" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "patient", + "performer", + "subject" + ] + }, + { + "code": "MedicationDispense", + "param": [ + "subject", + "patient", + "receiver" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "subject" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "subject" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence", + "param": [ + "patient" + ] + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder", + "param": [ + "patient" + ] + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "link" + ] + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person", + "param": [ + "patient" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "patient", + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "patient" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "subject", + "author" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson", + "param": [ + "patient" + ] + }, + { + "code": "RequestGroup", + "param": [ + "subject", + "participant" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject", + "param": [ + "individual" + ] + }, + { + "code": "RiskAssessment", + "param": [ + "subject" + ] + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SupplyDelivery", + "param": [ + "patient" + ] + }, + { + "code": "SupplyRequest", + "param": [ + "subject" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "patient" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4b/compartmentdefinition-practitioner.json b/crates/ui/data/compartments/r4b/compartmentdefinition-practitioner.json new file mode 100644 index 000000000..2fff767fa --- /dev/null +++ b/crates/ui/data/compartments/r4b/compartmentdefinition-practitioner.json @@ -0,0 +1,656 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "practitioner", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eassessor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, authenticator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecare-manager\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, operator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereceiver, author, responsible, enterer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprovider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003egeneral-practitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprovider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprincipalinvestigator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecollector\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esupplier, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprescriber\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/practitioner", + "version": "4.3.0", + "name": "Base FHIR compartment definition for Practitioner", + "status": "draft", + "experimental": true, + "date": "2022-05-28T12:47:40+10:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the practitioner compartment for each Practitioner resource, and the identity of the compartment is the same as the Practitioner. The set of resources associated with a particular practitioner", + "code": "Practitioner", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "recorder", + "asserter" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ] + }, + { + "code": "Basic", + "param": [ + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "performer" + ] + }, + { + "code": "CareTeam", + "param": [ + "participant" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ] + }, + { + "code": "ClaimResponse", + "param": [ + "requestor" + ] + }, + { + "code": "ClinicalImpression", + "param": [ + "assessor" + ] + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "sender", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "asserter" + ] + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "enterer", + "provider" + ] + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "requestor" + ] + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "requester", + "performer" + ] + }, + { + "code": "DeviceUseStatement" + }, + { + "code": "DiagnosticReport", + "param": [ + "performer" + ] + }, + { + "code": "DocumentManifest", + "param": [ + "subject", + "author", + "recipient" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author", + "authenticator" + ] + }, + { + "code": "Encounter", + "param": [ + "practitioner", + "participant" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "care-manager" + ] + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag", + "param": [ + "author" + ] + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization", + "param": [ + "performer" + ] + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "participant" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage", + "param": [ + "author" + ] + }, + { + "code": "List", + "param": [ + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media", + "param": [ + "subject", + "operator" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "performer" + ] + }, + { + "code": "MedicationDispense", + "param": [ + "performer", + "receiver" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "requester" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "receiver", + "author", + "responsible", + "enterer" + ] + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder", + "param": [ + "provider" + ] + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "general-practitioner" + ] + }, + { + "code": "PaymentNotice", + "param": [ + "provider" + ] + }, + { + "code": "PaymentReconciliation", + "param": [ + "requestor" + ] + }, + { + "code": "Person", + "param": [ + "practitioner" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner", + "param": [ + "{def}" + ] + }, + { + "code": "PractitionerRole", + "param": [ + "practitioner" + ] + }, + { + "code": "Procedure", + "param": [ + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestGroup", + "param": [ + "participant", + "author" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy", + "param": [ + "principalinvestigator" + ] + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ] + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "collector" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SupplyDelivery", + "param": [ + "supplier", + "receiver" + ] + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "prescriber" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r4b/compartmentdefinition-relatedperson.json b/crates/ui/data/compartments/r4b/compartmentdefinition-relatedperson.json new file mode 100644 index 000000000..b25991299 --- /dev/null +++ b/crates/ui/data/compartments/r4b/compartmentdefinition-relatedperson.json @@ -0,0 +1,554 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "relatedPerson", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, payor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentmanifest.html\"\u003eDocumentManifest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestgroup.html\"\u003eRequestGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"catalogentry.html\"\u003eCatalogEntry\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusestatement.html\"\u003eDeviceUseStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"media.html\"\u003eMedia\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchdefinition.html\"\u003eResearchDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchelementdefinition.html\"\u003eResearchElementDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/relatedPerson", + "version": "4.3.0", + "name": "Base FHIR compartment definition for RelatedPerson", + "status": "draft", + "experimental": true, + "date": "2022-05-28T12:47:40+10:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the relatedPerson compartment for each relatedPerson resource, and the identity of the compartment is the same as the relatedPerson. The set of resources associated with a particular \u0027related person\u0027", + "code": "RelatedPerson", + "search": true, + "resource": [ + { + "code": "Account" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "asserter" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "AuditEvent" + }, + { + "code": "Basic", + "param": [ + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "performer" + ] + }, + { + "code": "CareTeam", + "param": [ + "participant" + ] + }, + { + "code": "CatalogEntry" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "payee" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "sender", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "asserter" + ] + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "payor" + ] + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue" + }, + { + "code": "Device" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest" + }, + { + "code": "DeviceUseStatement" + }, + { + "code": "DiagnosticReport" + }, + { + "code": "DocumentManifest", + "param": [ + "author", + "recipient" + ] + }, + { + "code": "DocumentReference", + "param": [ + "author" + ] + }, + { + "code": "Encounter", + "param": [ + "participant" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "payee" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "Invoice", + "param": [ + "recipient" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Media" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "performer" + ] + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest" + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionOrder" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "link" + ] + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Person", + "param": [ + "link" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson", + "param": [ + "{def}" + ] + }, + { + "code": "RequestGroup", + "param": [ + "participant" + ] + }, + { + "code": "ResearchDefinition" + }, + { + "code": "ResearchElementDefinition" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment" + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r5/compartmentdefinition-device.json b/crates/ui/data/compartments/r5/compartmentdefinition-device.json new file mode 100644 index 000000000..f0ddd7447 --- /dev/null +++ b/crates/ui/data/compartments/r5/compartmentdefinition-device.json @@ -0,0 +1,606 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "device", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003einformation-provider, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, requester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003etarget\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, device\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproductdispense.html\"\u003eBiologicallyDerivedProductDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conditiondefinition.html\"\u003eConditionDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedispense.html\"\u003eDeviceDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusage.html\"\u003eDeviceUsage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounterhistory.html\"\u003eEncounterHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"formularyitem.html\"\u003eFormularyItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"genomicstudy.html\"\u003eGenomicStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryitem.html\"\u003eInventoryItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryreport.html\"\u003eInventoryReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"permission.html\"\u003ePermission\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testplan.html\"\u003eTestPlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"transport.html\"\u003eTransport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/device", + "version": "5.0.0", + "name": "Base FHIR compartment definition for Device", + "status": "draft", + "experimental": true, + "date": "2023-03-26T15:21:02+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the device compartment for each Device resource, and the identity of the compartment is the same as the Device. The set of resources associated with a particular device", + "code": "Device", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent" + }, + { + "code": "AllergyIntolerance" + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment" + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ] + }, + { + "code": "Basic" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BiologicallyDerivedProductDispense" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan" + }, + { + "code": "CareTeam" + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "information-provider", + "recipient" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition" + }, + { + "code": "ConditionDefinition" + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceAssociation", + "param": [ + "device" + ] + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceDispense" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "requester", + "performer" + ] + }, + { + "code": "DeviceUsage" + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ] + }, + { + "code": "Encounter" + }, + { + "code": "EncounterHistory" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag", + "param": [ + "author" + ] + }, + { + "code": "FormularyItem" + }, + { + "code": "GenomicStudy" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InventoryItem" + }, + { + "code": "InventoryReport" + }, + { + "code": "Invoice", + "param": [ + "participant" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration" + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest" + }, + { + "code": "MedicationStatement" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "target" + ] + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake" + }, + { + "code": "NutritionOrder" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "subject", + "device" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Permission" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure" + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "author" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject", + "param": [ + "subject" + ] + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ] + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestPlan" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "Transport" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r5/compartmentdefinition-encounter.json b/crates/ui/data/compartments/r5/compartmentdefinition-encounter.json new file mode 100644 index 000000000..f0aa4e5f6 --- /dev/null +++ b/crates/ui/data/compartments/r5/compartmentdefinition-encounter.json @@ -0,0 +1,579 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "encounter", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003econtext\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounterhistory.html\"\u003eEncounterHistory\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproductdispense.html\"\u003eBiologicallyDerivedProductDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conditiondefinition.html\"\u003eConditionDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedispense.html\"\u003eDeviceDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusage.html\"\u003eDeviceUsage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"formularyitem.html\"\u003eFormularyItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"genomicstudy.html\"\u003eGenomicStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryitem.html\"\u003eInventoryItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryreport.html\"\u003eInventoryReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"permission.html\"\u003ePermission\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testplan.html\"\u003eTestPlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"transport.html\"\u003eTransport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/encounter", + "version": "5.0.0", + "name": "Base FHIR compartment definition for Encounter", + "status": "draft", + "experimental": true, + "date": "2023-03-26T15:21:02+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the encounter compartment for each encounter resource, and the identity of the compartment is the same as the encounter. The set of resources associated with a particular encounter", + "code": "Encounter", + "search": true, + "resource": [ + { + "code": "Account" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent" + }, + { + "code": "AllergyIntolerance" + }, + { + "code": "Appointment" + }, + { + "code": "AppointmentResponse" + }, + { + "code": "ArtifactAssessment" + }, + { + "code": "AuditEvent" + }, + { + "code": "Basic" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BiologicallyDerivedProductDispense" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "encounter" + ] + }, + { + "code": "CareTeam" + }, + { + "code": "ChargeItem", + "param": [ + "encounter" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "encounter" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression", + "param": [ + "encounter" + ] + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "encounter" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "encounter" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "encounter" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "encounter" + ] + }, + { + "code": "ConditionDefinition" + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue" + }, + { + "code": "Device" + }, + { + "code": "DeviceAssociation" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceDispense" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "encounter" + ] + }, + { + "code": "DeviceUsage" + }, + { + "code": "DiagnosticReport", + "param": [ + "encounter" + ] + }, + { + "code": "DocumentReference", + "param": [ + "context" + ] + }, + { + "code": "Encounter", + "param": [ + "{def}" + ] + }, + { + "code": "EncounterHistory", + "param": [ + "encounter" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "encounter" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag" + }, + { + "code": "FormularyItem" + }, + { + "code": "GenomicStudy" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InventoryItem" + }, + { + "code": "InventoryReport" + }, + { + "code": "Invoice" + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "encounter" + ] + }, + { + "code": "MedicationDispense", + "param": [ + "encounter" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "encounter" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "encounter" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "encounter" + ] + }, + { + "code": "NutritionOrder", + "param": [ + "encounter" + ] + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "encounter" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Permission" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "encounter" + ] + }, + { + "code": "Provenance" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "encounter" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "encounter" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment" + }, + { + "code": "Schedule" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "encounter" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest" + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestPlan" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "Transport" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "encounter" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r5/compartmentdefinition-patient.json b/crates/ui/data/compartments/r5/compartmentdefinition-patient.json new file mode 100644 index 000000000..9c312283c --- /dev/null +++ b/crates/ui/data/compartments/r5/compartmentdefinition-patient.json @@ -0,0 +1,753 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "patient", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"biologicallyderivedproductdispense.html\"\u003eBiologicallyDerivedProductDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, sender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, information-provider, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, participant-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, beneficiary, paymentby-party\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, operator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceusage.html\"\u003eDeviceUsage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounterhistory.html\"\u003eEncounterHistory\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"genomicstudy.html\"\u003eGenomicStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, subject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}, link\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, focus\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conditiondefinition.html\"\u003eConditionDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedispense.html\"\u003eDeviceDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"formularyitem.html\"\u003eFormularyItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryitem.html\"\u003eInventoryItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryreport.html\"\u003eInventoryReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"permission.html\"\u003ePermission\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testplan.html\"\u003eTestPlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"transport.html\"\u003eTransport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/patient", + "version": "5.0.0", + "name": "Base FHIR compartment definition for Patient", + "status": "draft", + "experimental": true, + "date": "2023-03-26T15:21:02+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the patient compartment for each patient resource, and the identity of the compartment is the same as the patient. When a patient is linked to another patient resource, the records associated with the linked patient resource will not be returned as part of the compartment search. Those records will be returned only with another compartment search using the \"id\" for the linked patient resource.\n \nIn cases where two patients have been merged rather than linked, associated resources should be moved to the target patient as part of the merge process, so the patient compartment for the target patient would include all relevant data, and the patient compartment for the source patient would include only the linked Patient and possibly remnant resources like AuditEvent.. The set of resources associated with a particular patient", + "code": "Patient", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "subject" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "patient", + "participant" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment" + }, + { + "code": "AuditEvent", + "param": [ + "patient" + ] + }, + { + "code": "Basic", + "param": [ + "patient", + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BiologicallyDerivedProductDispense", + "param": [ + "patient" + ] + }, + { + "code": "BodyStructure", + "param": [ + "patient" + ] + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "patient" + ] + }, + { + "code": "CareTeam", + "param": [ + "patient", + "participant" + ] + }, + { + "code": "ChargeItem", + "param": [ + "subject" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "patient", + "payee" + ] + }, + { + "code": "ClaimResponse", + "param": [ + "patient" + ] + }, + { + "code": "ClinicalImpression", + "param": [ + "subject" + ] + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "subject", + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "subject", + "information-provider", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "patient", + "participant-actor" + ] + }, + { + "code": "ConditionDefinition" + }, + { + "code": "Consent", + "param": [ + "subject" + ] + }, + { + "code": "Contract", + "param": [ + "patient" + ] + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "beneficiary", + "paymentby-party" + ] + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "patient" + ] + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "patient" + ] + }, + { + "code": "DetectedIssue", + "param": [ + "patient" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceAssociation", + "param": [ + "subject", + "operator" + ] + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceDispense" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "DeviceUsage", + "param": [ + "patient" + ] + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ] + }, + { + "code": "Encounter", + "param": [ + "patient" + ] + }, + { + "code": "EncounterHistory", + "param": [ + "patient" + ] + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest", + "param": [ + "subject" + ] + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "patient" + ] + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "patient", + "payee" + ] + }, + { + "code": "FamilyMemberHistory", + "param": [ + "patient" + ] + }, + { + "code": "Flag", + "param": [ + "patient" + ] + }, + { + "code": "FormularyItem" + }, + { + "code": "GenomicStudy", + "param": [ + "patient" + ] + }, + { + "code": "Goal", + "param": [ + "patient" + ] + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse", + "param": [ + "patient" + ] + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "param": [ + "patient" + ] + }, + { + "code": "ImagingStudy", + "param": [ + "patient" + ] + }, + { + "code": "Immunization", + "param": [ + "patient" + ] + }, + { + "code": "ImmunizationEvaluation", + "param": [ + "patient" + ] + }, + { + "code": "ImmunizationRecommendation", + "param": [ + "patient" + ] + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InventoryItem" + }, + { + "code": "InventoryReport" + }, + { + "code": "Invoice", + "param": [ + "subject", + "patient", + "recipient" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "param": [ + "patient" + ] + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "patient", + "subject" + ] + }, + { + "code": "MedicationDispense", + "param": [ + "subject", + "patient", + "receiver" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "subject" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "subject" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence", + "param": [ + "subject" + ] + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "subject", + "source" + ] + }, + { + "code": "NutritionOrder", + "param": [ + "patient" + ] + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "{def}", + "link" + ] + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Permission" + }, + { + "code": "Person", + "param": [ + "patient" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "patient", + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "patient" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "subject", + "author" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson", + "param": [ + "patient" + ] + }, + { + "code": "RequestOrchestration", + "param": [ + "subject", + "participant" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject", + "param": [ + "subject" + ] + }, + { + "code": "RiskAssessment", + "param": [ + "subject" + ] + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "subject", + "performer" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SupplyDelivery", + "param": [ + "patient" + ] + }, + { + "code": "SupplyRequest", + "param": [ + "subject" + ] + }, + { + "code": "Task", + "param": [ + "patient", + "focus" + ] + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestPlan" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "Transport" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "patient" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r5/compartmentdefinition-practitioner.json b/crates/ui/data/compartments/r5/compartmentdefinition-practitioner.json new file mode 100644 index 000000000..183089d49 --- /dev/null +++ b/crates/ui/data/compartments/r5/compartmentdefinition-practitioner.json @@ -0,0 +1,696 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "practitioner", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"biologicallyderivedproductdispense.html\"\u003eBiologicallyDerivedProductDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003einformation-provider, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eoperator\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecare-manager\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereceiver, author, responsible\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprovider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003egeneral-practitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereporter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecollector\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esupplier, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprescriber\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conditiondefinition.html\"\u003eConditionDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedispense.html\"\u003eDeviceDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusage.html\"\u003eDeviceUsage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounterhistory.html\"\u003eEncounterHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"formularyitem.html\"\u003eFormularyItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"genomicstudy.html\"\u003eGenomicStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryitem.html\"\u003eInventoryItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryreport.html\"\u003eInventoryReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"permission.html\"\u003ePermission\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testplan.html\"\u003eTestPlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"transport.html\"\u003eTransport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/practitioner", + "version": "5.0.0", + "name": "Base FHIR compartment definition for Practitioner", + "status": "draft", + "experimental": true, + "date": "2023-03-26T15:21:02+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the practitioner compartment for each Practitioner resource, and the identity of the compartment is the same as the Practitioner. The set of resources associated with a particular practitioner", + "code": "Practitioner", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ] + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "participant" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment" + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ] + }, + { + "code": "Basic", + "param": [ + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BiologicallyDerivedProductDispense", + "param": [ + "performer" + ] + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan" + }, + { + "code": "CareTeam", + "param": [ + "participant" + ] + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ] + }, + { + "code": "ClaimResponse", + "param": [ + "requestor" + ] + }, + { + "code": "ClinicalImpression", + "param": [ + "performer" + ] + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "information-provider", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "participant-actor" + ] + }, + { + "code": "ConditionDefinition" + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage" + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "enterer", + "provider" + ] + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "requestor" + ] + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ] + }, + { + "code": "Device" + }, + { + "code": "DeviceAssociation", + "param": [ + "operator" + ] + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceDispense" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "requester", + "performer" + ] + }, + { + "code": "DeviceUsage" + }, + { + "code": "DiagnosticReport", + "param": [ + "performer" + ] + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author", + "attester" + ] + }, + { + "code": "Encounter", + "param": [ + "practitioner", + "participant" + ] + }, + { + "code": "EncounterHistory" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "care-manager" + ] + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag", + "param": [ + "author" + ] + }, + { + "code": "FormularyItem" + }, + { + "code": "GenomicStudy" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization", + "param": [ + "performer" + ] + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InventoryItem" + }, + { + "code": "InventoryReport" + }, + { + "code": "Invoice", + "param": [ + "participant" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage", + "param": [ + "author" + ] + }, + { + "code": "List", + "param": [ + "source" + ] + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration" + }, + { + "code": "MedicationDispense", + "param": [ + "performer", + "receiver" + ] + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest", + "param": [ + "requester" + ] + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "receiver", + "author", + "responsible" + ] + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "source" + ] + }, + { + "code": "NutritionOrder", + "param": [ + "provider" + ] + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "general-practitioner" + ] + }, + { + "code": "PaymentNotice", + "param": [ + "reporter" + ] + }, + { + "code": "PaymentReconciliation", + "param": [ + "requestor" + ] + }, + { + "code": "Permission" + }, + { + "code": "Person", + "param": [ + "practitioner" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner", + "param": [ + "{def}" + ] + }, + { + "code": "PractitionerRole", + "param": [ + "practitioner" + ] + }, + { + "code": "Procedure", + "param": [ + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "participant", + "author" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ] + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "collector" + ] + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SupplyDelivery", + "param": [ + "supplier", + "receiver" + ] + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestPlan" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "Transport" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription", + "param": [ + "prescriber" + ] + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r5/compartmentdefinition-relatedperson.json b/crates/ui/data/compartments/r5/compartmentdefinition-relatedperson.json new file mode 100644 index 000000000..d79d5a6eb --- /dev/null +++ b/crates/ui/data/compartments/r5/compartmentdefinition-relatedperson.json @@ -0,0 +1,598 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "relatedPerson", + "text": { + "status": "extensions", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"chargeitem.html\"\u003eChargeItem\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, performer-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003einformation-provider, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant-actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, paymentby-party\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"supplyrequest.html\"\u003eSupplyRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproductdispense.html\"\u003eBiologicallyDerivedProductDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"chargeitemdefinition.html\"\u003eChargeItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"citation.html\"\u003eCitation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalimpression.html\"\u003eClinicalImpression\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conditiondefinition.html\"\u003eConditionDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedispense.html\"\u003eDeviceDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceusage.html\"\u003eDeviceUsage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounterhistory.html\"\u003eEncounterHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencereport.html\"\u003eEvidenceReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"formularyitem.html\"\u003eFormularyItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"genomicstudy.html\"\u003eGenomicStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"graphdefinition.html\"\u003eGraphDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationevaluation.html\"\u003eImmunizationEvaluation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunizationrecommendation.html\"\u003eImmunizationRecommendation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryitem.html\"\u003eInventoryItem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"inventoryreport.html\"\u003eInventoryReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"linkage.html\"\u003eLinkage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationknowledge.html\"\u003eMedicationKnowledge\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"molecularsequence.html\"\u003eMolecularSequence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"permission.html\"\u003ePermission\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancenucleicacid.html\"\u003eSubstanceNucleicAcid\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancepolymer.html\"\u003eSubstancePolymer\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substanceprotein.html\"\u003eSubstanceProtein\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancereferenceinformation.html\"\u003eSubstanceReferenceInformation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancesourcematerial.html\"\u003eSubstanceSourceMaterial\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"supplydelivery.html\"\u003eSupplyDelivery\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testplan.html\"\u003eTestPlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testreport.html\"\u003eTestReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"testscript.html\"\u003eTestScript\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"transport.html\"\u003eTransport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"verificationresult.html\"\u003eVerificationResult\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "url": "http://hl7.org/fhir/CompartmentDefinition/relatedPerson", + "version": "5.0.0", + "name": "Base FHIR compartment definition for RelatedPerson", + "status": "draft", + "experimental": true, + "date": "2023-03-26T15:21:02+11:00", + "publisher": "FHIR Project Team", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://hl7.org/fhir" + } + ] + } + ], + "description": "There is an instance of the relatedPerson compartment for each relatedPerson resource, and the identity of the compartment is the same as the relatedPerson. The set of resources associated with a particular \u0027related person\u0027", + "code": "RelatedPerson", + "search": true, + "resource": [ + { + "code": "Account" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ] + }, + { + "code": "AllergyIntolerance", + "param": [ + "participant" + ] + }, + { + "code": "Appointment", + "param": [ + "actor" + ] + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment" + }, + { + "code": "AuditEvent" + }, + { + "code": "Basic", + "param": [ + "author" + ] + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BiologicallyDerivedProductDispense" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan" + }, + { + "code": "CareTeam", + "param": [ + "participant" + ] + }, + { + "code": "ChargeItem", + "param": [ + "enterer", + "performer-actor" + ] + }, + { + "code": "ChargeItemDefinition" + }, + { + "code": "Citation" + }, + { + "code": "Claim", + "param": [ + "payee" + ] + }, + { + "code": "ClaimResponse" + }, + { + "code": "ClinicalImpression" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ] + }, + { + "code": "CommunicationRequest", + "param": [ + "information-provider", + "recipient", + "requester" + ] + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ] + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "participant-actor" + ] + }, + { + "code": "ConditionDefinition" + }, + { + "code": "Consent" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "paymentby-party" + ] + }, + { + "code": "CoverageEligibilityRequest" + }, + { + "code": "CoverageEligibilityResponse" + }, + { + "code": "DetectedIssue" + }, + { + "code": "Device" + }, + { + "code": "DeviceAssociation" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceDispense" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest" + }, + { + "code": "DeviceUsage" + }, + { + "code": "DiagnosticReport" + }, + { + "code": "DocumentReference", + "param": [ + "author" + ] + }, + { + "code": "Encounter", + "param": [ + "participant" + ] + }, + { + "code": "EncounterHistory" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceReport" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "payee" + ] + }, + { + "code": "FamilyMemberHistory" + }, + { + "code": "Flag" + }, + { + "code": "FormularyItem" + }, + { + "code": "GenomicStudy" + }, + { + "code": "Goal" + }, + { + "code": "GraphDefinition" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection" + }, + { + "code": "ImagingStudy" + }, + { + "code": "Immunization" + }, + { + "code": "ImmunizationEvaluation" + }, + { + "code": "ImmunizationRecommendation" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InventoryItem" + }, + { + "code": "InventoryReport" + }, + { + "code": "Invoice", + "param": [ + "recipient" + ] + }, + { + "code": "Library" + }, + { + "code": "Linkage" + }, + { + "code": "List" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration" + }, + { + "code": "MedicationDispense" + }, + { + "code": "MedicationKnowledge" + }, + { + "code": "MedicationRequest" + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ] + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "MolecularSequence" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "source" + ] + }, + { + "code": "NutritionOrder" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "performer" + ] + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "link" + ] + }, + { + "code": "PaymentNotice" + }, + { + "code": "PaymentReconciliation" + }, + { + "code": "Permission" + }, + { + "code": "Person", + "param": [ + "link" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole" + }, + { + "code": "Procedure", + "param": [ + "performer" + ] + }, + { + "code": "Provenance", + "param": [ + "agent" + ] + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ] + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson", + "param": [ + "{def}" + ] + }, + { + "code": "RequestOrchestration", + "param": [ + "participant" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy" + }, + { + "code": "ResearchSubject" + }, + { + "code": "RiskAssessment" + }, + { + "code": "Schedule", + "param": [ + "actor" + ] + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer" + ] + }, + { + "code": "Slot" + }, + { + "code": "Specimen" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "SubstanceNucleicAcid" + }, + { + "code": "SubstancePolymer" + }, + { + "code": "SubstanceProtein" + }, + { + "code": "SubstanceReferenceInformation" + }, + { + "code": "SubstanceSourceMaterial" + }, + { + "code": "SupplyDelivery" + }, + { + "code": "SupplyRequest", + "param": [ + "requester" + ] + }, + { + "code": "Task" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "TestPlan" + }, + { + "code": "TestReport" + }, + { + "code": "TestScript" + }, + { + "code": "Transport" + }, + { + "code": "ValueSet" + }, + { + "code": "VerificationResult" + }, + { + "code": "VisionPrescription" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r6/compartmentdefinition-device.json b/crates/ui/data/compartments/r6/compartmentdefinition-device.json new file mode 100644 index 000000000..317ffbb69 --- /dev/null +++ b/crates/ui/data/compartments/r6/compartmentdefinition-device.json @@ -0,0 +1,642 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "device", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp class\u003d\"res-header-id\"\u003e\u003cb\u003eGenerated Narrative: CompartmentDefinition device\u003c/b\u003e\u003c/p\u003e\u003ca name\u003d\"device\"\u003e \u003c/a\u003e\u003ca name\u003d\"hcdevice\"\u003e \u003c/a\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003einformation-provider, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicealert.html\"\u003eDeviceAlert\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, device, annunciator-device, acknowledged-by\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice, focus\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/td\u003e\u003ctd\u003edevice\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, requester, performer, device\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprocedure-udi, item-udi, detail-udi, subdetail-udi\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereceiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, device\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceproduct.html\"\u003eInsuranceProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", + "valueCode": "fhir" + } + ], + "url": "http://hl7.org/fhir/CompartmentDefinition/device", + "version": "6.0.0-ballot3", + "name": "Base FHIR compartment definition for Device", + "status": "draft", + "experimental": false, + "date": "2025-12-17T09:50:17+00:00", + "publisher": "HL7 International / FHIR Infrastructure", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://www.hl7.org/Special/committees/fiwg" + } + ] + } + ], + "description": "There is an instance of the device compartment for each Device resource, and the identity of the compartment is the same as the Device. The set of resources associated with a particular device", + "code": "Device", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "AllergyIntolerance", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Appointment", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Basic", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "startParam": "date", + "endParam": "date" + }, + { + "code": "CareTeam", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Claim", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClaimResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ], + "startParam": "sent", + "endParam": "sent" + }, + { + "code": "CommunicationRequest", + "param": [ + "information-provider", + "recipient" + ], + "startParam": "authored", + "endParam": "authored" + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition" + }, + { + "code": "Consent", + "startParam": "period", + "endParam": "period" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "startParam": "period", + "endParam": "period" + }, + { + "code": "CoverageEligibilityRequest", + "startParam": "created", + "endParam": "created" + }, + { + "code": "CoverageEligibilityResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ], + "startParam": "identified", + "endParam": "identified" + }, + { + "code": "Device", + "param": [ + "{def}" + ] + }, + { + "code": "DeviceAlert", + "param": [ + "subject", + "device", + "annunciator-device", + "acknowledged-by" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "DeviceAssociation", + "param": [ + "device", + "focus" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric", + "param": [ + "device" + ] + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "requester", + "performer", + "device" + ], + "startParam": "event-date", + "endParam": "event-date" + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Encounter", + "startParam": "date-start", + "endParam": "date-start" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "startParam": "date", + "endParam": "date" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "procedure-udi", + "item-udi", + "detail-udi", + "subdetail-udi" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "FamilyMemberHistory", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Flag", + "param": [ + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Goal", + "startParam": "start-date", + "endParam": "start-date" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "startParam": "issued", + "endParam": "issued" + }, + { + "code": "ImagingStudy", + "startParam": "started", + "endParam": "started" + }, + { + "code": "Immunization", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InsuranceProduct" + }, + { + "code": "Invoice", + "param": [ + "participant" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Library" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "startParam": "date", + "endParam": "date" + }, + { + "code": "MedicationDispense", + "startParam": "whenhandedover", + "endParam": "whenhandedover" + }, + { + "code": "MedicationRequest", + "startParam": "combo-date", + "endParam": "combo-date" + }, + { + "code": "MedicationStatement", + "startParam": "effective", + "endParam": "effective" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "receiver" + ] + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "startParam": "date", + "endParam": "date" + }, + { + "code": "NutritionOrder", + "startParam": "datetime", + "endParam": "datetime" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "subject", + "device" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice", + "startParam": "created", + "endParam": "created" + }, + { + "code": "PaymentReconciliation", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Procedure", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Provenance", + "param": [ + "agent" + ], + "startParam": "when", + "endParam": "when" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author" + ], + "startParam": "answer-date", + "endParam": "answer-date" + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "author" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ResearchSubject", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Schedule", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ], + "startParam": "collected", + "endParam": "collected" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "Task", + "startParam": "period", + "endParam": "period" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "ValueSet" + }, + { + "code": "VisionPrescription", + "startParam": "datewritten", + "endParam": "datewritten" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r6/compartmentdefinition-encounter.json b/crates/ui/data/compartments/r6/compartmentdefinition-encounter.json new file mode 100644 index 000000000..a2f5f6dff --- /dev/null +++ b/crates/ui/data/compartments/r6/compartmentdefinition-encounter.json @@ -0,0 +1,602 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "encounter", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp class\u003d\"res-header-id\"\u003e\u003cb\u003eGenerated Narrative: CompartmentDefinition encounter\u003c/b\u003e\u003c/p\u003e\u003ca name\u003d\"encounter\"\u003e \u003c/a\u003e\u003ca name\u003d\"hcencounter\"\u003e \u003c/a\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicealert.html\"\u003eDeviceAlert\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003econtext\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eencounter\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceproduct.html\"\u003eInsuranceProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", + "valueCode": "fhir" + } + ], + "url": "http://hl7.org/fhir/CompartmentDefinition/encounter", + "version": "6.0.0-ballot3", + "name": "Base FHIR compartment definition for Encounter", + "status": "draft", + "experimental": false, + "date": "2025-12-17T09:50:17+00:00", + "publisher": "HL7 International / FHIR Infrastructure", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://www.hl7.org/Special/committees/fiwg" + } + ] + } + ], + "description": "There is an instance of the encounter compartment for each encounter resource, and the identity of the compartment is the same as the encounter. The set of resources associated with a particular encounter", + "code": "Encounter", + "search": true, + "resource": [ + { + "code": "Account", + "startParam": "period", + "endParam": "period" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "AllergyIntolerance", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Appointment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AppointmentResponse" + }, + { + "code": "ArtifactAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AuditEvent", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Basic", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "CareTeam", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Claim", + "param": [ + "encounter" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClaimResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "encounter" + ], + "startParam": "sent", + "endParam": "sent" + }, + { + "code": "CommunicationRequest", + "param": [ + "encounter" + ], + "startParam": "authored", + "endParam": "authored" + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "encounter" + ] + }, + { + "code": "Consent", + "startParam": "period", + "endParam": "period" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "startParam": "period", + "endParam": "period" + }, + { + "code": "CoverageEligibilityRequest", + "startParam": "created", + "endParam": "created" + }, + { + "code": "CoverageEligibilityResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "DetectedIssue", + "startParam": "identified", + "endParam": "identified" + }, + { + "code": "Device" + }, + { + "code": "DeviceAlert", + "param": [ + "encounter" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "DeviceAssociation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "encounter" + ], + "startParam": "event-date", + "endParam": "event-date" + }, + { + "code": "DiagnosticReport", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DocumentReference", + "param": [ + "context" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Encounter", + "param": [ + "{def}" + ], + "startParam": "date-start", + "endParam": "date-start" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "startParam": "date", + "endParam": "date" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "encounter" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "FamilyMemberHistory", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Flag", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Goal", + "startParam": "start-date", + "endParam": "start-date" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "startParam": "issued", + "endParam": "issued" + }, + { + "code": "ImagingStudy", + "startParam": "started", + "endParam": "started" + }, + { + "code": "Immunization", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InsuranceProduct" + }, + { + "code": "Invoice", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Library" + }, + { + "code": "List", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "MedicationDispense", + "param": [ + "encounter" + ], + "startParam": "whenhandedover", + "endParam": "whenhandedover" + }, + { + "code": "MedicationRequest", + "param": [ + "encounter" + ], + "startParam": "combo-date", + "endParam": "combo-date" + }, + { + "code": "MedicationStatement", + "param": [ + "encounter" + ], + "startParam": "effective", + "endParam": "effective" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "NutritionOrder", + "param": [ + "encounter" + ], + "startParam": "datetime", + "endParam": "datetime" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice", + "startParam": "created", + "endParam": "created" + }, + { + "code": "PaymentReconciliation", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Procedure", + "param": [ + "encounter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Provenance", + "startParam": "when", + "endParam": "when" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "encounter" + ], + "startParam": "answer-date", + "endParam": "answer-date" + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "encounter" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ResearchSubject", + "startParam": "date", + "endParam": "date" + }, + { + "code": "RiskAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Schedule", + "startParam": "date", + "endParam": "date" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "encounter" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "startParam": "collected", + "endParam": "collected" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "Task", + "startParam": "period", + "endParam": "period" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "ValueSet" + }, + { + "code": "VisionPrescription", + "param": [ + "encounter" + ], + "startParam": "datewritten", + "endParam": "datewritten" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r6/compartmentdefinition-group.json b/crates/ui/data/compartments/r6/compartmentdefinition-group.json new file mode 100644 index 000000000..754e3c014 --- /dev/null +++ b/crates/ui/data/compartments/r6/compartmentdefinition-group.json @@ -0,0 +1,681 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "group", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp class\u003d\"res-header-id\"\u003e\u003cb\u003eGenerated Narrative: CompartmentDefinition group\u003c/b\u003e\u003c/p\u003e\u003ca name\u003d\"group\"\u003e \u003c/a\u003e\u003ca name\u003d\"hcgroup\"\u003e \u003c/a\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, actor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, actor, grantee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicealert.html\"\u003eDeviceAlert\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, focus\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eattester, author, subject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003egroup\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003egroup\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003especimen, subject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant, subject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eeligibility\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceproduct.html\"\u003eInsuranceProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", + "valueCode": "fhir" + } + ], + "url": "http://hl7.org/fhir/CompartmentDefinition/group", + "version": "6.0.0-ballot3", + "name": "Base FHIR compartment definition for Group", + "status": "draft", + "experimental": false, + "date": "2025-12-17T09:50:17+00:00", + "publisher": "HL7 International / FHIR Infrastructure", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://www.hl7.org/Special/committees/fiwg" + } + ] + } + ], + "description": "There is an instance of the group compartment for each Group resource, and the identity of the compartment is the same as the Group. The set of resources associated with a particular group", + "code": "Group", + "search": true, + "resource": [ + { + "code": "Account", + "startParam": "period", + "endParam": "period" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "subject" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "AllergyIntolerance", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Appointment", + "param": [ + "subject", + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Basic", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "CareTeam", + "param": [ + "subject", + "participant" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Claim", + "param": [ + "subject" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClaimResponse", + "param": [ + "subject" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "subject" + ], + "startParam": "sent", + "endParam": "sent" + }, + { + "code": "CommunicationRequest", + "param": [ + "subject" + ], + "startParam": "authored", + "endParam": "authored" + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "subject" + ] + }, + { + "code": "Consent", + "param": [ + "subject", + "actor", + "grantee" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "startParam": "period", + "endParam": "period" + }, + { + "code": "CoverageEligibilityRequest", + "startParam": "created", + "endParam": "created" + }, + { + "code": "CoverageEligibilityResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "DetectedIssue", + "param": [ + "subject" + ], + "startParam": "identified", + "endParam": "identified" + }, + { + "code": "Device" + }, + { + "code": "DeviceAlert", + "param": [ + "subject" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "DeviceAssociation", + "param": [ + "subject", + "focus" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "requester" + ], + "startParam": "event-date", + "endParam": "event-date" + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DocumentReference", + "param": [ + "attester", + "author", + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Encounter", + "param": [ + "subject", + "participant" + ], + "startParam": "date-start", + "endParam": "date-start" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest", + "param": [ + "group" + ] + }, + { + "code": "EnrollmentResponse", + "param": [ + "group" + ] + }, + { + "code": "EpisodeOfCare", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "subject" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "FamilyMemberHistory", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Flag", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Goal", + "param": [ + "subject" + ], + "startParam": "start-date", + "endParam": "start-date" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse", + "param": [ + "subject" + ] + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "param": [ + "subject" + ], + "startParam": "issued", + "endParam": "issued" + }, + { + "code": "ImagingStudy", + "param": [ + "subject" + ], + "startParam": "started", + "endParam": "started" + }, + { + "code": "Immunization", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InsuranceProduct" + }, + { + "code": "Invoice", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Library" + }, + { + "code": "List", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "MedicationDispense", + "param": [ + "subject" + ], + "startParam": "whenhandedover", + "endParam": "whenhandedover" + }, + { + "code": "MedicationRequest", + "param": [ + "subject" + ], + "startParam": "combo-date", + "endParam": "combo-date" + }, + { + "code": "MedicationStatement", + "param": [ + "subject" + ], + "startParam": "effective", + "endParam": "effective" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "NutritionOrder", + "param": [ + "subject" + ], + "startParam": "datetime", + "endParam": "datetime" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "specimen", + "subject", + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient" + }, + { + "code": "PaymentNotice", + "startParam": "created", + "endParam": "created" + }, + { + "code": "PaymentReconciliation", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Person" + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Procedure", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Provenance", + "param": [ + "agent" + ], + "startParam": "when", + "endParam": "when" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "startParam": "answer-date", + "endParam": "answer-date" + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "participant", + "subject" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy", + "param": [ + "eligibility" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ResearchSubject", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "RiskAssessment", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Schedule", + "startParam": "date", + "endParam": "date" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "subject", + "performer" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ], + "startParam": "collected", + "endParam": "collected" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "Task", + "param": [ + "subject" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "ValueSet" + }, + { + "code": "VisionPrescription", + "startParam": "datewritten", + "endParam": "datewritten" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r6/compartmentdefinition-patient.json b/crates/ui/data/compartments/r6/compartmentdefinition-patient.json new file mode 100644 index 000000000..a0231cd68 --- /dev/null +++ b/crates/ui/data/compartments/r6/compartmentdefinition-patient.json @@ -0,0 +1,761 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "patient", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp class\u003d\"res-header-id\"\u003e\u003cb\u003eGenerated Narrative: CompartmentDefinition patient\u003c/b\u003e\u003c/p\u003e\u003ca name\u003d\"patient\"\u003e \u003c/a\u003e\u003ca name\u003d\"hcpatient\"\u003e \u003c/a\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, sender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, information-provider, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, asserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, beneficiary, paymentby-party\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicealert.html\"\u003eDeviceAlert\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, acknowledged-by\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, subject, focus\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, payee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, subject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, patient, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}, link\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient, focus-reference\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epatient\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceproduct.html\"\u003eInsuranceProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", + "valueCode": "fhir" + } + ], + "url": "http://hl7.org/fhir/CompartmentDefinition/patient", + "version": "6.0.0-ballot3", + "name": "Base FHIR compartment definition for Patient", + "status": "draft", + "experimental": false, + "date": "2025-12-17T09:50:17+00:00", + "publisher": "HL7 International / FHIR Infrastructure", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://www.hl7.org/Special/committees/fiwg" + } + ] + } + ], + "description": "There is an instance of the patient compartment for each patient resource, and the identity of the compartment is the same as the patient. When a patient is linked to another patient resource, the records associated with the linked patient resource will not be returned as part of the compartment search. Those records will be returned only with another compartment search using the \"id\" for the linked patient resource.\n \nIn cases where two patients have been merged rather than linked, associated resources should be moved to the target patient as part of the merge process, so the patient compartment for the target patient would include all relevant data, and the patient compartment for the source patient would include only the linked Patient and possibly remnant resources like AuditEvent.. The set of resources associated with a particular patient", + "code": "Patient", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "subject" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "AllergyIntolerance", + "param": [ + "patient", + "asserter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Appointment", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AuditEvent", + "param": [ + "patient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Basic", + "param": [ + "patient", + "author" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct", + "param": [ + "patient" + ] + }, + { + "code": "BodyStructure", + "param": [ + "patient" + ] + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "param": [ + "patient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "CareTeam", + "param": [ + "patient", + "participant" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Claim", + "param": [ + "subject", + "payee" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClaimResponse", + "param": [ + "subject" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "subject", + "sender", + "recipient" + ], + "startParam": "sent", + "endParam": "sent" + }, + { + "code": "CommunicationRequest", + "param": [ + "subject", + "information-provider", + "recipient", + "requester" + ], + "startParam": "authored", + "endParam": "authored" + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "patient", + "asserter" + ] + }, + { + "code": "Consent", + "param": [ + "subject" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "Contract", + "param": [ + "patient" + ] + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "beneficiary", + "paymentby-party" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "patient" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "patient" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "DetectedIssue", + "param": [ + "patient" + ], + "startParam": "identified", + "endParam": "identified" + }, + { + "code": "Device" + }, + { + "code": "DeviceAlert", + "param": [ + "subject", + "acknowledged-by" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "DeviceAssociation", + "param": [ + "patient", + "subject", + "focus" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "subject", + "performer", + "requester" + ], + "startParam": "event-date", + "endParam": "event-date" + }, + { + "code": "DiagnosticReport", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Encounter", + "param": [ + "patient" + ], + "startParam": "date-start", + "endParam": "date-start" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest", + "param": [ + "patient" + ] + }, + { + "code": "EnrollmentResponse", + "param": [ + "patient" + ] + }, + { + "code": "EpisodeOfCare", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "subject", + "payee" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "FamilyMemberHistory", + "param": [ + "patient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Flag", + "param": [ + "patient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Goal", + "param": [ + "patient" + ], + "startParam": "start-date", + "endParam": "start-date" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse", + "param": [ + "patient" + ] + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "param": [ + "patient" + ], + "startParam": "issued", + "endParam": "issued" + }, + { + "code": "ImagingStudy", + "param": [ + "patient" + ], + "startParam": "started", + "endParam": "started" + }, + { + "code": "Immunization", + "param": [ + "patient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InsuranceProduct" + }, + { + "code": "Invoice", + "param": [ + "subject", + "patient", + "recipient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Library" + }, + { + "code": "List", + "param": [ + "subject", + "source" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "param": [ + "patient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "param": [ + "patient", + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "MedicationDispense", + "param": [ + "subject", + "patient", + "receiver" + ], + "startParam": "whenhandedover", + "endParam": "whenhandedover" + }, + { + "code": "MedicationRequest", + "param": [ + "subject" + ], + "startParam": "combo-date", + "endParam": "combo-date" + }, + { + "code": "MedicationStatement", + "param": [ + "subject" + ], + "startParam": "effective", + "endParam": "effective" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "subject", + "source" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "NutritionOrder", + "param": [ + "patient" + ], + "startParam": "datetime", + "endParam": "datetime" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "subject", + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "{def}", + "link" + ] + }, + { + "code": "PaymentNotice", + "startParam": "created", + "endParam": "created" + }, + { + "code": "PaymentReconciliation", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Person", + "param": [ + "patient" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Procedure", + "param": [ + "patient", + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Provenance", + "param": [ + "patient" + ], + "startParam": "when", + "endParam": "when" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "subject", + "author" + ], + "startParam": "answer-date", + "endParam": "answer-date" + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson", + "param": [ + "patient" + ] + }, + { + "code": "RequestOrchestration", + "param": [ + "subject", + "participant" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ResearchSubject", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "RiskAssessment", + "param": [ + "subject" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Schedule", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "subject", + "performer" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "subject" + ], + "startParam": "collected", + "endParam": "collected" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "Task", + "param": [ + "patient", + "focus-reference" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "ValueSet" + }, + { + "code": "VisionPrescription", + "param": [ + "patient" + ], + "startParam": "datewritten", + "endParam": "datewritten" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r6/compartmentdefinition-practitioner.json b/crates/ui/data/compartments/r6/compartmentdefinition-practitioner.json new file mode 100644 index 000000000..5e2615e86 --- /dev/null +++ b/crates/ui/data/compartments/r6/compartmentdefinition-practitioner.json @@ -0,0 +1,710 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "practitioner", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp class\u003d\"res-header-id\"\u003e\u003cb\u003eGenerated Narrative: CompartmentDefinition practitioner\u003c/b\u003e\u003c/p\u003e\u003ca name\u003d\"practitioner\"\u003e \u003c/a\u003e\u003ca name\u003d\"hcpractitioner\"\u003e \u003c/a\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecollector\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003einformation-provider, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicealert.html\"\u003eDeviceAlert\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eacknowledged-by\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, focus\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester, performer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, author, attester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner, participant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecare-manager\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eenterer, provider, payee, care-team\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/td\u003e\u003ctd\u003emember\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, receiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereceiver\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003egeneral-practitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ereporter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erequestor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epractitioner\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant, author\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/td\u003e\u003ctd\u003ecollector\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eprescriber\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceproduct.html\"\u003eInsuranceProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", + "valueCode": "fhir" + } + ], + "url": "http://hl7.org/fhir/CompartmentDefinition/practitioner", + "version": "6.0.0-ballot3", + "name": "Base FHIR compartment definition for Practitioner", + "status": "draft", + "experimental": false, + "date": "2025-12-17T09:50:17+00:00", + "publisher": "HL7 International / FHIR Infrastructure", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://www.hl7.org/Special/committees/fiwg" + } + ] + } + ], + "description": "There is an instance of the practitioner compartment for each Practitioner resource, and the identity of the compartment is the same as the Practitioner. The set of resources associated with a particular practitioner", + "code": "Practitioner", + "search": true, + "resource": [ + { + "code": "Account", + "param": [ + "subject" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "AllergyIntolerance", + "param": [ + "asserter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Appointment", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AuditEvent", + "param": [ + "agent" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Basic", + "param": [ + "author" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct", + "param": [ + "collector" + ] + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "startParam": "date", + "endParam": "date" + }, + { + "code": "CareTeam", + "param": [ + "participant" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Claim", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClaimResponse", + "param": [ + "requestor" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ], + "startParam": "sent", + "endParam": "sent" + }, + { + "code": "CommunicationRequest", + "param": [ + "information-provider", + "recipient", + "requester" + ], + "startParam": "authored", + "endParam": "authored" + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "subject", + "author", + "attester" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "asserter" + ] + }, + { + "code": "Consent", + "startParam": "period", + "endParam": "period" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "startParam": "period", + "endParam": "period" + }, + { + "code": "CoverageEligibilityRequest", + "param": [ + "enterer", + "provider" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "CoverageEligibilityResponse", + "param": [ + "requestor" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "DetectedIssue", + "param": [ + "author" + ], + "startParam": "identified", + "endParam": "identified" + }, + { + "code": "Device" + }, + { + "code": "DeviceAlert", + "param": [ + "acknowledged-by" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "DeviceAssociation", + "param": [ + "subject", + "focus" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "requester", + "performer" + ], + "startParam": "event-date", + "endParam": "event-date" + }, + { + "code": "DiagnosticReport", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DocumentReference", + "param": [ + "subject", + "author", + "attester" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Encounter", + "param": [ + "practitioner", + "participant" + ], + "startParam": "date-start", + "endParam": "date-start" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "param": [ + "care-manager" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "enterer", + "provider", + "payee", + "care-team" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "FamilyMemberHistory", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Flag", + "param": [ + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Goal", + "startParam": "start-date", + "endParam": "start-date" + }, + { + "code": "Group", + "param": [ + "member" + ] + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "startParam": "issued", + "endParam": "issued" + }, + { + "code": "ImagingStudy", + "startParam": "started", + "endParam": "started" + }, + { + "code": "Immunization", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InsuranceProduct" + }, + { + "code": "Invoice", + "param": [ + "participant" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Library" + }, + { + "code": "List", + "param": [ + "source" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "startParam": "date", + "endParam": "date" + }, + { + "code": "MedicationDispense", + "param": [ + "performer", + "receiver" + ], + "startParam": "whenhandedover", + "endParam": "whenhandedover" + }, + { + "code": "MedicationRequest", + "param": [ + "requester" + ], + "startParam": "combo-date", + "endParam": "combo-date" + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ], + "startParam": "effective", + "endParam": "effective" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader", + "param": [ + "receiver" + ] + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "source" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "NutritionOrder", + "param": [ + "requester" + ], + "startParam": "datetime", + "endParam": "datetime" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "general-practitioner" + ] + }, + { + "code": "PaymentNotice", + "param": [ + "reporter" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "PaymentReconciliation", + "param": [ + "requestor" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "Person", + "param": [ + "practitioner" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner", + "param": [ + "{def}" + ] + }, + { + "code": "PractitionerRole", + "param": [ + "practitioner" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Procedure", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Provenance", + "param": [ + "agent" + ], + "startParam": "when", + "endParam": "when" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ], + "startParam": "answer-date", + "endParam": "answer-date" + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson" + }, + { + "code": "RequestOrchestration", + "param": [ + "participant", + "author" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ResearchSubject", + "startParam": "date", + "endParam": "date" + }, + { + "code": "RiskAssessment", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Schedule", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer", + "requester" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "param": [ + "collector" + ], + "startParam": "collected", + "endParam": "collected" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "Task", + "startParam": "period", + "endParam": "period" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "ValueSet" + }, + { + "code": "VisionPrescription", + "param": [ + "prescriber" + ], + "startParam": "datewritten", + "endParam": "datewritten" + } + ] +} \ No newline at end of file diff --git a/crates/ui/data/compartments/r6/compartmentdefinition-relatedperson.json b/crates/ui/data/compartments/r6/compartmentdefinition-relatedperson.json new file mode 100644 index 000000000..e28f9f455 --- /dev/null +++ b/crates/ui/data/compartments/r6/compartmentdefinition-relatedperson.json @@ -0,0 +1,631 @@ +{ + "resourceType": "CompartmentDefinition", + "id": "relatedPerson", + "text": { + "status": "generated", + "div": "\u003cdiv xmlns\u003d\"http://www.w3.org/1999/xhtml\"\u003e\u003cp class\u003d\"res-header-id\"\u003e\u003cb\u003eGenerated Narrative: CompartmentDefinition relatedPerson\u003c/b\u003e\u003c/p\u003e\u003ca name\u003d\"relatedPerson\"\u003e \u003c/a\u003e\u003ca name\u003d\"hcrelatedPerson\"\u003e \u003c/a\u003e\u003cp\u003e\r\nThe following resources may be in this compartment:\r\n\u003c/p\u003e\r\n\u003ctable class\u003d\"grid\"\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003cb\u003eResource\u003c/b\u003e\u003c/td\u003e\u003ctd\u003e\u003cb\u003eInclusion Criteria\u003c/b\u003e\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"adverseevent.html\"\u003eAdverseEvent\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecorder\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"allergyintolerance.html\"\u003eAllergyIntolerance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointment.html\"\u003eAppointment\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"appointmentresponse.html\"\u003eAppointmentResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"basic.html\"\u003eBasic\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"careteam.html\"\u003eCareTeam\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"claim.html\"\u003eClaim\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communication.html\"\u003eCommunication\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esender, recipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"communicationrequest.html\"\u003eCommunicationRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003einformation-provider, recipient, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"composition.html\"\u003eComposition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"condition.html\"\u003eCondition\u003c/a\u003e\u003c/td\u003e\u003ctd\u003easserter\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"coverage.html\"\u003eCoverage\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epolicy-holder, subscriber, paymentby-party\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicealert.html\"\u003eDeviceAlert\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eacknowledged-by\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"deviceassociation.html\"\u003eDeviceAssociation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esubject, focus\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"devicerequest.html\"\u003eDeviceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer, requester\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"documentreference.html\"\u003eDocumentReference\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"encounter.html\"\u003eEncounter\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"explanationofbenefit.html\"\u003eExplanationOfBenefit\u003c/a\u003e\u003c/td\u003e\u003ctd\u003epayee\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"invoice.html\"\u003eInvoice\u003c/a\u003e\u003c/td\u003e\u003ctd\u003erecipient\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"medicationstatement.html\"\u003eMedicationStatement\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"nutritionintake.html\"\u003eNutritionIntake\u003c/a\u003e\u003c/td\u003e\u003ctd\u003esource\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"observation.html\"\u003eObservation\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"patient.html\"\u003ePatient\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"person.html\"\u003ePerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003elink\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"procedure.html\"\u003eProcedure\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"provenance.html\"\u003eProvenance\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eagent\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"questionnaireresponse.html\"\u003eQuestionnaireResponse\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eauthor, source\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"relatedperson.html\"\u003eRelatedPerson\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e{def}\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"requestorchestration.html\"\u003eRequestOrchestration\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eparticipant\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"schedule.html\"\u003eSchedule\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eactor\u003c/td\u003e\u003c/tr\u003e\r\n \u003ctr\u003e\u003ctd\u003e\u003ca href\u003d\"servicerequest.html\"\u003eServiceRequest\u003c/a\u003e\u003c/td\u003e\u003ctd\u003eperformer\u003c/td\u003e\u003c/tr\u003e\r\n\u003c/table\u003e\r\n\u003cp\u003e\r\nA resource is in this compartment if the nominated search parameter (or chain) refers to the patient resource that defines the compartment.\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\n\r\n\u003c/p\u003e\r\n\u003cp\u003e\r\nThe following resources are never in this compartment:\r\n\u003c/p\u003e\r\n\u003cul\u003e\r\n \u003cli\u003e\u003ca href\u003d\"account.html\"\u003eAccount\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"activitydefinition.html\"\u003eActivityDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"actordefinition.html\"\u003eActorDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"administrableproductdefinition.html\"\u003eAdministrableProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"artifactassessment.html\"\u003eArtifactAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"auditevent.html\"\u003eAuditEvent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"binary.html\"\u003eBinary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"biologicallyderivedproduct.html\"\u003eBiologicallyDerivedProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bodystructure.html\"\u003eBodyStructure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"bundle.html\"\u003eBundle\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"capabilitystatement.html\"\u003eCapabilityStatement\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"careplan.html\"\u003eCarePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"claimresponse.html\"\u003eClaimResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"clinicalusedefinition.html\"\u003eClinicalUseDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"codesystem.html\"\u003eCodeSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"compartmentdefinition.html\"\u003eCompartmentDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"conceptmap.html\"\u003eConceptMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"consent.html\"\u003eConsent\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"contract.html\"\u003eContract\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityrequest.html\"\u003eCoverageEligibilityRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"coverageeligibilityresponse.html\"\u003eCoverageEligibilityResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"detectedissue.html\"\u003eDetectedIssue\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"device.html\"\u003eDevice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicedefinition.html\"\u003eDeviceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"devicemetric.html\"\u003eDeviceMetric\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"diagnosticreport.html\"\u003eDiagnosticReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"endpoint.html\"\u003eEndpoint\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentrequest.html\"\u003eEnrollmentRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"enrollmentresponse.html\"\u003eEnrollmentResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"episodeofcare.html\"\u003eEpisodeOfCare\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"eventdefinition.html\"\u003eEventDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidence.html\"\u003eEvidence\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"evidencevariable.html\"\u003eEvidenceVariable\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"examplescenario.html\"\u003eExampleScenario\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"familymemberhistory.html\"\u003eFamilyMemberHistory\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"flag.html\"\u003eFlag\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"goal.html\"\u003eGoal\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"group.html\"\u003eGroup\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"guidanceresponse.html\"\u003eGuidanceResponse\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"healthcareservice.html\"\u003eHealthcareService\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingselection.html\"\u003eImagingSelection\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"imagingstudy.html\"\u003eImagingStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"immunization.html\"\u003eImmunization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"implementationguide.html\"\u003eImplementationGuide\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"ingredient.html\"\u003eIngredient\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceplan.html\"\u003eInsurancePlan\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"insuranceproduct.html\"\u003eInsuranceProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"library.html\"\u003eLibrary\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"list.html\"\u003eList\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"location.html\"\u003eLocation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"manufactureditemdefinition.html\"\u003eManufacturedItemDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measure.html\"\u003eMeasure\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"measurereport.html\"\u003eMeasureReport\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medication.html\"\u003eMedication\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationadministration.html\"\u003eMedicationAdministration\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationdispense.html\"\u003eMedicationDispense\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicationrequest.html\"\u003eMedicationRequest\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"medicinalproductdefinition.html\"\u003eMedicinalProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messagedefinition.html\"\u003eMessageDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"messageheader.html\"\u003eMessageHeader\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"namingsystem.html\"\u003eNamingSystem\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionorder.html\"\u003eNutritionOrder\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"nutritionproduct.html\"\u003eNutritionProduct\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"observationdefinition.html\"\u003eObservationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationdefinition.html\"\u003eOperationDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"operationoutcome.html\"\u003eOperationOutcome\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organization.html\"\u003eOrganization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"organizationaffiliation.html\"\u003eOrganizationAffiliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"packagedproductdefinition.html\"\u003ePackagedProductDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentnotice.html\"\u003ePaymentNotice\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"paymentreconciliation.html\"\u003ePaymentReconciliation\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"plandefinition.html\"\u003ePlanDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitioner.html\"\u003ePractitioner\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"practitionerrole.html\"\u003ePractitionerRole\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"questionnaire.html\"\u003eQuestionnaire\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"regulatedauthorization.html\"\u003eRegulatedAuthorization\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"requirements.html\"\u003eRequirements\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchstudy.html\"\u003eResearchStudy\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"researchsubject.html\"\u003eResearchSubject\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"riskassessment.html\"\u003eRiskAssessment\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"searchparameter.html\"\u003eSearchParameter\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"slot.html\"\u003eSlot\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimen.html\"\u003eSpecimen\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"specimendefinition.html\"\u003eSpecimenDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuredefinition.html\"\u003eStructureDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"structuremap.html\"\u003eStructureMap\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscription.html\"\u003eSubscription\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptionstatus.html\"\u003eSubscriptionStatus\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"subscriptiontopic.html\"\u003eSubscriptionTopic\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substance.html\"\u003eSubstance\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"substancedefinition.html\"\u003eSubstanceDefinition\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"task.html\"\u003eTask\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"terminologycapabilities.html\"\u003eTerminologyCapabilities\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"valueset.html\"\u003eValueSet\u003c/a\u003e\u003c/li\u003e\r\n \u003cli\u003e\u003ca href\u003d\"visionprescription.html\"\u003eVisionPrescription\u003c/a\u003e\u003c/li\u003e\r\n\u003c/ul\u003e\u003c/div\u003e" + }, + "extension": [ + { + "url": "http://hl7.org/fhir/StructureDefinition/structuredefinition-wg", + "valueCode": "fhir" + } + ], + "url": "http://hl7.org/fhir/CompartmentDefinition/relatedPerson", + "version": "6.0.0-ballot3", + "name": "Base FHIR compartment definition for RelatedPerson", + "status": "draft", + "experimental": false, + "date": "2025-12-17T09:50:17+00:00", + "publisher": "HL7 International / FHIR Infrastructure", + "contact": [ + { + "telecom": [ + { + "system": "url", + "value": "http://www.hl7.org/Special/committees/fiwg" + } + ] + } + ], + "description": "There is an instance of the relatedPerson compartment for each relatedPerson resource, and the identity of the compartment is the same as the relatedPerson. The set of resources associated with a particular \u0027related person\u0027", + "code": "RelatedPerson", + "search": true, + "resource": [ + { + "code": "Account", + "startParam": "period", + "endParam": "period" + }, + { + "code": "ActivityDefinition" + }, + { + "code": "ActorDefinition" + }, + { + "code": "AdministrableProductDefinition" + }, + { + "code": "AdverseEvent", + "param": [ + "recorder" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "AllergyIntolerance", + "param": [ + "asserter" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Appointment", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "AppointmentResponse", + "param": [ + "actor" + ] + }, + { + "code": "ArtifactAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "AuditEvent", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Basic", + "param": [ + "author" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "Binary" + }, + { + "code": "BiologicallyDerivedProduct" + }, + { + "code": "BodyStructure" + }, + { + "code": "Bundle" + }, + { + "code": "CapabilityStatement" + }, + { + "code": "CarePlan", + "startParam": "date", + "endParam": "date" + }, + { + "code": "CareTeam", + "param": [ + "participant" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Claim", + "param": [ + "payee" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClaimResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "ClinicalUseDefinition" + }, + { + "code": "CodeSystem" + }, + { + "code": "Communication", + "param": [ + "sender", + "recipient" + ], + "startParam": "sent", + "endParam": "sent" + }, + { + "code": "CommunicationRequest", + "param": [ + "information-provider", + "recipient", + "requester" + ], + "startParam": "authored", + "endParam": "authored" + }, + { + "code": "CompartmentDefinition" + }, + { + "code": "Composition", + "param": [ + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ConceptMap" + }, + { + "code": "Condition", + "param": [ + "asserter" + ] + }, + { + "code": "Consent", + "startParam": "period", + "endParam": "period" + }, + { + "code": "Contract" + }, + { + "code": "Coverage", + "param": [ + "policy-holder", + "subscriber", + "paymentby-party" + ], + "startParam": "period", + "endParam": "period" + }, + { + "code": "CoverageEligibilityRequest", + "startParam": "created", + "endParam": "created" + }, + { + "code": "CoverageEligibilityResponse", + "startParam": "created", + "endParam": "created" + }, + { + "code": "DetectedIssue", + "startParam": "identified", + "endParam": "identified" + }, + { + "code": "Device" + }, + { + "code": "DeviceAlert", + "param": [ + "acknowledged-by" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "DeviceAssociation", + "param": [ + "subject", + "focus" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "DeviceDefinition" + }, + { + "code": "DeviceMetric" + }, + { + "code": "DeviceRequest", + "param": [ + "performer", + "requester" + ], + "startParam": "event-date", + "endParam": "event-date" + }, + { + "code": "DiagnosticReport", + "startParam": "date", + "endParam": "date" + }, + { + "code": "DocumentReference", + "param": [ + "author" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Encounter", + "param": [ + "participant" + ], + "startParam": "date-start", + "endParam": "date-start" + }, + { + "code": "Endpoint" + }, + { + "code": "EnrollmentRequest" + }, + { + "code": "EnrollmentResponse" + }, + { + "code": "EpisodeOfCare", + "startParam": "date", + "endParam": "date" + }, + { + "code": "EventDefinition" + }, + { + "code": "Evidence" + }, + { + "code": "EvidenceVariable" + }, + { + "code": "ExampleScenario" + }, + { + "code": "ExplanationOfBenefit", + "param": [ + "payee" + ], + "startParam": "created", + "endParam": "created" + }, + { + "code": "FamilyMemberHistory", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Flag", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Goal", + "startParam": "start-date", + "endParam": "start-date" + }, + { + "code": "Group" + }, + { + "code": "GuidanceResponse" + }, + { + "code": "HealthcareService" + }, + { + "code": "ImagingSelection", + "startParam": "issued", + "endParam": "issued" + }, + { + "code": "ImagingStudy", + "startParam": "started", + "endParam": "started" + }, + { + "code": "Immunization", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ImplementationGuide" + }, + { + "code": "Ingredient" + }, + { + "code": "InsurancePlan" + }, + { + "code": "InsuranceProduct" + }, + { + "code": "Invoice", + "param": [ + "recipient" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Library" + }, + { + "code": "List", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Location" + }, + { + "code": "ManufacturedItemDefinition" + }, + { + "code": "Measure" + }, + { + "code": "MeasureReport", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Medication" + }, + { + "code": "MedicationAdministration", + "startParam": "date", + "endParam": "date" + }, + { + "code": "MedicationDispense", + "startParam": "whenhandedover", + "endParam": "whenhandedover" + }, + { + "code": "MedicationRequest", + "startParam": "combo-date", + "endParam": "combo-date" + }, + { + "code": "MedicationStatement", + "param": [ + "source" + ], + "startParam": "effective", + "endParam": "effective" + }, + { + "code": "MedicinalProductDefinition" + }, + { + "code": "MessageDefinition" + }, + { + "code": "MessageHeader" + }, + { + "code": "NamingSystem" + }, + { + "code": "NutritionIntake", + "param": [ + "source" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "NutritionOrder", + "startParam": "datetime", + "endParam": "datetime" + }, + { + "code": "NutritionProduct" + }, + { + "code": "Observation", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "ObservationDefinition" + }, + { + "code": "OperationDefinition" + }, + { + "code": "OperationOutcome" + }, + { + "code": "Organization" + }, + { + "code": "OrganizationAffiliation", + "startParam": "date", + "endParam": "date" + }, + { + "code": "PackagedProductDefinition" + }, + { + "code": "Patient", + "param": [ + "link" + ] + }, + { + "code": "PaymentNotice", + "startParam": "created", + "endParam": "created" + }, + { + "code": "PaymentReconciliation", + "startParam": "created", + "endParam": "created" + }, + { + "code": "Person", + "param": [ + "link" + ] + }, + { + "code": "PlanDefinition" + }, + { + "code": "Practitioner" + }, + { + "code": "PractitionerRole", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Procedure", + "param": [ + "performer" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "Provenance", + "param": [ + "agent" + ], + "startParam": "when", + "endParam": "when" + }, + { + "code": "Questionnaire" + }, + { + "code": "QuestionnaireResponse", + "param": [ + "author", + "source" + ], + "startParam": "answer-date", + "endParam": "answer-date" + }, + { + "code": "RegulatedAuthorization" + }, + { + "code": "RelatedPerson", + "param": [ + "{def}" + ] + }, + { + "code": "RequestOrchestration", + "param": [ + "participant" + ] + }, + { + "code": "Requirements" + }, + { + "code": "ResearchStudy", + "startParam": "date", + "endParam": "date" + }, + { + "code": "ResearchSubject", + "startParam": "date", + "endParam": "date" + }, + { + "code": "RiskAssessment", + "startParam": "date", + "endParam": "date" + }, + { + "code": "Schedule", + "param": [ + "actor" + ], + "startParam": "date", + "endParam": "date" + }, + { + "code": "SearchParameter" + }, + { + "code": "ServiceRequest", + "param": [ + "performer" + ], + "startParam": "occurrence", + "endParam": "occurrence" + }, + { + "code": "Slot" + }, + { + "code": "Specimen", + "startParam": "collected", + "endParam": "collected" + }, + { + "code": "SpecimenDefinition" + }, + { + "code": "StructureDefinition" + }, + { + "code": "StructureMap" + }, + { + "code": "Subscription" + }, + { + "code": "SubscriptionStatus" + }, + { + "code": "SubscriptionTopic" + }, + { + "code": "Substance" + }, + { + "code": "SubstanceDefinition" + }, + { + "code": "Task", + "startParam": "period", + "endParam": "period" + }, + { + "code": "TerminologyCapabilities" + }, + { + "code": "ValueSet" + }, + { + "code": "VisionPrescription", + "startParam": "datewritten", + "endParam": "datewritten" + } + ] +} \ No newline at end of file diff --git a/crates/ui/src/compartments.rs b/crates/ui/src/compartments.rs new file mode 100644 index 000000000..647316cc5 --- /dev/null +++ b/crates/ui/src/compartments.rs @@ -0,0 +1,610 @@ +//! Read model for the Compartment viewer & tester (`/ui/compartments`, #237). +//! +//! Definition metadata comes from the vendored FHIR spec +//! `CompartmentDefinition` JSONs under `data/compartments/` — the same files +//! `helios-fhir-gen` compiles into `get_compartment_params()`. The membership +//! chips and the tester, however, resolve through +//! [`helios_fhir::compartment_params`] — the codegen'd table the REST +//! compartment handler actually consults — so what this screen shows is what +//! the server does. A parity test asserts the vendored copies match the +//! codegen output. +//! +//! The spec's `compartmentdefinition-questionnaire.json` (no `code`, zero +//! `resource` entries) is not vendored; see open question 4 on the issue. + +use std::sync::OnceLock; + +use helios_fhir::FhirVersion; +use serde::Deserialize; + +/// One vendored CompartmentDefinition, trimmed to the fields the screen shows. +#[derive(Deserialize)] +pub(crate) struct CompartmentDef { + pub url: String, + #[serde(default)] + pub version: String, + pub status: String, + #[serde(default)] + pub experimental: bool, + #[serde(default)] + pub publisher: String, + #[serde(default)] + pub description: String, + pub code: String, + pub search: bool, + pub resource: Vec, +} + +#[derive(Deserialize)] +pub(crate) struct CompartmentResource { + pub code: String, + /// Only the parity test reads this; the live view resolves linking + /// params through the runtime table (`runtime_params`) instead. + #[cfg_attr(not(test), allow(dead_code))] + #[serde(default)] + pub param: Vec, +} + +macro_rules! defs { + ($dir:literal $(, $extra:literal)?) => { + &[ + include_str!(concat!("../data/compartments/", $dir, "/compartmentdefinition-device.json")), + include_str!(concat!("../data/compartments/", $dir, "/compartmentdefinition-encounter.json")), + include_str!(concat!("../data/compartments/", $dir, "/compartmentdefinition-patient.json")), + include_str!(concat!("../data/compartments/", $dir, "/compartmentdefinition-practitioner.json")), + include_str!(concat!("../data/compartments/", $dir, "/compartmentdefinition-relatedperson.json")), + $(include_str!(concat!("../data/compartments/", $dir, "/", $extra)),)? + ] + }; +} + +fn raw_definitions(version: FhirVersion) -> &'static [&'static str] { + match version { + #[cfg(feature = "R4")] + FhirVersion::R4 => defs!("r4"), + #[cfg(feature = "R4B")] + FhirVersion::R4B => defs!("r4b"), + #[cfg(feature = "R5")] + FhirVersion::R5 => defs!("r5"), + #[cfg(feature = "R6")] + FhirVersion::R6 => defs!("r6", "compartmentdefinition-group.json"), + } +} + +/// Parsed definitions for a version, sorted by compartment code. Parsed once +/// per process; the underlying JSON is compiled in. +pub(crate) fn definitions(version: FhirVersion) -> &'static [CompartmentDef] { + static CACHE: OnceLock)>> = OnceLock::new(); + let cache = CACHE.get_or_init(|| { + crate::search_params::enabled_versions() + .into_iter() + .map(|v| { + let mut defs: Vec = raw_definitions(v) + .iter() + .map(|raw| { + serde_json::from_str(raw).expect("vendored CompartmentDefinition parses") + }) + .collect(); + defs.sort_by(|a, b| a.code.cmp(&b.code)); + (v, defs) + }) + .collect() + }); + cache + .iter() + .find(|(v, _)| *v == version) + .map(|(_, defs)| defs.as_slice()) + .unwrap_or(&[]) +} + +impl CompartmentDef { + /// Member = the runtime table returns at least one linking parameter. + /// `{def}` (the compartment resource itself) counts as a member. + pub fn member_count(&self, version: FhirVersion) -> usize { + self.resource + .iter() + .filter(|r| !runtime_params(version, &self.code, &r.code).is_empty()) + .count() + } +} + +/// The codegen'd linking parameters the compartment handler consults. +pub(crate) fn runtime_params( + version: FhirVersion, + compartment: &str, + resource_type: &str, +) -> &'static [&'static str] { + helios_fhir::compartment_params(version, compartment, resource_type) +} + +// --------------------------------------------------------------------------- +// View model +// --------------------------------------------------------------------------- + +#[derive(Clone, Copy, PartialEq)] +pub(crate) enum Tab { + Definition, + Members, + Tester, +} + +impl Tab { + pub fn from_str(value: Option<&str>) -> Tab { + match value { + Some("members") => Tab::Members, + Some("tester") => Tab::Tester, + _ => Tab::Definition, + } + } + pub fn key(&self) -> &'static str { + match self { + Tab::Definition => "definition", + Tab::Members => "members", + Tab::Tester => "tester", + } + } +} + +#[derive(Clone, Copy, PartialEq)] +pub(crate) enum MemberFilter { + Members, + All, + Excluded, +} + +impl MemberFilter { + pub fn from_str(value: Option<&str>) -> MemberFilter { + match value { + Some("all") => MemberFilter::All, + Some("excluded") => MemberFilter::Excluded, + _ => MemberFilter::Members, + } + } + pub fn key(&self) -> &'static str { + match self { + MemberFilter::Members => "members", + MemberFilter::All => "all", + MemberFilter::Excluded => "excluded", + } + } +} + +/// Tester outcome, mirroring the REST handler's decisions +/// (`crates/rest/src/handlers/compartment.rs`). +pub(crate) enum TesterOutcome { + /// Member via linking params; `flat_search` is the equivalent search the + /// server runs. `self_def` marks the `{def}` case (the compartment + /// resource itself). + Member { + params: Vec, + route: String, + flat_search: String, + self_def: bool, + }, + /// Not a member: the handler returns 404 with an OperationOutcome. + NotMember { route: String, preview: String }, + /// `*` fan-out across every member type; excluded types are skipped, + /// not failed. + FanOut { + route: String, + member_types: Vec, + total: usize, + }, +} + +pub(crate) struct CmpRailItem { + pub code: String, + pub members: usize, + pub total: usize, + pub href: String, + pub current: bool, +} + +pub(crate) struct CmpTab { + pub key: &'static str, + pub href: String, + pub current: bool, +} + +pub(crate) struct CmpFilter { + pub key: &'static str, + pub count: usize, + pub href: String, + pub current: bool, +} + +pub(crate) struct MemberRow { + pub name: String, + pub member: bool, + pub params: Vec, +} + +/// Tester outcome flattened for the template: `kind` is one of +/// "member" | "self" | "notmember" | "fanout". +pub(crate) struct TesterView { + pub id: String, + pub target: String, + pub kind: &'static str, + pub route: String, + pub params: String, + pub body: String, + pub member_types: String, + pub total: usize, +} + +impl TesterView { + fn new(id: String, target: String, outcome: TesterOutcome) -> TesterView { + match outcome { + TesterOutcome::Member { + params, + route, + flat_search, + self_def, + } => TesterView { + id, + target, + kind: if self_def { "self" } else { "member" }, + route, + params: params.join(" OR "), + body: flat_search, + member_types: String::new(), + total: 0, + }, + TesterOutcome::NotMember { route, preview } => TesterView { + id, + target, + kind: "notmember", + route, + params: String::new(), + body: preview, + member_types: String::new(), + total: 0, + }, + TesterOutcome::FanOut { + route, + member_types, + total, + } => { + let shown: Vec<&String> = member_types.iter().take(18).collect(); + let mut list = shown + .iter() + .map(|s| s.as_str()) + .collect::>() + .join(", "); + if member_types.len() > 18 { + list.push_str(", …"); + } + TesterView { + id, + target, + kind: "fanout", + route, + params: String::new(), + body: String::new(), + member_types: list, + total, + } + } + } + } +} + +pub(crate) struct CmpView { + pub versions: Vec, + pub rail: Vec, + pub def: &'static CompartmentDef, + pub tab: &'static str, + pub tabs: Vec, + pub member_filters: Vec, + pub members: Vec, + pub tester: TesterView, + /// Hidden inputs so the tester form round-trips version/def/tab. + pub hidden_fields: Vec<(String, String)>, +} + +/// Parsed query state for the page. +#[derive(Clone, Default)] +pub(crate) struct CmpQuery { + pub version: Option, + pub def: Option, + pub tab: Option, + pub filter: Option, + pub id: String, + pub target: String, +} + +impl CmpQuery { + pub fn fhir_version(&self) -> FhirVersion { + self.version + .as_deref() + .and_then(crate::search_params::version_from_str) + .unwrap_or_default() + } + + fn href(&self, def: &str, tab: Tab, filter: MemberFilter) -> String { + let mut parts: Vec = Vec::new(); + if let Some(v) = &self.version { + parts.push(format!("version={v}")); + } + parts.push(format!("def={def}")); + parts.push(format!("tab={}", tab.key())); + if filter != MemberFilter::Members { + parts.push(format!("filter={}", filter.key())); + } + format!("/ui/compartments?{}", parts.join("&")) + } +} + +/// Assembles the whole page state. Returns `None` when the build has no +/// FHIR version enabled with compartment data (not a supported target). +pub(crate) fn build_view(query: &CmpQuery) -> Option { + let version = query.fhir_version(); + let defs = definitions(version); + let def = query + .def + .as_deref() + .and_then(|code| defs.iter().find(|d| d.code == code)) + .or_else(|| { + defs.iter() + .find(|d| d.code == "Patient") + .or_else(|| defs.first()) + })?; + let tab = Tab::from_str(query.tab.as_deref()); + let filter = MemberFilter::from_str(query.filter.as_deref()); + + let rail = defs + .iter() + .map(|d| CmpRailItem { + code: d.code.clone(), + members: d.member_count(version), + total: d.resource.len(), + href: query.href(&d.code, tab, filter), + current: d.code == def.code, + }) + .collect(); + + let tabs = [Tab::Definition, Tab::Members, Tab::Tester] + .into_iter() + .map(|t| CmpTab { + key: t.key(), + href: query.href(&def.code, t, filter), + current: t == tab, + }) + .collect(); + + let member_count = def.member_count(version); + let total_count = def.resource.len(); + let member_filters = [ + (MemberFilter::Members, member_count), + (MemberFilter::All, total_count), + (MemberFilter::Excluded, total_count - member_count), + ] + .into_iter() + .map(|(f, count)| CmpFilter { + key: f.key(), + count, + href: query.href(&def.code, tab, f), + current: f == filter, + }) + .collect(); + + let members = def + .resource + .iter() + .filter_map(|r| { + let params = runtime_params(version, &def.code, &r.code); + let member = !params.is_empty(); + match filter { + MemberFilter::Members if !member => return None, + MemberFilter::Excluded if member => return None, + _ => {} + } + Some(MemberRow { + name: r.code.clone(), + member, + params: params.iter().map(|p| p.to_string()).collect(), + }) + }) + .collect(); + + let id = if query.id.trim().is_empty() { + "example".to_string() + } else { + query.id.trim().to_string() + }; + let target = if query.target.trim().is_empty() { + "Observation".to_string() + } else { + query.target.trim().to_string() + }; + let outcome = run_tester(version, def, &id, &target); + let tester = TesterView::new(id, target, outcome); + + let versions = crate::search_params::enabled_versions() + .into_iter() + .map(|v| { + let mut q = query.clone(); + q.version = Some(v.as_str().to_string()); + crate::search_params::VersionLink { + label: v.as_str(), + href: q.href(&def.code, tab, filter), + current: v == version, + } + }) + .collect(); + + let mut hidden_fields: Vec<(String, String)> = Vec::new(); + if let Some(v) = &query.version { + hidden_fields.push(("version".into(), v.clone())); + } + hidden_fields.push(("def".into(), def.code.clone())); + hidden_fields.push(("tab".into(), "tester".into())); + + Some(CmpView { + versions, + rail, + def, + tab: tab.key(), + tabs, + member_filters, + members, + tester, + hidden_fields, + }) +} + +pub(crate) fn run_tester( + version: FhirVersion, + def: &CompartmentDef, + id: &str, + target: &str, +) -> TesterOutcome { + let id = if id.is_empty() { "example" } else { id }; + if target == "*" { + let member_types: Vec = def + .resource + .iter() + .filter(|r| !runtime_params(version, &def.code, &r.code).is_empty()) + .map(|r| r.code.clone()) + .collect(); + return TesterOutcome::FanOut { + route: format!("GET /{}/{}/*", def.code, id), + total: member_types.len(), + member_types, + }; + } + + let params = runtime_params(version, &def.code, target); + let route = format!("GET /{}/{}/{}", def.code, id, target); + if params.is_empty() { + let preview = format!( + "{route}\n\u{2192} 404 Not Found\n{{ \"resourceType\": \"OperationOutcome\",\n \"issue\": [{{ \"severity\": \"error\", \"code\": \"not-found\",\n \"diagnostics\": \"{target} is not a member of the {} compartment\" }}] }}", + def.code + ); + return TesterOutcome::NotMember { route, preview }; + } + + let self_def = params == ["{def}"]; + let flat_search = if self_def { + format!("GET /{}/{}", def.code, id) + } else { + let clauses: Vec = params + .iter() + .map(|p| format!("{p}={}/{id}", def.code)) + .collect(); + format!("GET /{target}?\n {}", clauses.join(" OR ")) + }; + TesterOutcome::Member { + params: params.iter().map(|p| p.to_string()).collect(), + route, + flat_search, + self_def, + } +} + +#[cfg(test)] +mod tests { + use super::*; + + #[cfg(feature = "R4")] + const R4: FhirVersion = FhirVersion::R4; + + /// The vendored spec JSONs must say exactly what the codegen'd runtime + /// table says — every (compartment, type) slot, every version. This is + /// the guard against the vendored copies drifting from + /// `crates/fhir-gen/resources/`. + #[test] + fn vendored_definitions_match_codegen_table() { + for version in crate::search_params::enabled_versions() { + for def in definitions(version) { + for resource in &def.resource { + let runtime = runtime_params(version, &def.code, &resource.code); + assert_eq!( + runtime, + resource.param.as_slice(), + "{} compartment {} / {}", + version.as_str(), + def.code, + resource.code + ); + } + } + } + } + + #[cfg(feature = "R4")] + #[test] + fn r4_ships_the_five_spec_compartments() { + let codes: Vec<&str> = definitions(R4).iter().map(|d| d.code.as_str()).collect(); + assert_eq!( + codes, + ["Device", "Encounter", "Patient", "Practitioner", "RelatedPerson"] + ); + let patient = definitions(R4).iter().find(|d| d.code == "Patient").unwrap(); + assert_eq!(patient.resource.len(), 145); + assert_eq!(patient.member_count(R4), 66); + } + + #[cfg(feature = "R4")] + #[test] + fn tester_resolves_membership_like_the_handler() { + let patient = definitions(R4).iter().find(|d| d.code == "Patient").unwrap(); + + match run_tester(R4, patient, "example", "Observation") { + TesterOutcome::Member { + params, + flat_search, + self_def, + .. + } => { + assert_eq!(params, ["subject", "performer"]); + assert!(flat_search.contains("subject=Patient/example")); + assert!(flat_search.contains("OR performer=Patient/example")); + assert!(!self_def); + } + _ => panic!("Observation is a Patient-compartment member"), + } + + match run_tester(R4, patient, "example", "Medication") { + TesterOutcome::NotMember { preview, .. } => { + assert!(preview.contains("404")); + assert!(preview.contains("OperationOutcome")); + } + _ => panic!("Medication is not a Patient-compartment member"), + } + + match run_tester(R4, patient, "example", "*") { + TesterOutcome::FanOut { total, .. } => assert_eq!(total, 66), + _ => panic!("* fans out"), + } + } + + #[cfg(feature = "R4")] + #[test] + fn tester_reports_the_self_definition_case() { + let encounter = definitions(R4).iter().find(|d| d.code == "Encounter").unwrap(); + match run_tester(R4, encounter, "e1", "Encounter") { + TesterOutcome::Member { + self_def, + flat_search, + .. + } => { + assert!(self_def, "{{def}} marks the compartment resource itself"); + assert_eq!(flat_search, "GET /Encounter/e1"); + } + _ => panic!("Encounter is in its own compartment via {{def}}"), + } + } + + #[cfg(feature = "R4")] + #[test] + fn view_defaults_to_patient_and_builds_all_tabs() { + let view = build_view(&CmpQuery::default()).expect("view builds"); + assert_eq!(view.def.code, "Patient"); + assert_eq!(view.rail.len(), 5); + assert_eq!(view.tabs.len(), 3); + assert_eq!(view.member_filters.len(), 3); + // Default filter: members only. + assert!(view.members.iter().all(|m| m.member)); + } +} diff --git a/crates/ui/src/lib.rs b/crates/ui/src/lib.rs index d72ea1647..9df97de99 100644 --- a/crates/ui/src/lib.rs +++ b/crates/ui/src/lib.rs @@ -19,12 +19,14 @@ //! against the locale negotiated per request by [`i18n::negotiate_locale`] //! (see `docs/multi-language.md`); templates hold catalog keys, not prose. +mod compartments; mod i18n; +mod search_params; use askama::Template; use axum::{ Router, - extract::State, + extract::{Query, State}, http::StatusCode, middleware, response::{Html, IntoResponse, Response}, @@ -34,6 +36,9 @@ use axum_embed::ServeEmbed; use axum_htmx::{AutoVaryLayer, HxRequest}; use i18n::{I18n, RequestLocale}; use rust_embed::RustEmbed; +use serde::Deserialize; +use std::path::PathBuf; +use std::sync::Arc; use std::time::{SystemTime, UNIX_EPOCH}; /// Static UI assets (htmx, CSS) embedded into the binary at compile time. @@ -44,9 +49,11 @@ use std::time::{SystemTime, UNIX_EPOCH}; struct Assets; /// Shared router state: values that are constant for the process lifetime. -#[derive(Clone, Copy)] +#[derive(Clone)] struct WebState { version: &'static str, + /// Lazily-loaded SearchParameter snapshot per FHIR version (#238). + sp_catalog: Arc, } /// A small, self-contained system-status snapshot — the "real read path" the @@ -106,6 +113,30 @@ struct QueriesPage { active_page: &'static str, } +/// SearchParameter viewer (#238). Read-only against the same snapshot the +/// storage backends seed their registries from; the write half lands +/// behind #235. +#[derive(Template)] +#[template(path = "pages/search-parameters.html")] +struct SearchParametersPage { + status: Status, + i18n: I18n, + active_page: &'static str, + view: search_params::SpView, +} + +/// Compartment viewer & route tester (#237). Read-only: the base definitions +/// are codegen'd into the binary; a tenant-scoped override layer is open +/// question 1 on the issue. +#[derive(Template)] +#[template(path = "pages/compartments.html")] +struct CompartmentsPage { + status: Status, + i18n: I18n, + active_page: &'static str, + view: compartments::CmpView, +} + #[derive(Template)] #[template(path = "partials/status.html")] struct StatusPartial { @@ -115,10 +146,16 @@ struct StatusPartial { /// Mounts the web UI under `/ui`, falling back to the FHIR REST app for every /// other path. The UI depends on the rest of the server, never the reverse. -pub fn mount(fhir_app: Router, hfs_version: &'static str) -> Router { +/// +/// `data_dir` is the server's data directory (`HFS_DATA_DIR`), where the +/// SearchParameter spec bundles live; `None` falls back to `./data`, matching +/// the storage backends. +pub fn mount(fhir_app: Router, hfs_version: &'static str, data_dir: Option) -> Router { Router::new() .route("/ui", get(index)) .route("/ui/queries", get(queries)) + .route("/ui/search-parameters", get(search_parameters)) + .route("/ui/compartments", get(compartments_page)) .route("/ui/status", get(status)) // Embedded, pinned htmx + CSS, served with br/gzip/deflate negotiation. .nest_service("/ui/assets", ServeEmbed::::new()) @@ -130,6 +167,7 @@ pub fn mount(fhir_app: Router, hfs_version: &'static str) -> Router { .layer(middleware::from_fn(i18n::negotiate_locale)) .with_state(WebState { version: hfs_version, + sp_catalog: Arc::new(search_params::SpCatalog::new(data_dir)), }) .fallback_service(fhir_app) } @@ -153,6 +191,83 @@ async fn queries(State(state): State, locale: RequestLocale) -> Respon }) } +/// Query string for the SearchParameter viewer. Every filter is a link and +/// the search box is a GET form, so the page works without JavaScript. +#[derive(Deserialize, Default)] +struct SearchParametersQuery { + version: Option, + base: Option, + #[serde(rename = "type")] + ptype: Option, + source: Option, + #[serde(default)] + q: String, + page: Option, + sel: Option, +} + +/// SearchParameter viewer page. +async fn search_parameters( + State(state): State, + locale: RequestLocale, + Query(raw): Query, +) -> Response { + let query = search_params::SpQuery { + version: raw.version, + base: raw.base.filter(|b| !b.is_empty()), + ptype: raw.ptype.filter(|t| !t.is_empty()), + source: raw.source.filter(|s| !s.is_empty()), + q: raw.q, + page: raw.page.unwrap_or(1), + sel: raw.sel.filter(|s| !s.is_empty()), + }; + let snapshot = state.sp_catalog.snapshot(query.fhir_version()); + render(SearchParametersPage { + status: current_status(state.version), + i18n: I18n::new(locale), + active_page: "search-parameters", + view: search_params::build_view(&snapshot, &query), + }) +} + +/// Query string for the compartment viewer & tester. +#[derive(Deserialize, Default)] +struct CompartmentsQuery { + version: Option, + def: Option, + tab: Option, + filter: Option, + #[serde(default)] + id: String, + #[serde(default)] + target: String, +} + +/// Compartment viewer & tester page. +async fn compartments_page( + State(state): State, + locale: RequestLocale, + Query(raw): Query, +) -> Response { + let query = compartments::CmpQuery { + version: raw.version, + def: raw.def, + tab: raw.tab, + filter: raw.filter, + id: raw.id, + target: raw.target, + }; + match compartments::build_view(&query) { + Some(view) => render(CompartmentsPage { + status: current_status(state.version), + i18n: I18n::new(locale), + active_page: "compartments", + view, + }), + None => StatusCode::NOT_FOUND.into_response(), + } +} + /// Status read path. Returns a fragment to htmx (`HX-Request`) and a full page /// on a hard navigation, so the same URL works with and without JavaScript. async fn status( diff --git a/crates/ui/src/search_params.rs b/crates/ui/src/search_params.rs new file mode 100644 index 000000000..d6c0db90b --- /dev/null +++ b/crates/ui/src/search_params.rs @@ -0,0 +1,816 @@ +//! Read model for the SearchParameter viewer (`/ui/search-parameters`, #238). +//! +//! The screen is a read-only view of the registry the server actually +//! resolves searches against. The snapshot is seeded exactly the way the +//! storage backends seed their runtime registries: the minimal embedded +//! fallback first, then the full spec bundle from the data directory +//! (`search-parameters-.json`), first canonical URL wins — the same +//! precedence `SearchParameterRegistry::register` applies. Tenant-scoped +//! (`Stored`) parameters join this view once #235 makes storage the source +//! of truth; until then the write half of the screen stays off. + +use std::collections::{BTreeMap, HashMap, HashSet}; +use std::path::{Path, PathBuf}; +use std::sync::{Arc, Mutex}; + +use helios_fhir::FhirVersion; +use helios_fhir::search::{ + SearchParameterDefinition, SearchParameterLoader, SearchParameterSource, +}; + +/// Rows per page. The issue calls for pagination rather than a render cap. +pub(crate) const PAGE_SIZE: usize = 50; + +/// Lazily-loaded, process-lifetime snapshot of the search-parameter read +/// model, one per enabled FHIR version. +pub(crate) struct SpCatalog { + data_dir: Option, + versions: Mutex>>, +} + +pub(crate) struct VersionSnapshot { + /// Every registered definition, sorted by (code, url) for stable paging. + pub params: Vec>, + /// False when the spec bundle was not found in the data directory — + /// the snapshot is then only the minimal embedded fallback, and the + /// page says so instead of silently under-reporting. + pub spec_loaded: bool, +} + +impl SpCatalog { + pub fn new(data_dir: Option) -> Self { + SpCatalog { + data_dir, + versions: Mutex::new(HashMap::new()), + } + } + + /// Returns the snapshot for a version, loading it on first use. + pub fn snapshot(&self, version: FhirVersion) -> Arc { + let mut versions = self.versions.lock().expect("catalog lock"); + versions + .entry(version) + .or_insert_with(|| Arc::new(load_snapshot(version, self.data_dir.as_deref()))) + .clone() + } +} + +fn load_snapshot(version: FhirVersion, data_dir: Option<&Path>) -> VersionSnapshot { + let loader = SearchParameterLoader::new(version); + let mut params: Vec> = Vec::new(); + let mut seen: HashSet = HashSet::new(); + let mut push = |defs: Vec| { + for def in defs { + if seen.insert(def.url.clone()) { + params.push(Arc::new(def)); + } + } + }; + + if let Ok(embedded) = loader.load_embedded() { + push(embedded); + } + let dir = data_dir.unwrap_or_else(|| Path::new("./data")); + // A missing or unreadable spec bundle is surfaced in the page itself + // (`spec_loaded`), not just swallowed. + let spec_loaded = match loader.load_from_spec_file(dir) { + Ok(spec) => { + push(spec); + true + } + Err(_) => false, + }; + + params.sort_by(|a, b| a.code.cmp(&b.code).then_with(|| a.url.cmp(&b.url))); + VersionSnapshot { + params, + spec_loaded, + } +} + +/// Parsed query state for the page. Every filter is also a link, so the +/// whole screen works without JavaScript. +#[derive(Clone, Default)] +pub(crate) struct SpQuery { + pub version: Option, + pub base: Option, + pub ptype: Option, + pub source: Option, + pub q: String, + pub page: usize, + pub sel: Option, +} + +impl SpQuery { + pub fn fhir_version(&self) -> FhirVersion { + self.version + .as_deref() + .and_then(version_from_str) + .unwrap_or_default() + } + + /// Serializes the state to an href, with `page` and `sel` reset unless + /// explicitly carried over. + fn href_with( + &self, + base: Option<&str>, + ptype: Option<&str>, + source: Option<&str>, + page: usize, + sel: Option<&str>, + ) -> String { + let mut parts: Vec = Vec::new(); + if let Some(v) = &self.version { + parts.push(format!("version={}", urlencode(v))); + } + if let Some(b) = base { + parts.push(format!("base={}", urlencode(b))); + } + if let Some(t) = ptype { + parts.push(format!("type={}", urlencode(t))); + } + if let Some(s) = source { + parts.push(format!("source={}", urlencode(s))); + } + if !self.q.is_empty() { + parts.push(format!("q={}", urlencode(&self.q))); + } + if page > 1 { + parts.push(format!("page={page}")); + } + if let Some(s) = sel { + parts.push(format!("sel={}", urlencode(s))); + } + if parts.is_empty() { + "/ui/search-parameters".to_string() + } else { + format!("/ui/search-parameters?{}", parts.join("&")) + } + } + + fn href_current(&self, page: usize, sel: Option<&str>) -> String { + self.href_with( + self.base.as_deref(), + self.ptype.as_deref(), + self.source.as_deref(), + page, + sel, + ) + } +} + +pub(crate) fn version_from_str(value: &str) -> Option { + enabled_versions() + .into_iter() + .find(|v| v.as_str().eq_ignore_ascii_case(value)) +} + +/// FHIR versions compiled into this build, in spec order. +#[allow(clippy::vec_init_then_push)] // each push is cfg-gated on a version feature +pub(crate) fn enabled_versions() -> Vec { + let mut versions = Vec::new(); + #[cfg(feature = "R4")] + versions.push(FhirVersion::R4); + #[cfg(feature = "R4B")] + versions.push(FhirVersion::R4B); + #[cfg(feature = "R5")] + versions.push(FhirVersion::R5); + #[cfg(feature = "R6")] + versions.push(FhirVersion::R6); + versions +} + +fn urlencode(value: &str) -> String { + let mut out = String::with_capacity(value.len()); + for byte in value.bytes() { + match byte { + b'A'..=b'Z' | b'a'..=b'z' | b'0'..=b'9' | b'-' | b'_' | b'.' | b'~' => { + out.push(byte as char) + } + _ => out.push_str(&format!("%{byte:02X}")), + } + } + out +} + +fn source_key(source: SearchParameterSource) -> &'static str { + match source { + SearchParameterSource::Embedded => "embedded", + SearchParameterSource::Stored => "stored", + SearchParameterSource::Config => "config", + } +} + +fn source_fluent_key(source: &str) -> &'static str { + match source { + "stored" => "sp-source-stored", + "config" => "sp-source-config", + _ => "sp-source-embedded", + } +} + +fn chip_fluent_key(kind: &str) -> &'static str { + match kind { + "conflict" => "sp-chip-conflict", + "overrides" => "sp-chip-overrides", + _ => "sp-chip-shadowed", + } +} + +// --------------------------------------------------------------------------- +// View model +// --------------------------------------------------------------------------- + +pub(crate) struct RailItem { + pub name: String, + pub count: usize, + pub href: String, + pub current: bool, +} + +pub(crate) struct Facet { + pub label: String, + /// Fluent key for localized labels; empty when `label` is technical + /// vocabulary shown as-is (parameter types). + pub key: String, + pub count: usize, + pub href: String, + pub pressed: bool, +} + +/// One `(base, code)` slot-mate relationship, mirroring how +/// `params_by_type` indexes definitions. Same-source mates are the +/// `DuplicateCode` conflict #242 rejects; cross-source mates are a +/// supported override resolved by source precedence. +pub(crate) struct SlotChip { + /// "conflict" | "overrides" | "shadowed" + pub kind: &'static str, + /// Fluent key for the chip label. + pub key: &'static str, +} + +pub(crate) struct SpRow { + pub code: String, + pub url: String, + pub type_label: String, + pub bases: String, + pub expression: String, + pub source: &'static str, + /// Fluent key for the localized source label. + pub source_key: &'static str, + pub chips: Vec, + pub href: String, + pub selected: bool, +} + +pub(crate) struct SpNote { + /// "error" | "warn" | "info" + pub severity: &'static str, + /// Maps to an `sp-note-*` Fluent key in the template. + pub kind: &'static str, + /// Single message argument (canonical URL or slot, depending on kind). + pub arg: String, +} + +pub(crate) struct SpDetail { + pub code: String, + pub name: String, + pub url: String, + pub type_label: String, + pub bases: Vec, + pub expression: String, + pub description: String, + pub targets: Vec, + pub components: Vec, + pub status: String, + pub source: &'static str, + /// Fluent key for the localized source label. + pub source_key: &'static str, + pub notes: Vec, +} + +pub(crate) struct VersionLink { + pub label: &'static str, + pub href: String, + pub current: bool, +} + +pub(crate) struct PageLink { + pub label: String, + pub href: String, + pub current: bool, +} + +pub(crate) struct SpView { + pub versions: Vec, + pub rail_all: RailItem, + pub rail: Vec, + pub q: String, + pub facets_type: Vec, + pub facets_source: Vec, + pub rows: Vec, + pub total: usize, + pub page_count: usize, + pub prev_href: Option, + pub next_href: Option, + pub pages: Vec, + pub detail: Option, + pub spec_loaded: bool, + /// Hidden inputs so the rail's search form round-trips the other filters. + pub hidden_fields: Vec<(String, String)>, +} + +pub(crate) fn build_view(snapshot: &VersionSnapshot, query: &SpQuery) -> SpView { + let params = &snapshot.params; + let version = query.fhir_version(); + + // (base, code) slot map over the whole snapshot, the way the registry + // indexes `params_by_type`, to surface shadows and conflicts. + let mut slots: HashMap<(&str, &str), Vec<&Arc>> = HashMap::new(); + for param in params { + for base in ¶m.base { + slots + .entry((base.as_str(), param.code.as_str())) + .or_default() + .push(param); + } + } + let chips_for = |param: &Arc| -> Vec { + let mut kinds: Vec<&'static str> = Vec::new(); + for base in ¶m.base { + for other in &slots[&(base.as_str(), param.code.as_str())] { + if Arc::ptr_eq(other, param) { + continue; + } + let kind = if other.source == param.source { + "conflict" + } else if source_rank(param.source) > source_rank(other.source) { + "overrides" + } else { + "shadowed" + }; + if !kinds.contains(&kind) { + kinds.push(kind); + } + } + } + kinds + .into_iter() + .map(|kind| SlotChip { + kind, + key: chip_fluent_key(kind), + }) + .collect() + }; + + // Rail: base resource types with live counts, filtered by the search box. + let mut base_counts: BTreeMap<&str, usize> = BTreeMap::new(); + for param in params { + for base in ¶m.base { + *base_counts.entry(base.as_str()).or_default() += 1; + } + } + let needle = query.q.to_lowercase(); + let rail: Vec = base_counts + .iter() + .filter(|(name, _)| needle.is_empty() || name.to_lowercase().contains(&needle)) + .map(|(name, count)| RailItem { + name: (*name).to_string(), + count: *count, + href: query.href_with( + Some(name), + query.ptype.as_deref(), + query.source.as_deref(), + 1, + None, + ), + current: query.base.as_deref() == Some(*name), + }) + .collect(); + let rail_all = RailItem { + name: String::new(), + count: params.len(), + href: query.href_with(None, query.ptype.as_deref(), query.source.as_deref(), 1, None), + current: query.base.is_none(), + }; + + // Facets are scoped to the current base type and show live counts. + let in_base: Vec<&Arc> = params + .iter() + .filter(|p| match &query.base { + Some(base) => p.base.iter().any(|b| b == base), + None => true, + }) + .collect(); + + let mut type_counts: HashMap = HashMap::new(); + let mut source_counts: HashMap<&'static str, usize> = HashMap::new(); + for param in &in_base { + *type_counts + .entry(param.param_type.to_string()) + .or_default() += 1; + *source_counts.entry(source_key(param.source)).or_default() += 1; + } + let mut facets_type: Vec = type_counts + .into_iter() + .map(|(label, count)| { + let pressed = query.ptype.as_deref() == Some(label.as_str()); + Facet { + href: query.href_with( + query.base.as_deref(), + if pressed { None } else { Some(label.as_str()) }, + query.source.as_deref(), + 1, + None, + ), + pressed, + key: String::new(), + label, + count, + } + }) + .collect(); + facets_type.sort_by(|a, b| b.count.cmp(&a.count).then_with(|| a.label.cmp(&b.label))); + let mut facets_source: Vec = source_counts + .into_iter() + .map(|(label, count)| { + let pressed = query.source.as_deref() == Some(label); + Facet { + href: query.href_with( + query.base.as_deref(), + query.ptype.as_deref(), + if pressed { None } else { Some(label) }, + 1, + None, + ), + pressed, + key: source_fluent_key(label).to_string(), + label: label.to_string(), + count, + } + }) + .collect(); + facets_source.sort_by(|a, b| b.count.cmp(&a.count).then_with(|| a.label.cmp(&b.label))); + + // Table: filter, then paginate. + let visible: Vec<&Arc> = in_base + .iter() + .filter(|p| match &query.ptype { + Some(t) => p.param_type.to_string() == *t, + None => true, + }) + .filter(|p| match &query.source { + Some(s) => source_key(p.source) == *s, + None => true, + }) + .copied() + .collect(); + + let total = visible.len(); + let page_count = total.div_ceil(PAGE_SIZE).max(1); + let page = query.page.clamp(1, page_count); + let rows: Vec = visible + .iter() + .skip((page - 1) * PAGE_SIZE) + .take(PAGE_SIZE) + .map(|param| { + let selected = query.sel.as_deref() == Some(param.url.as_str()); + SpRow { + code: param.code.clone(), + url: param.url.clone(), + type_label: param.param_type.to_string(), + bases: summarize_bases(¶m.base), + expression: snippet(¶m.expression, 90), + source: source_key(param.source), + source_key: source_fluent_key(source_key(param.source)), + chips: chips_for(param), + href: query.href_current(page, Some(param.url.as_str())), + selected, + } + }) + .collect(); + + let prev_href = (page > 1).then(|| query.href_current(page - 1, query.sel.as_deref())); + let next_href = + (page < page_count).then(|| query.href_current(page + 1, query.sel.as_deref())); + let pages: Vec = page_links(page, page_count) + .into_iter() + .map(|n| PageLink { + label: n.to_string(), + href: query.href_current(n, query.sel.as_deref()), + current: n == page, + }) + .collect(); + + // Detail panel for the selected parameter. + let detail = query.sel.as_deref().and_then(|sel| { + params.iter().find(|p| p.url == sel).map(|param| { + let mut notes: Vec = Vec::new(); + for chip in chips_for(param) { + let mates: Vec = param + .base + .iter() + .flat_map(|base| slots[&(base.as_str(), param.code.as_str())].iter()) + .filter(|other| !Arc::ptr_eq(other, param)) + .map(|other| other.url.clone()) + .collect(); + notes.push(SpNote { + severity: if chip.kind == "conflict" { "error" } else { "info" }, + kind: match chip.kind { + "conflict" => "conflict", + "overrides" => "overrides", + _ => "shadowed", + }, + arg: mates.join(", "), + }); + } + if param.expression.is_empty() { + notes.push(SpNote { + severity: "warn", + kind: "empty-expression", + arg: String::new(), + }); + } + if param.param_type == helios_fhir::search::SearchParamType::Reference + && param.target.as_ref().is_none_or(|t| t.is_empty()) + { + notes.push(SpNote { + severity: "warn", + kind: "no-target", + arg: String::new(), + }); + } + if param.expression.contains("ofType(") + || param + .expression + .split(" as ") + .skip(1) + .any(|rest| rest.starts_with(|c: char| c.is_ascii_uppercase())) + { + notes.push(SpNote { + severity: "info", + kind: "choice-type", + arg: String::new(), + }); + } + SpDetail { + code: param.code.clone(), + name: param.name.clone().unwrap_or_else(|| param.code.clone()), + url: param.url.clone(), + type_label: param.param_type.to_string(), + bases: param.base.clone(), + expression: param.expression.clone(), + description: param.description.clone().unwrap_or_default(), + targets: param.target.clone().unwrap_or_default(), + components: param + .component + .as_ref() + .map(|comps| comps.iter().map(|c| c.expression.clone()).collect()) + .unwrap_or_default(), + status: param.status.to_fhir_status().to_string(), + source: source_key(param.source), + source_key: source_fluent_key(source_key(param.source)), + notes, + } + }) + }); + + let versions = enabled_versions() + .into_iter() + .map(|v| { + let mut q = query.clone(); + q.version = Some(v.as_str().to_string()); + VersionLink { + label: v.as_str(), + href: q.href_with( + query.base.as_deref(), + query.ptype.as_deref(), + query.source.as_deref(), + 1, + None, + ), + current: v == version, + } + }) + .collect(); + + let mut hidden_fields: Vec<(String, String)> = Vec::new(); + if let Some(v) = &query.version { + hidden_fields.push(("version".into(), v.clone())); + } + if let Some(b) = &query.base { + hidden_fields.push(("base".into(), b.clone())); + } + if let Some(t) = &query.ptype { + hidden_fields.push(("type".into(), t.clone())); + } + if let Some(s) = &query.source { + hidden_fields.push(("source".into(), s.clone())); + } + + SpView { + versions, + rail_all, + rail, + q: query.q.clone(), + facets_type, + facets_source, + rows, + total, + page_count, + prev_href, + next_href, + pages, + detail, + spec_loaded: snapshot.spec_loaded, + hidden_fields, + } +} + +/// Source precedence from #242: Embedded < Config < Stored. +fn source_rank(source: SearchParameterSource) -> u8 { + match source { + SearchParameterSource::Embedded => 0, + SearchParameterSource::Config => 1, + SearchParameterSource::Stored => 2, + } +} + +fn summarize_bases(bases: &[String]) -> String { + if bases.len() > 3 { + format!("{} +{}", bases[..3].join(", "), bases.len() - 3) + } else { + bases.join(", ") + } +} + +fn snippet(text: &str, max: usize) -> String { + if text.chars().count() > max { + let cut: String = text.chars().take(max).collect(); + format!("{cut}…") + } else { + text.to_string() + } +} + +/// Compact pagination: first, last, and a window around the current page. +fn page_links(page: usize, page_count: usize) -> Vec { + let mut out: Vec = Vec::new(); + for n in 1..=page_count { + if n == 1 || n == page_count || n.abs_diff(page) <= 2 { + out.push(n); + } + } + out +} + +#[cfg(test)] +mod tests { + use super::*; + + fn snapshot() -> VersionSnapshot { + // Tests run with the crate as CWD; the workspace spec bundles live + // two levels up. + load_snapshot(FhirVersion::default(), Some(Path::new("../../data"))) + } + + fn def( + url: &str, + code: &str, + base: &[&str], + source: SearchParameterSource, + ) -> SearchParameterDefinition { + SearchParameterDefinition::new( + url, + code, + helios_fhir::search::SearchParamType::Token, + "Resource.id", + ) + .with_base(base.iter().copied()) + .with_source(source) + } + + #[test] + fn snapshot_loads_the_full_spec_bundle() { + let snapshot = snapshot(); + assert!(snapshot.spec_loaded, "spec bundle found in ../../data"); + assert!( + snapshot.params.len() > 1000, + "expected the full registry, got {}", + snapshot.params.len() + ); + } + + #[test] + fn base_filter_narrows_and_facets_count_within_base() { + let snapshot = snapshot(); + let query = SpQuery { + base: Some("Patient".into()), + ..SpQuery::default() + }; + let view = build_view(&snapshot, &query); + + assert!(view.total < snapshot.params.len()); + assert!(view.total > 10, "Patient supports dozens of parameters"); + // Facet counts are scoped to the base type, so they sum to the total. + let facet_sum: usize = view.facets_type.iter().map(|f| f.count).sum(); + assert_eq!(facet_sum, view.total); + // The rail keeps every base type listed with the filter applied. + assert!(view.rail.iter().any(|item| item.name == "Observation")); + } + + #[test] + fn pagination_is_stable_and_complete() { + let snapshot = snapshot(); + let mut seen = std::collections::HashSet::new(); + let mut page = 1; + loop { + let view = build_view( + &snapshot, + &SpQuery { + page, + ..SpQuery::default() + }, + ); + for row in &view.rows { + assert!(seen.insert(row.url.clone()), "row repeated: {}", row.url); + } + if page >= view.page_count { + assert_eq!(seen.len(), view.total, "every row appears exactly once"); + break; + } + page += 1; + } + } + + #[test] + fn selection_builds_the_detail_panel() { + let snapshot = snapshot(); + let first = snapshot.params[0].url.clone(); + let view = build_view( + &snapshot, + &SpQuery { + sel: Some(first.clone()), + ..SpQuery::default() + }, + ); + let detail = view.detail.expect("selected parameter resolves"); + assert_eq!(detail.url, first); + } + + #[test] + fn cross_source_slot_mates_render_override_and_shadow_chips() { + let spec = def( + "http://hl7.org/fhir/SearchParameter/Observation-code", + "code", + &["Observation"], + SearchParameterSource::Embedded, + ); + let stored = def( + "http://acme.health/fhir/SearchParameter/observation-code-local", + "code", + &["Observation"], + SearchParameterSource::Stored, + ); + let snapshot = VersionSnapshot { + params: vec![Arc::new(spec), Arc::new(stored)], + spec_loaded: true, + }; + let view = build_view(&snapshot, &SpQuery::default()); + + let spec_row = view.rows.iter().find(|r| r.url.contains("hl7.org")).unwrap(); + assert_eq!(spec_row.chips[0].kind, "shadowed"); + let stored_row = view.rows.iter().find(|r| r.url.contains("acme")).unwrap(); + assert_eq!(stored_row.chips[0].kind, "overrides"); + } + + #[test] + fn same_source_slot_mates_are_a_conflict() { + let one = def( + "http://example.org/a", + "code", + &["Observation"], + SearchParameterSource::Embedded, + ); + let two = def( + "http://example.org/b", + "code", + &["Observation"], + SearchParameterSource::Embedded, + ); + let snapshot = VersionSnapshot { + params: vec![Arc::new(one), Arc::new(two)], + spec_loaded: true, + }; + let view = build_view(&snapshot, &SpQuery::default()); + assert!(view.rows.iter().all(|r| r.chips[0].kind == "conflict")); + } + + #[test] + fn missing_spec_dir_still_serves_the_fallback() { + let snapshot = + load_snapshot(FhirVersion::default(), Some(Path::new("./does-not-exist"))); + assert!(!snapshot.spec_loaded); + assert!(!snapshot.params.is_empty(), "embedded fallback still loads"); + } +} diff --git a/crates/ui/templates/layouts/base.html b/crates/ui/templates/layouts/base.html index 215e601a9..39cf6c826 100644 --- a/crates/ui/templates/layouts/base.html +++ b/crates/ui/templates/layouts/base.html @@ -80,10 +80,10 @@ {% include "icons/history.svg" %} {{ i18n.t("nav-history-versions") }} - + {% include "icons/compartments.svg" %} {{ i18n.t("nav-compartments") }} - + @@ -104,6 +104,10 @@ {% include "icons/shield.svg" %} {{ i18n.t("nav-capability-conformance") }} + + {% include "icons/search.svg" %} + {{ i18n.t("nav-search-parameters") }} + {% include "icons/sliders.svg" %} {{ i18n.t("nav-admin-ops") }} @@ -161,7 +165,7 @@ K -
+
{% block content %}{% endblock %}
diff --git a/crates/ui/templates/pages/compartments.html b/crates/ui/templates/pages/compartments.html new file mode 100644 index 000000000..a9b5af4ce --- /dev/null +++ b/crates/ui/templates/pages/compartments.html @@ -0,0 +1,152 @@ +{% extends "layouts/base.html" %} + +{% block title %}{{ i18n.t("cmp-heading") }} — {{ i18n.t("app-title") }}{% endblock %} + +{% block content_class %} content--wide{% endblock %} + +{% block content %} +
+

{{ i18n.t("cmp-heading") }}

+

{{ i18n.t("cmp-lede") }}

+ {% if view.versions.len() > 1 %} + + {% endif %} +
+ +
+ + +
+ + +
+ {% if view.tab == "definition" %} + +
+
{{ i18n.t("cmp-field-code") }}
{{ view.def.code }}
+
{{ i18n.t("cmp-field-status") }}
{{ view.def.status }}
+
{{ i18n.t("cmp-field-url") }}{{ view.def.url }}
+
{{ i18n.t("cmp-field-version") }}
{{ view.def.version }}
+
{{ i18n.t("cmp-field-publisher") }}
{{ view.def.publisher }}
+
{{ i18n.t("cmp-field-description") }}
{{ view.def.description }}
+
+ {{ i18n.t("cmp-field-search") }} +
+ {% if view.def.search %}{{ i18n.t("cmp-on") }}{% else %}{{ i18n.t("cmp-off") }}{% endif %} + {{ i18n.t("cmp-search-why") }} +
+
+
+ {{ i18n.t("cmp-field-experimental") }} +
{% if view.def.experimental %}{{ i18n.t("cmp-yes") }}{% else %}{{ i18n.t("cmp-no") }}{% endif %}
+
+
+

{{ i18n.t("cmp-readonly-note") }}

+ + {% else if view.tab == "members" %} + +
+ {% for row in view.members %} +
+ {{ row.name }} + {% if row.member %} + {{ i18n.t("cmp-member") }} + {% else %} + {{ i18n.t("cmp-excluded") }} + {% endif %} + + {% for p in row.params %}{{ p }}{% endfor %} + +
+ {% endfor %} +
+ + {% else %} + +
+ {% for field in view.hidden_fields %} + + {% endfor %} + + + + + {% for row in view.members %}{% endfor %} + + +
+ +
+ {% if view.tester.kind == "member" %} +

{{ i18n.t_arg("cmp-result-member", "params", view.tester.params.clone()) }}

+
{{ view.tester.route }}
+
+{{ i18n.t("cmp-result-flat") }}
+{{ view.tester.body }}
+

{{ i18n.t("cmp-result-member-note") }}

+ {% else if view.tester.kind == "self" %} +

{{ i18n.t("cmp-result-self") }}

+
{{ view.tester.route }}
+
+{{ view.tester.body }}
+

{{ i18n.t("cmp-result-self-note") }}

+ {% else if view.tester.kind == "notmember" %} +

{{ i18n.t_arg("cmp-result-notmember", "type", view.tester.target.clone()) }}

+
{{ view.tester.body }}
+

{{ i18n.t("cmp-result-notmember-note") }}

+ {% else %} +

{{ i18n.t_arg("cmp-result-fanout", "count", view.tester.total) }}

+
{{ view.tester.route }}
+

{{ view.tester.member_types }}

+

{{ i18n.t("cmp-result-fanout-note") }}

+ {% endif %} +
+ {% endif %} +
+
+
+{% endblock %} diff --git a/crates/ui/templates/pages/search-parameters.html b/crates/ui/templates/pages/search-parameters.html new file mode 100644 index 000000000..16fd66cd6 --- /dev/null +++ b/crates/ui/templates/pages/search-parameters.html @@ -0,0 +1,197 @@ +{% extends "layouts/base.html" %} + +{% block title %}{{ i18n.t("sp-heading") }} — {{ i18n.t("app-title") }}{% endblock %} + +{% block content_class %} content--wide{% endblock %} + +{% block content %} +
+

{{ i18n.t("sp-heading") }}

+

{{ i18n.t("sp-lede") }}

+ {% if view.versions.len() > 1 %} + + {% endif %} +
+ +{% if !view.spec_loaded %} +

{{ i18n.t("sp-spec-missing") }}

+{% endif %} + +
+ + + +
+
+ {{ i18n.t("sp-facet-type") }} + {% for f in view.facets_type %} + + {{ f.label }}{{ f.count }} + + {% endfor %} +
+
+ {{ i18n.t("sp-facet-source") }} + {% for f in view.facets_source %} + + {% if f.key.is_empty() %}{{ f.label }}{% else %}{{ i18n.t(f.key.as_str()) }}{% endif %}{{ f.count }} + + {% endfor %} +
+ +
+
+ + + + + + + + + + + + {% for row in view.rows %} + + + + + + + + {% endfor %} + +
{{ i18n.t("sp-col-code") }}{{ i18n.t("sp-col-type") }}{{ i18n.t("sp-col-base") }}{{ i18n.t("sp-col-expression") }}{{ i18n.t("sp-col-source") }}
+ + {{ row.code }} + {{ row.url }} + + {{ row.type_label }}{{ row.bases }}{{ row.expression }} + {{ i18n.t(row.source_key) }} + {% for chip in row.chips %} + {{ i18n.t(chip.key) }} + {% endfor %} +
+
+
+ {{ i18n.t_arg("sp-total", "count", view.total) }} + {% if view.page_count > 1 %} + + {% endif %} +
+
+
+ + +
+ + +{% endblock %} diff --git a/crates/ui/tests/i18n_http.rs b/crates/ui/tests/i18n_http.rs index 0f8be713d..7f04d99e8 100644 --- a/crates/ui/tests/i18n_http.rs +++ b/crates/ui/tests/i18n_http.rs @@ -11,7 +11,7 @@ use http_body_util::BodyExt; use tower::ServiceExt; fn app() -> Router { - helios_ui::mount(Router::new(), "9.9.9") + helios_ui::mount(Router::new(), "9.9.9", None) } async fn body_text(response: axum::response::Response) -> String { diff --git a/crates/ui/tests/router_http.rs b/crates/ui/tests/router_http.rs index 5d1503cef..b1b1f4b96 100644 --- a/crates/ui/tests/router_http.rs +++ b/crates/ui/tests/router_http.rs @@ -12,7 +12,7 @@ use http_body_util::BodyExt; use tower::ServiceExt; fn app() -> Router { - helios_ui::mount(Router::new(), "9.9.9") + helios_ui::mount(Router::new(), "9.9.9", Some(std::path::PathBuf::from("../../data"))) } async fn body_text(response: axum::response::Response) -> String { @@ -94,7 +94,7 @@ async fn embedded_assets_are_served() { async fn non_ui_paths_fall_through_to_the_fhir_app() { // Stand-in for the FHIR REST router: proves /ui never shadows it. let fhir_app = Router::new().route("/Patient", get(|| async { "fhir handled" })); - let response = helios_ui::mount(fhir_app, "9.9.9") + let response = helios_ui::mount(fhir_app, "9.9.9", Some(std::path::PathBuf::from("../../data"))) .oneshot(Request::get("/Patient").body(Body::empty()).unwrap()) .await .unwrap(); @@ -102,3 +102,95 @@ async fn non_ui_paths_fall_through_to_the_fhir_app() { assert_eq!(response.status(), StatusCode::OK); assert_eq!(body_text(response).await, "fhir handled"); } + +#[tokio::test] +async fn search_parameters_page_serves_the_registry_view() { + let response = app() + .oneshot( + Request::get("/ui/search-parameters?base=Patient") + .body(Body::empty()) + .unwrap(), + ) + .await + .unwrap(); + + assert_eq!(response.status(), StatusCode::OK); + let html = body_text(response).await; + assert!(html.contains("")); + // The Resource Filter rail and the facet rows are server-rendered. + assert!(html.contains(r#"id="sp-rail-list""#)); + assert!(html.contains("base=Patient")); + // Real registry data, not placeholders: Patient supports `name`. + assert!(html.contains("http://hl7.org/fhir/SearchParameter/Patient-name")); + // This page, not Home, carries aria-current in the sidebar. + assert!(html.contains(r#"href="/ui/search-parameters" aria-current="page""#)); +} + +#[tokio::test] +async fn search_parameters_selection_renders_the_detail_panel() { + let response = app() + .oneshot( + Request::get( + "/ui/search-parameters?base=Patient&sel=http%3A%2F%2Fhl7.org%2Ffhir%2FSearchParameter%2FPatient-name", + ) + .body(Body::empty()) + .unwrap(), + ) + .await + .unwrap(); + + assert_eq!(response.status(), StatusCode::OK); + let html = body_text(response).await; + assert!(html.contains(r#"aria-selected="true""#)); + // The detail panel shows the FHIRPath expression of the spec parameter. + assert!(html.contains("Patient.name")); +} + +#[tokio::test] +async fn compartments_page_defaults_to_patient() { + let response = app() + .oneshot(Request::get("/ui/compartments").body(Body::empty()).unwrap()) + .await + .unwrap(); + + assert_eq!(response.status(), StatusCode::OK); + let html = body_text(response).await; + assert!(html.contains("http://hl7.org/fhir/CompartmentDefinition/patient")); + assert!(html.contains(r#"href="/ui/compartments" aria-current="page""#)); +} + +#[tokio::test] +async fn compartment_tester_resolves_membership_via_get() { + let response = app() + .oneshot( + Request::get("/ui/compartments?def=Patient&tab=tester&id=example&target=Observation") + .body(Body::empty()) + .unwrap(), + ) + .await + .unwrap(); + + assert_eq!(response.status(), StatusCode::OK); + let html = body_text(response).await; + // The equivalent flat search the server runs, straight from the + // codegen'd table the REST handler consults. + assert!(html.contains("subject=Patient/example")); + assert!(html.contains("performer=Patient/example")); +} + +#[tokio::test] +async fn compartment_tester_reports_non_members_as_404() { + let response = app() + .oneshot( + Request::get("/ui/compartments?def=Patient&tab=tester&id=example&target=Medication") + .body(Body::empty()) + .unwrap(), + ) + .await + .unwrap(); + + assert_eq!(response.status(), StatusCode::OK); + let html = body_text(response).await; + assert!(html.contains("404 Not Found")); + assert!(html.contains("OperationOutcome")); +} diff --git a/locales/de/main.ftl b/locales/de/main.ftl index bb1e2e3a1..08a67fbcd 100644 --- a/locales/de/main.ftl +++ b/locales/de/main.ftl @@ -84,6 +84,7 @@ nav-batch-transaction = Batch / Transaktion nav-bulk-export = Bulk-Export nav-sql-on-fhir = SQL-on-FHIR nav-capability-conformance = Capability & Konformität +nav-search-parameters = Suchparameter nav-admin-ops = Admin / Betrieb nav-subscriptions = Abonnements @@ -135,3 +136,97 @@ queries-delete = Löschen queries-rename-prompt = Neuer Name queries-confirm-delete = „{ $name }“ löschen? queries-unavailable = Gespeicherte Abfragen sind nicht verfügbar: Das Storage-Backend dieses Servers unterstützt keine Benutzereinstellungen. + +## SearchParameter-Ansicht (#238) + +sp-heading = Suchparameter +sp-lede = Durchsuche die Parameter, mit denen dieser Server Suchen auflöst, gefiltert nach Basis-Ressourcentyp. Spezifikationsparameter sind schreibgeschützt; tenant-spezifisches Bearbeiten kommt, sobald Suchparameter im Storage liegen. +sp-version-label = FHIR-Version +sp-spec-missing = Das vollständige Spezifikations-Bundle (search-parameters-*.json) wurde im Datenverzeichnis nicht gefunden — es werden nur die minimalen eingebetteten Fallback-Parameter angezeigt. +sp-rail-label = Ressourcenfilter +sp-rail-search = Typen filtern +sp-rail-recent = Zuletzt verwendet +sp-rail-types = Ressourcentypen +sp-rail-all = Alle Typen +sp-facet-type = Typ +sp-facet-type-label = Nach Parametertyp filtern +sp-facet-source = Quelle +sp-facet-source-label = Nach Quelle filtern +sp-source-embedded = eingebettet +sp-source-stored = gespeichert +sp-source-config = Konfiguration +sp-chip-conflict = Konflikt +sp-chip-overrides = überschreibt Spez. +sp-chip-shadowed = verdeckt +sp-col-code = Code +sp-col-type = Typ +sp-col-base = Basis +sp-col-expression = Ausdruck +sp-col-source = Quelle +sp-total = { $count } Parameter +sp-pagination-label = Seiten +sp-page-prev = Zurück +sp-page-next = Weiter +sp-detail-label = Parameterdetails +sp-detail-empty = Kein Parameter ausgewählt +sp-detail-empty-hint = Wähle eine Zeile, um Definition, Ausdruck und die Auflösung im Register zu prüfen. +sp-detail-readonly = Spezifikationsparameter (aus der Datendatei einkompiliert) — schreibgeschützt. +sp-field-url = Kanonische URL +sp-field-name = Name +sp-field-status = Status +sp-field-base = Basis-Ressourcentypen +sp-field-expression = FHIRPath-Ausdruck +sp-field-description = Beschreibung +sp-field-target = Zieltypen +sp-field-components = Komponenten +sp-status-hint = Der Loader stuft den Draft-Status der Spezifikation beim Laden auf active hoch. +sp-note-conflict = Doppeltes (base, code) innerhalb derselben Quelle wie { $url } — das Register lehnt diese Kollision ab (DuplicateCode). +sp-note-overrides = Überschreibt { $url } auf (base, code): eine gespeicherte Definition hat Vorrang vor dem Spezifikationsparameter und löst daher die Suchen auf. Das Register loggt ein WARN mit beiden URLs. +sp-note-shadowed = Verdeckt durch { $url } auf (base, code): eine Quelle mit höherem Vorrang löst die Suchen für diesen Slot auf. +sp-note-empty-expression = Leerer Ausdruck: der Extractor indexiert keine Zeilen, jede Suche über diesen Parameter liefert stillschweigend nichts. +sp-note-no-target = Referenzparameter ohne Zieltypen: verkettete Suche kann den referenzierten Typ nicht auflösen. +sp-note-choice-type = Choice-Typ-Ausdruck: der Extractor schreibt ofType(T) / as T vor der Auswertung gegen das gespeicherte JSON auf das konkrete Element um (z. B. valueQuantity). +sp-writes-pending = Anlegen, Überschreiben und Löschen von Tenant-Parametern kommt, sobald Suchparameter in der Datenbank gespeichert werden (#235). + +## Compartment-Ansicht & Tester (#237) + +cmp-heading = Compartments +cmp-lede = Die Compartment-Definitionen, mit denen dieser Server /{"{"}compartment{"}"}/{"{"}id{"}"}/{"{"}type{"}"}-Anfragen routet, und ein Tester, der beantwortet: Ist dieser Typ in diesem Compartment, über welche Parameter, und welche Suche führt der Server aus? +cmp-rail-label = Compartment-Definitionen +cmp-rail-heading = Compartments +cmp-rail-note = Die Basisdefinitionen werden mit dem Server ausgeliefert (aus der FHIR-Spezifikation generiert). Sie zu bearbeiten setzt eine tenant-spezifische Override-Schicht voraus — offene Frage im Issue. +cmp-tabs-label = Compartment-Bereiche +cmp-tab-definition = Definition +cmp-tab-members = Mitglieder +cmp-tab-tester = Tester +cmp-field-code = Code +cmp-field-status = Status +cmp-field-url = Kanonische URL +cmp-field-version = Version +cmp-field-publisher = Herausgeber +cmp-field-description = Beschreibung +cmp-field-search = search +cmp-field-experimental = experimental +cmp-search-why = Aus würde bedeuten, dass keine Compartment-Route für dieses Compartment auflöst. +cmp-on = an +cmp-off = aus +cmp-yes = ja +cmp-no = nein +cmp-readonly-note = Schreibgeschützt: diese Werte stammen aus den in den Server einkompilierten Spezifikationsdefinitionen. +cmp-filter-members = Mitglieder +cmp-filter-all = Alle Typen +cmp-filter-excluded = Ausgeschlossen +cmp-member = Mitglied +cmp-excluded = ausgeschlossen +cmp-tester-id = Id +cmp-tester-target = Zieltyp (oder *) +cmp-tester-run = Testen +cmp-result-member = ✓ Mitglied — über { $params } +cmp-result-flat = // äquivalente flache Suche +cmp-result-member-note = Der Server löst die Compartment-Route zu dieser Suche über die Referenzparameter des Typs auf. +cmp-result-self = ✓ Mitglied — die Compartment-Ressource selbst ({"{"}def{"}"}) +cmp-result-self-note = Die Compartment-Instanz ist trivialerweise in ihrem eigenen Compartment; die Route liest die Ressource direkt. +cmp-result-notmember = ✕ { $type } ist kein Mitglied dieses Compartments +cmp-result-notmember-note = Der Server antwortet mit 404 und einem OperationOutcome für Typen, die keine Compartment-Mitglieder sind. +cmp-result-fanout = Fächert auf { $count } Mitgliedstypen auf +cmp-result-fanout-note = Ausgeschlossene Typen werden übersprungen, nicht fehlgeschlagen — der Fan-out lässt Nicht-Mitgliedstypen weg statt zu scheitern. diff --git a/locales/en/main.ftl b/locales/en/main.ftl index d2ec76afa..e5d4d64a8 100644 --- a/locales/en/main.ftl +++ b/locales/en/main.ftl @@ -88,6 +88,7 @@ nav-batch-transaction = Batch / Transaction nav-bulk-export = Bulk Export nav-sql-on-fhir = SQL-on-FHIR nav-capability-conformance = Capability & Conformance +nav-search-parameters = Search Parameters nav-admin-ops = Admin / Ops nav-subscriptions = Subscriptions @@ -139,3 +140,97 @@ queries-delete = Delete queries-rename-prompt = New name queries-confirm-delete = Delete "{ $name }"? queries-unavailable = Saved queries are unavailable: this server's storage backend does not support per-user settings. + +## SearchParameter viewer (#238) + +sp-heading = Search parameters +sp-lede = Browse the parameters this server resolves searches against, filtered by base resource type. Spec parameters are read-only; tenant-scoped editing arrives once search parameters live in storage. +sp-version-label = FHIR version +sp-spec-missing = The full spec bundle (search-parameters-*.json) was not found in the data directory — only the minimal embedded fallback parameters are shown. +sp-rail-label = Resource filter +sp-rail-search = Filter types +sp-rail-recent = Recently used +sp-rail-types = Resource types +sp-rail-all = All types +sp-facet-type = Type +sp-facet-type-label = Filter by parameter type +sp-facet-source = Source +sp-facet-source-label = Filter by source +sp-source-embedded = embedded +sp-source-stored = stored +sp-source-config = config +sp-chip-conflict = conflict +sp-chip-overrides = overrides spec +sp-chip-shadowed = shadowed +sp-col-code = Code +sp-col-type = Type +sp-col-base = Base +sp-col-expression = Expression +sp-col-source = Source +sp-total = { $count } parameters +sp-pagination-label = Pages +sp-page-prev = Previous +sp-page-next = Next +sp-detail-label = Parameter detail +sp-detail-empty = No parameter selected +sp-detail-empty-hint = Select a row to inspect its definition, expression, and how it resolves against the registry. +sp-detail-readonly = Spec parameter (compiled in from the data file) — read-only. +sp-field-url = Canonical URL +sp-field-name = Name +sp-field-status = Status +sp-field-base = Base resource types +sp-field-expression = FHIRPath expression +sp-field-description = Description +sp-field-target = Target types +sp-field-components = Components +sp-status-hint = The loader promotes the spec's draft status to active on load. +sp-note-conflict = Duplicate (base, code) within the same source as { $url } — the registry rejects this collision (DuplicateCode). +sp-note-overrides = Overrides { $url } on (base, code): a Stored definition outranks the spec parameter, so this one resolves searches. The registry logs a WARN naming both URLs. +sp-note-shadowed = Shadowed by { $url } on (base, code): a higher-precedence source resolves searches for this slot. +sp-note-empty-expression = Empty expression: the extractor indexes zero rows, so every search on this parameter silently returns empty. +sp-note-no-target = Reference parameter with no target types: chained search cannot resolve the referenced type. +sp-note-choice-type = Choice-type expression: the extractor rewrites ofType(T) / as T to the concrete element (for example valueQuantity) before evaluating against raw stored JSON. +sp-writes-pending = Creating, overriding, and deleting tenant parameters lands once search parameters are stored in the database (#235). + +## Compartment viewer & tester (#237) + +cmp-heading = Compartments +cmp-lede = The compartment definitions this server routes /{"{"}compartment{"}"}/{"{"}id{"}"}/{"{"}type{"}"} requests with, and a tester that answers: is this type in this compartment, via which parameters, and what search does the server run? +cmp-rail-label = Compartment definitions +cmp-rail-heading = Compartments +cmp-rail-note = Base definitions ship with the server (codegen'd from the FHIR spec). Editing them implies a tenant-scoped override layer — open question on the issue. +cmp-tabs-label = Compartment sections +cmp-tab-definition = Definition +cmp-tab-members = Members +cmp-tab-tester = Tester +cmp-field-code = Code +cmp-field-status = Status +cmp-field-url = Canonical URL +cmp-field-version = Version +cmp-field-publisher = Publisher +cmp-field-description = Description +cmp-field-search = search +cmp-field-experimental = experimental +cmp-search-why = Off would mean no compartment route resolves for this compartment. +cmp-on = on +cmp-off = off +cmp-yes = yes +cmp-no = no +cmp-readonly-note = Read-only: these values come from the spec definitions compiled into the server. +cmp-filter-members = Members +cmp-filter-all = All types +cmp-filter-excluded = Excluded +cmp-member = member +cmp-excluded = excluded +cmp-tester-id = Id +cmp-tester-target = Target type (or *) +cmp-tester-run = Test +cmp-result-member = ✓ member — via { $params } +cmp-result-flat = // equivalent flat search +cmp-result-member-note = The server resolves the compartment route to this search over the type's reference parameters. +cmp-result-self = ✓ member — the compartment resource itself ({"{"}def{"}"}) +cmp-result-self-note = The compartment instance is trivially in its own compartment; the route reads the resource directly. +cmp-result-notmember = ✕ { $type } is not a member of this compartment +cmp-result-notmember-note = The server returns 404 with an OperationOutcome for types that are not compartment members. +cmp-result-fanout = Fans out to { $count } member types +cmp-result-fanout-note = Excluded types are skipped, not failed — the fan-out drops non-member types rather than erroring. diff --git a/locales/es/main.ftl b/locales/es/main.ftl index b674cea6e..000b6fe2e 100644 --- a/locales/es/main.ftl +++ b/locales/es/main.ftl @@ -84,6 +84,7 @@ nav-batch-transaction = Lote / Transacción nav-bulk-export = Exportación masiva nav-sql-on-fhir = SQL-on-FHIR nav-capability-conformance = Capacidad y conformidad +nav-search-parameters = Parámetros de búsqueda nav-admin-ops = Administración / Operaciones nav-subscriptions = Suscripciones @@ -135,3 +136,97 @@ queries-delete = Eliminar queries-rename-prompt = Nuevo nombre queries-confirm-delete = ¿Eliminar «{ $name }»? queries-unavailable = Las consultas guardadas no están disponibles: el backend de almacenamiento de este servidor no admite configuración por usuario. + +## Visor de SearchParameters (#238) + +sp-heading = Parámetros de búsqueda +sp-lede = Explora los parámetros con los que este servidor resuelve las búsquedas, filtrados por tipo de recurso base. Los parámetros de la especificación son de solo lectura; la edición por tenant llegará cuando los parámetros vivan en el almacenamiento. +sp-version-label = Versión FHIR +sp-spec-missing = No se encontró el bundle completo de la especificación (search-parameters-*.json) en el directorio de datos — solo se muestran los parámetros mínimos embebidos. +sp-rail-label = Filtro de recursos +sp-rail-search = Filtrar tipos +sp-rail-recent = Usados recientemente +sp-rail-types = Tipos de recurso +sp-rail-all = Todos los tipos +sp-facet-type = Tipo +sp-facet-type-label = Filtrar por tipo de parámetro +sp-facet-source = Origen +sp-facet-source-label = Filtrar por origen +sp-source-embedded = embebido +sp-source-stored = almacenado +sp-source-config = configuración +sp-chip-conflict = conflicto +sp-chip-overrides = anula la spec +sp-chip-shadowed = eclipsado +sp-col-code = Código +sp-col-type = Tipo +sp-col-base = Base +sp-col-expression = Expresión +sp-col-source = Origen +sp-total = { $count } parámetros +sp-pagination-label = Páginas +sp-page-prev = Anterior +sp-page-next = Siguiente +sp-detail-label = Detalle del parámetro +sp-detail-empty = Ningún parámetro seleccionado +sp-detail-empty-hint = Selecciona una fila para inspeccionar su definición, su expresión y cómo se resuelve en el registro. +sp-detail-readonly = Parámetro de la especificación (compilado desde el archivo de datos) — solo lectura. +sp-field-url = URL canónica +sp-field-name = Nombre +sp-field-status = Estado +sp-field-base = Tipos de recurso base +sp-field-expression = Expresión FHIRPath +sp-field-description = Descripción +sp-field-target = Tipos destino +sp-field-components = Componentes +sp-status-hint = El cargador promueve el estado draft de la especificación a active al cargar. +sp-note-conflict = (base, code) duplicado dentro del mismo origen que { $url } — el registro rechaza esta colisión (DuplicateCode). +sp-note-overrides = Anula a { $url } en (base, code): una definición almacenada tiene precedencia sobre el parámetro de la spec, así que esta resuelve las búsquedas. El registro emite un WARN con ambas URLs. +sp-note-shadowed = Eclipsado por { $url } en (base, code): un origen de mayor precedencia resuelve las búsquedas de este slot. +sp-note-empty-expression = Expresión vacía: el extractor no indexa ninguna fila, así que toda búsqueda con este parámetro devuelve vacío en silencio. +sp-note-no-target = Parámetro de referencia sin tipos destino: la búsqueda encadenada no puede resolver el tipo referenciado. +sp-note-choice-type = Expresión de tipo choice: el extractor reescribe ofType(T) / as T al elemento concreto (por ejemplo valueQuantity) antes de evaluar contra el JSON almacenado. +sp-writes-pending = Crear, anular y borrar parámetros por tenant llegará cuando los parámetros de búsqueda se guarden en la base de datos (#235). + +## Visor y probador de compartments (#237) + +cmp-heading = Compartimentos +cmp-lede = Las definiciones de compartment con las que este servidor enruta las peticiones /{"{"}compartment{"}"}/{"{"}id{"}"}/{"{"}type{"}"}, y un probador que responde: ¿está este tipo en este compartment, mediante qué parámetros, y qué búsqueda ejecuta el servidor? +cmp-rail-label = Definiciones de compartment +cmp-rail-heading = Compartimentos +cmp-rail-note = Las definiciones base vienen con el servidor (generadas desde la especificación FHIR). Editarlas implica una capa de overrides por tenant — pregunta abierta en el issue. +cmp-tabs-label = Secciones del compartment +cmp-tab-definition = Definición +cmp-tab-members = Miembros +cmp-tab-tester = Probador +cmp-field-code = Código +cmp-field-status = Estado +cmp-field-url = URL canónica +cmp-field-version = Versión +cmp-field-publisher = Editor +cmp-field-description = Descripción +cmp-field-search = search +cmp-field-experimental = experimental +cmp-search-why = Apagado significaría que ninguna ruta de compartment resuelve para este compartment. +cmp-on = activado +cmp-off = desactivado +cmp-yes = sí +cmp-no = no +cmp-readonly-note = Solo lectura: estos valores provienen de las definiciones de la especificación compiladas en el servidor. +cmp-filter-members = Miembros +cmp-filter-all = Todos los tipos +cmp-filter-excluded = Excluidos +cmp-member = miembro +cmp-excluded = excluido +cmp-tester-id = Id +cmp-tester-target = Tipo destino (o *) +cmp-tester-run = Probar +cmp-result-member = ✓ miembro — vía { $params } +cmp-result-flat = // búsqueda plana equivalente +cmp-result-member-note = El servidor resuelve la ruta de compartment a esta búsqueda sobre los parámetros de referencia del tipo. +cmp-result-self = ✓ miembro — el propio recurso del compartment ({"{"}def{"}"}) +cmp-result-self-note = La instancia del compartment está trivialmente en su propio compartment; la ruta lee el recurso directamente. +cmp-result-notmember = ✕ { $type } no es miembro de este compartment +cmp-result-notmember-note = El servidor devuelve 404 con un OperationOutcome para tipos que no son miembros del compartment. +cmp-result-fanout = Se expande a { $count } tipos miembro +cmp-result-fanout-note = Los tipos excluidos se omiten, no fallan — el fan-out descarta los tipos no miembro en lugar de dar error. From 90b44da7fa13dcda64f8f78c31059897dc86dd5d Mon Sep 17 00:00:00 2001 From: angela-helios Date: Mon, 13 Jul 2026 01:39:54 -0400 Subject: [PATCH 2/8] feat(ui): visual search builder with registry-fed params and in-page results Grows the queries page's Search Builder to the rest of the hi-fi console design, on top of the featured GET URL: - Visual rows in two-way sync with the URL: Conditions (parameter / modifier / value, add and remove), Includes (_include/_revinclude with :iterate), and Result controls (_count/_sort/_total/_summary/_elements). Colon modifiers rejoin onto the key, comparator prefixes (ge, le, ...) onto the value, matching how FHIR search actually spells them. Editing the URL re-derives the rows; editing a row rewrites the URL. - Parameter suggestions come from the server's SearchParameter registry: GET /ui/queries/params?type=X returns a datalist fragment (options labeled with the parameter type) rendered from the same snapshot the SearchParameter viewer reads, swapped per resource type as the URL's type changes. Server-rendered hypermedia, not a UI-facing JSON API. - Run now executes in-page against the FHIR REST API itself and renders the Bundle: total (with an included-resources count when _include is in play), a table whose columns honor _elements with compact formatting for common shapes (HumanName, CodeableConcept, Reference, Quantity), row links to the resource, OperationOutcome diagnostics on errors, and paging over Bundle.link. Explicit runs still record to recentSearches; paging does not. An Open-in-new-tab link keeps the old behavior a click away, and /ui/queries?url=... deep-links straight into a loaded builder and executed search. - Global [hidden] { display: none !important } so script-toggled regions (pager buttons, builder sections, the rail's recents group) cannot be un-hidden by their class display values. Verified against a running hfs with seeded Patients: the deep link renders condition and control rows from the URL, the datalist swaps to the Patient catalog (birthdate et al.), and the search renders '2 results' with name/gender/birthDate columns and formatted HumanNames. --- crates/ui/assets/app.css | 134 +++++ crates/ui/assets/saved-queries.js | 477 +++++++++++++++++- crates/ui/src/lib.rs | 76 +++ crates/ui/templates/pages/queries.html | 63 +++ .../ui/templates/partials/param-options.html | 3 + crates/ui/tests/router_http.rs | 22 + locales/de/main.ftl | 18 +- locales/en/main.ftl | 18 +- locales/es/main.ftl | 18 +- 9 files changed, 804 insertions(+), 25 deletions(-) create mode 100644 crates/ui/templates/partials/param-options.html diff --git a/crates/ui/assets/app.css b/crates/ui/assets/app.css index 3775fb79c..ef63d9846 100644 --- a/crates/ui/assets/app.css +++ b/crates/ui/assets/app.css @@ -96,6 +96,12 @@ svg { display: block; } +/* Class display values (flex, inline-flex) must not defeat the hidden + attribute on script-toggled regions. */ +[hidden] { + display: none !important; +} + /* ---------- Sidebar ---------- */ .sidebar { @@ -1511,3 +1517,131 @@ a.nav-item:hover { grid-template-columns: 1fr; } } + +/* Visual builder rows (conditions / includes / result controls) */ + +.builder-sections { + display: flex; + flex-direction: column; + gap: 14px; + padding-top: 4px; +} + +.builder-section__title { + margin: 0 0 8px; + font-size: 10px; + font-weight: 600; + letter-spacing: 0.6px; + text-transform: uppercase; + color: var(--muted); +} + +.builder-grid { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 14px 18px; +} + +.builder-rows { + display: flex; + flex-direction: column; + gap: 6px; + margin-bottom: 8px; +} + +.builder-row { + display: flex; + gap: 6px; + align-items: center; +} + +.builder-row__key, +.builder-row__modifier, +.builder-row__value { + height: 32px; + padding: 0 10px; + font: inherit; + font-size: 12.5px; + color: var(--text); + background: var(--input-bg); + border: 1px solid var(--surface-border); + border-radius: 9px; + outline: none; +} + +.builder-row__key { + width: 190px; + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 12px; +} + +.builder-row__modifier { + width: 110px; + color: var(--muted); +} + +.builder-row__value { + flex: 1; + min-width: 0; + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 12px; +} + +.builder-row__key:focus, +.builder-row__modifier:focus, +.builder-row__value:focus { + border-color: var(--accent); +} + +.builder-row__remove { + flex-shrink: 0; + width: 26px; + height: 26px; + padding: 0; + border: 0; + border-radius: 7px; + background: none; + color: var(--muted); + font-size: 14px; + line-height: 1; + cursor: pointer; +} + +.builder-row__remove:hover { + background: var(--accent-soft); + color: var(--text-strong); +} + +.builder-add { + align-self: flex-start; +} + +/* In-page results card */ + +.query-results { + margin-bottom: 24px; +} + +.query-results__head { + display: flex; + align-items: center; + gap: 12px; + padding: 16px 20px 4px; +} + +.query-results__meta { + flex: 1; + font-size: 12px; + color: var(--muted); + font-variant-numeric: tabular-nums; +} + +@media (max-width: 900px) { + .builder-grid { + grid-template-columns: 1fr; + } + + .builder-row { + flex-wrap: wrap; + } +} diff --git a/crates/ui/assets/saved-queries.js b/crates/ui/assets/saved-queries.js index 3151954d6..f82a0dba5 100644 --- a/crates/ui/assets/saved-queries.js +++ b/crates/ui/assets/saved-queries.js @@ -1,11 +1,21 @@ /* - * Saved FHIR queries (issue #234), backed by the per-user settings document. + * Saved FHIR queries & search builder (issue #234), backed by the per-user + * settings document and the FHIR REST API itself. * - * The page shell is server-rendered; this script owns the read/modify/write - * cycle against /_user/settings. Unlike theme.js (a single last-write-wins - * scalar), saved queries are structural state shared across tabs and devices, - * so every write is a JSON merge patch conditional on the document's ETag, - * retried once against a fresh read when another writer won the race (412). + * The page shell is server-rendered; this script owns three client concerns: + * + * 1. The read/modify/write cycle against /_user/settings. Unlike theme.js (a + * single last-write-wins scalar), saved queries are structural state + * shared across tabs and devices, so every write is a JSON merge patch + * conditional on the document's ETag, retried once against a fresh read + * when another writer won the race (412). + * 2. The visual builder: condition / include / result-control rows kept in + * two-way sync with the GET URL. Parameter suggestions come from + * /ui/queries/params — a server-rendered datalist fragment fed by the + * SearchParameter registry, swapped per resource type. + * 3. Results: Run fetches the search from the FHIR API (the existing REST + * surface, no UI-facing endpoint) and renders Bundle.total, a table whose + * columns honor _elements, and paging over Bundle.link. * * Document conventions (see helios-persistence's user_settings module docs): * - savedQueries.. = { name, query, createdAt, @@ -26,6 +36,8 @@ var root = document.getElementById("saved-queries"); var form = document.getElementById("saved-query-form"); var recentHost = document.getElementById("recent-searches"); + var sections = document.getElementById("builder-sections"); + var urlInput = form && form.elements.url; if (!root || !window.fetch) return; var messages = root.dataset; @@ -122,6 +134,417 @@ ); } + /* ---- Visual builder: rows kept in two-way sync with the GET URL ------ */ + + var CONTROL_KEYS = ["_count", "_sort", "_total", "_summary", "_elements"]; + var INCLUDE_KEYS = ["_include", "_revinclude"]; + var COLON_MODIFIERS = [ + "exact", "contains", "missing", "not", "text", + "above", "below", "in", "not-in", "identifier", "of-type", + ]; + /* Comparator prefixes live on the value (ge2020-01-01), not the key. */ + var PREFIXES = ["eq", "ne", "gt", "ge", "lt", "le", "sa", "eb", "ap"]; + var PREFIX_RE = /^(eq|ne|gt|ge|lt|le|sa|eb|ap)(?=[\d])/; + var catalogType = null; + + /* Swaps the parameter datalist for the current resource type. The + * fragment is server-rendered from the SearchParameter registry. */ + function loadCatalog(type) { + if (!type || type === catalogType) return; + catalogType = type; + fetch("/ui/queries/params?type=" + encodeURIComponent(type), { + credentials: "same-origin", + }) + .then(function (response) { + return response.ok ? response.text() : null; + }) + .then(function (html) { + if (!html) return; + var tpl = document.createElement("template"); + tpl.innerHTML = html; + var next = tpl.content.querySelector("datalist"); + var current = document.getElementById("param-options"); + if (next && current) current.replaceWith(next); + }); + } + + function splitQuery(query) { + return (query || "") + .split("&") + .filter(Boolean) + .map(function (pair) { + var eq = pair.indexOf("="); + var rawKey = eq < 0 ? pair : pair.slice(0, eq); + var value = eq < 0 ? "" : pair.slice(eq + 1); + try { + value = decodeURIComponent(value.replace(/\+/g, " ")); + } catch (e) { + /* keep the raw value */ + } + var colon = rawKey.indexOf(":"); + return { + key: colon < 0 ? rawKey : rawKey.slice(0, colon), + modifier: colon < 0 ? "" : rawKey.slice(colon + 1), + value: value, + }; + }); + } + + function bucketFor(part) { + if (CONTROL_KEYS.indexOf(part.key) >= 0) return "control"; + if (INCLUDE_KEYS.indexOf(part.key) >= 0) return "include"; + return "condition"; + } + + function option(select, value, label, selected) { + var el = document.createElement("option"); + el.value = value; + el.textContent = label; + el.selected = selected; + select.appendChild(el); + } + + function builderRow(kind, part) { + var row = document.createElement("div"); + row.className = "builder-row"; + + var key; + if (kind === "condition") { + key = document.createElement("input"); + key.value = part.key; + key.setAttribute("list", "param-options"); + key.placeholder = sections.dataset.msgParam; + key.spellcheck = false; + } else { + key = document.createElement("select"); + var keys = kind === "include" ? INCLUDE_KEYS : CONTROL_KEYS; + keys.forEach(function (k) { + option(key, k, k, part.key === k); + }); + } + key.className = "builder-row__key"; + row.appendChild(key); + + /* Comparator prefixes render in the modifier select but are rejoined + * onto the value; colon modifiers are rejoined onto the key. */ + var value = part.value; + var selectedMod = part.modifier; + var prefix = PREFIX_RE.exec(value); + if (!selectedMod && prefix) { + selectedMod = prefix[1]; + value = value.slice(2); + } + + if (kind !== "control") { + var modifier = document.createElement("select"); + modifier.className = "builder-row__modifier"; + option(modifier, "", "—", !selectedMod); + if (kind === "include") { + option(modifier, "iterate", ":iterate", selectedMod === "iterate"); + } else { + COLON_MODIFIERS.forEach(function (m) { + option(modifier, m, ":" + m, selectedMod === m); + }); + PREFIXES.forEach(function (p) { + option(modifier, p, p, selectedMod === p); + }); + } + row.appendChild(modifier); + } + + var valueInput = document.createElement("input"); + valueInput.className = "builder-row__value"; + valueInput.value = value; + valueInput.placeholder = sections.dataset.msgValue; + valueInput.spellcheck = false; + row.appendChild(valueInput); + + var remove = document.createElement("button"); + remove.type = "button"; + remove.className = "builder-row__remove"; + remove.dataset.removeRow = "true"; + remove.setAttribute("aria-label", sections.dataset.msgRemove); + remove.textContent = "×"; + row.appendChild(remove); + + return row; + } + + function builderHosts() { + return { + condition: document.getElementById("builder-conditions"), + include: document.getElementById("builder-includes"), + control: document.getElementById("builder-controls"), + }; + } + + /* URL → rows. */ + function renderBuilder() { + if (!sections || !urlInput) return; + var parsed = parseSearchUrl(urlInput.value); + if (!parsed) { + sections.hidden = true; + return; + } + sections.hidden = false; + sections.dataset.type = parsed.type; + loadCatalog(parsed.type); + + var hosts = builderHosts(); + Object.keys(hosts).forEach(function (kind) { + hosts[kind].textContent = ""; + }); + splitQuery(parsed.query).forEach(function (part) { + var kind = bucketFor(part); + hosts[kind].appendChild(builderRow(kind, part)); + }); + } + + /* Rows → URL. */ + function updateUrl() { + if (!sections || !urlInput) return; + var type = sections.dataset.type || ""; + var parts = []; + sections.querySelectorAll(".builder-row").forEach(function (row) { + var key = row.querySelector(".builder-row__key").value.trim(); + if (!key) return; + var modifierEl = row.querySelector(".builder-row__modifier"); + var mod = modifierEl ? modifierEl.value : ""; + var value = row.querySelector(".builder-row__value").value.trim(); + if (PREFIXES.indexOf(mod) >= 0) value = mod + value; + else if (mod) key += ":" + mod; + parts.push(key + "=" + value); + }); + urlInput.value = + "GET /" + type + (parts.length ? "?" + parts.join("&") : ""); + } + + if (sections && urlInput) { + urlInput.addEventListener("change", renderBuilder); + sections.addEventListener("input", function (event) { + if (event.target.closest(".builder-row")) updateUrl(); + }); + sections.addEventListener("click", function (event) { + var remove = event.target.closest("[data-remove-row]"); + var add = event.target.closest("[data-add]"); + if (remove) { + remove.closest(".builder-row").remove(); + updateUrl(); + } else if (add) { + var kind = add.dataset.add; + var part = { + key: kind === "include" ? "_include" : kind === "control" ? "_count" : "", + modifier: "", + value: "", + }; + var row = builderRow(kind, part); + builderHosts()[kind].appendChild(row); + row.querySelector(kind === "condition" ? ".builder-row__key" : ".builder-row__value").focus(); + } + }); + } + + /* ---- Results: the FHIR search response, rendered in-page ------------- */ + + var results = { + card: document.getElementById("query-results"), + head: document.getElementById("query-results-head"), + body: document.getElementById("query-results-body"), + meta: document.getElementById("query-results-meta"), + note: document.getElementById("query-results-note"), + open: document.getElementById("query-results-open"), + prev: document.getElementById("query-results-prev"), + next: document.getElementById("query-results-next"), + }; + + /* Compact display heuristics for common FHIR shapes (HumanName, + * CodeableConcept, Reference, Quantity); everything else is truncated + * JSON rather than a blank cell. */ + function fmt(value) { + if (value == null) return ""; + if (typeof value !== "object") return String(value); + if (Array.isArray(value)) { + if (!value.length) return ""; + var first = fmt(value[0]); + return value.length > 1 ? first + " +" + (value.length - 1) : first; + } + if (value.family || value.given) + return [value.family, (value.given || []).join(" ")] + .filter(Boolean) + .join(", "); + if (value.text) return value.text; + if (value.coding) return fmt(value.coding); + if (value.display) return value.display; + if (value.reference) return value.reference; + if (value.value !== undefined && value.unit) + return value.value + " " + value.unit; + if (value.code) return value.code; + var json = JSON.stringify(value); + return json.length > 60 ? json.slice(0, 60) + "…" : json; + } + + function elementColumns(query) { + var columns = []; + splitQuery(query).forEach(function (part) { + if (part.key !== "_elements") return; + part.value.split(",").forEach(function (el) { + el = el.trim(); + if (el && el !== "id" && columns.indexOf(el) < 0) columns.push(el); + }); + }); + return columns; + } + + function cell(row, text, mono) { + var td = document.createElement("td"); + if (mono) { + var span = document.createElement("span"); + span.className = "url"; + span.textContent = text; + td.appendChild(span); + } else { + td.textContent = text; + } + row.appendChild(td); + return td; + } + + function pagerLink(bundle, relation) { + var links = (bundle && bundle.link) || []; + for (var i = 0; i < links.length; i++) { + if (links[i].relation === relation && links[i].url) return links[i].url; + } + return null; + } + + function renderResults(path, ok, body) { + var card = results.card; + if (!card) return; + card.hidden = false; + results.open.href = path; + results.head.textContent = ""; + results.body.textContent = ""; + results.meta.textContent = ""; + results.note.textContent = ""; + results.prev.hidden = true; + results.next.hidden = true; + + if (!ok || !body || body.resourceType !== "Bundle") { + var diagnostics = + body && + body.issue && + body.issue[0] && + (body.issue[0].diagnostics || + (body.issue[0].details && body.issue[0].details.text)); + results.note.textContent = diagnostics || messages.msgError; + return; + } + + var parsed = parseSearchUrl(path) || { type: "", query: "" }; + var entries = body.entry || []; + var primary = entries.filter(function (entry) { + return ( + entry.resource && entry.resource.resourceType === parsed.type + ); + }); + var included = entries.length - primary.length; + + var total = + typeof body.total === "number" ? body.total : primary.length; + var meta = card.dataset.msgTotal.replace("{count}", total); + if (included > 0) + meta += " · " + card.dataset.msgIncluded.replace("{count}", included); + results.meta.textContent = meta; + + var columns = elementColumns(parsed.query); + var headRow = document.createElement("tr"); + var th = document.createElement("th"); + th.textContent = "id"; + headRow.appendChild(th); + columns.forEach(function (col) { + var cellEl = document.createElement("th"); + cellEl.textContent = col; + headRow.appendChild(cellEl); + }); + var thUpdated = document.createElement("th"); + thUpdated.textContent = card.dataset.msgUpdated; + headRow.appendChild(thUpdated); + results.head.appendChild(headRow); + + primary.forEach(function (entry) { + var resource = entry.resource; + var row = document.createElement("tr"); + var idCell = document.createElement("td"); + var link = document.createElement("a"); + link.className = "url"; + link.href = "/" + parsed.type + "/" + resource.id; + link.target = "_blank"; + link.rel = "noopener"; + link.textContent = resource.id || ""; + idCell.appendChild(link); + row.appendChild(idCell); + columns.forEach(function (col) { + cell(row, fmt(resource[col])); + }); + cell( + row, + resource.meta && resource.meta.lastUpdated + ? whenText(resource.meta.lastUpdated) + : "" + ); + results.body.appendChild(row); + }); + + if (!primary.length) results.note.textContent = card.dataset.msgEmpty; + + var prevUrl = pagerLink(body, "previous"); + var nextUrl = pagerLink(body, "next"); + if (prevUrl) { + results.prev.hidden = false; + results.prev.dataset.url = prevUrl; + } + if (nextUrl) { + results.next.hidden = false; + results.next.dataset.url = nextUrl; + } + } + + /* Runs a search against the FHIR API and renders the Bundle in-page. + * `record` adds it to the roaming recent list (explicit runs only, so + * paging does not spam recents). */ + function runSearch(path, record) { + if (!results.card) { + window.open(path, "_blank", "noopener"); + } else { + fetch(path, { + headers: { Accept: "application/fhir+json" }, + credentials: "same-origin", + }) + .then(function (response) { + return response + .json() + .catch(function () { + return null; + }) + .then(function (body) { + renderResults(path, response.ok, body); + }); + }) + .catch(function () { + renderResults(path, false, null); + }); + } + if (record) recordRecent(path); + } + + results.card && + results.card.addEventListener("click", function (event) { + var pager = event.target.closest("button[data-url]"); + if (pager) runSearch(pager.dataset.url, false); + }); + + /* ---- Recent searches & the saved list -------------------------------- */ + /* Last-accessed first; never-run entries follow, newest created first. */ function compareEntries(a, b) { var aRun = a.entry.lastAccessedAt || ""; @@ -349,6 +772,13 @@ return (entries && entries[id]) || null; } + /* Loads a query into the builder without running it. */ + function loadIntoBuilder(path) { + if (!urlInput) return; + urlInput.value = "GET " + path; + renderBuilder(); + } + root.addEventListener("click", function (event) { var target = event.target.closest("button[data-action]"); if (!target) return; @@ -363,16 +793,12 @@ } if (target.dataset.action === "run") { - window.open( - searchPath(resourceType, entry.query || ""), - "_blank", - "noopener" - ); + var path = searchPath(resourceType, entry.query || ""); + loadIntoBuilder(path); + runSearch(path, true); mutate(resourceType, id, { lastAccessedAt: new Date().toISOString(), accessCount: (Number(entry.accessCount) || 0) + 1, - }).then(function () { - return recordRecent(searchPath(resourceType, entry.query || "")); }); } else if (target.dataset.action === "rename") { var name = window.prompt(messages.msgRenamePrompt, entry.name || ""); @@ -399,11 +825,11 @@ var list = recentSearches(doc); if (load) { var item = list[Number(load.dataset.recentLoad)]; - if (item && form) { - form.elements.url.value = "GET " + item.query; + if (item) { + loadIntoBuilder(item.query); var dd = recentHost.closest("details"); if (dd) dd.open = false; - form.elements.url.focus(); + if (urlInput) urlInput.focus(); } return; } @@ -427,12 +853,7 @@ } if (intent === "run") { - window.open( - searchPath(parsed.type, parsed.query), - "_blank", - "noopener" - ); - recordRecent(searchPath(parsed.type, parsed.query)); + runSearch(searchPath(parsed.type, parsed.query), true); return; } @@ -457,4 +878,16 @@ } reload(); + + /* Deep link: /ui/queries?url=/Patient?name=smith loads the builder and + * runs immediately — also what saved/recent entries could link to. */ + var deepLink = new URLSearchParams(window.location.search).get("url"); + if (deepLink && urlInput) { + loadIntoBuilder(deepLink.replace(/^GET\s+/i, "")); + var parsedDeep = parseSearchUrl(urlInput.value); + if (parsedDeep) + runSearch(searchPath(parsedDeep.type, parsedDeep.query), true); + } else { + renderBuilder(); + } })(); diff --git a/crates/ui/src/lib.rs b/crates/ui/src/lib.rs index 472427041..2b6080973 100644 --- a/crates/ui/src/lib.rs +++ b/crates/ui/src/lib.rs @@ -144,6 +144,22 @@ struct StatusPartial { i18n: I18n, } +/// One `