175eeeca2d
Validator: * Hack around erroneous R3 Invariant (ref-1) * Add support for generating terminology spreadsheets from the command line validator * Validate Resource.id and Element.id properly Other Code Changes: * Change the FHIRPath interface IEvaluationContext.resolveConstant to return List<Base> not Base (BREAKING CHANGE!) * Binary Resource Renderer * Spreadsheet Generation for terminology resources (org.hl7.fhir.r5.renderers.spreadsheets package) * Fix various NPEs discovered by users * Fix rendering of value sets that have no definition * Mark generated narrative with a flag in user data * return system for display when IWorkerContext.validateCode is called ***NO_CI*** |
||
---|---|---|
.github | ||
.mvn/wrapper | ||
org.hl7.fhir.convertors | ||
org.hl7.fhir.core.generator | ||
org.hl7.fhir.dstu2 | ||
org.hl7.fhir.dstu3 | ||
org.hl7.fhir.dstu2016may | ||
org.hl7.fhir.r4 | ||
org.hl7.fhir.r5 | ||
org.hl7.fhir.report | ||
org.hl7.fhir.utilities | ||
org.hl7.fhir.validation | ||
org.hl7.fhir.validation.cli | ||
.editorconfig | ||
.gitignore | ||
LICENSE.txt | ||
README.md | ||
RELEASE_NOTES.md | ||
compare updated code.bat | ||
master-branch-pipeline.yml | ||
mvnw | ||
mvnw.cmd | ||
pom.xml | ||
pull-request-pipeline.yml | ||
r4 test resources.lnk | ||
release-branch-pipeline.yml | ||
validation test resources.lnk |
README.md
HAPI FHIR - HL7 FHIR Core Artifacts
CI Status (master) |
---|
This is the core object handling code, with utilities (including validator), for the FHIR specification. included in this repo:
- org.fhir.fhir.utilities: Shared code used by all the other projects - including the internationalization code
- org.fhir.fhir.r5: Object models and utilities for R5 candidate (will change regularly as new R5 candidates are released)
- org.fhir.fhir.r4: Object models and utilities for R4
- org.fhir.fhir.dstu3: Object models and utilities for STU3
- org.fhir.fhir.dstu2: Object models and utilities for STU2
- org.fhir.fhir.dstu2016may: Object models and utilities for an early STU3 candidate used by some implementers
- org.fhir.fhir.convertors: Code to convert between versions, and other version indepedence code - uses all the above projects
- org.fhir.fhir.validation: The FHIR Java validator
- org.fhir.fhir.validation.cli: Holder project for releasing the FHIR validator as as single fat jar (will be removed in the future)
CI/CD
All integration and delivery done on Azure pipelines. Azure project can be viewed here.
Current Versions
Project | Current Release | Latest SNAPSHOT |
---|---|---|
org.hl7.fhir.validation.cli | ||
org.hl7.fhir.validation | ||
org.hl7.fhir.dstu2 | ||
org.hl7.fhir.dstu2016may | ||
org.hl7.fhir.dstu3 | ||
org.hl7.fhir.r4 | ||
org.hl7.fhir.r5 |
Building this Project
This project uses Apache Maven to build. To build:
mvn install
Note that unit tests will run, but are currently not set to fail the build as they do not all pass. This is being worked on.
To skip unit tests:
mvn -Dmaven.test.skip install
Publishing Binaries
An brief overview of our publishing process is here.
For more detailed instructions on cutting a release, please read the wiki
Download
All binaries are published on OSS Sonatype. You will need to add the proper dependency to your pom.xml
file, or your build.gradle.kts
file.
pom.xml
<repositories>
<repository>
<id>oss-snapshot</id>
<url>https://oss.sonatype.org/content/repositories/snapshots/</url>
</repository>
<repository>
<id>oss-releases</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</repositories>
build.gradle.kts
repositories {
maven {
url = uri("https://oss.sonatype.org/content/repositories/snapshots")
}
maven {
url = uri("https://oss.sonatype.org/service/local/staging/deploy/maven2/")
}
}
After adding the necessary repositories, you can include the libraries as follows:
org.hl7.fhir.validation.cli
Maven
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>org.hl7.fhir.validation.cli</artifactId>
<version>(latest version)</version>
</dependency>
Gradle
compile group: 'ca.uhn.hapi.fhir', name: 'org.hl7.fhir.validation.cli', version: '(latest version)'
org.hl7.fhir.dstu2
Maven
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-structures-dstu2</artifactId>
<version>(latest version)</version>
</dependency>
Gradle
compile group: 'ca.uhn.hapi.fhir', name: 'hapi-fhir-structures-dstu2', version: '(latest version)'
org.hl7.fhir.dstu3
Maven
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-structures-dstu3</artifactId>
<version>(latest version)</version>
</dependency>
Gradle
compile group: 'ca.uhn.hapi.fhir', name: 'hapi-fhir-structures-dstu3', version: '(latest version)'
org.hl7.fhir.r4
Maven
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-structures-r4</artifactId>
<version>(latest version)</version>
</dependency>
Gradle
compile group: 'ca.uhn.hapi.fhir', name: 'hapi-fhir-structures-r4', version: '(latest version)'
org.hl7.fhir.r5
Maven
<dependency>
<groupId>ca.uhn.hapi.fhir</groupId>
<artifactId>hapi-fhir-structures-r5</artifactId>
<version>(latest version)</version>
</dependency>
Gradle
compile group: 'ca.uhn.hapi.fhir', name: 'hapi-fhir-structures-r5', version: '(latest version)'
Maintenance
This project is maintained by Grahame Grieve, James Agnew and Mark Iantorno on behalf of the FHIR community.