On this page:

1.0Table of Contents

 

This online document contains instructions for how to install Smile CDR, how to plan and execute a deployment that meets your specific needs, how to manage and maintain that deployment, and how to keep it healthy.

If this is your first time reading these documents, we highly recommend you start by reading the Basic Concepts page.


1.0.0 Welcome to Smile CDR
1.0.0 Table of Contents
1.1.0 Changelog (2020 Releases)
1.1.1 Smile CDR 2020.11.R01 (Pre-Release)
1.1.2 Smile CDR 2020.08.R01 (Manticore)
1.1.3 Smile CDR 2020.05.R02 (Labrador)
1.1.4 Smile CDR 2020.05.R01 (Labrador)
1.1.5 Smile CDR 2020.02.R01 (Koala)
1.2.0 Changelog (2019 Releases)
1.2.1 Smile CDR 2019.11.R01 (Jitterbug)
1.2.2 Smile CDR 2019.08.R01 (Igloo)
1.2.3 Smile CDR 2019.05.R01 (Hippo)
1.2.4 Smile CDR 2019.02.R01 (Gale)
1.3.0 Changelog (2018 Releases)
1.3.1 Smile CDR 2018.11.R01 (Food)
1.3.2 Smile CDR 2018.09.R01 (Economist)
1.3.3 Smile CDR 2018.05.R01 (Dromedário)
1.3.4 Smile CDR 2018.03.R01 (Crouton)
1.4.0 Changelog (2017 Releases)
1.4.1 Smile CDR 2017.11.R01 (Buccaneer)
1.4.2 Smile CDR 2017.09.R01 (Aardvark)
1.4.3 Smile CDR 2017.07.R01
2.0.0 Getting Started
2.0.0 Basic Concepts
2.0.1 Nodes and Modules
2.0.2 The Cluster Manager Module
2.0.3 Module Dependencies
2.1.0 Platform Requirements
2.1.1 Server Requirements
2.1.2 Java Requirements
2.1.3 Database Requirements
2.1.4 Network Infrastructure
3.0.0 Installation
3.0.0 Installing Smile CDR
3.0.1 Installing to Linux / OSX
3.0.2 Basic Configuration
3.0.3 Quick Start
3.0.4 The Initial Configuration
3.0.5 The Node Configuration Properties File
3.0.6 Module Property Source
3.0.7 Variable Substitution
3.0.8 Fetching Configuration Using Scripts
3.0.9 Configuring Your Database
3.0.10 Starting the CDR
3.0.11 API Gateways
3.1.0 Docker Container Installation
3.1.1 Quick Start
3.1.2 Basic Configuration
3.1.3 Customizing Smile CDR in Docker Container
3.1.4 Using System Environment for Variable Substitution
3.1.5 Configuring Databases for Smile CDR Installed in Container
3.2.0 Unix Service Installation
3.2.1 Testing the Service
3.2.2 Starting Automatically on Boot
3.3.0 Tuning your Installation
3.3.1 Memory Settings
3.4.0 Message Brokers
3.4.1 Subscription Channels
3.4.2 Subscription Channel Names
3.5.0 Message Broker: ActiveMQ
3.5.1 Resource Limits
3.6.0 Message Broker: Kafka
3.6.1 Kafka Topic Names
3.7.0 Pre-Seeding Configuration and Data
3.7.1 Pre-Seeding Module Configuration
3.7.2 Pre-Seeding Users
3.7.3 Pre-Seeding OpenID Connect Servers
3.7.4 Pre-Seeding OpenID Connect Clients
3.7.5 Packages and FHIR Resources
3.8.0 Upgrading Smile CDR
3.9.0 Localization
3.9.1 Available Localization Strings
4.0.0 Tutorial and Tour
4.0.0 Preamble and Setup
4.0.1 Getting Up to Speed
4.0.2 Preparing Your Instance
4.0.3 Accessing the Web Admin Console
4.0.4 Enabling Anonymous Access to the FHIR Endpoint
4.0.5 Uploading Sample FHIR Resources
4.1.0 FHIR Basics
4.1.1 Resources
4.1.2 Datatypes
4.1.3 Parts of a Resource
4.1.4 Encodings (MIME Types, Wire Formats)
4.2.0 FHIR Search Queries
4.2.1 How Searching Works
4.2.2 Basic Searching: Finding Patients
4.2.3 References: Finding Encounters
4.2.4 Quantities: Finding Laboratory Values
4.2.5 Dates and Times: Narrowing Your Search Window
4.2.6 Paging Search Results
4.2.7 Sorting Search Results
4.2.8 Fulltext Searching
4.2.9 The Patient $everything Search (Across Patient Chart)
4.3.0 FHIR CRUD Operations
4.3.1 Testing Tools
4.3.2 FHIR Create
4.3.3 FHIR Update
4.3.4 FHIR Patch
4.3.5 FHIR Read / vRead
4.3.6 FHIR Delete
4.4.0 SMART on FHIR Apps
4.4.1 Accessing the Web Admin Console
4.4.2 Creating a Client Definition
4.4.3 Enabling SMART on FHIR Requests
4.4.4 Launch SMART on FHIR Growth Chart App
4.5.0 Processing HL7 v2.x Feeds
4.5.1 Transmitting to Smile CDR
4.5.2 ORU (Observation Result) Messages
4.5.3 ADT (Admission/Discharge/Transfer) Messages
5.0.0 FHIR Storage
5.0.0 Concepts in Smile CDR
5.0.1 The FHIR Storage Module
5.0.2 The FHIR REST Endpoint Module
5.0.3 Clustering
5.1.0 FHIR Storage (Relational) Module
5.1.1 Preparing for a New Installation
5.1.2 Creating the Module
5.1.3 Database Schema
5.1.4 Configuration
5.2.0 FHIR Storage (MongoDB) Module
5.2.1 Preparing for a New Installation
5.2.2 Creating the Module
5.2.3 MongoDB Document Schema
5.2.4 MongoDB Uplift Search Parameter Extensions
5.2.5 Uplifting Tokens
5.2.6 Uplifting Reference Chains
5.2.7 Configuration
5.3.0 FHIR Endpoint Module
5.3.1 Creating the Module
5.3.2 Capturing Source Information
5.3.3 Configuration
5.4.0 FHIRWeb Console
5.4.1 Architecture
5.4.2 Security
5.4.3 Creating the Module
5.4.4 Using the Console
5.4.5 Configuration
5.5.0 Lucene Indexing
5.5.1 Lucene Disk Provider
5.5.2 ElasticSearch Provider
5.6.0 Performance and Caching
5.6.1 The Query Cache
5.6.2 Search Counts
5.6.3 Improving Write Performance
5.7.0 Resource IDs
5.7.1 Server Assigned IDs
5.7.2 Client Assigned IDs
5.8.0 Search Parameters
5.8.1 Search Parameter Concepts
5.8.2 Default Search Parameters
5.8.3 Managing Search Parameters
5.8.4 Search Parameter Statistics
5.8.5 Filter Search Parameter
5.8.6 Manual Reindexing
5.8.7 Example
5.9.0 Search Parameter Features
5.9.1 Index Missing Search Parameters (:missing)
5.9.2 Index Text on Tokens (:text)
5.10.0 Phonetic Search Parameters
5.11.0 Custom Search Parameters
5.11.1 An Example Search Parameter
5.11.2 Enforcing Uniqueness
5.11.3 Unique Composite Search Parameters
5.11.4 Example Search Parameter Expressions
5.12.0 Terminology
5.12.1 Uploading CodeSystems
5.12.2 Uploading External CodeSystems
5.12.3 Uploading LOINC
5.12.4 Uploading SNOMED CT
5.12.5 Uploading Custom Vocabularies
5.12.6 Applying Deltas to External CodeSystems
5.12.7 Delta Add Operation: $apply-codesystem-delta-add
5.12.8 Delta Remove Operation: $apply-codesystem-delta-remove
5.12.9 Reference: CSV Vocabulary Input Files
5.13.0 Partitioning and Multitenancy
5.13.1 Enabling Partitioning in Smile CDR
5.13.2 Request Partition Selection Mode
5.13.3 Request Partition Security
5.13.4 Tenant Identification Strategies
5.13.5 Seeding Partitions
5.13.6 Cross-Partition References
5.14.0 Searching for Data
5.14.1 FHIR Search Extensions
5.14.2 Unsupported Search Parameters
5.15.0 Creating Data
5.15.1 Auto Creating Reference Targets
5.16.0 Reading Data
5.16.1 Diff Operation
5.16.2 Diff Instance
5.16.3 Diff Type
5.17.0 Updating Data
5.17.1 Patching Data
5.17.2 Tag Retention
5.17.3 Concurrent Write Errors
5.18.0 Deleting Data
5.18.1 Deletes and Referential Integrity
5.18.2 Transactional Delete
5.18.3 Referential Integrity
5.18.4 Cascading Deletes
5.18.5 The $expunge Operation
5.19.0 Interceptors
5.19.1 Coding and Deploying Interceptors
5.19.2 Starter Project
5.19.3 Example: Attribute Enhancement
5.20.0 Binary Data
5.20.1 Externalized Binary Storage
5.20.2 Binary Access Operations
5.20.3 Serving Raw Media Resources
5.21.0 Request Tracing and Provenance
5.21.1 Request Tracing
5.21.2 Performance Tracing
5.21.3 Storing Source Information
5.22.0 Packages and Implementation Guides
5.22.1 Background: Implementation Guides
5.22.2 Background: Packages
5.22.3 Smile CDR Package Registry
5.22.4 Package Pre-Seed Installation
5.22.5 Creating Packages
5.23.0 Validation
5.23.1 Validating References
5.23.2 Remote Terminology Service
5.24.0 FHIR Versions
6.0.0 Subscription
6.0.0 Introduction
6.0.1 The Subscription Resource
6.0.2 Subscription Activation
6.0.3 Criteria
6.0.4 Troubleshooting Subscriptions
6.1.0 Architecture
6.1.1 Enabling and Configuring Subscription Processing
6.2.0 Channel Types
6.2.1 Channel Type: rest-hook
6.2.2 Channel Type: email
6.2.3 Channel Type: websocket
6.2.4 Channel Type: message
6.3.0 Delivery Options
6.3.1 Payload Search Result Mode
6.3.2 Replication Mode
6.3.3 Strip Version IDs
6.3.4 Delivering Latest Version
6.3.5 Custom Delivery Class
6.3.6 Delivery to Site-defined External Queue
6.4.0 Manual Triggering
7.0.0 LiveBundle
7.0.0 LiveBundle Overview
7.0.1 Configuration
7.0.2 Usage
7.0.3 LiveBundle Architecture
7.0.4 LiveBundle Aggregation
7.0.5 LiveBundle Retrieval
7.0.6 LiveBundle Seeding
7.0.7 LiveBundle Troubleshooting
7.1.0 LiveBundle API
7.1.1 Add a Subscriber to a Watchlist
7.1.2 Remove Subscriber from a Watchlist
7.1.3 View list of Subscribers to a Watchlist
7.1.4 Request a bundle of Subscribers to a watchlist
7.1.5 Reseed all bundles for a rule
7.1.6 Request a LiveBundle
7.2.0 LiveBundle Rule Definition
7.2.1 Loading Rules
7.2.2 Example LiveBundle Javascript
7.2.3 LiveBundle Watchlist
7.2.4 LiveBundle Rule
7.2.5 LiveBundle Filter
7.2.6 Keeper Filters
7.2.7 LiveBundle Keeper
7.3.0 LiveBundle Keepers
7.3.1 LiveBundle Keeper Examples
7.3.2 LatestByPath
7.3.3 LatestByParamPath
7.3.4 LatestByParamPathByMonth
7.3.5 ToggleByPath
7.3.6 ToggleBySearch
7.3.7 WatchlistPopulator
7.3.8 Optional Keeper Parameters
8.0.0 Security
8.0.0 Security in Smile CDR
8.0.1 Inbound Security Module
8.0.2 FHIR Listener Module
8.0.3 Admin Modules
8.0.4 Auth Directory
8.0.5 Audit Database
8.0.6 Outbound Security Modules
8.1.0 Authentication Protocols
8.1.1 HTTP Basic
8.1.2 OpenID Connect (OIDC) and SMART on FHIR
8.1.3 Security Access Markup Language (SAML)
8.2.0 Authorization and Consent
8.2.1 Authorization Service
8.2.2 Consent Service
8.3.0 Inbound Security Module
8.3.1 Permissions
8.3.2 Callback Script
8.4.0 Local Inbound Security Module
8.4.1 Configuration: Credentials
8.4.2 Caching
8.5.0 LDAP Inbound Security Module
8.5.1 Requirements
8.5.2 Permissions
8.5.3 Callback Scripts
8.5.4 Configuration
8.6.0 Scripted Inbound Security Module
8.6.1 Script Format
8.6.2 Script Examples
8.7.0 SAML Inbound Security Module
8.7.1 SAML 2.0 Authentication Request Protocol
8.7.2 Enabling SAML Authentication
8.7.3 Entity ID Template
8.7.4 Authentication Scripts
8.7.5 Function: authenticate(theRequest, theOutcomeFactory)
8.8.0 Trusted Client Mode
8.8.1 Configuring Trusted Client Mode
8.8.2 Making Trusted Client Requests
8.8.3 Automatically Creating Users
8.9.0 Roles and Permissions
8.9.1 System-Defined Roles
8.9.2 System-Defined Permissions
8.10.0 Callback Scripts
8.10.1 Method: onAuthenticateSuccess
8.11.0 SMART on FHIR: Introduction
8.11.1 The SMART Launch Sequence
8.11.2 The Interactive Launch Process
8.12.0 SMART: Scopes
8.12.1 Picking Scopes
8.12.2 Launch Context Scopes
8.12.3 The OpenID and Profile Scopes
8.13.0 SMART: Auth Flows
8.13.1 Launch Flow: Authorization Code
8.13.2 Launch Flow: Implicit Grant
8.13.3 Launch Flow: Resource Owner Password Credentials
8.13.4 Non-Interactive User Flow: Cross-Organization Data Access Profile
8.13.5 System Flow: Client Credentials
8.13.6 System Flow: Refresh
8.14.0 SMART: Endpoints
8.14.1 Server Metadata Endpoint
8.14.2 UserInfo Endpoint
8.15.0 SMART: Smile CDR Support
8.15.1 Supported Scopes
8.15.2 Online / Offline Access
8.16.0 SMART Outbound Security Module
8.16.1 Setting Up This Module
8.16.2 Configuring Clients
8.16.3 Client Secrets
8.16.4 SMART Callback Script
8.16.5 Client Credentials Grant
8.16.6 Cross-Organization Data Access Profile Grant
8.16.7 Skinning the Server
8.17.0 SMART: Federated OAuth2/OIDC Login
8.17.1 Federated Flow
8.17.2 Considerations
8.17.3 Setting Up Federated OAuth2/OIDC Login
8.17.4 Authorization Script
8.18.0 SMART: Application Approval/Consent
8.18.1 Auto-Approve / Auto-Grant Scopes
8.18.2 Approval Flow
8.18.3 Customizing Scope Names
8.18.4 Custom Security Scopes
8.19.0 SMART Inbound Security Module
8.19.1 Architecture
8.19.2 Models for Using External OIDC Servers
8.19.3 Requirements
8.19.4 Setting Up This Module
8.19.5 Accepting Tokens
8.19.6 Accepting Internal Access Tokens
8.19.7 Accepting External Access Tokens
8.19.8 Creating a Server Definition
8.20.0 SMART: Session Management
8.20.1 Token Revocation Endpoint
8.20.2 User Logout Endpoint
8.21.0 SMART: Assigning Permissions
8.21.1 Scope Permission Model
8.21.2 User and Patient Resource Linkage
8.22.0 Anonymous Access
8.23.0 Consent Service
8.23.1 Enabling the Consent Service
8.23.2 Method: consentStartOperation
8.23.3 Method: consentCanSeeResource
8.23.4 Method: consentWillSeeResource
8.23.5 Method: completeOperationSuccess
8.23.6 Method: completeOperationFailure
8.23.7 Example: Tag-Based Consent Script
8.23.8 Example: Scope-Based Consent Script
8.24.0 Security Recipes
8.24.1 App: Local Users with HTTP Basic Authentication
8.24.2 Integrating SMART Apps With a 3rd-Party OIDC Server
8.25.0 Two Factor Authentication
8.25.1 User Activating TOTP
8.25.2 Enforcing Two Factor Authentication
8.26.0 Troubleshooting Security
9.0.0 FHIR Hybrid Providers
9.0.0 Hybrid Providers
9.0.1 Architecture
9.0.2 Resource Providers
9.0.3 The Spring Context Config Class
9.0.4 Building Your Hybrid Providers
9.0.5 Deploying Your Hybrid Providers
9.0.6 Accessing Security Attributes
9.0.7 Exceptions
9.0.8 Example Project
10.0.0 FHIR Gateway
10.0.0 FHIR Gateway
10.0.1 Gateway Architecture
10.0.2 Creating a FHIR Gateway Endpoint
10.0.3 Invoking Operations
10.0.4 Request/Response Translation
11.0.0 Master Data Management
11.0.0 EMPI
11.0.1 Enabling and Configuring EMPI
11.0.2 Troubleshooting
11.0.3 EMPI User Interface
12.0.0 Clustering
12.0.0 Designing a Cluster
12.0.1 Node and Module Design
12.0.2 Process IDs
12.0.3 Adding and Removing Processes
12.0.4 Multi-Node Clusters
12.0.5 Sample Architecture
12.1.0 Migration To 2020.02
12.1.1 Migrating Existing Clusters
13.0.0 Logging
13.0.0 Overview
13.1.0 Audit Log
13.2.0 Transaction Log
13.2.1 Transaction Log Configuration
13.2.2 Event Types and SubTypes
13.3.0 System Logging
13.3.1 Changing Logging Settings
13.4.0 Troubleshooting Logs
13.4.1 HTTP Troubleshooting Log
13.4.2 Security Troubleshooting Log
13.4.3 Subscription Troubleshooting Log
13.4.4 LiveBundle Troubleshooting Log
13.4.5 EMPI Troubleshooting Log
14.0.0 HL7 v2.x Support
14.0.0 Introduction
14.0.1 Inbound HL7 v2.x Support
14.0.2 Outbound HL7 v2.x Support
14.0.3 HL7 v2.x Versions
14.1.0 Inbound Messaging
14.1.1 Processing
14.1.2 Callback Scripts
14.1.3 Function: onPreConvertHl7V2ToFhir(theMessage, theConversionResult)
14.1.4 Function: onPostConvertHl7V2ToFhir(theMessage, theConversionResult)
14.1.5 Adding Processing Messages
14.2.0 Outbound Messaging
14.2.1 Enriching Message Conversion using Scripts
14.2.2 Function: onPostConvertFhirToHl7V2(theTriggerResource, theOutgoingMessage, theContext)
14.2.3 Using Persisted MessageHeader Resources
14.3.0 Transactions
14.3.1 ADT (Patient Administration) Domain
14.3.2 OMG (Orders) Domain
14.3.3 ORU (Results) Domain
14.3.4 RDE/RAS (Pharmacy) Domain
14.4.0 Structure Definitions
14.4.1 Structure: ADT_A01
14.4.2 Structure: ADT_A02
14.4.3 Structure: ADT_A03
14.4.4 Structure: ADT_A05
14.4.5 Structure: ADT_A06
14.4.6 Structure: ADT_A09
14.4.7 Structure: ADT_A12
14.4.8 Structure: ADT_A17
14.4.9 Structure: ADT_A21
14.4.10 Structure: ADT_A30
14.4.11 Structure: ADT_A38
14.4.12 Structure: ADT_A39
14.4.13 Structure: ADT_A44
14.4.14 Structure: ADT_A45
14.4.15 Structure: ADT_A54
14.4.16 Structure: ADT_A60
14.4.17 Structure: ADT_A61
14.4.18 Structure: OMG_O19
14.4.19 Structure: ORU_R01
14.4.20 Structure: RAS_O17
14.4.21 Structure: RDE_O11
14.5.0 Segment Definitions
14.5.1 Segment: MSH (Message Header)
14.5.2 Segment: PID (Patient)
14.5.3 Segment: PV1 (Visit/Encounter)
14.5.4 Segment: ROL (Role)
14.5.5 Segment: DG1 (Diagnosis)
14.5.6 Segment: PR1 (Procedure)
14.5.7 Segment: MRG (Merge Patient Information)
14.5.8 Segment: GT1 (Guarantor)
14.5.9 Segment: IN1 (Insurance)
14.5.10 Segment: IN2 (Insurance Additional Information)
14.5.11 Segment: ORC (Order Control)
14.5.12 Segment: OBR (Observation Request)
14.5.13 Segment: OBX (Observation)
14.5.14 Segment: NK1 (Next of Kin / Patient Contact)
14.5.15 Segment: NTE (Note)
14.5.16 Segment: RXA (Pharmacy Administration)
14.5.17 Segment: RXC (Pharmacy Component)
14.5.18 Segment: ZXC (Pharmacy Component)
14.5.19 Segment: RXE (Pharmacy Encoded Order)
14.5.20 Segment: RXR (Pharmacy Route)
14.5.21 Segment: IAM (Patient Adverse Reaction)
14.5.22 Segment: SPM (Specimen)
14.5.23 Segment: ZXT (Non-Standard)
14.5.24 A Note about Extra Components
14.6.0 Table Definitions
14.6.1 Table 0001: Administrative Sex
14.6.2 Table 0002: Marital Status
14.6.3 Table 0004: Patient Class
14.6.4 Table 0038: Order Status
14.6.5 Table 0052: Diagnosis Type
14.6.6 Table 0063: v2 Relationship
14.6.7 Table 0074: Dianostic Service Section ID
14.6.8 Table 0078: Observation Interpretation Codes
14.6.9 Table 0085: Observation Status
14.6.10 Table 0119: Order Control
14.6.11 Table 0125: Observation Value Type
14.6.12 Table 0127: Allergen Type
14.6.13 Table 0128: Allergen Severity
14.6.14 Table 0131: v2 Contact Role
14.6.15 Table 0136: Yes/No
14.6.16 Table 0166: RX Component Type
14.6.17 Table 0190: Address Type
14.6.18 Table 0200: Name Type Code
14.6.19 Table 0201: Telecom Use
14.6.20 Table 0202: Telecom Equipment Type
14.6.21 Table 0203: Identifier Type
14.6.22 Table 0271: Result Status
14.6.23 Table 0322: Completion Status
14.6.24 Table 0438: Allergy Clinical Status Code
14.7.0 Naming System Mapping
14.7.1 Default Mappings
14.7.2 Using NamingSystem for Mapping Identifiers
14.8.0 Processing Results Feeds
14.8.1 Unsolicited Observation Request (ORU^R01)
14.9.0 Protocol
14.9.1 Encoding Format
14.9.2 ER7 (Pipe-Delimited) Format
14.9.3 Minimal Lower Layer Protocol (MLLP) Transport
14.9.4 HL7 over HTTP
14.9.5 Character Encoding / Charsets
15.0.0 CDA Exchange Module
15.0.0 Introduction
15.1.0 JavaScript Templates
15.1.1 The simplest CDA template script
15.1.2 Adding header information to our CDA template script
15.1.3 Adding and populating a section in our CDA template script
15.1.4 Using the Fhir.search() API to dynamically populate sections
15.1.5 Specifying input parameters
15.1.6 More complicated input parameters
15.1.7 Putting it all together
15.2.0 Rest API Operations
15.2.1 Endpoints for configuring templates
15.2.2 Endpoints for applying templates
15.3.0 Available Document and Section Types
15.3.1 Valid Document Types
15.3.2 Valid Resources for the header
15.3.3 Valid Section Types and Sources
15.3.4 Allergy and Intolerances Section
15.3.5 Medications Section
15.3.6 Problem Section
15.3.7 Results Section
15.3.8 Social History Section
15.3.9 Vital Signs Section
15.3.10 Dialysis Prescription Section
15.3.11 Reason for Referral Section
15.4.0 Further Reading
16.0.0 Bulk Operations
16.0.0 ETL Import Module
16.0.1 Importing CSV Data
16.0.2 Ingesting Data
16.1.0 FHIR Bulk Export Operation
16.1.1 Enabling Bulk Export
16.1.2 Supported Requests
16.1.3 Requesting A Bulk Extract
16.1.4 Retrieving Data
17.0.0 Monitoring
17.0.0 Monitoring Basics
17.0.1 HTTP Endpoint Health Check
17.0.2 Runtime Health Checks
17.1.0 Elastic APM Basics
17.1.1 What is APM?
17.1.2 Setting Up an APM Server
17.1.3 Instrumenting Smile CDR and the JVM
17.1.4 Accessing the User Interface
17.1.5 Configuring Settings for the Agent
17.1.6 Securing the Agent
18.0.0 JSON Admin Endpoints
18.0.0 JSON Admin API
18.0.1 Security
18.0.2 Format
18.0.3 Allowing Anonymous Access
18.1.0 Audit Log Endpoint
18.1.1 Fetch Audit Log
18.1.2 Fetch Individual Event
18.2.0 Bulk Import Endpoint
18.2.1 Process ETL File
18.2.2 Smileutil: CSV Bulk Import File
18.3.0 CDA Exchange Endpoint
18.3.1 Create CDA Template
18.3.2 Update CDA Template
18.3.3 Update CDA Template script via text
18.3.4 View CDA Template(s)
18.3.5 Delete CDA template
18.3.6 Use / Apply CDA Template
18.3.7 Create CDA from Composition/Bundle
18.3.8 Example CDA Template
18.4.0 Metrics Endpoint
18.4.1 Fetch Local Metrics
18.4.2 Capture Thread Dump
18.5.0 Module Config Endpoint
18.5.1 Fetch Config: Module Property File
18.5.2 Fetch Config: All Modules
18.5.3 Fetch Config: Single Module
18.5.4 Create Module
18.5.5 Set Module Config
18.5.6 Start Module
18.5.7 Stop Module
18.5.8 Restart Module
18.5.9 Archive Module
18.6.0 OpenID Connect Clients Endpoint
18.6.1 Fetch All OpenID Connect Client Definitions
18.6.2 Fetch Individual Client by Client ID
18.6.3 Create Client
18.6.4 Update Client
18.7.0 OpenID Connect Servers Endpoint
18.7.1 Fetch All OpenID Connect Server Definitions
18.7.2 Find OpenID Connect Server Definition
18.7.3 Create OpenID Connect Server Definition
18.7.4 Update OpenID Connect Server Definition
18.8.0 Runtime Status Endpoint
18.8.1 Fetch Complete Node Status Information
18.8.2 Fetch All Runtime Health Checks
18.9.0 Transaction Log Endpoint
18.9.1 Fetch Transaction Log
18.9.2 Fetch Individual Event
18.10.0 User Management Endpoint
18.10.1 Search for Users (All Modules)
18.10.2 Search for Users (Specific Module)
18.10.3 Create User
18.10.4 Update User
18.10.5 Update Password
18.10.6 Update Own Password
18.10.7 2FA: Create New Key
18.10.8 2FA: Generate QR Code
18.10.9 2FA: Confirm Key
18.10.10 2FA: Delete Key
18.10.11 Invalidate All Sessions
19.0.0 Product Configuration
19.0.0 HTTP Server Setup
19.0.1 Respecting Forward Headers
19.0.2 Specifying a Custom Context Path
19.0.3 Access Logs
19.0.4 Frame Options
19.1.0 TLS and HTTPS Reference
19.1.1 Background
19.1.2 Creating a Self-Signed KeyStore
19.1.3 Importing a LetsEncrypt Certificate into a KeyStore
19.1.4 Selecting Ciphers and Protocol
19.1.5 Enabling TLS Mutual Authentication (Client Auth)
20.0.0 Java Execution Environment
20.0.0 Security Attributes
21.0.0 JavaScript Execution Environment
21.0.0 Introduction
21.1.0 Converter API
21.1.1 Method: hl7v2TsToFhirDate(dt);
21.1.2 Method: hl7v2TsToFhirDateTime(ts);
21.1.3 Method: hl7v2TsToFhirDateTime(ts, impliedTimeZone);
21.1.4 Method: urlDecode(string);
21.1.5 Method: urlEncode(string);
21.2.0 Environment API
21.3.0 Exceptions API
21.3.1 Method: Exceptions.newTrustedException(theMessage)
21.3.2 Method: Exceptions.newTrustedException(theStatusCode, theMessage)
21.4.0 FHIR REST API
21.4.1 Method: create(resource)
21.4.2 Method: read(url)
21.4.3 Method: search().forResource(resourceType)
21.4.4 Method: transaction(IBundleBuilder theTransaction)
21.4.5 Method: translate()
21.4.6 Method: update(resource)
21.4.7 Authentication
21.5.0 FHIR Model API
21.5.1 Method: ResourceBuilder.build(resourceType)
21.5.2 Working with Resources
21.5.3 Working with Composition resources
21.5.4 Working with Bundle resources
21.5.5 Contained Resources
21.5.6 Meta Elements
21.5.7 Removing Data
21.6.0 HL7 v2.x Mapping API
21.6.1 Repetitions
21.6.2 Structure Interrogation
21.6.3 Content Clearing
21.6.4 Content Interrogation
21.6.5 Parsing Raw Field Values
21.6.6 Encoding
21.6.7 The Hl7V2 Object
21.6.8 Working with Variable Datatypes
21.6.9 Working with Z-Segments
21.7.0 HTTP API
21.7.1 Request Creation Methods
21.7.2 Request Execution Methods
21.7.3 Response Processing Methods
21.7.4 TLS / HTTPS
21.8.0 LDAP API
21.8.1 Method: searchByUsername(username)
21.8.2 Method: getStringAttributes(attributeName)
21.8.3 Method: isMemberOfGroup(groupDn)
21.9.0 Log API
21.9.1 Methods: debug(string), info(string), warn(string), error(string)
21.10.0 Composition Resource API
21.10.1 Method: set*(value)
21.10.2 Method: setDate(epoch)
21.10.3 Method: setType(documentType)
21.10.4 Method: addSection(sectionType)
21.11.0 Composition Section API
21.11.1 Method: populate(List resources)
21.11.2 Method: setTitle(title)
21.11.3 Method: setCode(system, code, display)
21.12.0 TransactionBuilder API
21.12.1 Method: newTransactionBuilder()
21.12.2 Method: create(resource)
21.12.3 Method Chain: createConditional(resource).onToken(parameter, system, value)
21.12.4 Method Chain: updateConditional(resource).onToken(parameter, system, value)
21.12.5 Methods: toXml(), toXml(prettyPrint), toJson(), toJson(prettyPrint)
21.12.6 Fhir.transaction(transaction)
21.13.0 Util API
21.13.1 Method: sleep(millis)
21.14.0 UUID API
21.14.1 Method: newPlaceholderId()
21.15.0 XML API
21.15.1 XPath Expressions
21.15.2 Function: getXPathValue(xpath)
21.15.3 Function: getXPathValues(xpath)
21.15.4 Function: getXPathElements(xpath)
21.16.0 Callback Models
21.16.1 AssociatedResource
21.16.2 AuthenticationContext
21.16.3 AuthenticationFailure
21.16.4 AuthenticationRequest
21.16.5 GrantedAuthority
21.16.6 Hl7V2GeneratedMessageContext
21.16.7 Hl7V2ReceivedMessageConversionResult
21.16.8 Hl7V2ReceivedMessage
21.16.9 LaunchContext
21.16.10 LaunchResourceId
21.16.11 OAuth2Client
21.16.12 OAuth2ClientSecret
21.16.13 OAuth2Clients
21.16.14 OAuth2Server
21.16.15 OAuth2Servers
21.16.16 Oauth2InvalidateTokensResponseJson
21.16.17 PackageInstallationSpec
21.16.18 PartitionDefinition
21.16.19 PartitionDefinitions
21.16.20 RequestDetailsJson
21.16.21 ScriptAuthenticationOutcomeFactory
21.16.22 ScriptConsentContextServices
21.16.23 SecurityInLdapAuthenticationContext
21.16.24 SecurityInSmartAuthenticationContext
21.16.25 SmartCodapAuthorizationRequest
21.16.26 SmartOnPostAuthorizeDetails
21.16.27 UserDetails
21.16.28 UserDetailsList
21.16.29 UserSessionDetails
22.0.0 Database Administration
22.0.0 Database Design
22.0.1 Cluster Manager Database
22.0.2 FHIR Relational Storage
22.0.3 FHIR MongoDB (Non-Relational) Storage
22.1.0 Setting Up PostgreSQL
22.1.1 Supported Versions
22.1.2 Setting up a Cluster Manager Database
22.1.3 Setting up a FHIR Storage (Relational) Database
22.2.0 Troubleshooting PostgreSQL
22.2.1 Host Name Verification Error
22.3.0 Setting Up MySQL
22.3.1 Supported Versions
22.3.2 Setting up a Cluster Manager Database
22.3.3 Setting up a FHIR Storage (Relational) Database
22.4.0 Setting Up MariaDB
22.4.1 Supported Versions
22.4.2 Setting up a Cluster Manager Database
22.4.3 Setting up a FHIR Storage (Relational) Database
22.5.0 Setting Up Oracle
22.5.1 Supported Versions
22.5.2 Setting up a Cluster Manager Database
22.5.3 Setting up a FHIR Storage (Relational) Database
22.6.0 Setting Up SQL Server (MSSQL)
22.6.1 Supported Versions
22.6.2 Setting up a Cluster Manager Database
22.6.3 Setting up a FHIR Storage (Relational) Database
23.0.0 Smile CDR CLI (smileutil)
23.0.0 Introduction
23.0.1 Enabling Debug Logging
23.1.0 Execute Script Function
23.1.1 Usage
23.1.2 Options
23.1.3 A Complete Example: Authenticate
23.1.4 Available Functions
23.1.5 Function: authenticate
23.2.0 Create FHIR Package
23.2.1 Usage
23.2.2 Options
23.3.0 Export ConceptMap to CSV
23.3.1 Usage
23.3.2 Options
23.4.0 HL7 v2.x Analyze Flat File
23.4.1 Usage
23.4.2 Options
23.5.0 HL7 v2.x Transmit Flat File
23.5.1 Usage
23.5.2 Options
23.5.3 Multiplex Paths
23.6.0 Import CSV to ConceptMap
23.6.1 Usage
23.6.2 Options
23.7.0 Migrate Database
23.7.1 Options
23.7.2 Examples
23.7.3 Disabling Flyway
23.7.4 Troubleshooting
23.8.0 Synchronize FHIR Servers
23.8.1 Usage
23.8.2 Options
23.8.3 Selecting Resources to Synchronize
23.8.4 Using a Search as the Source
23.8.5 Using a Directory as the Source
23.8.6 Prefixing Numeric IDs
23.8.7 Synchronization Modes
23.8.8 Uploading Synthea (Synthetic Generated) Resources
23.8.9 Setting up a Resource Gold Master
23.9.0 Upload Bundle Files
23.9.1 Usage
23.9.2 Options
23.10.0 Upload CSV Bulk Import File
23.10.1 Usage
23.10.2 Options
23.10.3 Sending Batches for a Single File
23.11.0 Upload Sample Dataset
23.11.1 Usage
23.11.2 Options
23.12.0 Upload Terminology
23.12.1 Usage
23.12.2 Options
23.12.3 Example: Add Delta to Custom Terminology
23.13.0 Validate FHIR Resources
23.13.1 Usage
23.13.2 Options
23.13.3 Profile Mode
23.13.4 Schema and Schematron Mode
24.0.0 Modules
24.0.0 CDA Exchange
24.0.1 Configuration Categories
24.1.0 Cluster Manager
24.1.1 Configuration Categories
24.2.0 ETL Importer
24.2.1 Configuration Categories
24.3.0 FHIR REST Endpoint (DSTU2)
24.3.1 Configuration Categories
24.4.0 FHIR REST Endpoint (R3)
24.4.1 Configuration Categories
24.5.0 FHIR Storage (DSTU2 Relational)
24.5.1 Configuration Categories
24.6.0 FHIR Storage (R3 Relational)
24.6.1 Configuration Categories
24.7.0 Subscription Matcher (R3)
24.7.1 Configuration Categories
24.8.0 Subscription Matcher (R4)
24.8.1 Configuration Categories
24.9.0 FHIRWeb Console
24.9.1 Configuration Categories
24.10.0 HL7 v2.x Listening Endpoint
24.10.1 Configuration Categories
24.11.0 HL7 v2.x Sending Endpoint
24.11.1 Configuration Categories
24.12.0 JSON Admin API
24.12.1 Configuration Categories
24.13.0 LDAP Inbound Security
24.13.1 Configuration Categories
24.14.0 Local Inbound Security
24.14.1 Configuration Categories
24.15.0 Scripted Inbound Security
24.15.1 Configuration Categories
24.16.0 SMART App Host
24.16.1 Configuration Categories
24.17.0 SMART Inbound Security
24.17.1 Configuration Categories
24.18.0 SMART Outbound Security
24.18.1 Configuration Categories
24.19.0 Web Admin Console
24.19.1 Configuration Categories
25.0.0 Configuration Categories
25.0.0 Web Admin Console Settings
25.0.1 Property: Transaction Log - Event Body Display Mode
25.1.0 Authentication Callback Scripts
25.1.1 Property: Authentication Callback Script (Text)
25.1.2 Property: Authentication Callback Script (File)
25.2.0 Auth: General for APIs
25.2.1 Property: Allow Anonymous Access
25.2.2 Property: Anonymous Account Username
25.3.0 User Authentication
25.3.1 Property: Allow Anonymous Access
25.3.2 Property: Anonymous Account Username
25.3.3 Property: SAML Authentication Enabled
25.4.0 Auth: HTTP Basic
25.4.1 Property: HTTP Basic Security
25.4.2 Property: HTTP Basic Realm
25.5.0 Auth: OpenID Connect
25.5.1 Property: OpenID Connect Security
25.6.0 Browser Syntax Highlighting
25.6.1 Property: Browser Syntax Highlighting Enabled
25.6.2 Property: Show Request Headers
25.6.3 Property: Show Response Headers
25.7.0 Capability Statement (metadata)
25.7.1 Property: Include Resource Counts
25.7.2 Property: Cache Resource Counts (Mins)
25.8.0 Cluster Manager Subscription Messaging
25.9.0 Cluster Manager Maintenance
25.9.1 Property: Heartbeat Persist Frequency MS
25.9.2 Property: Stats Persist Frequency MS
25.9.3 Property: Stats Cleanup Frequency MS
25.9.4 Property: Scheduler Thread Count
25.9.5 Property: Audit Log Database Enabled
25.9.6 Property: Audit Log Broker Enabled
25.9.7 Property: Transaction Log Retention (Days)
25.9.8 Property: Stats Retention (Days) - Minute Level
25.9.9 Property: Stats Retention (Days) - Hour Level
25.9.10 Property: Stats Retention (Days) - Day Level
25.10.0 Cluster Manager Message Broker
25.10.1 Property: Message Broker Type
25.10.2 Property: Message Broker Username
25.10.3 Property: Message Broker Password
25.10.4 Property: Message Broker Address
25.10.5 Property: Channel Naming Prefix
25.11.0 Cluster Manager Kafka
25.11.1 Property: Kafka Bootstrap Address
25.11.2 Property: Kafka Subscription Matcher Consumer Group Id
25.11.3 Property: Validate Kafka Topics Exist Before Use
25.11.4 Property: Kafka Consumer Auto Commit Enabled
25.11.5 Property: Kafka Consumer Ack Mode
25.11.6 Property: Kafka Broker SSL Enabled
25.11.7 Property: Kafka SSL TrustStore File Location
25.11.8 Property: Kafka SSL Truststore Password
25.11.9 Property: Kafka SSL Keystore Location
25.11.10 Property: Kafka Keystore Password
25.11.11 Property: Kafka SSL Key Password
25.11.12 Property: Kafka Security Protocol
25.11.13 Property: Kafka SASL Mechanism
25.11.14 Property: Kafka SASL JAAS Config
25.12.0 Credentials
25.12.1 Property: Password Encoding Scheme
25.12.2 Property: Cache Successful Credentials
25.12.3 Property: Case-Sensitive Usernames
25.12.4 Property: Case-Sensitive Passwords
25.12.5 Property: Create Unknown Users
25.12.6 Property: Minimum Password Requirements
25.12.7 Property: Password Mismatch Error
25.13.0 Cross-Origin Resource Sharing (CORS)
25.13.1 Property: CORS Enabled
25.13.2 Property: CORS Origins
25.14.0 Database
25.14.1 Property: Database Type
25.14.2 Property: Database Connection URL
25.14.3 Property: Database Username
25.14.4 Property: Database Password
25.14.5 Property: Database Update Mode
25.14.6 Property: Min Idle Connections
25.14.7 Property: Max Idle Connections
25.14.8 Property: Max Total Connections
25.14.9 Property: Connection Max Lifetime (millis)
25.14.10 Property: Max Wait (Seconds)
25.14.11 Property: Default Query Timeout (Seconds)
25.14.12 Property: Pool Prepared Statements
25.14.13 Property: SQL Parameter Bind Mode
25.15.0 ETL Import: CSV Properties
25.15.1 Property: CSV File Delimiter
25.15.2 Property: Parse Quotes
25.16.0 ETL Import: Source
25.16.1 Property: Import Source
25.16.2 Property: Mapping Script
25.16.3 Property: Worker Thread Count
25.16.4 Property: Worker Row Hashing Function
25.17.0 FHIR Binary Storage
25.17.1 Property: Binary Access Operations Enabled
25.17.2 Property: Binary Storage Mode
25.17.3 Property: Minimum Size (bytes)
25.17.4 Property: Maximum Size (bytes)
25.17.5 Property: Filesystem Mode: Base Directory
25.18.0 FHIR Bulk Operations
25.18.1 Property: FHIR Bulk Export Enabled
25.19.0 FHIR Configuration
25.19.1 Property: Allow Multiple Delete Enabled
25.19.2 Property: Cascading Deletes Enabled
25.19.3 Property: Allow Inline Match URL References Enabled
25.19.4 Property: Allow External References Enabled
25.19.5 Property: Enforce Referential Integrity on Write
25.19.6 Property: Enforce Referential Integrity on Delete
25.19.7 Property: Disable Deletion Ref Checks for Paths
25.19.8 Property: Auto-Create Placeholder Reference Targets
25.19.9 Property: Mark Resources for Reindexing after SearchParameter change
25.19.10 Property: Server ID Mode
25.19.11 Property: Client ID Mode
25.19.12 Property: Enforce Reference Target Types
25.19.13 Property: Expunge Operation Enabled
25.19.14 Property: Allow storing all bundle types
25.19.15 Property: Store Meta.source information
25.19.16 Property: Delete Child Resource Count
25.19.17 Property: Seed Base Validation Resources
25.20.0 FHIR Consent Service
25.20.1 Property: Consent Service Enabled
25.20.2 Property: Consent Service Script (Text)
25.20.3 Property: Consent Service Script (File)
25.21.0 FHIR LiveBundle Service
25.21.1 Property: LiveBundle Enabled
25.21.2 Property: LiveBundle Watchlist Cache Enabled
25.21.3 Property: LiveBundle Thread Count
25.21.4 Property: LiveBundle Rule Definition Script (Text)
25.21.5 Property: LiveBundle Rule Definition Script (File)
25.22.0 FHIR EMPI Server
25.22.1 Property: EMPI Mode Enabled (Experimental)
25.23.0 FHIR Endpoint Conversion
25.23.1 Property: Versioned API Mode
25.24.0 FHIR Endpoint Security
25.24.1 Property: Automatically Narrow Search Scope
25.25.0 Interceptors
25.25.1 Property: Interceptor Bean Types
25.25.2 Property: Can Replace Authorization Interceptor
25.26.0 FHIR Endpoint Partitioning and Multitenancy
25.26.1 Property: Tenant Identification Strategy
25.27.0 FHIR Gateway Target
25.27.1 Property: FHIR Version
25.27.2 Property: Target Base URL
25.27.3 Property: Basic Auth Enabled
25.27.4 Property: Basic Auth Credentials
25.27.5 Property: Passthrough Headers
25.27.6 Property: Target Client: Connect Timeout (secs)
25.27.7 Property: Target Client: Socket Timeout (secs)
25.27.8 Property: Target Client: TLS TrustStore File
25.27.9 Property: Target Client: TLS TrustStore Password
25.28.0 FHIR Gateway Cache
25.29.0 FHIR Storage Partitioning and Multitenancy
25.29.1 Property: Partitioning Enabled
25.29.2 Property: Partition Selection Mode
25.29.3 Property: Partition Seed File
25.29.4 Property: Cross-Partition Reference Mode
25.30.0 Package Registry
25.30.1 Property: Package Pre-Seed Installation Spec Files
25.31.0 FHIR Performance
25.31.1 Property: Reuse Cached Results Timeout (Millis)
25.31.2 Property: Expire Search Results After Minutes
25.31.3 Property: Index Missing Search Params
25.31.4 Property: Default Total Calculation Mode
25.31.5 Property: Suppress Scheduled Maintenance Jobs
25.31.6 Property: Reindex Thread Count
25.31.7 Property: Expunge Batch Size
25.31.8 Property: Expunge Thread Count
25.31.9 Property: Delete Enabled
25.32.0 FHIR Performance Tracing
25.32.1 Property: Performance Tracing Enabled
25.32.2 Property: Output to Transaction Log
25.32.3 Property: Output to System Log
25.32.4 Property: Output to Response Headers
25.32.5 Property: Capture Raw SQL
25.32.6 Property: Trigger
25.33.0 FHIR Resource Types
25.33.1 Property: Resource Types (whitelist)
25.34.0 FHIR REST Endpoint
25.34.1 Property: Fixed Value for Endpoint Base URL
25.34.2 Property: Pretty-Print by Default
25.34.3 Property: Default Encoding
25.34.4 Property: Default Prefer Return
25.34.5 Property: Serve Raw Media Resources
25.34.6 Property: Process Header: Request Source
25.35.0 FHIR Search
25.35.1 Property: Fetch Size (Default Maximum)
25.35.2 Property: Page Size (Default)
25.35.3 Property: Page Size (Maximum)
25.35.4 Property: Allow :contains Searches
25.35.5 Property: GraphQL Enabled
25.35.6 Property: Filter Search Parameter Enabled
25.35.7 Property: Search Cache Storage
25.35.8 Property: Infinispan Servers
25.35.9 Property: Infinispan Cache Name
25.35.10 Property: Infinispan Hot Rod Protocol Version
25.35.11 Property: Use ordinal date values for day precision searches.
25.35.12 Property: Suppress String Indexing In Tokens
25.35.13 Property: Phonetic Encoder
25.36.0 FHIR Interceptors
25.36.1 Property: Interceptor Bean Types
25.36.2 Property: FHIR storage Callback Script (Text)
25.36.3 Property: FHIR storage Callback Script (File)
25.37.0 FHIR Subscription Persistence
25.37.1 Property: Matching Queue Consumers
25.37.2 Property: Consumers Per Delivery Queue
25.37.3 Property: REST Hook Subscription Enabled
25.37.4 Property: Email Subscription Enabled
25.37.5 Property: Websocket Subscription Enabled
25.37.6 Property: Message Subscription Enabled
25.38.0 FHIR Subscription Delivery
25.38.1 Property: Subscription Delivery Queue Naming
25.38.2 Property: Email From Address
25.38.3 Property: Email SMTP Hostname
25.38.4 Property: Email SMTP Port
25.38.5 Property: Email SMTP Username
25.38.6 Property: Email SMTP Password
25.39.0 FHIR Validation Services
25.39.1 Property: Local Reference Policy
25.39.2 Property: Remote Terminology Service - Enabled
25.39.3 Property: Base URL
25.39.4 Property: Log HTTP Calls
25.40.0 HL7 v2.x to FHIR Mapper - Forced Namespace Mode
25.40.1 Property: Forced Namespace Mode: Patient System
25.40.2 Property: Forced Namespace Mode: Encounter System
25.41.0 HL7 v2.x to FHIR Mapper - General
25.41.1 Property: Inferred TimeZone When Not Present
25.41.2 Property: Creation Mode - Practitioner
25.41.3 Property: Create MessageHeader for Each Message
25.41.4 Property: Patient Primary Identifier Search Parameter
25.41.5 Property: Mapper Bean Types
25.42.0 HL7 v2.x Mapper - Medications
25.42.1 Property: Use Standalone Medications with Administered Code
25.42.2 Property: Use Standalone Medications with Component Code
25.42.3 Property: Use Standalone Medications with Give Code
25.43.0 HL7 v2.x to FHIR Mapper - OBR
25.43.1 Property: Observation Identification Mode
25.43.2 Property: Use OBR-2 as Primary Identifier
25.43.3 Property: Use OBR-3 as Primary Identifier
25.44.0 HL7 v2.x to FHIR Mapper - OBSERVATION Group
25.44.1 Property: OBSERVATION Group Text Delimiter - OBX
25.44.2 Property: OBSERVATION Group Text Delimiter - NTE
25.45.0 HL7 v2.x to FHIR Mapper - ORDER_OBSERVATION Group
25.45.1 Property: ORDER_OBSERVATION Group Text Delimiter - NTE
25.46.0 HL7 v2.x to FHIR Mapper - PV1
25.46.1 Property: Treat PV1-3 and PV1-6 Patient Locations as Single Atomic Locations
25.47.0 HL7 v2.x Listener Script
25.47.1 Property: Listener Processing Script (Text)
25.47.2 Property: Listener Processing Script (File)
25.48.0 HL7 v2.x MLLP Listener
25.48.1 Property: HL7 v2.x Listener Port
25.48.2 Property: Charset: Respect MSH-18
25.48.3 Property: Charset: Forced
25.48.4 Property: Unprocessable Message Handling
25.48.5 Property: Transport Protocol
25.48.6 Property: Socket Timeout (Millis)
25.49.0 FHIR to HL7 v2.x Mapper Script
25.49.1 Property: HL7 v2.x Conversion Mapper Script (Text)
25.49.2 Property: HL7 v2.x Conversion Mapper Script (File)
25.50.0 HL7 v2.x MLLP Sender
25.50.1 Property: Transport Protocol
25.50.2 Property: HL7 v2.x Destination Host
25.50.3 Property: HL7 v2.x Destination Port
25.50.4 Property: Request Path
25.50.5 Property: Send Timeout (millis)
25.50.6 Property: Map Identifiers using NamingSystem
25.50.7 Property: Use Persisted Message Headers
25.50.8 Property: Retry message on NAK
25.50.9 Property: Delay Between Failed Deliveries (millis)
25.51.0 HTTP Access Log
25.51.1 Property: Appenders
25.52.0 HTTP Listener
25.52.1 Property: Listener Port
25.52.2 Property: Bind Address
25.52.3 Property: Context Path
25.52.4 Property: Endpoint Health Path
25.52.5 Property: Respect Forward Headers
25.52.6 Property: HTTPS Forwarding Assumed
25.53.0 HTTP Request Pool
25.53.1 Property: Thread Pool Minimum Size
25.53.2 Property: Thread Pool Maximum Size
25.53.3 Property: Thread Pool Accept Queue Size
25.53.4 Property: Maximum Request Header Size (KB)
25.53.5 Property: Maximum Response Header Size (KB)
25.53.6 Property: Read Idle Timeout (millis)
25.54.0 HTTP Security
25.54.1 Property: Pin Host
25.54.2 Property: Suppress Platform Information
25.54.3 Property: Suppress Error Details
25.54.4 Property: Block HTTP HEAD
25.54.5 Property: Block HTTP OPTIONS
25.54.6 Property: Frame Options (Allow From)
25.55.0 Hybrid Providers Definitions
25.55.1 Property: Spring Context Config Class
25.55.2 Property: FHIR Version
25.56.0 Initial User Seeding
25.56.1 Property: Users Seed File
25.57.0 JSON Web KeySet (JWKS)
25.57.1 Property: Signing JWKS (File)
25.57.2 Property: Signing JWKS (Text)
25.57.3 Property: Signing Key ID
25.58.0 LDAP Authentication
25.58.1 Property: LDAP Server URL
25.58.2 Property: System User DN
25.58.3 Property: System User Password
25.58.4 Property: Native Permission User Attribute
25.58.5 Property: User Attribute: Given Name
25.58.6 Property: User Attribute: Family Name
25.58.7 Property: Global Permissions
25.58.8 Property: Base DN for Groups
25.58.9 Property: Search Groups Recursively
25.58.10 Property: Authentication: User Base DN
25.58.11 Property: Authentication: User Query
25.58.12 Property: Require Group DN
25.59.0 Lucene FullText Indexing
25.59.1 Property: Lucene Indexing Enabled
25.59.2 Property: Lucene Indexing Provider
25.59.3 Property: Enable Terminology Index
25.59.4 Property: Enable FullText Content Index
25.59.5 Property: Lucene Index Directory
25.59.6 Property: FullText Index Delay (Secs)
25.59.7 Property: FullText Indexing Pass Size
25.59.8 Property: ElasticSearch URL
25.59.9 Property: ElasticSearch Username
25.59.10 Property: ElasticSearch Password
25.60.0 Narrative Generator
25.61.0 OpenID Connect (OIC)
25.61.1 Property: Client Secret Encoding
25.61.2 Property: Issuer URL
25.61.3 Property: Cache Authorizations (millis)
25.61.4 Property: Rotate Refresh Token After Use
25.62.0 Request Validating
25.62.1 Property: Request Validating Enabled
25.62.2 Property: Fail On Severity
25.62.3 Property: Validation Tags Enabled
25.62.4 Property: Validation Response Headers Enabled
25.63.0 Security Inbound Script
25.63.1 Property: Script (Text)
25.63.2 Property: Script (File)
25.64.0 Inbound SMART on FHIR Authentication
25.64.1 Property: Trust Intra-Cluster SMART Tokens from Module(s)
25.64.2 Property: Authentication Cache Timeout (Seconds)
25.64.3 Property: Prevent Token KeyID Reuse
25.64.4 Property: Require Key Expiry
25.65.0 Inbound SMART on FHIR Endpoints
25.65.1 Property: Token Endpoint
25.65.2 Property: Authorization Endpoint
25.66.0 OpenID Connect Token Validation
25.66.1 Property: Token Introspection Client: Truststore File
25.66.2 Property: Token Introspection Client: Truststore Password
25.67.0 SAML Provider
25.67.1 Property: Registration ID
25.67.2 Property: Issuer ID
25.67.3 Property: Web SSO URL
25.67.4 Property: Keystore File
25.67.5 Property: Keystore Password
25.67.6 Property: Verification Certificate Alias
25.67.7 Property: Sign Auth Request
25.67.8 Property: Signing Key Alias
25.67.9 Property: Signing Key Password
25.67.10 Property: Relying Party Entity ID Template
25.68.0 OAuth2/OIDC Federation
25.68.1 Property: Federated OAuth2/OIDC Login
25.69.0 SMART Authorization
25.69.1 Property: Enforce Approved Scopes to Restrict Permissions
25.70.0 SMART Definitions Seeding
25.70.1 Property: OpenID Connect Server Pre-Seed File
25.70.2 Property: OpenID Connect Client Pre-Seed File
25.71.0 Sessions
25.71.1 Property: Use In-Memory Sessions
25.71.2 Property: Session Timeout (Mins)
25.71.3 Property: Session Scavenger Interval (Millis)
25.72.0 SMART Outbound Security: Callback Script
25.72.1 Property: Post Authorization Script (Text)
25.72.2 Property: Post Authorization Script (File)
25.73.0 SMART Outbound Security: CODAP
25.73.1 Property: Enable Cross-Organization Data Access Profile
25.73.2 Property: CODAP Authorization Script (Text)
25.73.3 Property: CODAP Authorization Script (File)
25.74.0 SMART Outbound Security: Login Skin
25.74.1 Property: WebJar ID
25.74.2 Property: Login Page Template
25.74.3 Property: Login Page (Federated OAuth2/OIDC) Template
25.74.4 Property: Approval Page Template
25.74.5 Property: Error Page Template
25.74.6 Property: Two Factor Authentication Page Template
25.75.0 Two Factor Authentication
25.75.1 Property: TOTP Issuer Name
25.75.2 Property: Lock After Failed Attempts
25.76.0 TLS / SSL (Encryption)
25.76.1 Property: TLS KeyStore Filename
25.76.2 Property: TLS KeyStore Password
25.76.3 Property: TLS KeyStore Key Alias
25.76.4 Property: TLS KeyStore Key Password
25.76.5 Property: TLS Enabled
25.76.6 Property: TLS Client Authentication
25.76.7 Property: TLS TrustStore Filename
25.76.8 Property: TLS TrustStore Password
25.76.9 Property: TLS Cipher Whitelist
25.76.10 Property: TLS Cipher Blacklist
25.76.11 Property: TLS Protocol Whitelist
25.76.12 Property: TLS Protocol Blacklist
25.77.0 Trusted Client
25.77.1 Property: Trusted Client Mode Enabled
25.77.2 Property: Assert Permissions
25.78.0 Trusted Client
25.78.1 Property: Transaction Log Enabled
25.78.2 Property: Persist Transaction Bodies (Global)
25.78.3 Property: Persist Transaction Bodies: Incoming Request
25.78.4 Property: Persist Transaction Bodies: Incoming Response
25.78.5 Property: Truncate Transaction Bodies (bytes)
25.78.6 Property: Event Whitelist
25.78.7 Property: Event Blacklist
25.79.0 Miscellaneous Categories
25.79.1 Additional Configuration
25.79.2 Dependencies
26.0.0 Product Reference
26.0.0 Enumerated Types
26.0.1 Node And Module Status
26.0.2 Transaction Log Outcomes
26.0.3 Module Types
27.0.0 Appendix
27.0.0 Preparing a Linux Host
27.0.1 Ubuntu Host with PostgreSQL / NGINX / Letsencrypt
27.0.2 Install letsencrypt and obtain Certs (optional)
27.0.3 Install nginx And Configure it to Front the Server
27.0.4 Red Hat Enterprise Linux (RHEL) or CentOS
27.1.0 Production Checklist
27.1.1 Host Server Setup
27.1.2 CDR Process Settings
27.1.3 FHIR Server Performance
27.1.4 Monitoring
27.1.5 Security
27.1.6 Message Broker
27.1.7 Cluster Design
27.2.0 Installing Smile CDR, NGINX and PostgreSQL in a Docker Stack
27.2.1 Initial Setup of Docker and Context
27.2.2 Prepare Configuration for Smile CDR Docker Service
27.2.3 Prepare Configuration for NGINX Docker Service
27.2.4 Prepare Configuration for PostgreSQL Docker Service
27.2.5 Create Docker compose file for Smile CDR Docker stack
27.2.6 Build and Launch Smile CDR Stack
27.3.0 Deploying a Kubernetes Managed Cluster
27.3.1 Overview of Smile CDR Kubernetes Deployment Process
27.3.2 Pre-requisite Steps
27.3.3 Configuring Kubernetes
27.3.4 Service Definitions
27.3.5 ConfigMap Definitions
27.3.6 Deployment Definitions
27.3.7 Deploying Smile CDR in a Kubernetes Cluster
27.3.8 Configuring Reverse Proxy and Load Balancer
27.3.9 Considerations When Deploying Smile CDR Using OpenShift
27.4.0 Password Hashing Algorithms
27.4.1 Available Algorithms
27.5.0 Resource Paths
27.6.0 JWT Signature Algorithms