001/*- 002 * #%L 003 * HAPI FHIR - Core Library 004 * %% 005 * Copyright (C) 2014 - 2023 Smile CDR, Inc. 006 * %% 007 * Licensed under the Apache License, Version 2.0 (the "License"); 008 * you may not use this file except in compliance with the License. 009 * You may obtain a copy of the License at 010 * 011 * http://www.apache.org/licenses/LICENSE-2.0 012 * 013 * Unless required by applicable law or agreed to in writing, software 014 * distributed under the License is distributed on an "AS IS" BASIS, 015 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 016 * See the License for the specific language governing permissions and 017 * limitations under the License. 018 * #L% 019 */ 020package ca.uhn.fhir.util; 021 022import java.util.Set; 023 024public class HapiExtensions { 025 026 /** 027 * <p> 028 * This extension should be of type <code>string</code> and should be 029 * placed on the <code>Subscription.channel</code> element 030 * </p> 031 */ 032 public static final String EXT_SUBSCRIPTION_SUBJECT_TEMPLATE = "http://hapifhir.io/fhir/StructureDefinition/subscription-email-subject-template"; 033 034 /** 035 * This extension URL indicates whether a REST HOOK delivery should 036 * include the version ID when delivering. 037 * <p> 038 * This extension should be of type <code>boolean</code> and should be 039 * placed on the <code>Subscription.channel</code> element. 040 * </p> 041 */ 042 public static final String EXT_SUBSCRIPTION_RESTHOOK_STRIP_VERSION_IDS = "http://hapifhir.io/fhir/StructureDefinition/subscription-resthook-strip-version-ids"; 043 044 /** 045 * This extension URL indicates whether a REST HOOK delivery should 046 * reload the resource and deliver the latest version always. This 047 * could be useful for example if a resource which triggers a 048 * subscription gets updated many times in short succession and there 049 * is no value in delivering the older versions. 050 * <p> 051 * Note that if the resource is now deleted, this may cause 052 * the delivery to be cancelled altogether. 053 * </p> 054 * 055 * <p> 056 * This extension should be of type <code>boolean</code> and should be 057 * placed on the <code>Subscription.channel</code> element. 058 * </p> 059 */ 060 public static final String EXT_SUBSCRIPTION_RESTHOOK_DELIVER_LATEST_VERSION = "http://hapifhir.io/fhir/StructureDefinition/subscription-resthook-deliver-latest-version"; 061 062 /** 063 * Indicate which strategy will be used to match this subscription 064 */ 065 public static final String EXT_SUBSCRIPTION_MATCHING_STRATEGY = "http://hapifhir.io/fhir/StructureDefinition/subscription-matching-strategy"; 066 067 /** 068 * <p> 069 * This extension should be of type <code>string</code> and should be 070 * placed on the <code>Subscription.channel</code> element 071 * </p> 072 */ 073 public static final String EXT_SUBSCRIPTION_EMAIL_FROM = "http://hapifhir.io/fhir/StructureDefinition/subscription-email-from"; 074 075 /** 076 * Extension ID for external binary references 077 */ 078 public static final String EXT_EXTERNALIZED_BINARY_ID = "http://hapifhir.io/fhir/StructureDefinition/externalized-binary-id"; 079 080 /** 081 * For subscription, deliver a bundle containing a search result instead of just a single resource 082 */ 083 public static final String EXT_SUBSCRIPTION_PAYLOAD_SEARCH_CRITERIA = "http://hapifhir.io/fhir/StructureDefinition/subscription-payload-search-criteria"; 084 085 /** 086 * Message added to expansion valueset 087 */ 088 public static final String EXT_VALUESET_EXPANSION_MESSAGE = "http://hapifhir.io/fhir/StructureDefinition/valueset-expansion-message"; 089 090 /** 091 * Extension URL for extension on a SearchParameter indicating that text values should not be indexed 092 */ 093 public static final String EXT_SEARCHPARAM_TOKEN_SUPPRESS_TEXT_INDEXING = "http://hapifhir.io/fhir/StructureDefinition/searchparameter-token-suppress-text-index"; 094 /** 095 * <p> 096 * This extension represents the equivalent of the 097 * <code>Resource.meta.source</code> field within R4+ resources, and is for 098 * use in DSTU3 resources. It should contain a value of type <code>uri</code> 099 * and will be located on the Resource.meta 100 * </p> 101 */ 102 public static final String EXT_META_SOURCE = "http://hapifhir.io/fhir/StructureDefinition/resource-meta-source"; 103 public static final String EXT_SP_UNIQUE = "http://hapifhir.io/fhir/StructureDefinition/sp-unique"; 104 105 /** 106 * URL for extension on a Phonetic String SearchParameter indicating that text values should be phonetically indexed with the named encoder 107 */ 108 public static final String EXT_SEARCHPARAM_PHONETIC_ENCODER = "http://hapifhir.io/fhir/StructureDefinition/searchparameter-phonetic-encoder"; 109 110 /** 111 * URL for boolean extension added to all placeholder resources 112 */ 113 public static final String EXT_RESOURCE_PLACEHOLDER = "http://hapifhir.io/fhir/StructureDefinition/resource-placeholder"; 114 115 /** 116 * URL for extension in a Group Bulk Export which identifies the golden patient of a given exported resource. 117 */ 118 public static final String ASSOCIATED_GOLDEN_RESOURCE_EXTENSION_URL = "https://hapifhir.org/associated-patient-golden-resource/"; 119 120 /** 121 * This extension provides an example value for a parameter value for 122 * a REST operation (eg for an OperationDefinition) 123 */ 124 public static final String EXT_OP_PARAMETER_EXAMPLE_VALUE = "http://hapifhir.io/fhir/StructureDefinition/op-parameter-example-value"; 125 126 /** 127 * This extension provides a way for subscribers to provide 128 * a "retry-count". 129 * If provided, subscriptions will be retried this many times 130 * (to a total of retry-count + 1 (for original attempt) 131 */ 132 public static final String EX_RETRY_COUNT = "http://hapifhir.io/fhir/StructureDefinition/subscription-delivery-retry-count"; 133 134 /** 135 * This extension provides a way for subscribers to indicate if DELETE messages must be sent (default is ignoring them) 136 */ 137 public static final String EX_SEND_DELETE_MESSAGES = "http://hapifhir.io/fhir/StructureDefinition/subscription-send-delete-messages"; 138 139 /** 140 * This entension allows subscriptions to be marked as cross partition and with correct settings, listen to incoming resources from all partitions. 141 */ 142 public static final String EXTENSION_SUBSCRIPTION_CROSS_PARTITION = "https://smilecdr.com/fhir/ns/StructureDefinition/subscription-cross-partition"; 143 144 /** 145 * This extension is used for "uplifted refchains" on search parameters. See the 146 * HAPI FHIR documentation for an explanation of how these work. 147 */ 148 public static final String EXTENSION_SEARCHPARAM_UPLIFT_REFCHAIN = "https://smilecdr.com/fhir/ns/StructureDefinition/searchparameter-uplift-refchain"; 149 /** 150 * This extension is used for "uplifted refchains" on search parameters. See the 151 * HAPI FHIR documentation for an explanation of how these work. 152 */ 153 public static final String EXTENSION_SEARCHPARAM_UPLIFT_REFCHAIN_PARAM_CODE = "code"; 154 /** 155 * This extension is used for "uplifted refchains" on search parameters. See the 156 * HAPI FHIR documentation for an explanation of how these work. 157 */ 158 public static final String EXTENSION_SEARCHPARAM_UPLIFT_REFCHAIN_ELEMENT_NAME = "element-name"; 159 160 public static final String EXTENSION_SEARCHPARAM_CUSTOM_BASE_RESOURCE = "http://hl7.org/fhir/tools/CustomBaseResource"; 161 public static final String EXTENSION_SEARCHPARAM_CUSTOM_TARGET_RESOURCE = "http://hl7.org/fhir/tools/CustomTargetResource"; 162 163 /** 164 * Non instantiable 165 */ 166 private HapiExtensions() { 167 } 168 169 170}