1.0Table of Contents

 

Welcome to HAPI FHIR!


1.0.0 Welcome to HAPI FHIR
1.0.0 Table of Contents
1.1.0 Changelog
1.1.1 HAPI FHIR 4.3.0 (Prerelease)
1.1.2 HAPI FHIR 4.2.0 (Koala)
1.1.3 HAPI FHIR 4.1.0 (Jitterbug)
1.1.4 HAPI FHIR 4.0.3 (Igloo (Point Release))
1.1.5 HAPI FHIR 4.0.0 (Igloo)
1.1.6 HAPI FHIR 3.8.0 (Hippo)
1.1.7 HAPI FHIR 3.7.0 (Gale)
1.1.8 HAPI FHIR 3.6.0 (Food)
1.1.9 HAPI FHIR 3.5.0
1.1.10 HAPI FHIR 3.4.0
1.1.11 HAPI FHIR 3.3.0
1.1.12 HAPI FHIR 3.2.0
1.1.13 HAPI FHIR 3.1.0
1.1.14 HAPI FHIR 3.0.0
1.1.15 HAPI FHIR 2.5
1.1.16 HAPI FHIR 2.4
1.1.17 HAPI FHIR 2.3
1.1.18 HAPI FHIR 2.2
1.1.19 HAPI FHIR 2.1
1.1.20 HAPI FHIR 2.0
1.1.21 HAPI FHIR 1.6
1.1.22 HAPI FHIR 1.5
1.1.23 HAPI FHIR 1.4
1.1.24 HAPI FHIR 1.3
1.1.25 HAPI FHIR 1.2
1.1.26 HAPI FHIR 1.1
1.1.27 HAPI FHIR 1.0
1.1.28 HAPI FHIR 0.9
1.1.29 HAPI FHIR 0.8
1.1.30 HAPI FHIR 0.7
1.1.31 HAPI FHIR 0.6
1.1.32 HAPI FHIR 0.5
1.1.33 HAPI FHIR 0.4
1.1.34 HAPI FHIR 0.3
1.1.35 HAPI FHIR 0.2
1.1.36 HAPI FHIR 0.1
1.2.0 Introduction
1.2.1 Getting Started
1.2.2 JSON Encoding
1.3.0 FHIR and HAPI FHIR Versions
1.4.0 HAPI FHIR Modules
1.5.0 Downloading and Importing
1.5.1 Maven Users
1.5.2 Gradle Users
1.5.3 Snapshot Builds
1.5.4 Dependencies
2.0.0 Working With The FHIR Model
2.0.0 Working With Resources
2.0.1 Navigating Structures
2.0.2 Convenience Methods
2.0.3 Examples
2.1.0 Parsing and Serializing
2.1.1 Parsing (aka Deserializing)
2.1.2 Encoding (aka Serializing)
2.2.0 Resource References
2.2.1 References in Client Code
2.2.2 References in Server Code
2.2.3 Versioned References
2.3.0 Profiles and Extensions
2.3.1 Extensions
2.3.2 Sub-Extensions
2.3.3 Retrieving Extension Values
2.3.4 Custom Resource Types
2.4.0 Version Converters
2.5.0 Custom Structures
2.5.1 Custom Resource Structure
2.6.0 Narrative Generation
2.6.1 Automatic Narrative Generation
2.6.2 Built-in Narrative Templates
2.6.3 Creating your own Templates
3.0.0 Client
3.0.0 Introduction
3.1.0 Get Started ⚡
3.2.0 Generic (Fluent) Client
3.2.1 Fluent Calls
3.2.2 Search
3.2.3 Create - Type
3.2.4 Read/VRead - Instance
3.2.5 Delete - Instance
3.2.6 Update - Instance
3.2.7 History - Server/Type/Instance
3.2.8 Transaction - Server
3.2.9 Capability Statement (metadata) - Server
3.2.10 Extended Operations
3.2.11 Built-In Operations - Process-Message
3.2.12 Additional Properties
3.2.13 ETags
3.3.0 Annotation Client
3.3.1 Configuring Encoding (JSON/XML)
3.4.0 Client Configuration
3.4.1 Performance
3.4.2 Configuring the HTTP Client
3.5.0 Client Examples
3.5.1 Transaction With Placeholder IDs
3.5.2 Fetch all Pages of a Bundle
4.0.0 Plain Server
4.0.0 REST Server Types
4.1.0 Plain Server Introduction
4.1.1 Defining Resource Providers
4.1.2 Deploying
4.1.3 Testing Using Jetty
4.1.4 Server Base URL (Web Address)
4.1.5 Capability Statement / Server Metadata
4.1.6 Controlling Response Contents / Encoding / Formatting
4.2.0 Get Started ⚡
4.3.0 Resource Providers and Plan Providers
4.3.1 Resource Providers
4.3.2 Plain Providers
4.3.3 Common Method Parameters
4.3.4 REST Exception/Error Handling
4.3.5 Server Lifecycle Methods
4.4.0 REST Operations: Overview
4.4.1 Instance Level - Read
4.4.2 Instance Level - VRead
4.4.3 Instance Level - Update
4.4.4 Instance Level - Delete
4.4.5 Instance Level - Patch
4.4.6 Type Level - Create
4.4.7 Type Level - Search
4.4.8 Type Level - Validate
4.4.9 System Level - Capabilities
4.4.10 System Level - Transaction
4.4.11 System Level - Search
4.4.12 History (Instance, Type, Server)
4.4.13 Exceptions
4.4.14 Tags
4.4.15 Handling _summary and _elements
4.4.16 Compartments
4.5.0 REST Operations: Search
4.5.1 Search with No Parameters
4.5.2 Search Parameters: String Introduction
4.5.3 Search Parameters: Token/Identifier
4.5.4 Search Parameters: Date (Simple)
4.5.5 Search Parameters: Date (Ranges)
4.5.6 Search Parameters: Quantity
4.5.7 Search Parameters: Resource Reference
4.5.8 Search Parameters: Filter
4.5.9 Chained Resource References
4.5.10 Search Parameters: Composite
4.5.11 Combining Multiple Parameters
4.5.12 Multi-Valued (AND/OR) Parameters
4.5.13 AND Relationship Query Parameters for Dates
4.5.14 Resource Includes (_include)
4.5.15 Reverse Resource Includes (_revinclude)
4.5.16 Named Queries (_query)
4.5.17 Sorting (_sort)
4.5.18 Adding Descriptions
4.6.0 REST Operations: Extended Operations
4.6.1 Type-Level Operations
4.6.2 Instance-Level Operations
4.6.3 Server-Level Operations
4.6.4 Using Search Parameter Types
4.6.5 Returning Multiple OUT Parameters
4.6.6 Accepting HTTP GET
4.6.7 Manually handing Request/Response
4.7.0 Paging Search Results
4.7.1 Bundle Providers
4.8.0 Web Testpage Overlay
4.8.1 Adding the Overlay
4.8.2 Customizing the Overlay
4.8.3 A Complete Example
4.8.4 Authentication
4.9.0 Multitenancy
4.10.0 JAX-RS Support
4.10.1 JAX-RS Implementation specifics
4.10.2 A Complete Example
5.0.0 JPA Server
5.0.0 Introduction
5.1.0 Get Started ⚡
5.2.0 Architecture
5.2.1 Schema
5.3.0 Configuration
5.3.1 Search Result Caching
5.3.2 Additional Information
5.3.3 Cascading Deletes
5.4.0 Search
5.5.0 Performance
5.5.1 Bulk Loading
5.6.0 Upgrade Guide
5.6.1 Oracle Support
5.6.2 Flyway
6.0.0 Interceptors
6.0.0 Interceptors Overview
6.0.1 Creating Interceptors
6.1.0 Client Interceptors
6.1.1 Registering Client Interceptors
6.2.0 Client Pointcuts
6.3.0 Built-In Client Interceptors
6.3.1 Logging: Logging Interceptor
6.3.2 Security: HTTP Basic Authorization
6.3.3 Security: HTTP Bearer Token Authorization
6.3.4 Misc: Add Headers to Request
6.3.5 Misc: Add Cookies to Request
6.3.6 Performance: GZip Outgoing Request Bodies
6.3.7 Capture: Programmatically Capturing Request/Response Details
6.4.0 Server Interceptors
6.5.0 Server Pointcuts
6.5.1 Storage / JPA Server Pointcuts
6.6.0 Built-In Server Interceptors
6.6.1 Logging: Logging Interceptor
6.6.2 Response Customizing: Syntax Highlighting
6.6.3 Response Customizing: Exception Handling
6.6.4 Response Customizing: Evaluate FHIRPath
6.6.5 Validation: Request and Response Validation
6.6.6 Security: CORS
6.6.7 Security: Authorization
6.6.8 Security: Consent
6.6.9 Security: Search Narrowing
6.6.10 Security: Rejecting Unsupported HTTP Verbs
6.6.11 Request Pre-Processing: Override Meta.source
7.0.0 Security
7.0.0 Introduction
7.0.1 Authentication vs Authorization
7.0.2 Authentication Interceptors
7.1.0 Authorization Interceptor
7.2.0 Consent Interceptor
7.3.0 Search Narrowing Interceptor
7.4.0 CORS
7.4.1 HAPI FHIR CORS Interceptor
7.4.2 CORS Servlet Filter
8.0.0 Validation
8.0.0 Introduction
8.1.0 Parser Error Handler
8.2.0 Instance Validator
8.2.1 FHIR Conformance Concepts
8.2.2 FHIR Instance Validator
8.2.3 Running the Validator
8.2.4 Migrating to HAPI FHIR 5.x
8.3.0 Validation Support Modules
8.3.1 Built-In Validation Support Classes
8.3.2 ValidationSupportChain
8.3.3 DefaultProfileValidationSupport
8.3.4 InMemoryTerminologyServerValidationSupport
8.3.5 PrePopulatedValidationSupport
8.3.6 CachingValidationSupport
8.3.7 SnapshotGeneratingValidationSupport
8.3.8 CommonCodeSystemsTerminologyService
8.3.9 RemoteTerminologyServiceValidationSupport
8.3.10 Recipes
8.3.11 Recipe: Supplying Custom Definitions
8.3.12 Recipe: Using a Remote Terminology Server
8.4.0 Schema/Schematron Validator
8.4.1 Preparation
8.4.2 Validating a Resource
8.5.0 Validation Examples
9.0.0 Android
9.0.0 Android Client
9.0.1 Performance
9.0.2 Examples
10.0.0 Tools
10.0.0 Command Line Interface (CLI) Tool
10.0.1 Server (run-server)
10.0.2 Upload Example Resources (upload-examples)
10.0.3 Upload Terminology
10.0.4 Migrate Database
11.0.0 Contributing to HAPI FHIR
11.0.0 Hacking Guide
11.0.1 Understanding the HAPI FHIR Codebase
11.0.2 Getting the Sources
11.0.3 Building HAPI FHIR
11.0.4 Troubleshooting
11.0.5 Importing into Eclipse
12.0.0 Appendix
12.0.0 Logging
12.0.1 Configuring HAPI's Logging - SLF4j
12.0.2 Client Payload Logging
12.0.3 Server Request Logging
12.1.0 FAQ
12.1.1 Getting Help
12.1.2 Using HAPI FHIR
12.1.3 JPA Server
12.1.4 Contributing
12.2.0 JavaDocs