Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

issues #3641 #3650 #3652 - update docs #3666

Merged
merged 1 commit into from
Jun 9, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions docs/src/pages/guides/FHIRServerUsersGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -800,10 +800,10 @@ For example, you can configure a set of FHIRPath Constraints to run for resource
```

The following configuration parameters can be used to specify rules relating to the set of profiles that are specified in a resource's `meta.profile` element:
* `fhirServer/resources/<resourceType>/profiles/atLeastOne` - this configuration parameter is used to specify a set of profiles, at least one of which a resource must claim conformance to and be successfully validated against in order to be persisted to the FHIR server.
* `fhirServer/resources/<resourceType>/profiles/notAllowed` - this configuration parameter is used to specify a set of profiles to which a resource is *not allowed* to claim conformance.
* `fhirServer/resources/<resourceType>/profiles/allowUnknown` - this configuration parameter is used to indicate whether a warning or an error is issued if a profile specified in a resource's `meta.profile` element is not loaded in the FHIR server. The default value is `true`, meaning unknown profiles are allowed to be specified. The profile will be ignored and just a warning will be returned. If set to `false`, this means unknown profiles are not allowed to be specified. An error will be returned and resource validation will fail.
* `fhirServer/resources/<resourceType>/profiles/defaultVersions` - this configuration parameter is used to specify which version of a profile will be used during resource validation if the profile specified in a resource's `meta.profile` element does not contain a version. If a default profile version is not configured using this configuration parameter for an asserted profile, the FHIR server will determine the default version to use for validation.
* `fhirServer/resources/<resourceType>/profiles/atLeastOne` - to specify a set of profiles, at least one of which a resource must claim conformance to and be successfully validated against in order to be persisted to the FHIR server.
* `fhirServer/resources/<resourceType>/profiles/notAllowed` - to specify a set of profiles to which a resource is *not allowed* to claim conformance.
* `fhirServer/resources/<resourceType>/profiles/allowUnknown` - to indicate whether a warning or an error is issued if a profile specified in a resource's `meta.profile` element is not loaded in the FHIR server. The default value is `true`, meaning unknown profiles are allowed to be specified. The profile will be ignored and just a warning will be returned. If set to `false`, this means unknown profiles are not allowed to be specified. An error will be returned and resource validation will fail.
* `fhirServer/resources/<resourceType>/profiles/defaultVersions` - to specify which version of a profile will be used during resource validation if the profile specified in a resource's `meta.profile` element does not contain a version. If a default profile version is not configured using this configuration parameter for an asserted profile, the FHIR server will determine the default version to use for validation.

Before calling the FHIR validator to validate a resource against the set of profiles specified in its `meta.profile` element that it is claiming conformance to, the following pre-validation will be performed for that set of profiles based on the configuration parameters listed above:
1. If any specified profile does not contain a version, and that profile is in the set of profiles configured to have a default version via the `fhirServer/resources/<resourceType>/profiles/defaultVersions` configuration parameter, the default version for that profile will be appended to the profile name, and it is this new profile name containing the version which will be evaluated against in the following steps.
Expand Down
27 changes: 16 additions & 11 deletions docs/src/pages/guides/FHIRValidationGuide.md
Original file line number Diff line number Diff line change
Expand Up @@ -207,17 +207,22 @@ The IBM FHIR server has built-in support for the following:

### Optional profile support

The IBM FHIR server has additional implementation guides available in the fhir-validation-distribution.zip artifact, which may be downloaded from [https://github.com/IBM/FHIR/releases](releases). To load an additional implemenation guide, copy the implementation guide's jar (e.g. `fhir-ig-us-core-VERSION.jar`) from the fhir-validation-distribution.zip artifact into the IBM FHIR server's userlib directory to make it available to the server during startup.

The latest version of the fhir-validation-distribution.zip artifact includes the following implementation guides:

- US Core Implementation Guide (v3.1.1: STU3 Update) [http://hl7.org/fhir/us/core/STU3.1.1/](http://hl7.org/fhir/us/core/STU3.1.1/)
- CARIN Consumer Directed Payer Data Exchange (CARIN IG for BlueButton®) Implementation Guide (v1.0.0 - STU1) [http://hl7.org/fhir/us/carin-bb/STU1](http://hl7.org/fhir/us/carin-bb/STU1)
- HL7 FHIR Implementation Guide: minimal Common Oncology Data Elements (mCODE) Release 1 - US Realm | STU1 (v1.0.0 - STU1) [http://hl7.org/fhir/us/mcode/STU1](http://hl7.org/fhir/us/mcode/STU1)
- Da Vinci Health Record Exchange (HREX) Implementation Guide (v1.0.0 - STU1) [https://hl7.org/fhir/us/davinci-hrex/STU1)
- Da Vinci Payer Data Exchange (PDEX) Implementation Guide (v1.0.0 - STU1) [http://hl7.org/fhir/us/davinci-pdex/STU1](http://hl7.org/fhir/us/davinci-pdex/STU1)
- Da Vinci Payer Data Exchange (PDEX) Plan Net Implementation Guide (v1.0.0 - STU1) [http://hl7.org/fhir/us/davinci-pdex-plan-net/STU1](http://hl7.org/fhir/us/davinci-pdex-plan-net/STU1)
- Da Vinci Payer Data Exchange (PDex) US Drug Formulary (v1.0.1 - STU1.0.1) [http://hl7.org/fhir/us/davinci-drug-formulary/STU1.0.1](http://hl7.org/fhir/us/davinci-drug-formulary/STU1.0.1)
The IBM FHIR Server project includes modules for select FHIR implementation guides and makes versions of those available in both Maven Central and in the fhir-validation-distribution.zip artifact, which may be downloaded from [https://github.com/IBM/FHIR/releases](releases). To make an implemenation guide available to the server, copy the corresponding jar (e.g. `fhir-ig-us-core-VERSION.jar`) to the IBM FHIR Server's userlib directory before startup.

In many cases, these modules wrap multiple versions of the corresponding implementation guide.
By default, the server will use the latest version of given resource for validation purposes.
See [Section 4.5.3 of the User's Guide](#453-profile-validation) for related configuration options.

Below is the list of implementation guides that are packaged as part of the project and which implementation guide versions they include:

|Implementation Guide|Packaged Versions|
|US Core|`3.1.1`, `4.0.0`, `5.0.0`|
|CARIN Consumer Directed Payer Data Exchange (CARIN IG for BlueButton®)|`1.0.0`, `1.1.0`|
|minimal Common Oncology Data Elements (mCODE)|`1.0.0`)
|Da Vinci Health Record Exchange (HREX)|`1.0.0`|
|Da Vinci Payer Data Exchange (PDEX)|`1.0.0`, `2.0.0`|
|Da Vinci Payer Data Exchange (PDEX) Plan Net|`1.0.0`, `1.1.0`|
|Da Vinci Payer Data Exchange (PDex) US Drug Formulary|`1.0.1`, `1.1.0`|

## The IBM FHIR Server $validate operation

Expand Down