
001package org.hl7.fhir.r5.model; 002 003 004/* 005 Copyright (c) 2011+, HL7, Inc. 006 All rights reserved. 007 008 Redistribution and use in source and binary forms, with or without modification, \ 009 are permitted provided that the following conditions are met: 010 011 * Redistributions of source code must retain the above copyright notice, this \ 012 list of conditions and the following disclaimer. 013 * Redistributions in binary form must reproduce the above copyright notice, \ 014 this list of conditions and the following disclaimer in the documentation \ 015 and/or other materials provided with the distribution. 016 * Neither the name of HL7 nor the names of its contributors may be used to 017 endorse or promote products derived from this software without specific 018 prior written permission. 019 020 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 021 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 022 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 023 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 024 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 025 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 026 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 027 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 028 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 029 POSSIBILITY OF SUCH DAMAGE. 030 */ 031 032// Generated on Sat, Nov 5, 2022 10:47+1100 for FHIR v5.0.0-ballot 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r5.model.Enumerations.*; 039import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.ICompositeType; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 045import ca.uhn.fhir.model.api.annotation.Child; 046import ca.uhn.fhir.model.api.annotation.ChildOrder; 047import ca.uhn.fhir.model.api.annotation.Description; 048import ca.uhn.fhir.model.api.annotation.Block; 049 050/** 051 * The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content. 052 */ 053@ResourceDef(name="CodeSystem", profile="http://hl7.org/fhir/StructureDefinition/CodeSystem") 054public class CodeSystem extends MetadataResource { 055 056 public enum CodeSystemContentMode { 057 /** 058 * None of the concepts defined by the code system are included in the code system resource. 059 */ 060 NOTPRESENT, 061 /** 062 * A few representative concepts are included in the code system resource. There is no useful intent in the subset choice and there's no process to make it workable: it's not intended to be workable. 063 */ 064 EXAMPLE, 065 /** 066 * A subset of the code system concepts are included in the code system resource. This is a curated subset released for a specific purpose under the governance of the code system steward, and that the intent, bounds and consequences of the fragmentation are clearly defined in the fragment or the code system documentation. Fragments are also known as partitions. 067 */ 068 FRAGMENT, 069 /** 070 * All the concepts defined by the code system are included in the code system resource. 071 */ 072 COMPLETE, 073 /** 074 * The resource doesn't define any new concepts; it just provides additional designations and properties to another code system. 075 */ 076 SUPPLEMENT, 077 /** 078 * added to help the parsers with the generic types 079 */ 080 NULL; 081 public static CodeSystemContentMode fromCode(String codeString) throws FHIRException { 082 if (codeString == null || "".equals(codeString)) 083 return null; 084 if ("not-present".equals(codeString)) 085 return NOTPRESENT; 086 if ("example".equals(codeString)) 087 return EXAMPLE; 088 if ("fragment".equals(codeString)) 089 return FRAGMENT; 090 if ("complete".equals(codeString)) 091 return COMPLETE; 092 if ("supplement".equals(codeString)) 093 return SUPPLEMENT; 094 if (Configuration.isAcceptInvalidEnums()) 095 return null; 096 else 097 throw new FHIRException("Unknown CodeSystemContentMode code '"+codeString+"'"); 098 } 099 public String toCode() { 100 switch (this) { 101 case NOTPRESENT: return "not-present"; 102 case EXAMPLE: return "example"; 103 case FRAGMENT: return "fragment"; 104 case COMPLETE: return "complete"; 105 case SUPPLEMENT: return "supplement"; 106 case NULL: return null; 107 default: return "?"; 108 } 109 } 110 public String getSystem() { 111 switch (this) { 112 case NOTPRESENT: return "http://hl7.org/fhir/codesystem-content-mode"; 113 case EXAMPLE: return "http://hl7.org/fhir/codesystem-content-mode"; 114 case FRAGMENT: return "http://hl7.org/fhir/codesystem-content-mode"; 115 case COMPLETE: return "http://hl7.org/fhir/codesystem-content-mode"; 116 case SUPPLEMENT: return "http://hl7.org/fhir/codesystem-content-mode"; 117 case NULL: return null; 118 default: return "?"; 119 } 120 } 121 public String getDefinition() { 122 switch (this) { 123 case NOTPRESENT: return "None of the concepts defined by the code system are included in the code system resource."; 124 case EXAMPLE: return "A few representative concepts are included in the code system resource. There is no useful intent in the subset choice and there's no process to make it workable: it's not intended to be workable."; 125 case FRAGMENT: return "A subset of the code system concepts are included in the code system resource. This is a curated subset released for a specific purpose under the governance of the code system steward, and that the intent, bounds and consequences of the fragmentation are clearly defined in the fragment or the code system documentation. Fragments are also known as partitions."; 126 case COMPLETE: return "All the concepts defined by the code system are included in the code system resource."; 127 case SUPPLEMENT: return "The resource doesn't define any new concepts; it just provides additional designations and properties to another code system."; 128 case NULL: return null; 129 default: return "?"; 130 } 131 } 132 public String getDisplay() { 133 switch (this) { 134 case NOTPRESENT: return "Not Present"; 135 case EXAMPLE: return "Example"; 136 case FRAGMENT: return "Fragment"; 137 case COMPLETE: return "Complete"; 138 case SUPPLEMENT: return "Supplement"; 139 case NULL: return null; 140 default: return "?"; 141 } 142 } 143 } 144 145 public static class CodeSystemContentModeEnumFactory implements EnumFactory<CodeSystemContentMode> { 146 public CodeSystemContentMode fromCode(String codeString) throws IllegalArgumentException { 147 if (codeString == null || "".equals(codeString)) 148 if (codeString == null || "".equals(codeString)) 149 return null; 150 if ("not-present".equals(codeString)) 151 return CodeSystemContentMode.NOTPRESENT; 152 if ("example".equals(codeString)) 153 return CodeSystemContentMode.EXAMPLE; 154 if ("fragment".equals(codeString)) 155 return CodeSystemContentMode.FRAGMENT; 156 if ("complete".equals(codeString)) 157 return CodeSystemContentMode.COMPLETE; 158 if ("supplement".equals(codeString)) 159 return CodeSystemContentMode.SUPPLEMENT; 160 throw new IllegalArgumentException("Unknown CodeSystemContentMode code '"+codeString+"'"); 161 } 162 public Enumeration<CodeSystemContentMode> fromType(Base code) throws FHIRException { 163 if (code == null) 164 return null; 165 if (code.isEmpty()) 166 return new Enumeration<CodeSystemContentMode>(this); 167 String codeString = ((PrimitiveType) code).asStringValue(); 168 if (codeString == null || "".equals(codeString)) 169 return null; 170 if ("not-present".equals(codeString)) 171 return new Enumeration<CodeSystemContentMode>(this, CodeSystemContentMode.NOTPRESENT); 172 if ("example".equals(codeString)) 173 return new Enumeration<CodeSystemContentMode>(this, CodeSystemContentMode.EXAMPLE); 174 if ("fragment".equals(codeString)) 175 return new Enumeration<CodeSystemContentMode>(this, CodeSystemContentMode.FRAGMENT); 176 if ("complete".equals(codeString)) 177 return new Enumeration<CodeSystemContentMode>(this, CodeSystemContentMode.COMPLETE); 178 if ("supplement".equals(codeString)) 179 return new Enumeration<CodeSystemContentMode>(this, CodeSystemContentMode.SUPPLEMENT); 180 throw new FHIRException("Unknown CodeSystemContentMode code '"+codeString+"'"); 181 } 182 public String toCode(CodeSystemContentMode code) { 183 if (code == CodeSystemContentMode.NOTPRESENT) 184 return "not-present"; 185 if (code == CodeSystemContentMode.EXAMPLE) 186 return "example"; 187 if (code == CodeSystemContentMode.FRAGMENT) 188 return "fragment"; 189 if (code == CodeSystemContentMode.COMPLETE) 190 return "complete"; 191 if (code == CodeSystemContentMode.SUPPLEMENT) 192 return "supplement"; 193 return "?"; 194 } 195 public String toSystem(CodeSystemContentMode code) { 196 return code.getSystem(); 197 } 198 } 199 200 public enum CodeSystemHierarchyMeaning { 201 /** 202 * No particular relationship between the concepts can be assumed, except what can be determined by inspection of the definitions of the elements (possible reasons to use this: importing from a source where this is not defined, or where various parts of the hierarchy have different meanings). 203 */ 204 GROUPEDBY, 205 /** 206 * A hierarchy where the child concepts have an IS-A relationship with the parents - that is, all the properties of the parent are also true for its child concepts. Not that is-a is a property of the concepts, so additional subsumption relationships may be defined using properties. 207 */ 208 ISA, 209 /** 210 * Child elements list the individual parts of a composite whole (e.g. body site). 211 */ 212 PARTOF, 213 /** 214 * Child concepts in the hierarchy may have only one parent, and there is a presumption that the code system is a \"closed world\" meaning all things must be in the hierarchy. This results in concepts such as \"not otherwise classified.\". 215 */ 216 CLASSIFIEDWITH, 217 /** 218 * added to help the parsers with the generic types 219 */ 220 NULL; 221 public static CodeSystemHierarchyMeaning fromCode(String codeString) throws FHIRException { 222 if (codeString == null || "".equals(codeString)) 223 return null; 224 if ("grouped-by".equals(codeString)) 225 return GROUPEDBY; 226 if ("is-a".equals(codeString)) 227 return ISA; 228 if ("part-of".equals(codeString)) 229 return PARTOF; 230 if ("classified-with".equals(codeString)) 231 return CLASSIFIEDWITH; 232 if (Configuration.isAcceptInvalidEnums()) 233 return null; 234 else 235 throw new FHIRException("Unknown CodeSystemHierarchyMeaning code '"+codeString+"'"); 236 } 237 public String toCode() { 238 switch (this) { 239 case GROUPEDBY: return "grouped-by"; 240 case ISA: return "is-a"; 241 case PARTOF: return "part-of"; 242 case CLASSIFIEDWITH: return "classified-with"; 243 case NULL: return null; 244 default: return "?"; 245 } 246 } 247 public String getSystem() { 248 switch (this) { 249 case GROUPEDBY: return "http://hl7.org/fhir/codesystem-hierarchy-meaning"; 250 case ISA: return "http://hl7.org/fhir/codesystem-hierarchy-meaning"; 251 case PARTOF: return "http://hl7.org/fhir/codesystem-hierarchy-meaning"; 252 case CLASSIFIEDWITH: return "http://hl7.org/fhir/codesystem-hierarchy-meaning"; 253 case NULL: return null; 254 default: return "?"; 255 } 256 } 257 public String getDefinition() { 258 switch (this) { 259 case GROUPEDBY: return "No particular relationship between the concepts can be assumed, except what can be determined by inspection of the definitions of the elements (possible reasons to use this: importing from a source where this is not defined, or where various parts of the hierarchy have different meanings)."; 260 case ISA: return "A hierarchy where the child concepts have an IS-A relationship with the parents - that is, all the properties of the parent are also true for its child concepts. Not that is-a is a property of the concepts, so additional subsumption relationships may be defined using properties."; 261 case PARTOF: return "Child elements list the individual parts of a composite whole (e.g. body site)."; 262 case CLASSIFIEDWITH: return "Child concepts in the hierarchy may have only one parent, and there is a presumption that the code system is a \"closed world\" meaning all things must be in the hierarchy. This results in concepts such as \"not otherwise classified.\"."; 263 case NULL: return null; 264 default: return "?"; 265 } 266 } 267 public String getDisplay() { 268 switch (this) { 269 case GROUPEDBY: return "Grouped By"; 270 case ISA: return "Is-A"; 271 case PARTOF: return "Part Of"; 272 case CLASSIFIEDWITH: return "Classified With"; 273 case NULL: return null; 274 default: return "?"; 275 } 276 } 277 } 278 279 public static class CodeSystemHierarchyMeaningEnumFactory implements EnumFactory<CodeSystemHierarchyMeaning> { 280 public CodeSystemHierarchyMeaning fromCode(String codeString) throws IllegalArgumentException { 281 if (codeString == null || "".equals(codeString)) 282 if (codeString == null || "".equals(codeString)) 283 return null; 284 if ("grouped-by".equals(codeString)) 285 return CodeSystemHierarchyMeaning.GROUPEDBY; 286 if ("is-a".equals(codeString)) 287 return CodeSystemHierarchyMeaning.ISA; 288 if ("part-of".equals(codeString)) 289 return CodeSystemHierarchyMeaning.PARTOF; 290 if ("classified-with".equals(codeString)) 291 return CodeSystemHierarchyMeaning.CLASSIFIEDWITH; 292 throw new IllegalArgumentException("Unknown CodeSystemHierarchyMeaning code '"+codeString+"'"); 293 } 294 public Enumeration<CodeSystemHierarchyMeaning> fromType(Base code) throws FHIRException { 295 if (code == null) 296 return null; 297 if (code.isEmpty()) 298 return new Enumeration<CodeSystemHierarchyMeaning>(this); 299 String codeString = ((PrimitiveType) code).asStringValue(); 300 if (codeString == null || "".equals(codeString)) 301 return null; 302 if ("grouped-by".equals(codeString)) 303 return new Enumeration<CodeSystemHierarchyMeaning>(this, CodeSystemHierarchyMeaning.GROUPEDBY); 304 if ("is-a".equals(codeString)) 305 return new Enumeration<CodeSystemHierarchyMeaning>(this, CodeSystemHierarchyMeaning.ISA); 306 if ("part-of".equals(codeString)) 307 return new Enumeration<CodeSystemHierarchyMeaning>(this, CodeSystemHierarchyMeaning.PARTOF); 308 if ("classified-with".equals(codeString)) 309 return new Enumeration<CodeSystemHierarchyMeaning>(this, CodeSystemHierarchyMeaning.CLASSIFIEDWITH); 310 throw new FHIRException("Unknown CodeSystemHierarchyMeaning code '"+codeString+"'"); 311 } 312 public String toCode(CodeSystemHierarchyMeaning code) { 313 if (code == CodeSystemHierarchyMeaning.GROUPEDBY) 314 return "grouped-by"; 315 if (code == CodeSystemHierarchyMeaning.ISA) 316 return "is-a"; 317 if (code == CodeSystemHierarchyMeaning.PARTOF) 318 return "part-of"; 319 if (code == CodeSystemHierarchyMeaning.CLASSIFIEDWITH) 320 return "classified-with"; 321 return "?"; 322 } 323 public String toSystem(CodeSystemHierarchyMeaning code) { 324 return code.getSystem(); 325 } 326 } 327 328 public enum PropertyType { 329 /** 330 * The property value is a code that identifies a concept defined in the code system. 331 */ 332 CODE, 333 /** 334 * The property value is a code defined in an external code system. This may be used for translations, but is not the intent. 335 */ 336 CODING, 337 /** 338 * The property value is a string. 339 */ 340 STRING, 341 /** 342 * The property value is an integer (often used to assign ranking values to concepts for supporting score assessments). 343 */ 344 INTEGER, 345 /** 346 * The property value is a boolean true | false. 347 */ 348 BOOLEAN, 349 /** 350 * The property is a date or a date + time. 351 */ 352 DATETIME, 353 /** 354 * The property value is a decimal number. 355 */ 356 DECIMAL, 357 /** 358 * added to help the parsers with the generic types 359 */ 360 NULL; 361 public static PropertyType fromCode(String codeString) throws FHIRException { 362 if (codeString == null || "".equals(codeString)) 363 return null; 364 if ("code".equals(codeString)) 365 return CODE; 366 if ("Coding".equals(codeString)) 367 return CODING; 368 if ("string".equals(codeString)) 369 return STRING; 370 if ("integer".equals(codeString)) 371 return INTEGER; 372 if ("boolean".equals(codeString)) 373 return BOOLEAN; 374 if ("dateTime".equals(codeString)) 375 return DATETIME; 376 if ("decimal".equals(codeString)) 377 return DECIMAL; 378 if (Configuration.isAcceptInvalidEnums()) 379 return null; 380 else 381 throw new FHIRException("Unknown PropertyType code '"+codeString+"'"); 382 } 383 public String toCode() { 384 switch (this) { 385 case CODE: return "code"; 386 case CODING: return "Coding"; 387 case STRING: return "string"; 388 case INTEGER: return "integer"; 389 case BOOLEAN: return "boolean"; 390 case DATETIME: return "dateTime"; 391 case DECIMAL: return "decimal"; 392 case NULL: return null; 393 default: return "?"; 394 } 395 } 396 public String getSystem() { 397 switch (this) { 398 case CODE: return "http://hl7.org/fhir/concept-property-type"; 399 case CODING: return "http://hl7.org/fhir/concept-property-type"; 400 case STRING: return "http://hl7.org/fhir/concept-property-type"; 401 case INTEGER: return "http://hl7.org/fhir/concept-property-type"; 402 case BOOLEAN: return "http://hl7.org/fhir/concept-property-type"; 403 case DATETIME: return "http://hl7.org/fhir/concept-property-type"; 404 case DECIMAL: return "http://hl7.org/fhir/concept-property-type"; 405 case NULL: return null; 406 default: return "?"; 407 } 408 } 409 public String getDefinition() { 410 switch (this) { 411 case CODE: return "The property value is a code that identifies a concept defined in the code system."; 412 case CODING: return "The property value is a code defined in an external code system. This may be used for translations, but is not the intent."; 413 case STRING: return "The property value is a string."; 414 case INTEGER: return "The property value is an integer (often used to assign ranking values to concepts for supporting score assessments)."; 415 case BOOLEAN: return "The property value is a boolean true | false."; 416 case DATETIME: return "The property is a date or a date + time."; 417 case DECIMAL: return "The property value is a decimal number."; 418 case NULL: return null; 419 default: return "?"; 420 } 421 } 422 public String getDisplay() { 423 switch (this) { 424 case CODE: return "code (internal reference)"; 425 case CODING: return "Coding (external reference)"; 426 case STRING: return "string"; 427 case INTEGER: return "integer"; 428 case BOOLEAN: return "boolean"; 429 case DATETIME: return "dateTime"; 430 case DECIMAL: return "decimal"; 431 case NULL: return null; 432 default: return "?"; 433 } 434 } 435 } 436 437 public static class PropertyTypeEnumFactory implements EnumFactory<PropertyType> { 438 public PropertyType fromCode(String codeString) throws IllegalArgumentException { 439 if (codeString == null || "".equals(codeString)) 440 if (codeString == null || "".equals(codeString)) 441 return null; 442 if ("code".equals(codeString)) 443 return PropertyType.CODE; 444 if ("Coding".equals(codeString)) 445 return PropertyType.CODING; 446 if ("string".equals(codeString)) 447 return PropertyType.STRING; 448 if ("integer".equals(codeString)) 449 return PropertyType.INTEGER; 450 if ("boolean".equals(codeString)) 451 return PropertyType.BOOLEAN; 452 if ("dateTime".equals(codeString)) 453 return PropertyType.DATETIME; 454 if ("decimal".equals(codeString)) 455 return PropertyType.DECIMAL; 456 throw new IllegalArgumentException("Unknown PropertyType code '"+codeString+"'"); 457 } 458 public Enumeration<PropertyType> fromType(Base code) throws FHIRException { 459 if (code == null) 460 return null; 461 if (code.isEmpty()) 462 return new Enumeration<PropertyType>(this); 463 String codeString = ((PrimitiveType) code).asStringValue(); 464 if (codeString == null || "".equals(codeString)) 465 return null; 466 if ("code".equals(codeString)) 467 return new Enumeration<PropertyType>(this, PropertyType.CODE); 468 if ("Coding".equals(codeString)) 469 return new Enumeration<PropertyType>(this, PropertyType.CODING); 470 if ("string".equals(codeString)) 471 return new Enumeration<PropertyType>(this, PropertyType.STRING); 472 if ("integer".equals(codeString)) 473 return new Enumeration<PropertyType>(this, PropertyType.INTEGER); 474 if ("boolean".equals(codeString)) 475 return new Enumeration<PropertyType>(this, PropertyType.BOOLEAN); 476 if ("dateTime".equals(codeString)) 477 return new Enumeration<PropertyType>(this, PropertyType.DATETIME); 478 if ("decimal".equals(codeString)) 479 return new Enumeration<PropertyType>(this, PropertyType.DECIMAL); 480 throw new FHIRException("Unknown PropertyType code '"+codeString+"'"); 481 } 482 public String toCode(PropertyType code) { 483 if (code == PropertyType.CODE) 484 return "code"; 485 if (code == PropertyType.CODING) 486 return "Coding"; 487 if (code == PropertyType.STRING) 488 return "string"; 489 if (code == PropertyType.INTEGER) 490 return "integer"; 491 if (code == PropertyType.BOOLEAN) 492 return "boolean"; 493 if (code == PropertyType.DATETIME) 494 return "dateTime"; 495 if (code == PropertyType.DECIMAL) 496 return "decimal"; 497 return "?"; 498 } 499 public String toSystem(PropertyType code) { 500 return code.getSystem(); 501 } 502 } 503 504 @Block() 505 public static class CodeSystemFilterComponent extends BackboneElement implements IBaseBackboneElement { 506 /** 507 * The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter. 508 */ 509 @Child(name = "code", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 510 @Description(shortDefinition="Code that identifies the filter", formalDefinition="The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter." ) 511 protected CodeType code; 512 513 /** 514 * A description of how or why the filter is used. 515 */ 516 @Child(name = "description", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) 517 @Description(shortDefinition="How or why the filter is used", formalDefinition="A description of how or why the filter is used." ) 518 protected StringType description; 519 520 /** 521 * A list of operators that can be used with the filter. 522 */ 523 @Child(name = "operator", type = {CodeType.class}, order=3, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 524 @Description(shortDefinition="= | is-a | descendent-of | is-not-a | regex | in | not-in | generalizes | child-of | descendent-leaf | exists", formalDefinition="A list of operators that can be used with the filter." ) 525 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/filter-operator") 526 protected List<Enumeration<FilterOperator>> operator; 527 528 /** 529 * A description of what the value for the filter should be. 530 */ 531 @Child(name = "value", type = {StringType.class}, order=4, min=1, max=1, modifier=false, summary=true) 532 @Description(shortDefinition="What to use for the value", formalDefinition="A description of what the value for the filter should be." ) 533 protected StringType value; 534 535 private static final long serialVersionUID = -1087409836L; 536 537 /** 538 * Constructor 539 */ 540 public CodeSystemFilterComponent() { 541 super(); 542 } 543 544 /** 545 * Constructor 546 */ 547 public CodeSystemFilterComponent(String code, FilterOperator operator, String value) { 548 super(); 549 this.setCode(code); 550 this.addOperator(operator); 551 this.setValue(value); 552 } 553 554 /** 555 * @return {@link #code} (The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 556 */ 557 public CodeType getCodeElement() { 558 if (this.code == null) 559 if (Configuration.errorOnAutoCreate()) 560 throw new Error("Attempt to auto-create CodeSystemFilterComponent.code"); 561 else if (Configuration.doAutoCreate()) 562 this.code = new CodeType(); // bb 563 return this.code; 564 } 565 566 public boolean hasCodeElement() { 567 return this.code != null && !this.code.isEmpty(); 568 } 569 570 public boolean hasCode() { 571 return this.code != null && !this.code.isEmpty(); 572 } 573 574 /** 575 * @param value {@link #code} (The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 576 */ 577 public CodeSystemFilterComponent setCodeElement(CodeType value) { 578 this.code = value; 579 return this; 580 } 581 582 /** 583 * @return The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter. 584 */ 585 public String getCode() { 586 return this.code == null ? null : this.code.getValue(); 587 } 588 589 /** 590 * @param value The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter. 591 */ 592 public CodeSystemFilterComponent setCode(String value) { 593 if (this.code == null) 594 this.code = new CodeType(); 595 this.code.setValue(value); 596 return this; 597 } 598 599 /** 600 * @return {@link #description} (A description of how or why the filter is used.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 601 */ 602 public StringType getDescriptionElement() { 603 if (this.description == null) 604 if (Configuration.errorOnAutoCreate()) 605 throw new Error("Attempt to auto-create CodeSystemFilterComponent.description"); 606 else if (Configuration.doAutoCreate()) 607 this.description = new StringType(); // bb 608 return this.description; 609 } 610 611 public boolean hasDescriptionElement() { 612 return this.description != null && !this.description.isEmpty(); 613 } 614 615 public boolean hasDescription() { 616 return this.description != null && !this.description.isEmpty(); 617 } 618 619 /** 620 * @param value {@link #description} (A description of how or why the filter is used.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 621 */ 622 public CodeSystemFilterComponent setDescriptionElement(StringType value) { 623 this.description = value; 624 return this; 625 } 626 627 /** 628 * @return A description of how or why the filter is used. 629 */ 630 public String getDescription() { 631 return this.description == null ? null : this.description.getValue(); 632 } 633 634 /** 635 * @param value A description of how or why the filter is used. 636 */ 637 public CodeSystemFilterComponent setDescription(String value) { 638 if (Utilities.noString(value)) 639 this.description = null; 640 else { 641 if (this.description == null) 642 this.description = new StringType(); 643 this.description.setValue(value); 644 } 645 return this; 646 } 647 648 /** 649 * @return {@link #operator} (A list of operators that can be used with the filter.) 650 */ 651 public List<Enumeration<FilterOperator>> getOperator() { 652 if (this.operator == null) 653 this.operator = new ArrayList<Enumeration<FilterOperator>>(); 654 return this.operator; 655 } 656 657 /** 658 * @return Returns a reference to <code>this</code> for easy method chaining 659 */ 660 public CodeSystemFilterComponent setOperator(List<Enumeration<FilterOperator>> theOperator) { 661 this.operator = theOperator; 662 return this; 663 } 664 665 public boolean hasOperator() { 666 if (this.operator == null) 667 return false; 668 for (Enumeration<FilterOperator> item : this.operator) 669 if (!item.isEmpty()) 670 return true; 671 return false; 672 } 673 674 /** 675 * @return {@link #operator} (A list of operators that can be used with the filter.) 676 */ 677 public Enumeration<FilterOperator> addOperatorElement() {//2 678 Enumeration<FilterOperator> t = new Enumeration<FilterOperator>(new FilterOperatorEnumFactory()); 679 if (this.operator == null) 680 this.operator = new ArrayList<Enumeration<FilterOperator>>(); 681 this.operator.add(t); 682 return t; 683 } 684 685 /** 686 * @param value {@link #operator} (A list of operators that can be used with the filter.) 687 */ 688 public CodeSystemFilterComponent addOperator(FilterOperator value) { //1 689 Enumeration<FilterOperator> t = new Enumeration<FilterOperator>(new FilterOperatorEnumFactory()); 690 t.setValue(value); 691 if (this.operator == null) 692 this.operator = new ArrayList<Enumeration<FilterOperator>>(); 693 this.operator.add(t); 694 return this; 695 } 696 697 /** 698 * @param value {@link #operator} (A list of operators that can be used with the filter.) 699 */ 700 public boolean hasOperator(FilterOperator value) { 701 if (this.operator == null) 702 return false; 703 for (Enumeration<FilterOperator> v : this.operator) 704 if (v.getValue().equals(value)) // code 705 return true; 706 return false; 707 } 708 709 /** 710 * @return {@link #value} (A description of what the value for the filter should be.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 711 */ 712 public StringType getValueElement() { 713 if (this.value == null) 714 if (Configuration.errorOnAutoCreate()) 715 throw new Error("Attempt to auto-create CodeSystemFilterComponent.value"); 716 else if (Configuration.doAutoCreate()) 717 this.value = new StringType(); // bb 718 return this.value; 719 } 720 721 public boolean hasValueElement() { 722 return this.value != null && !this.value.isEmpty(); 723 } 724 725 public boolean hasValue() { 726 return this.value != null && !this.value.isEmpty(); 727 } 728 729 /** 730 * @param value {@link #value} (A description of what the value for the filter should be.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 731 */ 732 public CodeSystemFilterComponent setValueElement(StringType value) { 733 this.value = value; 734 return this; 735 } 736 737 /** 738 * @return A description of what the value for the filter should be. 739 */ 740 public String getValue() { 741 return this.value == null ? null : this.value.getValue(); 742 } 743 744 /** 745 * @param value A description of what the value for the filter should be. 746 */ 747 public CodeSystemFilterComponent setValue(String value) { 748 if (this.value == null) 749 this.value = new StringType(); 750 this.value.setValue(value); 751 return this; 752 } 753 754 protected void listChildren(List<Property> children) { 755 super.listChildren(children); 756 children.add(new Property("code", "code", "The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter.", 0, 1, code)); 757 children.add(new Property("description", "string", "A description of how or why the filter is used.", 0, 1, description)); 758 children.add(new Property("operator", "code", "A list of operators that can be used with the filter.", 0, java.lang.Integer.MAX_VALUE, operator)); 759 children.add(new Property("value", "string", "A description of what the value for the filter should be.", 0, 1, value)); 760 } 761 762 @Override 763 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 764 switch (_hash) { 765 case 3059181: /*code*/ return new Property("code", "code", "The code that identifies this filter when it is used as a filter in [ValueSet](valueset.html#).compose.include.filter.", 0, 1, code); 766 case -1724546052: /*description*/ return new Property("description", "string", "A description of how or why the filter is used.", 0, 1, description); 767 case -500553564: /*operator*/ return new Property("operator", "code", "A list of operators that can be used with the filter.", 0, java.lang.Integer.MAX_VALUE, operator); 768 case 111972721: /*value*/ return new Property("value", "string", "A description of what the value for the filter should be.", 0, 1, value); 769 default: return super.getNamedProperty(_hash, _name, _checkValid); 770 } 771 772 } 773 774 @Override 775 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 776 switch (hash) { 777 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeType 778 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType 779 case -500553564: /*operator*/ return this.operator == null ? new Base[0] : this.operator.toArray(new Base[this.operator.size()]); // Enumeration<FilterOperator> 780 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // StringType 781 default: return super.getProperty(hash, name, checkValid); 782 } 783 784 } 785 786 @Override 787 public Base setProperty(int hash, String name, Base value) throws FHIRException { 788 switch (hash) { 789 case 3059181: // code 790 this.code = TypeConvertor.castToCode(value); // CodeType 791 return value; 792 case -1724546052: // description 793 this.description = TypeConvertor.castToString(value); // StringType 794 return value; 795 case -500553564: // operator 796 value = new FilterOperatorEnumFactory().fromType(TypeConvertor.castToCode(value)); 797 this.getOperator().add((Enumeration) value); // Enumeration<FilterOperator> 798 return value; 799 case 111972721: // value 800 this.value = TypeConvertor.castToString(value); // StringType 801 return value; 802 default: return super.setProperty(hash, name, value); 803 } 804 805 } 806 807 @Override 808 public Base setProperty(String name, Base value) throws FHIRException { 809 if (name.equals("code")) { 810 this.code = TypeConvertor.castToCode(value); // CodeType 811 } else if (name.equals("description")) { 812 this.description = TypeConvertor.castToString(value); // StringType 813 } else if (name.equals("operator")) { 814 value = new FilterOperatorEnumFactory().fromType(TypeConvertor.castToCode(value)); 815 this.getOperator().add((Enumeration) value); 816 } else if (name.equals("value")) { 817 this.value = TypeConvertor.castToString(value); // StringType 818 } else 819 return super.setProperty(name, value); 820 return value; 821 } 822 823 @Override 824 public Base makeProperty(int hash, String name) throws FHIRException { 825 switch (hash) { 826 case 3059181: return getCodeElement(); 827 case -1724546052: return getDescriptionElement(); 828 case -500553564: return addOperatorElement(); 829 case 111972721: return getValueElement(); 830 default: return super.makeProperty(hash, name); 831 } 832 833 } 834 835 @Override 836 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 837 switch (hash) { 838 case 3059181: /*code*/ return new String[] {"code"}; 839 case -1724546052: /*description*/ return new String[] {"string"}; 840 case -500553564: /*operator*/ return new String[] {"code"}; 841 case 111972721: /*value*/ return new String[] {"string"}; 842 default: return super.getTypesForProperty(hash, name); 843 } 844 845 } 846 847 @Override 848 public Base addChild(String name) throws FHIRException { 849 if (name.equals("code")) { 850 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.filter.code"); 851 } 852 else if (name.equals("description")) { 853 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.filter.description"); 854 } 855 else if (name.equals("operator")) { 856 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.filter.operator"); 857 } 858 else if (name.equals("value")) { 859 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.filter.value"); 860 } 861 else 862 return super.addChild(name); 863 } 864 865 public CodeSystemFilterComponent copy() { 866 CodeSystemFilterComponent dst = new CodeSystemFilterComponent(); 867 copyValues(dst); 868 return dst; 869 } 870 871 public void copyValues(CodeSystemFilterComponent dst) { 872 super.copyValues(dst); 873 dst.code = code == null ? null : code.copy(); 874 dst.description = description == null ? null : description.copy(); 875 if (operator != null) { 876 dst.operator = new ArrayList<Enumeration<FilterOperator>>(); 877 for (Enumeration<FilterOperator> i : operator) 878 dst.operator.add(i.copy()); 879 }; 880 dst.value = value == null ? null : value.copy(); 881 } 882 883 @Override 884 public boolean equalsDeep(Base other_) { 885 if (!super.equalsDeep(other_)) 886 return false; 887 if (!(other_ instanceof CodeSystemFilterComponent)) 888 return false; 889 CodeSystemFilterComponent o = (CodeSystemFilterComponent) other_; 890 return compareDeep(code, o.code, true) && compareDeep(description, o.description, true) && compareDeep(operator, o.operator, true) 891 && compareDeep(value, o.value, true); 892 } 893 894 @Override 895 public boolean equalsShallow(Base other_) { 896 if (!super.equalsShallow(other_)) 897 return false; 898 if (!(other_ instanceof CodeSystemFilterComponent)) 899 return false; 900 CodeSystemFilterComponent o = (CodeSystemFilterComponent) other_; 901 return compareValues(code, o.code, true) && compareValues(description, o.description, true) && compareValues(operator, o.operator, true) 902 && compareValues(value, o.value, true); 903 } 904 905 public boolean isEmpty() { 906 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, description, operator 907 , value); 908 } 909 910 public String fhirType() { 911 return "CodeSystem.filter"; 912 913 } 914 915 } 916 917 @Block() 918 public static class PropertyComponent extends BackboneElement implements IBaseBackboneElement { 919 /** 920 * A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters. 921 */ 922 @Child(name = "code", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 923 @Description(shortDefinition="Identifies the property on the concepts, and when referred to in operations", formalDefinition="A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters." ) 924 protected CodeType code; 925 926 /** 927 * Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system. 928 */ 929 @Child(name = "uri", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=true) 930 @Description(shortDefinition="Formal identifier for the property", formalDefinition="Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system." ) 931 protected UriType uri; 932 933 /** 934 * A description of the property- why it is defined, and how its value might be used. 935 */ 936 @Child(name = "description", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) 937 @Description(shortDefinition="Why the property is defined, and/or what it conveys", formalDefinition="A description of the property- why it is defined, and how its value might be used." ) 938 protected StringType description; 939 940 /** 941 * The type of the property value. Properties of type "code" contain a code defined by the code system (e.g. a reference to another defined concept). 942 */ 943 @Child(name = "type", type = {CodeType.class}, order=4, min=1, max=1, modifier=false, summary=true) 944 @Description(shortDefinition="code | Coding | string | integer | boolean | dateTime | decimal", formalDefinition="The type of the property value. Properties of type \"code\" contain a code defined by the code system (e.g. a reference to another defined concept)." ) 945 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/concept-property-type") 946 protected Enumeration<PropertyType> type; 947 948 private static final long serialVersionUID = -1810713373L; 949 950 /** 951 * Constructor 952 */ 953 public PropertyComponent() { 954 super(); 955 } 956 957 /** 958 * Constructor 959 */ 960 public PropertyComponent(String code, PropertyType type) { 961 super(); 962 this.setCode(code); 963 this.setType(type); 964 } 965 966 /** 967 * @return {@link #code} (A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 968 */ 969 public CodeType getCodeElement() { 970 if (this.code == null) 971 if (Configuration.errorOnAutoCreate()) 972 throw new Error("Attempt to auto-create PropertyComponent.code"); 973 else if (Configuration.doAutoCreate()) 974 this.code = new CodeType(); // bb 975 return this.code; 976 } 977 978 public boolean hasCodeElement() { 979 return this.code != null && !this.code.isEmpty(); 980 } 981 982 public boolean hasCode() { 983 return this.code != null && !this.code.isEmpty(); 984 } 985 986 /** 987 * @param value {@link #code} (A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 988 */ 989 public PropertyComponent setCodeElement(CodeType value) { 990 this.code = value; 991 return this; 992 } 993 994 /** 995 * @return A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters. 996 */ 997 public String getCode() { 998 return this.code == null ? null : this.code.getValue(); 999 } 1000 1001 /** 1002 * @param value A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters. 1003 */ 1004 public PropertyComponent setCode(String value) { 1005 if (this.code == null) 1006 this.code = new CodeType(); 1007 this.code.setValue(value); 1008 return this; 1009 } 1010 1011 /** 1012 * @return {@link #uri} (Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system.). This is the underlying object with id, value and extensions. The accessor "getUri" gives direct access to the value 1013 */ 1014 public UriType getUriElement() { 1015 if (this.uri == null) 1016 if (Configuration.errorOnAutoCreate()) 1017 throw new Error("Attempt to auto-create PropertyComponent.uri"); 1018 else if (Configuration.doAutoCreate()) 1019 this.uri = new UriType(); // bb 1020 return this.uri; 1021 } 1022 1023 public boolean hasUriElement() { 1024 return this.uri != null && !this.uri.isEmpty(); 1025 } 1026 1027 public boolean hasUri() { 1028 return this.uri != null && !this.uri.isEmpty(); 1029 } 1030 1031 /** 1032 * @param value {@link #uri} (Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system.). This is the underlying object with id, value and extensions. The accessor "getUri" gives direct access to the value 1033 */ 1034 public PropertyComponent setUriElement(UriType value) { 1035 this.uri = value; 1036 return this; 1037 } 1038 1039 /** 1040 * @return Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system. 1041 */ 1042 public String getUri() { 1043 return this.uri == null ? null : this.uri.getValue(); 1044 } 1045 1046 /** 1047 * @param value Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system. 1048 */ 1049 public PropertyComponent setUri(String value) { 1050 if (Utilities.noString(value)) 1051 this.uri = null; 1052 else { 1053 if (this.uri == null) 1054 this.uri = new UriType(); 1055 this.uri.setValue(value); 1056 } 1057 return this; 1058 } 1059 1060 /** 1061 * @return {@link #description} (A description of the property- why it is defined, and how its value might be used.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1062 */ 1063 public StringType getDescriptionElement() { 1064 if (this.description == null) 1065 if (Configuration.errorOnAutoCreate()) 1066 throw new Error("Attempt to auto-create PropertyComponent.description"); 1067 else if (Configuration.doAutoCreate()) 1068 this.description = new StringType(); // bb 1069 return this.description; 1070 } 1071 1072 public boolean hasDescriptionElement() { 1073 return this.description != null && !this.description.isEmpty(); 1074 } 1075 1076 public boolean hasDescription() { 1077 return this.description != null && !this.description.isEmpty(); 1078 } 1079 1080 /** 1081 * @param value {@link #description} (A description of the property- why it is defined, and how its value might be used.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 1082 */ 1083 public PropertyComponent setDescriptionElement(StringType value) { 1084 this.description = value; 1085 return this; 1086 } 1087 1088 /** 1089 * @return A description of the property- why it is defined, and how its value might be used. 1090 */ 1091 public String getDescription() { 1092 return this.description == null ? null : this.description.getValue(); 1093 } 1094 1095 /** 1096 * @param value A description of the property- why it is defined, and how its value might be used. 1097 */ 1098 public PropertyComponent setDescription(String value) { 1099 if (Utilities.noString(value)) 1100 this.description = null; 1101 else { 1102 if (this.description == null) 1103 this.description = new StringType(); 1104 this.description.setValue(value); 1105 } 1106 return this; 1107 } 1108 1109 /** 1110 * @return {@link #type} (The type of the property value. Properties of type "code" contain a code defined by the code system (e.g. a reference to another defined concept).). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 1111 */ 1112 public Enumeration<PropertyType> getTypeElement() { 1113 if (this.type == null) 1114 if (Configuration.errorOnAutoCreate()) 1115 throw new Error("Attempt to auto-create PropertyComponent.type"); 1116 else if (Configuration.doAutoCreate()) 1117 this.type = new Enumeration<PropertyType>(new PropertyTypeEnumFactory()); // bb 1118 return this.type; 1119 } 1120 1121 public boolean hasTypeElement() { 1122 return this.type != null && !this.type.isEmpty(); 1123 } 1124 1125 public boolean hasType() { 1126 return this.type != null && !this.type.isEmpty(); 1127 } 1128 1129 /** 1130 * @param value {@link #type} (The type of the property value. Properties of type "code" contain a code defined by the code system (e.g. a reference to another defined concept).). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 1131 */ 1132 public PropertyComponent setTypeElement(Enumeration<PropertyType> value) { 1133 this.type = value; 1134 return this; 1135 } 1136 1137 /** 1138 * @return The type of the property value. Properties of type "code" contain a code defined by the code system (e.g. a reference to another defined concept). 1139 */ 1140 public PropertyType getType() { 1141 return this.type == null ? null : this.type.getValue(); 1142 } 1143 1144 /** 1145 * @param value The type of the property value. Properties of type "code" contain a code defined by the code system (e.g. a reference to another defined concept). 1146 */ 1147 public PropertyComponent setType(PropertyType value) { 1148 if (this.type == null) 1149 this.type = new Enumeration<PropertyType>(new PropertyTypeEnumFactory()); 1150 this.type.setValue(value); 1151 return this; 1152 } 1153 1154 protected void listChildren(List<Property> children) { 1155 super.listChildren(children); 1156 children.add(new Property("code", "code", "A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters.", 0, 1, code)); 1157 children.add(new Property("uri", "uri", "Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system.", 0, 1, uri)); 1158 children.add(new Property("description", "string", "A description of the property- why it is defined, and how its value might be used.", 0, 1, description)); 1159 children.add(new Property("type", "code", "The type of the property value. Properties of type \"code\" contain a code defined by the code system (e.g. a reference to another defined concept).", 0, 1, type)); 1160 } 1161 1162 @Override 1163 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1164 switch (_hash) { 1165 case 3059181: /*code*/ return new Property("code", "code", "A code that is used to identify the property. The code is used internally (in CodeSystem.concept.property.code) and also externally, such as in property filters.", 0, 1, code); 1166 case 116076: /*uri*/ return new Property("uri", "uri", "Reference to the formal meaning of the property. One possible source of meaning is the [Concept Properties](codesystem-concept-properties.html) code system.", 0, 1, uri); 1167 case -1724546052: /*description*/ return new Property("description", "string", "A description of the property- why it is defined, and how its value might be used.", 0, 1, description); 1168 case 3575610: /*type*/ return new Property("type", "code", "The type of the property value. Properties of type \"code\" contain a code defined by the code system (e.g. a reference to another defined concept).", 0, 1, type); 1169 default: return super.getNamedProperty(_hash, _name, _checkValid); 1170 } 1171 1172 } 1173 1174 @Override 1175 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1176 switch (hash) { 1177 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeType 1178 case 116076: /*uri*/ return this.uri == null ? new Base[0] : new Base[] {this.uri}; // UriType 1179 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType 1180 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Enumeration<PropertyType> 1181 default: return super.getProperty(hash, name, checkValid); 1182 } 1183 1184 } 1185 1186 @Override 1187 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1188 switch (hash) { 1189 case 3059181: // code 1190 this.code = TypeConvertor.castToCode(value); // CodeType 1191 return value; 1192 case 116076: // uri 1193 this.uri = TypeConvertor.castToUri(value); // UriType 1194 return value; 1195 case -1724546052: // description 1196 this.description = TypeConvertor.castToString(value); // StringType 1197 return value; 1198 case 3575610: // type 1199 value = new PropertyTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); 1200 this.type = (Enumeration) value; // Enumeration<PropertyType> 1201 return value; 1202 default: return super.setProperty(hash, name, value); 1203 } 1204 1205 } 1206 1207 @Override 1208 public Base setProperty(String name, Base value) throws FHIRException { 1209 if (name.equals("code")) { 1210 this.code = TypeConvertor.castToCode(value); // CodeType 1211 } else if (name.equals("uri")) { 1212 this.uri = TypeConvertor.castToUri(value); // UriType 1213 } else if (name.equals("description")) { 1214 this.description = TypeConvertor.castToString(value); // StringType 1215 } else if (name.equals("type")) { 1216 value = new PropertyTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); 1217 this.type = (Enumeration) value; // Enumeration<PropertyType> 1218 } else 1219 return super.setProperty(name, value); 1220 return value; 1221 } 1222 1223 @Override 1224 public Base makeProperty(int hash, String name) throws FHIRException { 1225 switch (hash) { 1226 case 3059181: return getCodeElement(); 1227 case 116076: return getUriElement(); 1228 case -1724546052: return getDescriptionElement(); 1229 case 3575610: return getTypeElement(); 1230 default: return super.makeProperty(hash, name); 1231 } 1232 1233 } 1234 1235 @Override 1236 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1237 switch (hash) { 1238 case 3059181: /*code*/ return new String[] {"code"}; 1239 case 116076: /*uri*/ return new String[] {"uri"}; 1240 case -1724546052: /*description*/ return new String[] {"string"}; 1241 case 3575610: /*type*/ return new String[] {"code"}; 1242 default: return super.getTypesForProperty(hash, name); 1243 } 1244 1245 } 1246 1247 @Override 1248 public Base addChild(String name) throws FHIRException { 1249 if (name.equals("code")) { 1250 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.property.code"); 1251 } 1252 else if (name.equals("uri")) { 1253 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.property.uri"); 1254 } 1255 else if (name.equals("description")) { 1256 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.property.description"); 1257 } 1258 else if (name.equals("type")) { 1259 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.property.type"); 1260 } 1261 else 1262 return super.addChild(name); 1263 } 1264 1265 public PropertyComponent copy() { 1266 PropertyComponent dst = new PropertyComponent(); 1267 copyValues(dst); 1268 return dst; 1269 } 1270 1271 public void copyValues(PropertyComponent dst) { 1272 super.copyValues(dst); 1273 dst.code = code == null ? null : code.copy(); 1274 dst.uri = uri == null ? null : uri.copy(); 1275 dst.description = description == null ? null : description.copy(); 1276 dst.type = type == null ? null : type.copy(); 1277 } 1278 1279 @Override 1280 public boolean equalsDeep(Base other_) { 1281 if (!super.equalsDeep(other_)) 1282 return false; 1283 if (!(other_ instanceof PropertyComponent)) 1284 return false; 1285 PropertyComponent o = (PropertyComponent) other_; 1286 return compareDeep(code, o.code, true) && compareDeep(uri, o.uri, true) && compareDeep(description, o.description, true) 1287 && compareDeep(type, o.type, true); 1288 } 1289 1290 @Override 1291 public boolean equalsShallow(Base other_) { 1292 if (!super.equalsShallow(other_)) 1293 return false; 1294 if (!(other_ instanceof PropertyComponent)) 1295 return false; 1296 PropertyComponent o = (PropertyComponent) other_; 1297 return compareValues(code, o.code, true) && compareValues(uri, o.uri, true) && compareValues(description, o.description, true) 1298 && compareValues(type, o.type, true); 1299 } 1300 1301 public boolean isEmpty() { 1302 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, uri, description, type 1303 ); 1304 } 1305 1306 public String fhirType() { 1307 return "CodeSystem.property"; 1308 1309 } 1310 1311 } 1312 1313 @Block() 1314 public static class ConceptDefinitionComponent extends BackboneElement implements IBaseBackboneElement { 1315 /** 1316 * A code - a text symbol - that uniquely identifies the concept within the code system. 1317 */ 1318 @Child(name = "code", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=false) 1319 @Description(shortDefinition="Code that identifies concept", formalDefinition="A code - a text symbol - that uniquely identifies the concept within the code system." ) 1320 protected CodeType code; 1321 1322 /** 1323 * A human readable string that is the recommended default way to present this concept to a user. 1324 */ 1325 @Child(name = "display", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) 1326 @Description(shortDefinition="Text to display to the user", formalDefinition="A human readable string that is the recommended default way to present this concept to a user." ) 1327 protected StringType display; 1328 1329 /** 1330 * The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept. 1331 */ 1332 @Child(name = "definition", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) 1333 @Description(shortDefinition="Formal definition", formalDefinition="The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept." ) 1334 protected StringType definition; 1335 1336 /** 1337 * Additional representations for the concept - other languages, aliases, specialized purposes, used for particular purposes, etc. 1338 */ 1339 @Child(name = "designation", type = {}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1340 @Description(shortDefinition="Additional representations for the concept", formalDefinition="Additional representations for the concept - other languages, aliases, specialized purposes, used for particular purposes, etc." ) 1341 protected List<ConceptDefinitionDesignationComponent> designation; 1342 1343 /** 1344 * A property value for this concept. 1345 */ 1346 @Child(name = "property", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1347 @Description(shortDefinition="Property value for the concept", formalDefinition="A property value for this concept." ) 1348 protected List<ConceptPropertyComponent> property; 1349 1350 /** 1351 * Defines children of a concept to produce a hierarchy of concepts. The nature of the relationships is variable (is-a/contains/categorizes) - see hierarchyMeaning. 1352 */ 1353 @Child(name = "concept", type = {ConceptDefinitionComponent.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1354 @Description(shortDefinition="Child Concepts (is-a/contains/categorizes)", formalDefinition="Defines children of a concept to produce a hierarchy of concepts. The nature of the relationships is variable (is-a/contains/categorizes) - see hierarchyMeaning." ) 1355 protected List<ConceptDefinitionComponent> concept; 1356 1357 private static final long serialVersionUID = 878320988L; 1358 1359 /** 1360 * Constructor 1361 */ 1362 public ConceptDefinitionComponent() { 1363 super(); 1364 } 1365 1366 /** 1367 * Constructor 1368 */ 1369 public ConceptDefinitionComponent(String code) { 1370 super(); 1371 this.setCode(code); 1372 } 1373 1374 /** 1375 * @return {@link #code} (A code - a text symbol - that uniquely identifies the concept within the code system.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 1376 */ 1377 public CodeType getCodeElement() { 1378 if (this.code == null) 1379 if (Configuration.errorOnAutoCreate()) 1380 throw new Error("Attempt to auto-create ConceptDefinitionComponent.code"); 1381 else if (Configuration.doAutoCreate()) 1382 this.code = new CodeType(); // bb 1383 return this.code; 1384 } 1385 1386 public boolean hasCodeElement() { 1387 return this.code != null && !this.code.isEmpty(); 1388 } 1389 1390 public boolean hasCode() { 1391 return this.code != null && !this.code.isEmpty(); 1392 } 1393 1394 /** 1395 * @param value {@link #code} (A code - a text symbol - that uniquely identifies the concept within the code system.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 1396 */ 1397 public ConceptDefinitionComponent setCodeElement(CodeType value) { 1398 this.code = value; 1399 return this; 1400 } 1401 1402 /** 1403 * @return A code - a text symbol - that uniquely identifies the concept within the code system. 1404 */ 1405 public String getCode() { 1406 return this.code == null ? null : this.code.getValue(); 1407 } 1408 1409 /** 1410 * @param value A code - a text symbol - that uniquely identifies the concept within the code system. 1411 */ 1412 public ConceptDefinitionComponent setCode(String value) { 1413 if (this.code == null) 1414 this.code = new CodeType(); 1415 this.code.setValue(value); 1416 return this; 1417 } 1418 1419 /** 1420 * @return {@link #display} (A human readable string that is the recommended default way to present this concept to a user.). This is the underlying object with id, value and extensions. The accessor "getDisplay" gives direct access to the value 1421 */ 1422 public StringType getDisplayElement() { 1423 if (this.display == null) 1424 if (Configuration.errorOnAutoCreate()) 1425 throw new Error("Attempt to auto-create ConceptDefinitionComponent.display"); 1426 else if (Configuration.doAutoCreate()) 1427 this.display = new StringType(); // bb 1428 return this.display; 1429 } 1430 1431 public boolean hasDisplayElement() { 1432 return this.display != null && !this.display.isEmpty(); 1433 } 1434 1435 public boolean hasDisplay() { 1436 return this.display != null && !this.display.isEmpty(); 1437 } 1438 1439 /** 1440 * @param value {@link #display} (A human readable string that is the recommended default way to present this concept to a user.). This is the underlying object with id, value and extensions. The accessor "getDisplay" gives direct access to the value 1441 */ 1442 public ConceptDefinitionComponent setDisplayElement(StringType value) { 1443 this.display = value; 1444 return this; 1445 } 1446 1447 /** 1448 * @return A human readable string that is the recommended default way to present this concept to a user. 1449 */ 1450 public String getDisplay() { 1451 return this.display == null ? null : this.display.getValue(); 1452 } 1453 1454 /** 1455 * @param value A human readable string that is the recommended default way to present this concept to a user. 1456 */ 1457 public ConceptDefinitionComponent setDisplay(String value) { 1458 if (Utilities.noString(value)) 1459 this.display = null; 1460 else { 1461 if (this.display == null) 1462 this.display = new StringType(); 1463 this.display.setValue(value); 1464 } 1465 return this; 1466 } 1467 1468 /** 1469 * @return {@link #definition} (The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept.). This is the underlying object with id, value and extensions. The accessor "getDefinition" gives direct access to the value 1470 */ 1471 public StringType getDefinitionElement() { 1472 if (this.definition == null) 1473 if (Configuration.errorOnAutoCreate()) 1474 throw new Error("Attempt to auto-create ConceptDefinitionComponent.definition"); 1475 else if (Configuration.doAutoCreate()) 1476 this.definition = new StringType(); // bb 1477 return this.definition; 1478 } 1479 1480 public boolean hasDefinitionElement() { 1481 return this.definition != null && !this.definition.isEmpty(); 1482 } 1483 1484 public boolean hasDefinition() { 1485 return this.definition != null && !this.definition.isEmpty(); 1486 } 1487 1488 /** 1489 * @param value {@link #definition} (The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept.). This is the underlying object with id, value and extensions. The accessor "getDefinition" gives direct access to the value 1490 */ 1491 public ConceptDefinitionComponent setDefinitionElement(StringType value) { 1492 this.definition = value; 1493 return this; 1494 } 1495 1496 /** 1497 * @return The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept. 1498 */ 1499 public String getDefinition() { 1500 return this.definition == null ? null : this.definition.getValue(); 1501 } 1502 1503 /** 1504 * @param value The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept. 1505 */ 1506 public ConceptDefinitionComponent setDefinition(String value) { 1507 if (Utilities.noString(value)) 1508 this.definition = null; 1509 else { 1510 if (this.definition == null) 1511 this.definition = new StringType(); 1512 this.definition.setValue(value); 1513 } 1514 return this; 1515 } 1516 1517 /** 1518 * @return {@link #designation} (Additional representations for the concept - other languages, aliases, specialized purposes, used for particular purposes, etc.) 1519 */ 1520 public List<ConceptDefinitionDesignationComponent> getDesignation() { 1521 if (this.designation == null) 1522 this.designation = new ArrayList<ConceptDefinitionDesignationComponent>(); 1523 return this.designation; 1524 } 1525 1526 /** 1527 * @return Returns a reference to <code>this</code> for easy method chaining 1528 */ 1529 public ConceptDefinitionComponent setDesignation(List<ConceptDefinitionDesignationComponent> theDesignation) { 1530 this.designation = theDesignation; 1531 return this; 1532 } 1533 1534 public boolean hasDesignation() { 1535 if (this.designation == null) 1536 return false; 1537 for (ConceptDefinitionDesignationComponent item : this.designation) 1538 if (!item.isEmpty()) 1539 return true; 1540 return false; 1541 } 1542 1543 public ConceptDefinitionDesignationComponent addDesignation() { //3 1544 ConceptDefinitionDesignationComponent t = new ConceptDefinitionDesignationComponent(); 1545 if (this.designation == null) 1546 this.designation = new ArrayList<ConceptDefinitionDesignationComponent>(); 1547 this.designation.add(t); 1548 return t; 1549 } 1550 1551 public ConceptDefinitionComponent addDesignation(ConceptDefinitionDesignationComponent t) { //3 1552 if (t == null) 1553 return this; 1554 if (this.designation == null) 1555 this.designation = new ArrayList<ConceptDefinitionDesignationComponent>(); 1556 this.designation.add(t); 1557 return this; 1558 } 1559 1560 /** 1561 * @return The first repetition of repeating field {@link #designation}, creating it if it does not already exist {3} 1562 */ 1563 public ConceptDefinitionDesignationComponent getDesignationFirstRep() { 1564 if (getDesignation().isEmpty()) { 1565 addDesignation(); 1566 } 1567 return getDesignation().get(0); 1568 } 1569 1570 /** 1571 * @return {@link #property} (A property value for this concept.) 1572 */ 1573 public List<ConceptPropertyComponent> getProperty() { 1574 if (this.property == null) 1575 this.property = new ArrayList<ConceptPropertyComponent>(); 1576 return this.property; 1577 } 1578 1579 /** 1580 * @return Returns a reference to <code>this</code> for easy method chaining 1581 */ 1582 public ConceptDefinitionComponent setProperty(List<ConceptPropertyComponent> theProperty) { 1583 this.property = theProperty; 1584 return this; 1585 } 1586 1587 public boolean hasProperty() { 1588 if (this.property == null) 1589 return false; 1590 for (ConceptPropertyComponent item : this.property) 1591 if (!item.isEmpty()) 1592 return true; 1593 return false; 1594 } 1595 1596 public ConceptPropertyComponent addProperty() { //3 1597 ConceptPropertyComponent t = new ConceptPropertyComponent(); 1598 if (this.property == null) 1599 this.property = new ArrayList<ConceptPropertyComponent>(); 1600 this.property.add(t); 1601 return t; 1602 } 1603 1604 public ConceptDefinitionComponent addProperty(ConceptPropertyComponent t) { //3 1605 if (t == null) 1606 return this; 1607 if (this.property == null) 1608 this.property = new ArrayList<ConceptPropertyComponent>(); 1609 this.property.add(t); 1610 return this; 1611 } 1612 1613 /** 1614 * @return The first repetition of repeating field {@link #property}, creating it if it does not already exist {3} 1615 */ 1616 public ConceptPropertyComponent getPropertyFirstRep() { 1617 if (getProperty().isEmpty()) { 1618 addProperty(); 1619 } 1620 return getProperty().get(0); 1621 } 1622 1623 /** 1624 * @return {@link #concept} (Defines children of a concept to produce a hierarchy of concepts. The nature of the relationships is variable (is-a/contains/categorizes) - see hierarchyMeaning.) 1625 */ 1626 public List<ConceptDefinitionComponent> getConcept() { 1627 if (this.concept == null) 1628 this.concept = new ArrayList<ConceptDefinitionComponent>(); 1629 return this.concept; 1630 } 1631 1632 /** 1633 * @return Returns a reference to <code>this</code> for easy method chaining 1634 */ 1635 public ConceptDefinitionComponent setConcept(List<ConceptDefinitionComponent> theConcept) { 1636 this.concept = theConcept; 1637 return this; 1638 } 1639 1640 public boolean hasConcept() { 1641 if (this.concept == null) 1642 return false; 1643 for (ConceptDefinitionComponent item : this.concept) 1644 if (!item.isEmpty()) 1645 return true; 1646 return false; 1647 } 1648 1649 public ConceptDefinitionComponent addConcept() { //3 1650 ConceptDefinitionComponent t = new ConceptDefinitionComponent(); 1651 if (this.concept == null) 1652 this.concept = new ArrayList<ConceptDefinitionComponent>(); 1653 this.concept.add(t); 1654 return t; 1655 } 1656 1657 public ConceptDefinitionComponent addConcept(ConceptDefinitionComponent t) { //3 1658 if (t == null) 1659 return this; 1660 if (this.concept == null) 1661 this.concept = new ArrayList<ConceptDefinitionComponent>(); 1662 this.concept.add(t); 1663 return this; 1664 } 1665 1666 /** 1667 * @return The first repetition of repeating field {@link #concept}, creating it if it does not already exist {3} 1668 */ 1669 public ConceptDefinitionComponent getConceptFirstRep() { 1670 if (getConcept().isEmpty()) { 1671 addConcept(); 1672 } 1673 return getConcept().get(0); 1674 } 1675 1676 protected void listChildren(List<Property> children) { 1677 super.listChildren(children); 1678 children.add(new Property("code", "code", "A code - a text symbol - that uniquely identifies the concept within the code system.", 0, 1, code)); 1679 children.add(new Property("display", "string", "A human readable string that is the recommended default way to present this concept to a user.", 0, 1, display)); 1680 children.add(new Property("definition", "string", "The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept.", 0, 1, definition)); 1681 children.add(new Property("designation", "", "Additional representations for the concept - other languages, aliases, specialized purposes, used for particular purposes, etc.", 0, java.lang.Integer.MAX_VALUE, designation)); 1682 children.add(new Property("property", "", "A property value for this concept.", 0, java.lang.Integer.MAX_VALUE, property)); 1683 children.add(new Property("concept", "@CodeSystem.concept", "Defines children of a concept to produce a hierarchy of concepts. The nature of the relationships is variable (is-a/contains/categorizes) - see hierarchyMeaning.", 0, java.lang.Integer.MAX_VALUE, concept)); 1684 } 1685 1686 @Override 1687 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1688 switch (_hash) { 1689 case 3059181: /*code*/ return new Property("code", "code", "A code - a text symbol - that uniquely identifies the concept within the code system.", 0, 1, code); 1690 case 1671764162: /*display*/ return new Property("display", "string", "A human readable string that is the recommended default way to present this concept to a user.", 0, 1, display); 1691 case -1014418093: /*definition*/ return new Property("definition", "string", "The formal definition of the concept. The code system resource does not make formal definitions required, because of the prevalence of legacy systems. However, they are highly recommended, as without them there is no formal meaning associated with the concept.", 0, 1, definition); 1692 case -900931593: /*designation*/ return new Property("designation", "", "Additional representations for the concept - other languages, aliases, specialized purposes, used for particular purposes, etc.", 0, java.lang.Integer.MAX_VALUE, designation); 1693 case -993141291: /*property*/ return new Property("property", "", "A property value for this concept.", 0, java.lang.Integer.MAX_VALUE, property); 1694 case 951024232: /*concept*/ return new Property("concept", "@CodeSystem.concept", "Defines children of a concept to produce a hierarchy of concepts. The nature of the relationships is variable (is-a/contains/categorizes) - see hierarchyMeaning.", 0, java.lang.Integer.MAX_VALUE, concept); 1695 default: return super.getNamedProperty(_hash, _name, _checkValid); 1696 } 1697 1698 } 1699 1700 @Override 1701 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1702 switch (hash) { 1703 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeType 1704 case 1671764162: /*display*/ return this.display == null ? new Base[0] : new Base[] {this.display}; // StringType 1705 case -1014418093: /*definition*/ return this.definition == null ? new Base[0] : new Base[] {this.definition}; // StringType 1706 case -900931593: /*designation*/ return this.designation == null ? new Base[0] : this.designation.toArray(new Base[this.designation.size()]); // ConceptDefinitionDesignationComponent 1707 case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // ConceptPropertyComponent 1708 case 951024232: /*concept*/ return this.concept == null ? new Base[0] : this.concept.toArray(new Base[this.concept.size()]); // ConceptDefinitionComponent 1709 default: return super.getProperty(hash, name, checkValid); 1710 } 1711 1712 } 1713 1714 @Override 1715 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1716 switch (hash) { 1717 case 3059181: // code 1718 this.code = TypeConvertor.castToCode(value); // CodeType 1719 return value; 1720 case 1671764162: // display 1721 this.display = TypeConvertor.castToString(value); // StringType 1722 return value; 1723 case -1014418093: // definition 1724 this.definition = TypeConvertor.castToString(value); // StringType 1725 return value; 1726 case -900931593: // designation 1727 this.getDesignation().add((ConceptDefinitionDesignationComponent) value); // ConceptDefinitionDesignationComponent 1728 return value; 1729 case -993141291: // property 1730 this.getProperty().add((ConceptPropertyComponent) value); // ConceptPropertyComponent 1731 return value; 1732 case 951024232: // concept 1733 this.getConcept().add((ConceptDefinitionComponent) value); // ConceptDefinitionComponent 1734 return value; 1735 default: return super.setProperty(hash, name, value); 1736 } 1737 1738 } 1739 1740 @Override 1741 public Base setProperty(String name, Base value) throws FHIRException { 1742 if (name.equals("code")) { 1743 this.code = TypeConvertor.castToCode(value); // CodeType 1744 } else if (name.equals("display")) { 1745 this.display = TypeConvertor.castToString(value); // StringType 1746 } else if (name.equals("definition")) { 1747 this.definition = TypeConvertor.castToString(value); // StringType 1748 } else if (name.equals("designation")) { 1749 this.getDesignation().add((ConceptDefinitionDesignationComponent) value); 1750 } else if (name.equals("property")) { 1751 this.getProperty().add((ConceptPropertyComponent) value); 1752 } else if (name.equals("concept")) { 1753 this.getConcept().add((ConceptDefinitionComponent) value); 1754 } else 1755 return super.setProperty(name, value); 1756 return value; 1757 } 1758 1759 @Override 1760 public Base makeProperty(int hash, String name) throws FHIRException { 1761 switch (hash) { 1762 case 3059181: return getCodeElement(); 1763 case 1671764162: return getDisplayElement(); 1764 case -1014418093: return getDefinitionElement(); 1765 case -900931593: return addDesignation(); 1766 case -993141291: return addProperty(); 1767 case 951024232: return addConcept(); 1768 default: return super.makeProperty(hash, name); 1769 } 1770 1771 } 1772 1773 @Override 1774 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1775 switch (hash) { 1776 case 3059181: /*code*/ return new String[] {"code"}; 1777 case 1671764162: /*display*/ return new String[] {"string"}; 1778 case -1014418093: /*definition*/ return new String[] {"string"}; 1779 case -900931593: /*designation*/ return new String[] {}; 1780 case -993141291: /*property*/ return new String[] {}; 1781 case 951024232: /*concept*/ return new String[] {"@CodeSystem.concept"}; 1782 default: return super.getTypesForProperty(hash, name); 1783 } 1784 1785 } 1786 1787 @Override 1788 public Base addChild(String name) throws FHIRException { 1789 if (name.equals("code")) { 1790 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.concept.code"); 1791 } 1792 else if (name.equals("display")) { 1793 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.concept.display"); 1794 } 1795 else if (name.equals("definition")) { 1796 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.concept.definition"); 1797 } 1798 else if (name.equals("designation")) { 1799 return addDesignation(); 1800 } 1801 else if (name.equals("property")) { 1802 return addProperty(); 1803 } 1804 else if (name.equals("concept")) { 1805 return addConcept(); 1806 } 1807 else 1808 return super.addChild(name); 1809 } 1810 1811 public ConceptDefinitionComponent copy() { 1812 ConceptDefinitionComponent dst = new ConceptDefinitionComponent(); 1813 copyValues(dst); 1814 return dst; 1815 } 1816 1817 public void copyValues(ConceptDefinitionComponent dst) { 1818 super.copyValues(dst); 1819 dst.code = code == null ? null : code.copy(); 1820 dst.display = display == null ? null : display.copy(); 1821 dst.definition = definition == null ? null : definition.copy(); 1822 if (designation != null) { 1823 dst.designation = new ArrayList<ConceptDefinitionDesignationComponent>(); 1824 for (ConceptDefinitionDesignationComponent i : designation) 1825 dst.designation.add(i.copy()); 1826 }; 1827 if (property != null) { 1828 dst.property = new ArrayList<ConceptPropertyComponent>(); 1829 for (ConceptPropertyComponent i : property) 1830 dst.property.add(i.copy()); 1831 }; 1832 if (concept != null) { 1833 dst.concept = new ArrayList<ConceptDefinitionComponent>(); 1834 for (ConceptDefinitionComponent i : concept) 1835 dst.concept.add(i.copy()); 1836 }; 1837 } 1838 1839 @Override 1840 public boolean equalsDeep(Base other_) { 1841 if (!super.equalsDeep(other_)) 1842 return false; 1843 if (!(other_ instanceof ConceptDefinitionComponent)) 1844 return false; 1845 ConceptDefinitionComponent o = (ConceptDefinitionComponent) other_; 1846 return compareDeep(code, o.code, true) && compareDeep(display, o.display, true) && compareDeep(definition, o.definition, true) 1847 && compareDeep(designation, o.designation, true) && compareDeep(property, o.property, true) && compareDeep(concept, o.concept, true) 1848 ; 1849 } 1850 1851 @Override 1852 public boolean equalsShallow(Base other_) { 1853 if (!super.equalsShallow(other_)) 1854 return false; 1855 if (!(other_ instanceof ConceptDefinitionComponent)) 1856 return false; 1857 ConceptDefinitionComponent o = (ConceptDefinitionComponent) other_; 1858 return compareValues(code, o.code, true) && compareValues(display, o.display, true) && compareValues(definition, o.definition, true) 1859 ; 1860 } 1861 1862 public boolean isEmpty() { 1863 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, display, definition 1864 , designation, property, concept); 1865 } 1866 1867 public String fhirType() { 1868 return "CodeSystem.concept"; 1869 1870 } 1871 1872// added from java-adornments.txt: 1873@Override 1874 public String toString() { 1875 return getCode()+": "+getDisplay(); 1876 } 1877// end addition 1878 } 1879 1880 @Block() 1881 public static class ConceptDefinitionDesignationComponent extends BackboneElement implements IBaseBackboneElement { 1882 /** 1883 * The language this designation is defined for. 1884 */ 1885 @Child(name = "language", type = {CodeType.class}, order=1, min=0, max=1, modifier=false, summary=false) 1886 @Description(shortDefinition="Human language of the designation", formalDefinition="The language this designation is defined for." ) 1887 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/languages") 1888 protected CodeType language; 1889 1890 /** 1891 * A code that details how this designation would be used. 1892 */ 1893 @Child(name = "use", type = {Coding.class}, order=2, min=0, max=1, modifier=false, summary=false) 1894 @Description(shortDefinition="Details how this designation would be used", formalDefinition="A code that details how this designation would be used." ) 1895 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/designation-use") 1896 protected Coding use; 1897 1898 /** 1899 * Additional codes that detail how this designation would be used, if there is more than one use. 1900 */ 1901 @Child(name = "additionalUse", type = {Coding.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1902 @Description(shortDefinition="Additional ways how this designation would be used", formalDefinition="Additional codes that detail how this designation would be used, if there is more than one use." ) 1903 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/designation-use") 1904 protected List<Coding> additionalUse; 1905 1906 /** 1907 * The text value for this designation. 1908 */ 1909 @Child(name = "value", type = {StringType.class}, order=4, min=1, max=1, modifier=false, summary=false) 1910 @Description(shortDefinition="The text value for this designation", formalDefinition="The text value for this designation." ) 1911 protected StringType value; 1912 1913 private static final long serialVersionUID = -141147882L; 1914 1915 /** 1916 * Constructor 1917 */ 1918 public ConceptDefinitionDesignationComponent() { 1919 super(); 1920 } 1921 1922 /** 1923 * Constructor 1924 */ 1925 public ConceptDefinitionDesignationComponent(String value) { 1926 super(); 1927 this.setValue(value); 1928 } 1929 1930 /** 1931 * @return {@link #language} (The language this designation is defined for.). This is the underlying object with id, value and extensions. The accessor "getLanguage" gives direct access to the value 1932 */ 1933 public CodeType getLanguageElement() { 1934 if (this.language == null) 1935 if (Configuration.errorOnAutoCreate()) 1936 throw new Error("Attempt to auto-create ConceptDefinitionDesignationComponent.language"); 1937 else if (Configuration.doAutoCreate()) 1938 this.language = new CodeType(); // bb 1939 return this.language; 1940 } 1941 1942 public boolean hasLanguageElement() { 1943 return this.language != null && !this.language.isEmpty(); 1944 } 1945 1946 public boolean hasLanguage() { 1947 return this.language != null && !this.language.isEmpty(); 1948 } 1949 1950 /** 1951 * @param value {@link #language} (The language this designation is defined for.). This is the underlying object with id, value and extensions. The accessor "getLanguage" gives direct access to the value 1952 */ 1953 public ConceptDefinitionDesignationComponent setLanguageElement(CodeType value) { 1954 this.language = value; 1955 return this; 1956 } 1957 1958 /** 1959 * @return The language this designation is defined for. 1960 */ 1961 public String getLanguage() { 1962 return this.language == null ? null : this.language.getValue(); 1963 } 1964 1965 /** 1966 * @param value The language this designation is defined for. 1967 */ 1968 public ConceptDefinitionDesignationComponent setLanguage(String value) { 1969 if (Utilities.noString(value)) 1970 this.language = null; 1971 else { 1972 if (this.language == null) 1973 this.language = new CodeType(); 1974 this.language.setValue(value); 1975 } 1976 return this; 1977 } 1978 1979 /** 1980 * @return {@link #use} (A code that details how this designation would be used.) 1981 */ 1982 public Coding getUse() { 1983 if (this.use == null) 1984 if (Configuration.errorOnAutoCreate()) 1985 throw new Error("Attempt to auto-create ConceptDefinitionDesignationComponent.use"); 1986 else if (Configuration.doAutoCreate()) 1987 this.use = new Coding(); // cc 1988 return this.use; 1989 } 1990 1991 public boolean hasUse() { 1992 return this.use != null && !this.use.isEmpty(); 1993 } 1994 1995 /** 1996 * @param value {@link #use} (A code that details how this designation would be used.) 1997 */ 1998 public ConceptDefinitionDesignationComponent setUse(Coding value) { 1999 this.use = value; 2000 return this; 2001 } 2002 2003 /** 2004 * @return {@link #additionalUse} (Additional codes that detail how this designation would be used, if there is more than one use.) 2005 */ 2006 public List<Coding> getAdditionalUse() { 2007 if (this.additionalUse == null) 2008 this.additionalUse = new ArrayList<Coding>(); 2009 return this.additionalUse; 2010 } 2011 2012 /** 2013 * @return Returns a reference to <code>this</code> for easy method chaining 2014 */ 2015 public ConceptDefinitionDesignationComponent setAdditionalUse(List<Coding> theAdditionalUse) { 2016 this.additionalUse = theAdditionalUse; 2017 return this; 2018 } 2019 2020 public boolean hasAdditionalUse() { 2021 if (this.additionalUse == null) 2022 return false; 2023 for (Coding item : this.additionalUse) 2024 if (!item.isEmpty()) 2025 return true; 2026 return false; 2027 } 2028 2029 public Coding addAdditionalUse() { //3 2030 Coding t = new Coding(); 2031 if (this.additionalUse == null) 2032 this.additionalUse = new ArrayList<Coding>(); 2033 this.additionalUse.add(t); 2034 return t; 2035 } 2036 2037 public ConceptDefinitionDesignationComponent addAdditionalUse(Coding t) { //3 2038 if (t == null) 2039 return this; 2040 if (this.additionalUse == null) 2041 this.additionalUse = new ArrayList<Coding>(); 2042 this.additionalUse.add(t); 2043 return this; 2044 } 2045 2046 /** 2047 * @return The first repetition of repeating field {@link #additionalUse}, creating it if it does not already exist {3} 2048 */ 2049 public Coding getAdditionalUseFirstRep() { 2050 if (getAdditionalUse().isEmpty()) { 2051 addAdditionalUse(); 2052 } 2053 return getAdditionalUse().get(0); 2054 } 2055 2056 /** 2057 * @return {@link #value} (The text value for this designation.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 2058 */ 2059 public StringType getValueElement() { 2060 if (this.value == null) 2061 if (Configuration.errorOnAutoCreate()) 2062 throw new Error("Attempt to auto-create ConceptDefinitionDesignationComponent.value"); 2063 else if (Configuration.doAutoCreate()) 2064 this.value = new StringType(); // bb 2065 return this.value; 2066 } 2067 2068 public boolean hasValueElement() { 2069 return this.value != null && !this.value.isEmpty(); 2070 } 2071 2072 public boolean hasValue() { 2073 return this.value != null && !this.value.isEmpty(); 2074 } 2075 2076 /** 2077 * @param value {@link #value} (The text value for this designation.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value 2078 */ 2079 public ConceptDefinitionDesignationComponent setValueElement(StringType value) { 2080 this.value = value; 2081 return this; 2082 } 2083 2084 /** 2085 * @return The text value for this designation. 2086 */ 2087 public String getValue() { 2088 return this.value == null ? null : this.value.getValue(); 2089 } 2090 2091 /** 2092 * @param value The text value for this designation. 2093 */ 2094 public ConceptDefinitionDesignationComponent setValue(String value) { 2095 if (this.value == null) 2096 this.value = new StringType(); 2097 this.value.setValue(value); 2098 return this; 2099 } 2100 2101 protected void listChildren(List<Property> children) { 2102 super.listChildren(children); 2103 children.add(new Property("language", "code", "The language this designation is defined for.", 0, 1, language)); 2104 children.add(new Property("use", "Coding", "A code that details how this designation would be used.", 0, 1, use)); 2105 children.add(new Property("additionalUse", "Coding", "Additional codes that detail how this designation would be used, if there is more than one use.", 0, java.lang.Integer.MAX_VALUE, additionalUse)); 2106 children.add(new Property("value", "string", "The text value for this designation.", 0, 1, value)); 2107 } 2108 2109 @Override 2110 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 2111 switch (_hash) { 2112 case -1613589672: /*language*/ return new Property("language", "code", "The language this designation is defined for.", 0, 1, language); 2113 case 116103: /*use*/ return new Property("use", "Coding", "A code that details how this designation would be used.", 0, 1, use); 2114 case 938414048: /*additionalUse*/ return new Property("additionalUse", "Coding", "Additional codes that detail how this designation would be used, if there is more than one use.", 0, java.lang.Integer.MAX_VALUE, additionalUse); 2115 case 111972721: /*value*/ return new Property("value", "string", "The text value for this designation.", 0, 1, value); 2116 default: return super.getNamedProperty(_hash, _name, _checkValid); 2117 } 2118 2119 } 2120 2121 @Override 2122 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2123 switch (hash) { 2124 case -1613589672: /*language*/ return this.language == null ? new Base[0] : new Base[] {this.language}; // CodeType 2125 case 116103: /*use*/ return this.use == null ? new Base[0] : new Base[] {this.use}; // Coding 2126 case 938414048: /*additionalUse*/ return this.additionalUse == null ? new Base[0] : this.additionalUse.toArray(new Base[this.additionalUse.size()]); // Coding 2127 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // StringType 2128 default: return super.getProperty(hash, name, checkValid); 2129 } 2130 2131 } 2132 2133 @Override 2134 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2135 switch (hash) { 2136 case -1613589672: // language 2137 this.language = TypeConvertor.castToCode(value); // CodeType 2138 return value; 2139 case 116103: // use 2140 this.use = TypeConvertor.castToCoding(value); // Coding 2141 return value; 2142 case 938414048: // additionalUse 2143 this.getAdditionalUse().add(TypeConvertor.castToCoding(value)); // Coding 2144 return value; 2145 case 111972721: // value 2146 this.value = TypeConvertor.castToString(value); // StringType 2147 return value; 2148 default: return super.setProperty(hash, name, value); 2149 } 2150 2151 } 2152 2153 @Override 2154 public Base setProperty(String name, Base value) throws FHIRException { 2155 if (name.equals("language")) { 2156 this.language = TypeConvertor.castToCode(value); // CodeType 2157 } else if (name.equals("use")) { 2158 this.use = TypeConvertor.castToCoding(value); // Coding 2159 } else if (name.equals("additionalUse")) { 2160 this.getAdditionalUse().add(TypeConvertor.castToCoding(value)); 2161 } else if (name.equals("value")) { 2162 this.value = TypeConvertor.castToString(value); // StringType 2163 } else 2164 return super.setProperty(name, value); 2165 return value; 2166 } 2167 2168 @Override 2169 public Base makeProperty(int hash, String name) throws FHIRException { 2170 switch (hash) { 2171 case -1613589672: return getLanguageElement(); 2172 case 116103: return getUse(); 2173 case 938414048: return addAdditionalUse(); 2174 case 111972721: return getValueElement(); 2175 default: return super.makeProperty(hash, name); 2176 } 2177 2178 } 2179 2180 @Override 2181 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2182 switch (hash) { 2183 case -1613589672: /*language*/ return new String[] {"code"}; 2184 case 116103: /*use*/ return new String[] {"Coding"}; 2185 case 938414048: /*additionalUse*/ return new String[] {"Coding"}; 2186 case 111972721: /*value*/ return new String[] {"string"}; 2187 default: return super.getTypesForProperty(hash, name); 2188 } 2189 2190 } 2191 2192 @Override 2193 public Base addChild(String name) throws FHIRException { 2194 if (name.equals("language")) { 2195 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.concept.designation.language"); 2196 } 2197 else if (name.equals("use")) { 2198 this.use = new Coding(); 2199 return this.use; 2200 } 2201 else if (name.equals("additionalUse")) { 2202 return addAdditionalUse(); 2203 } 2204 else if (name.equals("value")) { 2205 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.concept.designation.value"); 2206 } 2207 else 2208 return super.addChild(name); 2209 } 2210 2211 public ConceptDefinitionDesignationComponent copy() { 2212 ConceptDefinitionDesignationComponent dst = new ConceptDefinitionDesignationComponent(); 2213 copyValues(dst); 2214 return dst; 2215 } 2216 2217 public void copyValues(ConceptDefinitionDesignationComponent dst) { 2218 super.copyValues(dst); 2219 dst.language = language == null ? null : language.copy(); 2220 dst.use = use == null ? null : use.copy(); 2221 if (additionalUse != null) { 2222 dst.additionalUse = new ArrayList<Coding>(); 2223 for (Coding i : additionalUse) 2224 dst.additionalUse.add(i.copy()); 2225 }; 2226 dst.value = value == null ? null : value.copy(); 2227 } 2228 2229 @Override 2230 public boolean equalsDeep(Base other_) { 2231 if (!super.equalsDeep(other_)) 2232 return false; 2233 if (!(other_ instanceof ConceptDefinitionDesignationComponent)) 2234 return false; 2235 ConceptDefinitionDesignationComponent o = (ConceptDefinitionDesignationComponent) other_; 2236 return compareDeep(language, o.language, true) && compareDeep(use, o.use, true) && compareDeep(additionalUse, o.additionalUse, true) 2237 && compareDeep(value, o.value, true); 2238 } 2239 2240 @Override 2241 public boolean equalsShallow(Base other_) { 2242 if (!super.equalsShallow(other_)) 2243 return false; 2244 if (!(other_ instanceof ConceptDefinitionDesignationComponent)) 2245 return false; 2246 ConceptDefinitionDesignationComponent o = (ConceptDefinitionDesignationComponent) other_; 2247 return compareValues(language, o.language, true) && compareValues(value, o.value, true); 2248 } 2249 2250 public boolean isEmpty() { 2251 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(language, use, additionalUse 2252 , value); 2253 } 2254 2255 public String fhirType() { 2256 return "CodeSystem.concept.designation"; 2257 2258 } 2259 2260 } 2261 2262 @Block() 2263 public static class ConceptPropertyComponent extends BackboneElement implements IBaseBackboneElement { 2264 /** 2265 * A code that is a reference to CodeSystem.property.code. 2266 */ 2267 @Child(name = "code", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=false) 2268 @Description(shortDefinition="Reference to CodeSystem.property.code", formalDefinition="A code that is a reference to CodeSystem.property.code." ) 2269 protected CodeType code; 2270 2271 /** 2272 * The value of this property. 2273 */ 2274 @Child(name = "value", type = {CodeType.class, Coding.class, StringType.class, IntegerType.class, BooleanType.class, DateTimeType.class, DecimalType.class}, order=2, min=1, max=1, modifier=false, summary=false) 2275 @Description(shortDefinition="Value of the property for this concept", formalDefinition="The value of this property." ) 2276 protected DataType value; 2277 2278 private static final long serialVersionUID = -422546419L; 2279 2280 /** 2281 * Constructor 2282 */ 2283 public ConceptPropertyComponent() { 2284 super(); 2285 } 2286 2287 /** 2288 * Constructor 2289 */ 2290 public ConceptPropertyComponent(String code, DataType value) { 2291 super(); 2292 this.setCode(code); 2293 this.setValue(value); 2294 } 2295 2296 /** 2297 * @return {@link #code} (A code that is a reference to CodeSystem.property.code.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 2298 */ 2299 public CodeType getCodeElement() { 2300 if (this.code == null) 2301 if (Configuration.errorOnAutoCreate()) 2302 throw new Error("Attempt to auto-create ConceptPropertyComponent.code"); 2303 else if (Configuration.doAutoCreate()) 2304 this.code = new CodeType(); // bb 2305 return this.code; 2306 } 2307 2308 public boolean hasCodeElement() { 2309 return this.code != null && !this.code.isEmpty(); 2310 } 2311 2312 public boolean hasCode() { 2313 return this.code != null && !this.code.isEmpty(); 2314 } 2315 2316 /** 2317 * @param value {@link #code} (A code that is a reference to CodeSystem.property.code.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 2318 */ 2319 public ConceptPropertyComponent setCodeElement(CodeType value) { 2320 this.code = value; 2321 return this; 2322 } 2323 2324 /** 2325 * @return A code that is a reference to CodeSystem.property.code. 2326 */ 2327 public String getCode() { 2328 return this.code == null ? null : this.code.getValue(); 2329 } 2330 2331 /** 2332 * @param value A code that is a reference to CodeSystem.property.code. 2333 */ 2334 public ConceptPropertyComponent setCode(String value) { 2335 if (this.code == null) 2336 this.code = new CodeType(); 2337 this.code.setValue(value); 2338 return this; 2339 } 2340 2341 /** 2342 * @return {@link #value} (The value of this property.) 2343 */ 2344 public DataType getValue() { 2345 return this.value; 2346 } 2347 2348 /** 2349 * @return {@link #value} (The value of this property.) 2350 */ 2351 public CodeType getValueCodeType() throws FHIRException { 2352 if (this.value == null) 2353 this.value = new CodeType(); 2354 if (!(this.value instanceof CodeType)) 2355 throw new FHIRException("Type mismatch: the type CodeType was expected, but "+this.value.getClass().getName()+" was encountered"); 2356 return (CodeType) this.value; 2357 } 2358 2359 public boolean hasValueCodeType() { 2360 return this != null && this.value instanceof CodeType; 2361 } 2362 2363 /** 2364 * @return {@link #value} (The value of this property.) 2365 */ 2366 public Coding getValueCoding() throws FHIRException { 2367 if (this.value == null) 2368 this.value = new Coding(); 2369 if (!(this.value instanceof Coding)) 2370 throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); 2371 return (Coding) this.value; 2372 } 2373 2374 public boolean hasValueCoding() { 2375 return this != null && this.value instanceof Coding; 2376 } 2377 2378 /** 2379 * @return {@link #value} (The value of this property.) 2380 */ 2381 public StringType getValueStringType() throws FHIRException { 2382 if (this.value == null) 2383 this.value = new StringType(); 2384 if (!(this.value instanceof StringType)) 2385 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); 2386 return (StringType) this.value; 2387 } 2388 2389 public boolean hasValueStringType() { 2390 return this != null && this.value instanceof StringType; 2391 } 2392 2393 /** 2394 * @return {@link #value} (The value of this property.) 2395 */ 2396 public IntegerType getValueIntegerType() throws FHIRException { 2397 if (this.value == null) 2398 this.value = new IntegerType(); 2399 if (!(this.value instanceof IntegerType)) 2400 throw new FHIRException("Type mismatch: the type IntegerType was expected, but "+this.value.getClass().getName()+" was encountered"); 2401 return (IntegerType) this.value; 2402 } 2403 2404 public boolean hasValueIntegerType() { 2405 return this != null && this.value instanceof IntegerType; 2406 } 2407 2408 /** 2409 * @return {@link #value} (The value of this property.) 2410 */ 2411 public BooleanType getValueBooleanType() throws FHIRException { 2412 if (this.value == null) 2413 this.value = new BooleanType(); 2414 if (!(this.value instanceof BooleanType)) 2415 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.value.getClass().getName()+" was encountered"); 2416 return (BooleanType) this.value; 2417 } 2418 2419 public boolean hasValueBooleanType() { 2420 return this != null && this.value instanceof BooleanType; 2421 } 2422 2423 /** 2424 * @return {@link #value} (The value of this property.) 2425 */ 2426 public DateTimeType getValueDateTimeType() throws FHIRException { 2427 if (this.value == null) 2428 this.value = new DateTimeType(); 2429 if (!(this.value instanceof DateTimeType)) 2430 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.value.getClass().getName()+" was encountered"); 2431 return (DateTimeType) this.value; 2432 } 2433 2434 public boolean hasValueDateTimeType() { 2435 return this != null && this.value instanceof DateTimeType; 2436 } 2437 2438 /** 2439 * @return {@link #value} (The value of this property.) 2440 */ 2441 public DecimalType getValueDecimalType() throws FHIRException { 2442 if (this.value == null) 2443 this.value = new DecimalType(); 2444 if (!(this.value instanceof DecimalType)) 2445 throw new FHIRException("Type mismatch: the type DecimalType was expected, but "+this.value.getClass().getName()+" was encountered"); 2446 return (DecimalType) this.value; 2447 } 2448 2449 public boolean hasValueDecimalType() { 2450 return this != null && this.value instanceof DecimalType; 2451 } 2452 2453 public boolean hasValue() { 2454 return this.value != null && !this.value.isEmpty(); 2455 } 2456 2457 /** 2458 * @param value {@link #value} (The value of this property.) 2459 */ 2460 public ConceptPropertyComponent setValue(DataType value) { 2461 if (value != null && !(value instanceof CodeType || value instanceof Coding || value instanceof StringType || value instanceof IntegerType || value instanceof BooleanType || value instanceof DateTimeType || value instanceof DecimalType)) 2462 throw new Error("Not the right type for CodeSystem.concept.property.value[x]: "+value.fhirType()); 2463 this.value = value; 2464 return this; 2465 } 2466 2467 protected void listChildren(List<Property> children) { 2468 super.listChildren(children); 2469 children.add(new Property("code", "code", "A code that is a reference to CodeSystem.property.code.", 0, 1, code)); 2470 children.add(new Property("value[x]", "code|Coding|string|integer|boolean|dateTime|decimal", "The value of this property.", 0, 1, value)); 2471 } 2472 2473 @Override 2474 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 2475 switch (_hash) { 2476 case 3059181: /*code*/ return new Property("code", "code", "A code that is a reference to CodeSystem.property.code.", 0, 1, code); 2477 case -1410166417: /*value[x]*/ return new Property("value[x]", "code|Coding|string|integer|boolean|dateTime|decimal", "The value of this property.", 0, 1, value); 2478 case 111972721: /*value*/ return new Property("value[x]", "code|Coding|string|integer|boolean|dateTime|decimal", "The value of this property.", 0, 1, value); 2479 case -766209282: /*valueCode*/ return new Property("value[x]", "code", "The value of this property.", 0, 1, value); 2480 case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "The value of this property.", 0, 1, value); 2481 case -1424603934: /*valueString*/ return new Property("value[x]", "string", "The value of this property.", 0, 1, value); 2482 case -1668204915: /*valueInteger*/ return new Property("value[x]", "integer", "The value of this property.", 0, 1, value); 2483 case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "The value of this property.", 0, 1, value); 2484 case 1047929900: /*valueDateTime*/ return new Property("value[x]", "dateTime", "The value of this property.", 0, 1, value); 2485 case -2083993440: /*valueDecimal*/ return new Property("value[x]", "decimal", "The value of this property.", 0, 1, value); 2486 default: return super.getNamedProperty(_hash, _name, _checkValid); 2487 } 2488 2489 } 2490 2491 @Override 2492 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 2493 switch (hash) { 2494 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeType 2495 case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType 2496 default: return super.getProperty(hash, name, checkValid); 2497 } 2498 2499 } 2500 2501 @Override 2502 public Base setProperty(int hash, String name, Base value) throws FHIRException { 2503 switch (hash) { 2504 case 3059181: // code 2505 this.code = TypeConvertor.castToCode(value); // CodeType 2506 return value; 2507 case 111972721: // value 2508 this.value = TypeConvertor.castToType(value); // DataType 2509 return value; 2510 default: return super.setProperty(hash, name, value); 2511 } 2512 2513 } 2514 2515 @Override 2516 public Base setProperty(String name, Base value) throws FHIRException { 2517 if (name.equals("code")) { 2518 this.code = TypeConvertor.castToCode(value); // CodeType 2519 } else if (name.equals("value[x]")) { 2520 this.value = TypeConvertor.castToType(value); // DataType 2521 } else 2522 return super.setProperty(name, value); 2523 return value; 2524 } 2525 2526 @Override 2527 public Base makeProperty(int hash, String name) throws FHIRException { 2528 switch (hash) { 2529 case 3059181: return getCodeElement(); 2530 case -1410166417: return getValue(); 2531 case 111972721: return getValue(); 2532 default: return super.makeProperty(hash, name); 2533 } 2534 2535 } 2536 2537 @Override 2538 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 2539 switch (hash) { 2540 case 3059181: /*code*/ return new String[] {"code"}; 2541 case 111972721: /*value*/ return new String[] {"code", "Coding", "string", "integer", "boolean", "dateTime", "decimal"}; 2542 default: return super.getTypesForProperty(hash, name); 2543 } 2544 2545 } 2546 2547 @Override 2548 public Base addChild(String name) throws FHIRException { 2549 if (name.equals("code")) { 2550 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.concept.property.code"); 2551 } 2552 else if (name.equals("valueCode")) { 2553 this.value = new CodeType(); 2554 return this.value; 2555 } 2556 else if (name.equals("valueCoding")) { 2557 this.value = new Coding(); 2558 return this.value; 2559 } 2560 else if (name.equals("valueString")) { 2561 this.value = new StringType(); 2562 return this.value; 2563 } 2564 else if (name.equals("valueInteger")) { 2565 this.value = new IntegerType(); 2566 return this.value; 2567 } 2568 else if (name.equals("valueBoolean")) { 2569 this.value = new BooleanType(); 2570 return this.value; 2571 } 2572 else if (name.equals("valueDateTime")) { 2573 this.value = new DateTimeType(); 2574 return this.value; 2575 } 2576 else if (name.equals("valueDecimal")) { 2577 this.value = new DecimalType(); 2578 return this.value; 2579 } 2580 else 2581 return super.addChild(name); 2582 } 2583 2584 public ConceptPropertyComponent copy() { 2585 ConceptPropertyComponent dst = new ConceptPropertyComponent(); 2586 copyValues(dst); 2587 return dst; 2588 } 2589 2590 public void copyValues(ConceptPropertyComponent dst) { 2591 super.copyValues(dst); 2592 dst.code = code == null ? null : code.copy(); 2593 dst.value = value == null ? null : value.copy(); 2594 } 2595 2596 @Override 2597 public boolean equalsDeep(Base other_) { 2598 if (!super.equalsDeep(other_)) 2599 return false; 2600 if (!(other_ instanceof ConceptPropertyComponent)) 2601 return false; 2602 ConceptPropertyComponent o = (ConceptPropertyComponent) other_; 2603 return compareDeep(code, o.code, true) && compareDeep(value, o.value, true); 2604 } 2605 2606 @Override 2607 public boolean equalsShallow(Base other_) { 2608 if (!super.equalsShallow(other_)) 2609 return false; 2610 if (!(other_ instanceof ConceptPropertyComponent)) 2611 return false; 2612 ConceptPropertyComponent o = (ConceptPropertyComponent) other_; 2613 return compareValues(code, o.code, true); 2614 } 2615 2616 public boolean isEmpty() { 2617 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, value); 2618 } 2619 2620 public String fhirType() { 2621 return "CodeSystem.concept.property"; 2622 2623 } 2624 2625 } 2626 2627 /** 2628 * An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system. 2629 */ 2630 @Child(name = "url", type = {UriType.class}, order=0, min=0, max=1, modifier=false, summary=true) 2631 @Description(shortDefinition="Canonical identifier for this code system, represented as a URI (globally unique) (Coding.system)", formalDefinition="An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system." ) 2632 protected UriType url; 2633 2634 /** 2635 * A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance. 2636 */ 2637 @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 2638 @Description(shortDefinition="Additional identifier for the code system (business identifier)", formalDefinition="A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance." ) 2639 protected List<Identifier> identifier; 2640 2641 /** 2642 * The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version. 2643 */ 2644 @Child(name = "version", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) 2645 @Description(shortDefinition="Business version of the code system (Coding.version)", formalDefinition="The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version." ) 2646 protected StringType version; 2647 2648 /** 2649 * A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation. 2650 */ 2651 @Child(name = "name", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) 2652 @Description(shortDefinition="Name for this code system (computer friendly)", formalDefinition="A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation." ) 2653 protected StringType name; 2654 2655 /** 2656 * A short, descriptive, user-friendly title for the code system. 2657 */ 2658 @Child(name = "title", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=true) 2659 @Description(shortDefinition="Name for this code system (human friendly)", formalDefinition="A short, descriptive, user-friendly title for the code system." ) 2660 protected StringType title; 2661 2662 /** 2663 * The status of this code system. Enables tracking the life-cycle of the content. 2664 */ 2665 @Child(name = "status", type = {CodeType.class}, order=5, min=1, max=1, modifier=true, summary=true) 2666 @Description(shortDefinition="draft | active | retired | unknown", formalDefinition="The status of this code system. Enables tracking the life-cycle of the content." ) 2667 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") 2668 protected Enumeration<PublicationStatus> status; 2669 2670 /** 2671 * A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. 2672 */ 2673 @Child(name = "experimental", type = {BooleanType.class}, order=6, min=0, max=1, modifier=false, summary=true) 2674 @Description(shortDefinition="For testing purposes, not real usage", formalDefinition="A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage." ) 2675 protected BooleanType experimental; 2676 2677 /** 2678 * The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes. 2679 */ 2680 @Child(name = "date", type = {DateTimeType.class}, order=7, min=0, max=1, modifier=false, summary=true) 2681 @Description(shortDefinition="Date last changed", formalDefinition="The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes." ) 2682 protected DateTimeType date; 2683 2684 /** 2685 * The name of the organization or individual responsible for the release and ongoing maintenance of the code system. 2686 */ 2687 @Child(name = "publisher", type = {StringType.class}, order=8, min=0, max=1, modifier=false, summary=true) 2688 @Description(shortDefinition="Name of the publisher/steward (organization or individual)", formalDefinition="The name of the organization or individual responsible for the release and ongoing maintenance of the code system." ) 2689 protected StringType publisher; 2690 2691 /** 2692 * Contact details to assist a user in finding and communicating with the publisher. 2693 */ 2694 @Child(name = "contact", type = {ContactDetail.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 2695 @Description(shortDefinition="Contact details for the publisher", formalDefinition="Contact details to assist a user in finding and communicating with the publisher." ) 2696 protected List<ContactDetail> contact; 2697 2698 /** 2699 * A free text natural language description of the code system from a consumer's perspective. 2700 */ 2701 @Child(name = "description", type = {MarkdownType.class}, order=10, min=0, max=1, modifier=false, summary=false) 2702 @Description(shortDefinition="Natural language description of the code system", formalDefinition="A free text natural language description of the code system from a consumer's perspective." ) 2703 protected MarkdownType description; 2704 2705 /** 2706 * The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate code system instances. 2707 */ 2708 @Child(name = "useContext", type = {UsageContext.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 2709 @Description(shortDefinition="The context that the content is intended to support", formalDefinition="The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate code system instances." ) 2710 protected List<UsageContext> useContext; 2711 2712 /** 2713 * A legal or geographic region in which the code system is intended to be used. 2714 */ 2715 @Child(name = "jurisdiction", type = {CodeableConcept.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 2716 @Description(shortDefinition="Intended jurisdiction for code system (if applicable)", formalDefinition="A legal or geographic region in which the code system is intended to be used." ) 2717 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/jurisdiction") 2718 protected List<CodeableConcept> jurisdiction; 2719 2720 /** 2721 * Explanation of why this code system is needed and why it has been designed as it has. 2722 */ 2723 @Child(name = "purpose", type = {MarkdownType.class}, order=13, min=0, max=1, modifier=false, summary=false) 2724 @Description(shortDefinition="Why this code system is defined", formalDefinition="Explanation of why this code system is needed and why it has been designed as it has." ) 2725 protected MarkdownType purpose; 2726 2727 /** 2728 * A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system. 2729 */ 2730 @Child(name = "copyright", type = {MarkdownType.class}, order=14, min=0, max=1, modifier=false, summary=false) 2731 @Description(shortDefinition="Use and/or publishing restrictions", formalDefinition="A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system." ) 2732 protected MarkdownType copyright; 2733 2734 /** 2735 * The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. 2736 */ 2737 @Child(name = "approvalDate", type = {DateType.class}, order=15, min=0, max=1, modifier=false, summary=false) 2738 @Description(shortDefinition="When the CodeSystem was approved by publisher", formalDefinition="The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage." ) 2739 protected DateType approvalDate; 2740 2741 /** 2742 * The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. 2743 */ 2744 @Child(name = "lastReviewDate", type = {DateType.class}, order=16, min=0, max=1, modifier=false, summary=false) 2745 @Description(shortDefinition="When the CodeSystem was last reviewed", formalDefinition="The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date." ) 2746 protected DateType lastReviewDate; 2747 2748 /** 2749 * The period during which the CodeSystem content was or is planned to be in active use. 2750 */ 2751 @Child(name = "effectivePeriod", type = {Period.class}, order=17, min=0, max=1, modifier=false, summary=true) 2752 @Description(shortDefinition="When the CodeSystem is expected to be used", formalDefinition="The period during which the CodeSystem content was or is planned to be in active use." ) 2753 protected Period effectivePeriod; 2754 2755 /** 2756 * Descriptions related to the content of the CodeSystem. Topics provide a high-level categorization as well as keywords for the CodeSystem that can be useful for filtering and searching. 2757 */ 2758 @Child(name = "topic", type = {CodeableConcept.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2759 @Description(shortDefinition="E.g. Education, Treatment, Assessment, etc.", formalDefinition="Descriptions related to the content of the CodeSystem. Topics provide a high-level categorization as well as keywords for the CodeSystem that can be useful for filtering and searching." ) 2760 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/definition-topic") 2761 protected List<CodeableConcept> topic; 2762 2763 /** 2764 * An individiual or organization primarily involved in the creation and maintenance of the CodeSystem. 2765 */ 2766 @Child(name = "author", type = {ContactDetail.class}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2767 @Description(shortDefinition="Who authored the CodeSystem", formalDefinition="An individiual or organization primarily involved in the creation and maintenance of the CodeSystem." ) 2768 protected List<ContactDetail> author; 2769 2770 /** 2771 * An individual or organization primarily responsible for internal coherence of the CodeSystem. 2772 */ 2773 @Child(name = "editor", type = {ContactDetail.class}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2774 @Description(shortDefinition="Who edited the CodeSystem", formalDefinition="An individual or organization primarily responsible for internal coherence of the CodeSystem." ) 2775 protected List<ContactDetail> editor; 2776 2777 /** 2778 * An individual or organization primarily responsible for review of some aspect of the CodeSystem. 2779 */ 2780 @Child(name = "reviewer", type = {ContactDetail.class}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2781 @Description(shortDefinition="Who reviewed the CodeSystem", formalDefinition="An individual or organization primarily responsible for review of some aspect of the CodeSystem." ) 2782 protected List<ContactDetail> reviewer; 2783 2784 /** 2785 * An individual or organization responsible for officially endorsing the CodeSystem for use in some setting. 2786 */ 2787 @Child(name = "endorser", type = {ContactDetail.class}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2788 @Description(shortDefinition="Who endorsed the CodeSystem", formalDefinition="An individual or organization responsible for officially endorsing the CodeSystem for use in some setting." ) 2789 protected List<ContactDetail> endorser; 2790 2791 /** 2792 * Related artifacts such as additional documentation, justification, dependencies, bibliographic references, and predecessor and successor artifacts. 2793 */ 2794 @Child(name = "relatedArtifact", type = {RelatedArtifact.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2795 @Description(shortDefinition="Additional documentation, citations, etc.", formalDefinition="Related artifacts such as additional documentation, justification, dependencies, bibliographic references, and predecessor and successor artifacts." ) 2796 protected List<RelatedArtifact> relatedArtifact; 2797 2798 /** 2799 * If code comparison is case sensitive when codes within this system are compared to each other. 2800 */ 2801 @Child(name = "caseSensitive", type = {BooleanType.class}, order=24, min=0, max=1, modifier=false, summary=true) 2802 @Description(shortDefinition="If code comparison is case sensitive", formalDefinition="If code comparison is case sensitive when codes within this system are compared to each other." ) 2803 protected BooleanType caseSensitive; 2804 2805 /** 2806 * Canonical reference to the value set that contains all codes in the code system independent of code status. 2807 */ 2808 @Child(name = "valueSet", type = {CanonicalType.class}, order=25, min=0, max=1, modifier=false, summary=true) 2809 @Description(shortDefinition="Canonical reference to the value set with entire code system", formalDefinition="Canonical reference to the value set that contains all codes in the code system independent of code status." ) 2810 protected CanonicalType valueSet; 2811 2812 /** 2813 * The meaning of the hierarchy of concepts as represented in this resource. 2814 */ 2815 @Child(name = "hierarchyMeaning", type = {CodeType.class}, order=26, min=0, max=1, modifier=false, summary=true) 2816 @Description(shortDefinition="grouped-by | is-a | part-of | classified-with", formalDefinition="The meaning of the hierarchy of concepts as represented in this resource." ) 2817 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/codesystem-hierarchy-meaning") 2818 protected Enumeration<CodeSystemHierarchyMeaning> hierarchyMeaning; 2819 2820 /** 2821 * The code system defines a compositional (post-coordination) grammar. 2822 */ 2823 @Child(name = "compositional", type = {BooleanType.class}, order=27, min=0, max=1, modifier=false, summary=true) 2824 @Description(shortDefinition="If code system defines a compositional grammar", formalDefinition="The code system defines a compositional (post-coordination) grammar." ) 2825 protected BooleanType compositional; 2826 2827 /** 2828 * This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system. 2829 */ 2830 @Child(name = "versionNeeded", type = {BooleanType.class}, order=28, min=0, max=1, modifier=false, summary=true) 2831 @Description(shortDefinition="If definitions are not stable", formalDefinition="This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system." ) 2832 protected BooleanType versionNeeded; 2833 2834 /** 2835 * The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance. 2836 */ 2837 @Child(name = "content", type = {CodeType.class}, order=29, min=1, max=1, modifier=false, summary=true) 2838 @Description(shortDefinition="not-present | example | fragment | complete | supplement", formalDefinition="The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance." ) 2839 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/codesystem-content-mode") 2840 protected Enumeration<CodeSystemContentMode> content; 2841 2842 /** 2843 * The canonical URL of the code system that this code system supplement is adding designations and properties to. 2844 */ 2845 @Child(name = "supplements", type = {CanonicalType.class}, order=30, min=0, max=1, modifier=false, summary=true) 2846 @Description(shortDefinition="Canonical URL of Code System this adds designations and properties to", formalDefinition="The canonical URL of the code system that this code system supplement is adding designations and properties to." ) 2847 protected CanonicalType supplements; 2848 2849 /** 2850 * The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward. 2851 */ 2852 @Child(name = "count", type = {UnsignedIntType.class}, order=31, min=0, max=1, modifier=false, summary=true) 2853 @Description(shortDefinition="Total concepts in the code system", formalDefinition="The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward." ) 2854 protected UnsignedIntType count; 2855 2856 /** 2857 * A filter that can be used in a value set compose statement when selecting concepts using a filter. 2858 */ 2859 @Child(name = "filter", type = {}, order=32, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 2860 @Description(shortDefinition="Filter that can be used in a value set", formalDefinition="A filter that can be used in a value set compose statement when selecting concepts using a filter." ) 2861 protected List<CodeSystemFilterComponent> filter; 2862 2863 /** 2864 * A property defines an additional slot through which additional information can be provided about a concept. 2865 */ 2866 @Child(name = "property", type = {}, order=33, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 2867 @Description(shortDefinition="Additional information supplied about each concept", formalDefinition="A property defines an additional slot through which additional information can be provided about a concept." ) 2868 protected List<PropertyComponent> property; 2869 2870 /** 2871 * Concepts that are in the code system. The concept definitions are inherently hierarchical, but the definitions must be consulted to determine what the meanings of the hierarchical relationships are. 2872 */ 2873 @Child(name = "concept", type = {}, order=34, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 2874 @Description(shortDefinition="Concepts in the code system", formalDefinition="Concepts that are in the code system. The concept definitions are inherently hierarchical, but the definitions must be consulted to determine what the meanings of the hierarchical relationships are." ) 2875 protected List<ConceptDefinitionComponent> concept; 2876 2877 private static final long serialVersionUID = -1497068225L; 2878 2879 /** 2880 * Constructor 2881 */ 2882 public CodeSystem() { 2883 super(); 2884 } 2885 2886 /** 2887 * Constructor 2888 */ 2889 public CodeSystem(PublicationStatus status, CodeSystemContentMode content) { 2890 super(); 2891 this.setStatus(status); 2892 this.setContent(content); 2893 } 2894 2895 /** 2896 * @return {@link #url} (An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 2897 */ 2898 public UriType getUrlElement() { 2899 if (this.url == null) 2900 if (Configuration.errorOnAutoCreate()) 2901 throw new Error("Attempt to auto-create CodeSystem.url"); 2902 else if (Configuration.doAutoCreate()) 2903 this.url = new UriType(); // bb 2904 return this.url; 2905 } 2906 2907 public boolean hasUrlElement() { 2908 return this.url != null && !this.url.isEmpty(); 2909 } 2910 2911 public boolean hasUrl() { 2912 return this.url != null && !this.url.isEmpty(); 2913 } 2914 2915 /** 2916 * @param value {@link #url} (An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 2917 */ 2918 public CodeSystem setUrlElement(UriType value) { 2919 this.url = value; 2920 return this; 2921 } 2922 2923 /** 2924 * @return An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system. 2925 */ 2926 public String getUrl() { 2927 return this.url == null ? null : this.url.getValue(); 2928 } 2929 2930 /** 2931 * @param value An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system. 2932 */ 2933 public CodeSystem setUrl(String value) { 2934 if (Utilities.noString(value)) 2935 this.url = null; 2936 else { 2937 if (this.url == null) 2938 this.url = new UriType(); 2939 this.url.setValue(value); 2940 } 2941 return this; 2942 } 2943 2944 /** 2945 * @return {@link #identifier} (A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance.) 2946 */ 2947 public List<Identifier> getIdentifier() { 2948 if (this.identifier == null) 2949 this.identifier = new ArrayList<Identifier>(); 2950 return this.identifier; 2951 } 2952 2953 /** 2954 * @return Returns a reference to <code>this</code> for easy method chaining 2955 */ 2956 public CodeSystem setIdentifier(List<Identifier> theIdentifier) { 2957 this.identifier = theIdentifier; 2958 return this; 2959 } 2960 2961 public boolean hasIdentifier() { 2962 if (this.identifier == null) 2963 return false; 2964 for (Identifier item : this.identifier) 2965 if (!item.isEmpty()) 2966 return true; 2967 return false; 2968 } 2969 2970 public Identifier addIdentifier() { //3 2971 Identifier t = new Identifier(); 2972 if (this.identifier == null) 2973 this.identifier = new ArrayList<Identifier>(); 2974 this.identifier.add(t); 2975 return t; 2976 } 2977 2978 public CodeSystem addIdentifier(Identifier t) { //3 2979 if (t == null) 2980 return this; 2981 if (this.identifier == null) 2982 this.identifier = new ArrayList<Identifier>(); 2983 this.identifier.add(t); 2984 return this; 2985 } 2986 2987 /** 2988 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 2989 */ 2990 public Identifier getIdentifierFirstRep() { 2991 if (getIdentifier().isEmpty()) { 2992 addIdentifier(); 2993 } 2994 return getIdentifier().get(0); 2995 } 2996 2997 /** 2998 * @return {@link #version} (The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 2999 */ 3000 public StringType getVersionElement() { 3001 if (this.version == null) 3002 if (Configuration.errorOnAutoCreate()) 3003 throw new Error("Attempt to auto-create CodeSystem.version"); 3004 else if (Configuration.doAutoCreate()) 3005 this.version = new StringType(); // bb 3006 return this.version; 3007 } 3008 3009 public boolean hasVersionElement() { 3010 return this.version != null && !this.version.isEmpty(); 3011 } 3012 3013 public boolean hasVersion() { 3014 return this.version != null && !this.version.isEmpty(); 3015 } 3016 3017 /** 3018 * @param value {@link #version} (The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 3019 */ 3020 public CodeSystem setVersionElement(StringType value) { 3021 this.version = value; 3022 return this; 3023 } 3024 3025 /** 3026 * @return The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version. 3027 */ 3028 public String getVersion() { 3029 return this.version == null ? null : this.version.getValue(); 3030 } 3031 3032 /** 3033 * @param value The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version. 3034 */ 3035 public CodeSystem setVersion(String value) { 3036 if (Utilities.noString(value)) 3037 this.version = null; 3038 else { 3039 if (this.version == null) 3040 this.version = new StringType(); 3041 this.version.setValue(value); 3042 } 3043 return this; 3044 } 3045 3046 /** 3047 * @return {@link #name} (A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 3048 */ 3049 public StringType getNameElement() { 3050 if (this.name == null) 3051 if (Configuration.errorOnAutoCreate()) 3052 throw new Error("Attempt to auto-create CodeSystem.name"); 3053 else if (Configuration.doAutoCreate()) 3054 this.name = new StringType(); // bb 3055 return this.name; 3056 } 3057 3058 public boolean hasNameElement() { 3059 return this.name != null && !this.name.isEmpty(); 3060 } 3061 3062 public boolean hasName() { 3063 return this.name != null && !this.name.isEmpty(); 3064 } 3065 3066 /** 3067 * @param value {@link #name} (A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 3068 */ 3069 public CodeSystem setNameElement(StringType value) { 3070 this.name = value; 3071 return this; 3072 } 3073 3074 /** 3075 * @return A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation. 3076 */ 3077 public String getName() { 3078 return this.name == null ? null : this.name.getValue(); 3079 } 3080 3081 /** 3082 * @param value A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation. 3083 */ 3084 public CodeSystem setName(String value) { 3085 if (Utilities.noString(value)) 3086 this.name = null; 3087 else { 3088 if (this.name == null) 3089 this.name = new StringType(); 3090 this.name.setValue(value); 3091 } 3092 return this; 3093 } 3094 3095 /** 3096 * @return {@link #title} (A short, descriptive, user-friendly title for the code system.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 3097 */ 3098 public StringType getTitleElement() { 3099 if (this.title == null) 3100 if (Configuration.errorOnAutoCreate()) 3101 throw new Error("Attempt to auto-create CodeSystem.title"); 3102 else if (Configuration.doAutoCreate()) 3103 this.title = new StringType(); // bb 3104 return this.title; 3105 } 3106 3107 public boolean hasTitleElement() { 3108 return this.title != null && !this.title.isEmpty(); 3109 } 3110 3111 public boolean hasTitle() { 3112 return this.title != null && !this.title.isEmpty(); 3113 } 3114 3115 /** 3116 * @param value {@link #title} (A short, descriptive, user-friendly title for the code system.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 3117 */ 3118 public CodeSystem setTitleElement(StringType value) { 3119 this.title = value; 3120 return this; 3121 } 3122 3123 /** 3124 * @return A short, descriptive, user-friendly title for the code system. 3125 */ 3126 public String getTitle() { 3127 return this.title == null ? null : this.title.getValue(); 3128 } 3129 3130 /** 3131 * @param value A short, descriptive, user-friendly title for the code system. 3132 */ 3133 public CodeSystem setTitle(String value) { 3134 if (Utilities.noString(value)) 3135 this.title = null; 3136 else { 3137 if (this.title == null) 3138 this.title = new StringType(); 3139 this.title.setValue(value); 3140 } 3141 return this; 3142 } 3143 3144 /** 3145 * @return {@link #status} (The status of this code system. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 3146 */ 3147 public Enumeration<PublicationStatus> getStatusElement() { 3148 if (this.status == null) 3149 if (Configuration.errorOnAutoCreate()) 3150 throw new Error("Attempt to auto-create CodeSystem.status"); 3151 else if (Configuration.doAutoCreate()) 3152 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 3153 return this.status; 3154 } 3155 3156 public boolean hasStatusElement() { 3157 return this.status != null && !this.status.isEmpty(); 3158 } 3159 3160 public boolean hasStatus() { 3161 return this.status != null && !this.status.isEmpty(); 3162 } 3163 3164 /** 3165 * @param value {@link #status} (The status of this code system. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 3166 */ 3167 public CodeSystem setStatusElement(Enumeration<PublicationStatus> value) { 3168 this.status = value; 3169 return this; 3170 } 3171 3172 /** 3173 * @return The status of this code system. Enables tracking the life-cycle of the content. 3174 */ 3175 public PublicationStatus getStatus() { 3176 return this.status == null ? null : this.status.getValue(); 3177 } 3178 3179 /** 3180 * @param value The status of this code system. Enables tracking the life-cycle of the content. 3181 */ 3182 public CodeSystem setStatus(PublicationStatus value) { 3183 if (this.status == null) 3184 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 3185 this.status.setValue(value); 3186 return this; 3187 } 3188 3189 /** 3190 * @return {@link #experimental} (A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value 3191 */ 3192 public BooleanType getExperimentalElement() { 3193 if (this.experimental == null) 3194 if (Configuration.errorOnAutoCreate()) 3195 throw new Error("Attempt to auto-create CodeSystem.experimental"); 3196 else if (Configuration.doAutoCreate()) 3197 this.experimental = new BooleanType(); // bb 3198 return this.experimental; 3199 } 3200 3201 public boolean hasExperimentalElement() { 3202 return this.experimental != null && !this.experimental.isEmpty(); 3203 } 3204 3205 public boolean hasExperimental() { 3206 return this.experimental != null && !this.experimental.isEmpty(); 3207 } 3208 3209 /** 3210 * @param value {@link #experimental} (A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value 3211 */ 3212 public CodeSystem setExperimentalElement(BooleanType value) { 3213 this.experimental = value; 3214 return this; 3215 } 3216 3217 /** 3218 * @return A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. 3219 */ 3220 public boolean getExperimental() { 3221 return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); 3222 } 3223 3224 /** 3225 * @param value A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. 3226 */ 3227 public CodeSystem setExperimental(boolean value) { 3228 if (this.experimental == null) 3229 this.experimental = new BooleanType(); 3230 this.experimental.setValue(value); 3231 return this; 3232 } 3233 3234 /** 3235 * @return {@link #date} (The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 3236 */ 3237 public DateTimeType getDateElement() { 3238 if (this.date == null) 3239 if (Configuration.errorOnAutoCreate()) 3240 throw new Error("Attempt to auto-create CodeSystem.date"); 3241 else if (Configuration.doAutoCreate()) 3242 this.date = new DateTimeType(); // bb 3243 return this.date; 3244 } 3245 3246 public boolean hasDateElement() { 3247 return this.date != null && !this.date.isEmpty(); 3248 } 3249 3250 public boolean hasDate() { 3251 return this.date != null && !this.date.isEmpty(); 3252 } 3253 3254 /** 3255 * @param value {@link #date} (The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 3256 */ 3257 public CodeSystem setDateElement(DateTimeType value) { 3258 this.date = value; 3259 return this; 3260 } 3261 3262 /** 3263 * @return The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes. 3264 */ 3265 public Date getDate() { 3266 return this.date == null ? null : this.date.getValue(); 3267 } 3268 3269 /** 3270 * @param value The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes. 3271 */ 3272 public CodeSystem setDate(Date value) { 3273 if (value == null) 3274 this.date = null; 3275 else { 3276 if (this.date == null) 3277 this.date = new DateTimeType(); 3278 this.date.setValue(value); 3279 } 3280 return this; 3281 } 3282 3283 /** 3284 * @return {@link #publisher} (The name of the organization or individual responsible for the release and ongoing maintenance of the code system.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 3285 */ 3286 public StringType getPublisherElement() { 3287 if (this.publisher == null) 3288 if (Configuration.errorOnAutoCreate()) 3289 throw new Error("Attempt to auto-create CodeSystem.publisher"); 3290 else if (Configuration.doAutoCreate()) 3291 this.publisher = new StringType(); // bb 3292 return this.publisher; 3293 } 3294 3295 public boolean hasPublisherElement() { 3296 return this.publisher != null && !this.publisher.isEmpty(); 3297 } 3298 3299 public boolean hasPublisher() { 3300 return this.publisher != null && !this.publisher.isEmpty(); 3301 } 3302 3303 /** 3304 * @param value {@link #publisher} (The name of the organization or individual responsible for the release and ongoing maintenance of the code system.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 3305 */ 3306 public CodeSystem setPublisherElement(StringType value) { 3307 this.publisher = value; 3308 return this; 3309 } 3310 3311 /** 3312 * @return The name of the organization or individual responsible for the release and ongoing maintenance of the code system. 3313 */ 3314 public String getPublisher() { 3315 return this.publisher == null ? null : this.publisher.getValue(); 3316 } 3317 3318 /** 3319 * @param value The name of the organization or individual responsible for the release and ongoing maintenance of the code system. 3320 */ 3321 public CodeSystem setPublisher(String value) { 3322 if (Utilities.noString(value)) 3323 this.publisher = null; 3324 else { 3325 if (this.publisher == null) 3326 this.publisher = new StringType(); 3327 this.publisher.setValue(value); 3328 } 3329 return this; 3330 } 3331 3332 /** 3333 * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) 3334 */ 3335 public List<ContactDetail> getContact() { 3336 if (this.contact == null) 3337 this.contact = new ArrayList<ContactDetail>(); 3338 return this.contact; 3339 } 3340 3341 /** 3342 * @return Returns a reference to <code>this</code> for easy method chaining 3343 */ 3344 public CodeSystem setContact(List<ContactDetail> theContact) { 3345 this.contact = theContact; 3346 return this; 3347 } 3348 3349 public boolean hasContact() { 3350 if (this.contact == null) 3351 return false; 3352 for (ContactDetail item : this.contact) 3353 if (!item.isEmpty()) 3354 return true; 3355 return false; 3356 } 3357 3358 public ContactDetail addContact() { //3 3359 ContactDetail t = new ContactDetail(); 3360 if (this.contact == null) 3361 this.contact = new ArrayList<ContactDetail>(); 3362 this.contact.add(t); 3363 return t; 3364 } 3365 3366 public CodeSystem addContact(ContactDetail t) { //3 3367 if (t == null) 3368 return this; 3369 if (this.contact == null) 3370 this.contact = new ArrayList<ContactDetail>(); 3371 this.contact.add(t); 3372 return this; 3373 } 3374 3375 /** 3376 * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist {3} 3377 */ 3378 public ContactDetail getContactFirstRep() { 3379 if (getContact().isEmpty()) { 3380 addContact(); 3381 } 3382 return getContact().get(0); 3383 } 3384 3385 /** 3386 * @return {@link #description} (A free text natural language description of the code system from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 3387 */ 3388 public MarkdownType getDescriptionElement() { 3389 if (this.description == null) 3390 if (Configuration.errorOnAutoCreate()) 3391 throw new Error("Attempt to auto-create CodeSystem.description"); 3392 else if (Configuration.doAutoCreate()) 3393 this.description = new MarkdownType(); // bb 3394 return this.description; 3395 } 3396 3397 public boolean hasDescriptionElement() { 3398 return this.description != null && !this.description.isEmpty(); 3399 } 3400 3401 public boolean hasDescription() { 3402 return this.description != null && !this.description.isEmpty(); 3403 } 3404 3405 /** 3406 * @param value {@link #description} (A free text natural language description of the code system from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 3407 */ 3408 public CodeSystem setDescriptionElement(MarkdownType value) { 3409 this.description = value; 3410 return this; 3411 } 3412 3413 /** 3414 * @return A free text natural language description of the code system from a consumer's perspective. 3415 */ 3416 public String getDescription() { 3417 return this.description == null ? null : this.description.getValue(); 3418 } 3419 3420 /** 3421 * @param value A free text natural language description of the code system from a consumer's perspective. 3422 */ 3423 public CodeSystem setDescription(String value) { 3424 if (value == null) 3425 this.description = null; 3426 else { 3427 if (this.description == null) 3428 this.description = new MarkdownType(); 3429 this.description.setValue(value); 3430 } 3431 return this; 3432 } 3433 3434 /** 3435 * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate code system instances.) 3436 */ 3437 public List<UsageContext> getUseContext() { 3438 if (this.useContext == null) 3439 this.useContext = new ArrayList<UsageContext>(); 3440 return this.useContext; 3441 } 3442 3443 /** 3444 * @return Returns a reference to <code>this</code> for easy method chaining 3445 */ 3446 public CodeSystem setUseContext(List<UsageContext> theUseContext) { 3447 this.useContext = theUseContext; 3448 return this; 3449 } 3450 3451 public boolean hasUseContext() { 3452 if (this.useContext == null) 3453 return false; 3454 for (UsageContext item : this.useContext) 3455 if (!item.isEmpty()) 3456 return true; 3457 return false; 3458 } 3459 3460 public UsageContext addUseContext() { //3 3461 UsageContext t = new UsageContext(); 3462 if (this.useContext == null) 3463 this.useContext = new ArrayList<UsageContext>(); 3464 this.useContext.add(t); 3465 return t; 3466 } 3467 3468 public CodeSystem addUseContext(UsageContext t) { //3 3469 if (t == null) 3470 return this; 3471 if (this.useContext == null) 3472 this.useContext = new ArrayList<UsageContext>(); 3473 this.useContext.add(t); 3474 return this; 3475 } 3476 3477 /** 3478 * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist {3} 3479 */ 3480 public UsageContext getUseContextFirstRep() { 3481 if (getUseContext().isEmpty()) { 3482 addUseContext(); 3483 } 3484 return getUseContext().get(0); 3485 } 3486 3487 /** 3488 * @return {@link #jurisdiction} (A legal or geographic region in which the code system is intended to be used.) 3489 */ 3490 public List<CodeableConcept> getJurisdiction() { 3491 if (this.jurisdiction == null) 3492 this.jurisdiction = new ArrayList<CodeableConcept>(); 3493 return this.jurisdiction; 3494 } 3495 3496 /** 3497 * @return Returns a reference to <code>this</code> for easy method chaining 3498 */ 3499 public CodeSystem setJurisdiction(List<CodeableConcept> theJurisdiction) { 3500 this.jurisdiction = theJurisdiction; 3501 return this; 3502 } 3503 3504 public boolean hasJurisdiction() { 3505 if (this.jurisdiction == null) 3506 return false; 3507 for (CodeableConcept item : this.jurisdiction) 3508 if (!item.isEmpty()) 3509 return true; 3510 return false; 3511 } 3512 3513 public CodeableConcept addJurisdiction() { //3 3514 CodeableConcept t = new CodeableConcept(); 3515 if (this.jurisdiction == null) 3516 this.jurisdiction = new ArrayList<CodeableConcept>(); 3517 this.jurisdiction.add(t); 3518 return t; 3519 } 3520 3521 public CodeSystem addJurisdiction(CodeableConcept t) { //3 3522 if (t == null) 3523 return this; 3524 if (this.jurisdiction == null) 3525 this.jurisdiction = new ArrayList<CodeableConcept>(); 3526 this.jurisdiction.add(t); 3527 return this; 3528 } 3529 3530 /** 3531 * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist {3} 3532 */ 3533 public CodeableConcept getJurisdictionFirstRep() { 3534 if (getJurisdiction().isEmpty()) { 3535 addJurisdiction(); 3536 } 3537 return getJurisdiction().get(0); 3538 } 3539 3540 /** 3541 * @return {@link #purpose} (Explanation of why this code system is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value 3542 */ 3543 public MarkdownType getPurposeElement() { 3544 if (this.purpose == null) 3545 if (Configuration.errorOnAutoCreate()) 3546 throw new Error("Attempt to auto-create CodeSystem.purpose"); 3547 else if (Configuration.doAutoCreate()) 3548 this.purpose = new MarkdownType(); // bb 3549 return this.purpose; 3550 } 3551 3552 public boolean hasPurposeElement() { 3553 return this.purpose != null && !this.purpose.isEmpty(); 3554 } 3555 3556 public boolean hasPurpose() { 3557 return this.purpose != null && !this.purpose.isEmpty(); 3558 } 3559 3560 /** 3561 * @param value {@link #purpose} (Explanation of why this code system is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value 3562 */ 3563 public CodeSystem setPurposeElement(MarkdownType value) { 3564 this.purpose = value; 3565 return this; 3566 } 3567 3568 /** 3569 * @return Explanation of why this code system is needed and why it has been designed as it has. 3570 */ 3571 public String getPurpose() { 3572 return this.purpose == null ? null : this.purpose.getValue(); 3573 } 3574 3575 /** 3576 * @param value Explanation of why this code system is needed and why it has been designed as it has. 3577 */ 3578 public CodeSystem setPurpose(String value) { 3579 if (value == null) 3580 this.purpose = null; 3581 else { 3582 if (this.purpose == null) 3583 this.purpose = new MarkdownType(); 3584 this.purpose.setValue(value); 3585 } 3586 return this; 3587 } 3588 3589 /** 3590 * @return {@link #copyright} (A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value 3591 */ 3592 public MarkdownType getCopyrightElement() { 3593 if (this.copyright == null) 3594 if (Configuration.errorOnAutoCreate()) 3595 throw new Error("Attempt to auto-create CodeSystem.copyright"); 3596 else if (Configuration.doAutoCreate()) 3597 this.copyright = new MarkdownType(); // bb 3598 return this.copyright; 3599 } 3600 3601 public boolean hasCopyrightElement() { 3602 return this.copyright != null && !this.copyright.isEmpty(); 3603 } 3604 3605 public boolean hasCopyright() { 3606 return this.copyright != null && !this.copyright.isEmpty(); 3607 } 3608 3609 /** 3610 * @param value {@link #copyright} (A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value 3611 */ 3612 public CodeSystem setCopyrightElement(MarkdownType value) { 3613 this.copyright = value; 3614 return this; 3615 } 3616 3617 /** 3618 * @return A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system. 3619 */ 3620 public String getCopyright() { 3621 return this.copyright == null ? null : this.copyright.getValue(); 3622 } 3623 3624 /** 3625 * @param value A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system. 3626 */ 3627 public CodeSystem setCopyright(String value) { 3628 if (value == null) 3629 this.copyright = null; 3630 else { 3631 if (this.copyright == null) 3632 this.copyright = new MarkdownType(); 3633 this.copyright.setValue(value); 3634 } 3635 return this; 3636 } 3637 3638 /** 3639 * @return {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value 3640 */ 3641 public DateType getApprovalDateElement() { 3642 if (this.approvalDate == null) 3643 if (Configuration.errorOnAutoCreate()) 3644 throw new Error("Attempt to auto-create CodeSystem.approvalDate"); 3645 else if (Configuration.doAutoCreate()) 3646 this.approvalDate = new DateType(); // bb 3647 return this.approvalDate; 3648 } 3649 3650 public boolean hasApprovalDateElement() { 3651 return this.approvalDate != null && !this.approvalDate.isEmpty(); 3652 } 3653 3654 public boolean hasApprovalDate() { 3655 return this.approvalDate != null && !this.approvalDate.isEmpty(); 3656 } 3657 3658 /** 3659 * @param value {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value 3660 */ 3661 public CodeSystem setApprovalDateElement(DateType value) { 3662 this.approvalDate = value; 3663 return this; 3664 } 3665 3666 /** 3667 * @return The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. 3668 */ 3669 public Date getApprovalDate() { 3670 return this.approvalDate == null ? null : this.approvalDate.getValue(); 3671 } 3672 3673 /** 3674 * @param value The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. 3675 */ 3676 public CodeSystem setApprovalDate(Date value) { 3677 if (value == null) 3678 this.approvalDate = null; 3679 else { 3680 if (this.approvalDate == null) 3681 this.approvalDate = new DateType(); 3682 this.approvalDate.setValue(value); 3683 } 3684 return this; 3685 } 3686 3687 /** 3688 * @return {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value 3689 */ 3690 public DateType getLastReviewDateElement() { 3691 if (this.lastReviewDate == null) 3692 if (Configuration.errorOnAutoCreate()) 3693 throw new Error("Attempt to auto-create CodeSystem.lastReviewDate"); 3694 else if (Configuration.doAutoCreate()) 3695 this.lastReviewDate = new DateType(); // bb 3696 return this.lastReviewDate; 3697 } 3698 3699 public boolean hasLastReviewDateElement() { 3700 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 3701 } 3702 3703 public boolean hasLastReviewDate() { 3704 return this.lastReviewDate != null && !this.lastReviewDate.isEmpty(); 3705 } 3706 3707 /** 3708 * @param value {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value 3709 */ 3710 public CodeSystem setLastReviewDateElement(DateType value) { 3711 this.lastReviewDate = value; 3712 return this; 3713 } 3714 3715 /** 3716 * @return The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. 3717 */ 3718 public Date getLastReviewDate() { 3719 return this.lastReviewDate == null ? null : this.lastReviewDate.getValue(); 3720 } 3721 3722 /** 3723 * @param value The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. 3724 */ 3725 public CodeSystem setLastReviewDate(Date value) { 3726 if (value == null) 3727 this.lastReviewDate = null; 3728 else { 3729 if (this.lastReviewDate == null) 3730 this.lastReviewDate = new DateType(); 3731 this.lastReviewDate.setValue(value); 3732 } 3733 return this; 3734 } 3735 3736 /** 3737 * @return {@link #effectivePeriod} (The period during which the CodeSystem content was or is planned to be in active use.) 3738 */ 3739 public Period getEffectivePeriod() { 3740 if (this.effectivePeriod == null) 3741 if (Configuration.errorOnAutoCreate()) 3742 throw new Error("Attempt to auto-create CodeSystem.effectivePeriod"); 3743 else if (Configuration.doAutoCreate()) 3744 this.effectivePeriod = new Period(); // cc 3745 return this.effectivePeriod; 3746 } 3747 3748 public boolean hasEffectivePeriod() { 3749 return this.effectivePeriod != null && !this.effectivePeriod.isEmpty(); 3750 } 3751 3752 /** 3753 * @param value {@link #effectivePeriod} (The period during which the CodeSystem content was or is planned to be in active use.) 3754 */ 3755 public CodeSystem setEffectivePeriod(Period value) { 3756 this.effectivePeriod = value; 3757 return this; 3758 } 3759 3760 /** 3761 * @return {@link #topic} (Descriptions related to the content of the CodeSystem. Topics provide a high-level categorization as well as keywords for the CodeSystem that can be useful for filtering and searching.) 3762 */ 3763 public List<CodeableConcept> getTopic() { 3764 if (this.topic == null) 3765 this.topic = new ArrayList<CodeableConcept>(); 3766 return this.topic; 3767 } 3768 3769 /** 3770 * @return Returns a reference to <code>this</code> for easy method chaining 3771 */ 3772 public CodeSystem setTopic(List<CodeableConcept> theTopic) { 3773 this.topic = theTopic; 3774 return this; 3775 } 3776 3777 public boolean hasTopic() { 3778 if (this.topic == null) 3779 return false; 3780 for (CodeableConcept item : this.topic) 3781 if (!item.isEmpty()) 3782 return true; 3783 return false; 3784 } 3785 3786 public CodeableConcept addTopic() { //3 3787 CodeableConcept t = new CodeableConcept(); 3788 if (this.topic == null) 3789 this.topic = new ArrayList<CodeableConcept>(); 3790 this.topic.add(t); 3791 return t; 3792 } 3793 3794 public CodeSystem addTopic(CodeableConcept t) { //3 3795 if (t == null) 3796 return this; 3797 if (this.topic == null) 3798 this.topic = new ArrayList<CodeableConcept>(); 3799 this.topic.add(t); 3800 return this; 3801 } 3802 3803 /** 3804 * @return The first repetition of repeating field {@link #topic}, creating it if it does not already exist {3} 3805 */ 3806 public CodeableConcept getTopicFirstRep() { 3807 if (getTopic().isEmpty()) { 3808 addTopic(); 3809 } 3810 return getTopic().get(0); 3811 } 3812 3813 /** 3814 * @return {@link #author} (An individiual or organization primarily involved in the creation and maintenance of the CodeSystem.) 3815 */ 3816 public List<ContactDetail> getAuthor() { 3817 if (this.author == null) 3818 this.author = new ArrayList<ContactDetail>(); 3819 return this.author; 3820 } 3821 3822 /** 3823 * @return Returns a reference to <code>this</code> for easy method chaining 3824 */ 3825 public CodeSystem setAuthor(List<ContactDetail> theAuthor) { 3826 this.author = theAuthor; 3827 return this; 3828 } 3829 3830 public boolean hasAuthor() { 3831 if (this.author == null) 3832 return false; 3833 for (ContactDetail item : this.author) 3834 if (!item.isEmpty()) 3835 return true; 3836 return false; 3837 } 3838 3839 public ContactDetail addAuthor() { //3 3840 ContactDetail t = new ContactDetail(); 3841 if (this.author == null) 3842 this.author = new ArrayList<ContactDetail>(); 3843 this.author.add(t); 3844 return t; 3845 } 3846 3847 public CodeSystem addAuthor(ContactDetail t) { //3 3848 if (t == null) 3849 return this; 3850 if (this.author == null) 3851 this.author = new ArrayList<ContactDetail>(); 3852 this.author.add(t); 3853 return this; 3854 } 3855 3856 /** 3857 * @return The first repetition of repeating field {@link #author}, creating it if it does not already exist {3} 3858 */ 3859 public ContactDetail getAuthorFirstRep() { 3860 if (getAuthor().isEmpty()) { 3861 addAuthor(); 3862 } 3863 return getAuthor().get(0); 3864 } 3865 3866 /** 3867 * @return {@link #editor} (An individual or organization primarily responsible for internal coherence of the CodeSystem.) 3868 */ 3869 public List<ContactDetail> getEditor() { 3870 if (this.editor == null) 3871 this.editor = new ArrayList<ContactDetail>(); 3872 return this.editor; 3873 } 3874 3875 /** 3876 * @return Returns a reference to <code>this</code> for easy method chaining 3877 */ 3878 public CodeSystem setEditor(List<ContactDetail> theEditor) { 3879 this.editor = theEditor; 3880 return this; 3881 } 3882 3883 public boolean hasEditor() { 3884 if (this.editor == null) 3885 return false; 3886 for (ContactDetail item : this.editor) 3887 if (!item.isEmpty()) 3888 return true; 3889 return false; 3890 } 3891 3892 public ContactDetail addEditor() { //3 3893 ContactDetail t = new ContactDetail(); 3894 if (this.editor == null) 3895 this.editor = new ArrayList<ContactDetail>(); 3896 this.editor.add(t); 3897 return t; 3898 } 3899 3900 public CodeSystem addEditor(ContactDetail t) { //3 3901 if (t == null) 3902 return this; 3903 if (this.editor == null) 3904 this.editor = new ArrayList<ContactDetail>(); 3905 this.editor.add(t); 3906 return this; 3907 } 3908 3909 /** 3910 * @return The first repetition of repeating field {@link #editor}, creating it if it does not already exist {3} 3911 */ 3912 public ContactDetail getEditorFirstRep() { 3913 if (getEditor().isEmpty()) { 3914 addEditor(); 3915 } 3916 return getEditor().get(0); 3917 } 3918 3919 /** 3920 * @return {@link #reviewer} (An individual or organization primarily responsible for review of some aspect of the CodeSystem.) 3921 */ 3922 public List<ContactDetail> getReviewer() { 3923 if (this.reviewer == null) 3924 this.reviewer = new ArrayList<ContactDetail>(); 3925 return this.reviewer; 3926 } 3927 3928 /** 3929 * @return Returns a reference to <code>this</code> for easy method chaining 3930 */ 3931 public CodeSystem setReviewer(List<ContactDetail> theReviewer) { 3932 this.reviewer = theReviewer; 3933 return this; 3934 } 3935 3936 public boolean hasReviewer() { 3937 if (this.reviewer == null) 3938 return false; 3939 for (ContactDetail item : this.reviewer) 3940 if (!item.isEmpty()) 3941 return true; 3942 return false; 3943 } 3944 3945 public ContactDetail addReviewer() { //3 3946 ContactDetail t = new ContactDetail(); 3947 if (this.reviewer == null) 3948 this.reviewer = new ArrayList<ContactDetail>(); 3949 this.reviewer.add(t); 3950 return t; 3951 } 3952 3953 public CodeSystem addReviewer(ContactDetail t) { //3 3954 if (t == null) 3955 return this; 3956 if (this.reviewer == null) 3957 this.reviewer = new ArrayList<ContactDetail>(); 3958 this.reviewer.add(t); 3959 return this; 3960 } 3961 3962 /** 3963 * @return The first repetition of repeating field {@link #reviewer}, creating it if it does not already exist {3} 3964 */ 3965 public ContactDetail getReviewerFirstRep() { 3966 if (getReviewer().isEmpty()) { 3967 addReviewer(); 3968 } 3969 return getReviewer().get(0); 3970 } 3971 3972 /** 3973 * @return {@link #endorser} (An individual or organization responsible for officially endorsing the CodeSystem for use in some setting.) 3974 */ 3975 public List<ContactDetail> getEndorser() { 3976 if (this.endorser == null) 3977 this.endorser = new ArrayList<ContactDetail>(); 3978 return this.endorser; 3979 } 3980 3981 /** 3982 * @return Returns a reference to <code>this</code> for easy method chaining 3983 */ 3984 public CodeSystem setEndorser(List<ContactDetail> theEndorser) { 3985 this.endorser = theEndorser; 3986 return this; 3987 } 3988 3989 public boolean hasEndorser() { 3990 if (this.endorser == null) 3991 return false; 3992 for (ContactDetail item : this.endorser) 3993 if (!item.isEmpty()) 3994 return true; 3995 return false; 3996 } 3997 3998 public ContactDetail addEndorser() { //3 3999 ContactDetail t = new ContactDetail(); 4000 if (this.endorser == null) 4001 this.endorser = new ArrayList<ContactDetail>(); 4002 this.endorser.add(t); 4003 return t; 4004 } 4005 4006 public CodeSystem addEndorser(ContactDetail t) { //3 4007 if (t == null) 4008 return this; 4009 if (this.endorser == null) 4010 this.endorser = new ArrayList<ContactDetail>(); 4011 this.endorser.add(t); 4012 return this; 4013 } 4014 4015 /** 4016 * @return The first repetition of repeating field {@link #endorser}, creating it if it does not already exist {3} 4017 */ 4018 public ContactDetail getEndorserFirstRep() { 4019 if (getEndorser().isEmpty()) { 4020 addEndorser(); 4021 } 4022 return getEndorser().get(0); 4023 } 4024 4025 /** 4026 * @return {@link #relatedArtifact} (Related artifacts such as additional documentation, justification, dependencies, bibliographic references, and predecessor and successor artifacts.) 4027 */ 4028 public List<RelatedArtifact> getRelatedArtifact() { 4029 if (this.relatedArtifact == null) 4030 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 4031 return this.relatedArtifact; 4032 } 4033 4034 /** 4035 * @return Returns a reference to <code>this</code> for easy method chaining 4036 */ 4037 public CodeSystem setRelatedArtifact(List<RelatedArtifact> theRelatedArtifact) { 4038 this.relatedArtifact = theRelatedArtifact; 4039 return this; 4040 } 4041 4042 public boolean hasRelatedArtifact() { 4043 if (this.relatedArtifact == null) 4044 return false; 4045 for (RelatedArtifact item : this.relatedArtifact) 4046 if (!item.isEmpty()) 4047 return true; 4048 return false; 4049 } 4050 4051 public RelatedArtifact addRelatedArtifact() { //3 4052 RelatedArtifact t = new RelatedArtifact(); 4053 if (this.relatedArtifact == null) 4054 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 4055 this.relatedArtifact.add(t); 4056 return t; 4057 } 4058 4059 public CodeSystem addRelatedArtifact(RelatedArtifact t) { //3 4060 if (t == null) 4061 return this; 4062 if (this.relatedArtifact == null) 4063 this.relatedArtifact = new ArrayList<RelatedArtifact>(); 4064 this.relatedArtifact.add(t); 4065 return this; 4066 } 4067 4068 /** 4069 * @return The first repetition of repeating field {@link #relatedArtifact}, creating it if it does not already exist {3} 4070 */ 4071 public RelatedArtifact getRelatedArtifactFirstRep() { 4072 if (getRelatedArtifact().isEmpty()) { 4073 addRelatedArtifact(); 4074 } 4075 return getRelatedArtifact().get(0); 4076 } 4077 4078 /** 4079 * @return {@link #caseSensitive} (If code comparison is case sensitive when codes within this system are compared to each other.). This is the underlying object with id, value and extensions. The accessor "getCaseSensitive" gives direct access to the value 4080 */ 4081 public BooleanType getCaseSensitiveElement() { 4082 if (this.caseSensitive == null) 4083 if (Configuration.errorOnAutoCreate()) 4084 throw new Error("Attempt to auto-create CodeSystem.caseSensitive"); 4085 else if (Configuration.doAutoCreate()) 4086 this.caseSensitive = new BooleanType(); // bb 4087 return this.caseSensitive; 4088 } 4089 4090 public boolean hasCaseSensitiveElement() { 4091 return this.caseSensitive != null && !this.caseSensitive.isEmpty(); 4092 } 4093 4094 public boolean hasCaseSensitive() { 4095 return this.caseSensitive != null && !this.caseSensitive.isEmpty(); 4096 } 4097 4098 /** 4099 * @param value {@link #caseSensitive} (If code comparison is case sensitive when codes within this system are compared to each other.). This is the underlying object with id, value and extensions. The accessor "getCaseSensitive" gives direct access to the value 4100 */ 4101 public CodeSystem setCaseSensitiveElement(BooleanType value) { 4102 this.caseSensitive = value; 4103 return this; 4104 } 4105 4106 /** 4107 * @return If code comparison is case sensitive when codes within this system are compared to each other. 4108 */ 4109 public boolean getCaseSensitive() { 4110 return this.caseSensitive == null || this.caseSensitive.isEmpty() ? false : this.caseSensitive.getValue(); 4111 } 4112 4113 /** 4114 * @param value If code comparison is case sensitive when codes within this system are compared to each other. 4115 */ 4116 public CodeSystem setCaseSensitive(boolean value) { 4117 if (this.caseSensitive == null) 4118 this.caseSensitive = new BooleanType(); 4119 this.caseSensitive.setValue(value); 4120 return this; 4121 } 4122 4123 /** 4124 * @return {@link #valueSet} (Canonical reference to the value set that contains all codes in the code system independent of code status.). This is the underlying object with id, value and extensions. The accessor "getValueSet" gives direct access to the value 4125 */ 4126 public CanonicalType getValueSetElement() { 4127 if (this.valueSet == null) 4128 if (Configuration.errorOnAutoCreate()) 4129 throw new Error("Attempt to auto-create CodeSystem.valueSet"); 4130 else if (Configuration.doAutoCreate()) 4131 this.valueSet = new CanonicalType(); // bb 4132 return this.valueSet; 4133 } 4134 4135 public boolean hasValueSetElement() { 4136 return this.valueSet != null && !this.valueSet.isEmpty(); 4137 } 4138 4139 public boolean hasValueSet() { 4140 return this.valueSet != null && !this.valueSet.isEmpty(); 4141 } 4142 4143 /** 4144 * @param value {@link #valueSet} (Canonical reference to the value set that contains all codes in the code system independent of code status.). This is the underlying object with id, value and extensions. The accessor "getValueSet" gives direct access to the value 4145 */ 4146 public CodeSystem setValueSetElement(CanonicalType value) { 4147 this.valueSet = value; 4148 return this; 4149 } 4150 4151 /** 4152 * @return Canonical reference to the value set that contains all codes in the code system independent of code status. 4153 */ 4154 public String getValueSet() { 4155 return this.valueSet == null ? null : this.valueSet.getValue(); 4156 } 4157 4158 /** 4159 * @param value Canonical reference to the value set that contains all codes in the code system independent of code status. 4160 */ 4161 public CodeSystem setValueSet(String value) { 4162 if (Utilities.noString(value)) 4163 this.valueSet = null; 4164 else { 4165 if (this.valueSet == null) 4166 this.valueSet = new CanonicalType(); 4167 this.valueSet.setValue(value); 4168 } 4169 return this; 4170 } 4171 4172 /** 4173 * @return {@link #hierarchyMeaning} (The meaning of the hierarchy of concepts as represented in this resource.). This is the underlying object with id, value and extensions. The accessor "getHierarchyMeaning" gives direct access to the value 4174 */ 4175 public Enumeration<CodeSystemHierarchyMeaning> getHierarchyMeaningElement() { 4176 if (this.hierarchyMeaning == null) 4177 if (Configuration.errorOnAutoCreate()) 4178 throw new Error("Attempt to auto-create CodeSystem.hierarchyMeaning"); 4179 else if (Configuration.doAutoCreate()) 4180 this.hierarchyMeaning = new Enumeration<CodeSystemHierarchyMeaning>(new CodeSystemHierarchyMeaningEnumFactory()); // bb 4181 return this.hierarchyMeaning; 4182 } 4183 4184 public boolean hasHierarchyMeaningElement() { 4185 return this.hierarchyMeaning != null && !this.hierarchyMeaning.isEmpty(); 4186 } 4187 4188 public boolean hasHierarchyMeaning() { 4189 return this.hierarchyMeaning != null && !this.hierarchyMeaning.isEmpty(); 4190 } 4191 4192 /** 4193 * @param value {@link #hierarchyMeaning} (The meaning of the hierarchy of concepts as represented in this resource.). This is the underlying object with id, value and extensions. The accessor "getHierarchyMeaning" gives direct access to the value 4194 */ 4195 public CodeSystem setHierarchyMeaningElement(Enumeration<CodeSystemHierarchyMeaning> value) { 4196 this.hierarchyMeaning = value; 4197 return this; 4198 } 4199 4200 /** 4201 * @return The meaning of the hierarchy of concepts as represented in this resource. 4202 */ 4203 public CodeSystemHierarchyMeaning getHierarchyMeaning() { 4204 return this.hierarchyMeaning == null ? null : this.hierarchyMeaning.getValue(); 4205 } 4206 4207 /** 4208 * @param value The meaning of the hierarchy of concepts as represented in this resource. 4209 */ 4210 public CodeSystem setHierarchyMeaning(CodeSystemHierarchyMeaning value) { 4211 if (value == null) 4212 this.hierarchyMeaning = null; 4213 else { 4214 if (this.hierarchyMeaning == null) 4215 this.hierarchyMeaning = new Enumeration<CodeSystemHierarchyMeaning>(new CodeSystemHierarchyMeaningEnumFactory()); 4216 this.hierarchyMeaning.setValue(value); 4217 } 4218 return this; 4219 } 4220 4221 /** 4222 * @return {@link #compositional} (The code system defines a compositional (post-coordination) grammar.). This is the underlying object with id, value and extensions. The accessor "getCompositional" gives direct access to the value 4223 */ 4224 public BooleanType getCompositionalElement() { 4225 if (this.compositional == null) 4226 if (Configuration.errorOnAutoCreate()) 4227 throw new Error("Attempt to auto-create CodeSystem.compositional"); 4228 else if (Configuration.doAutoCreate()) 4229 this.compositional = new BooleanType(); // bb 4230 return this.compositional; 4231 } 4232 4233 public boolean hasCompositionalElement() { 4234 return this.compositional != null && !this.compositional.isEmpty(); 4235 } 4236 4237 public boolean hasCompositional() { 4238 return this.compositional != null && !this.compositional.isEmpty(); 4239 } 4240 4241 /** 4242 * @param value {@link #compositional} (The code system defines a compositional (post-coordination) grammar.). This is the underlying object with id, value and extensions. The accessor "getCompositional" gives direct access to the value 4243 */ 4244 public CodeSystem setCompositionalElement(BooleanType value) { 4245 this.compositional = value; 4246 return this; 4247 } 4248 4249 /** 4250 * @return The code system defines a compositional (post-coordination) grammar. 4251 */ 4252 public boolean getCompositional() { 4253 return this.compositional == null || this.compositional.isEmpty() ? false : this.compositional.getValue(); 4254 } 4255 4256 /** 4257 * @param value The code system defines a compositional (post-coordination) grammar. 4258 */ 4259 public CodeSystem setCompositional(boolean value) { 4260 if (this.compositional == null) 4261 this.compositional = new BooleanType(); 4262 this.compositional.setValue(value); 4263 return this; 4264 } 4265 4266 /** 4267 * @return {@link #versionNeeded} (This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system.). This is the underlying object with id, value and extensions. The accessor "getVersionNeeded" gives direct access to the value 4268 */ 4269 public BooleanType getVersionNeededElement() { 4270 if (this.versionNeeded == null) 4271 if (Configuration.errorOnAutoCreate()) 4272 throw new Error("Attempt to auto-create CodeSystem.versionNeeded"); 4273 else if (Configuration.doAutoCreate()) 4274 this.versionNeeded = new BooleanType(); // bb 4275 return this.versionNeeded; 4276 } 4277 4278 public boolean hasVersionNeededElement() { 4279 return this.versionNeeded != null && !this.versionNeeded.isEmpty(); 4280 } 4281 4282 public boolean hasVersionNeeded() { 4283 return this.versionNeeded != null && !this.versionNeeded.isEmpty(); 4284 } 4285 4286 /** 4287 * @param value {@link #versionNeeded} (This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system.). This is the underlying object with id, value and extensions. The accessor "getVersionNeeded" gives direct access to the value 4288 */ 4289 public CodeSystem setVersionNeededElement(BooleanType value) { 4290 this.versionNeeded = value; 4291 return this; 4292 } 4293 4294 /** 4295 * @return This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system. 4296 */ 4297 public boolean getVersionNeeded() { 4298 return this.versionNeeded == null || this.versionNeeded.isEmpty() ? false : this.versionNeeded.getValue(); 4299 } 4300 4301 /** 4302 * @param value This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system. 4303 */ 4304 public CodeSystem setVersionNeeded(boolean value) { 4305 if (this.versionNeeded == null) 4306 this.versionNeeded = new BooleanType(); 4307 this.versionNeeded.setValue(value); 4308 return this; 4309 } 4310 4311 /** 4312 * @return {@link #content} (The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance.). This is the underlying object with id, value and extensions. The accessor "getContent" gives direct access to the value 4313 */ 4314 public Enumeration<CodeSystemContentMode> getContentElement() { 4315 if (this.content == null) 4316 if (Configuration.errorOnAutoCreate()) 4317 throw new Error("Attempt to auto-create CodeSystem.content"); 4318 else if (Configuration.doAutoCreate()) 4319 this.content = new Enumeration<CodeSystemContentMode>(new CodeSystemContentModeEnumFactory()); // bb 4320 return this.content; 4321 } 4322 4323 public boolean hasContentElement() { 4324 return this.content != null && !this.content.isEmpty(); 4325 } 4326 4327 public boolean hasContent() { 4328 return this.content != null && !this.content.isEmpty(); 4329 } 4330 4331 /** 4332 * @param value {@link #content} (The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance.). This is the underlying object with id, value and extensions. The accessor "getContent" gives direct access to the value 4333 */ 4334 public CodeSystem setContentElement(Enumeration<CodeSystemContentMode> value) { 4335 this.content = value; 4336 return this; 4337 } 4338 4339 /** 4340 * @return The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance. 4341 */ 4342 public CodeSystemContentMode getContent() { 4343 return this.content == null ? null : this.content.getValue(); 4344 } 4345 4346 /** 4347 * @param value The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance. 4348 */ 4349 public CodeSystem setContent(CodeSystemContentMode value) { 4350 if (this.content == null) 4351 this.content = new Enumeration<CodeSystemContentMode>(new CodeSystemContentModeEnumFactory()); 4352 this.content.setValue(value); 4353 return this; 4354 } 4355 4356 /** 4357 * @return {@link #supplements} (The canonical URL of the code system that this code system supplement is adding designations and properties to.). This is the underlying object with id, value and extensions. The accessor "getSupplements" gives direct access to the value 4358 */ 4359 public CanonicalType getSupplementsElement() { 4360 if (this.supplements == null) 4361 if (Configuration.errorOnAutoCreate()) 4362 throw new Error("Attempt to auto-create CodeSystem.supplements"); 4363 else if (Configuration.doAutoCreate()) 4364 this.supplements = new CanonicalType(); // bb 4365 return this.supplements; 4366 } 4367 4368 public boolean hasSupplementsElement() { 4369 return this.supplements != null && !this.supplements.isEmpty(); 4370 } 4371 4372 public boolean hasSupplements() { 4373 return this.supplements != null && !this.supplements.isEmpty(); 4374 } 4375 4376 /** 4377 * @param value {@link #supplements} (The canonical URL of the code system that this code system supplement is adding designations and properties to.). This is the underlying object with id, value and extensions. The accessor "getSupplements" gives direct access to the value 4378 */ 4379 public CodeSystem setSupplementsElement(CanonicalType value) { 4380 this.supplements = value; 4381 return this; 4382 } 4383 4384 /** 4385 * @return The canonical URL of the code system that this code system supplement is adding designations and properties to. 4386 */ 4387 public String getSupplements() { 4388 return this.supplements == null ? null : this.supplements.getValue(); 4389 } 4390 4391 /** 4392 * @param value The canonical URL of the code system that this code system supplement is adding designations and properties to. 4393 */ 4394 public CodeSystem setSupplements(String value) { 4395 if (Utilities.noString(value)) 4396 this.supplements = null; 4397 else { 4398 if (this.supplements == null) 4399 this.supplements = new CanonicalType(); 4400 this.supplements.setValue(value); 4401 } 4402 return this; 4403 } 4404 4405 /** 4406 * @return {@link #count} (The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward.). This is the underlying object with id, value and extensions. The accessor "getCount" gives direct access to the value 4407 */ 4408 public UnsignedIntType getCountElement() { 4409 if (this.count == null) 4410 if (Configuration.errorOnAutoCreate()) 4411 throw new Error("Attempt to auto-create CodeSystem.count"); 4412 else if (Configuration.doAutoCreate()) 4413 this.count = new UnsignedIntType(); // bb 4414 return this.count; 4415 } 4416 4417 public boolean hasCountElement() { 4418 return this.count != null && !this.count.isEmpty(); 4419 } 4420 4421 public boolean hasCount() { 4422 return this.count != null && !this.count.isEmpty(); 4423 } 4424 4425 /** 4426 * @param value {@link #count} (The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward.). This is the underlying object with id, value and extensions. The accessor "getCount" gives direct access to the value 4427 */ 4428 public CodeSystem setCountElement(UnsignedIntType value) { 4429 this.count = value; 4430 return this; 4431 } 4432 4433 /** 4434 * @return The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward. 4435 */ 4436 public int getCount() { 4437 return this.count == null || this.count.isEmpty() ? 0 : this.count.getValue(); 4438 } 4439 4440 /** 4441 * @param value The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward. 4442 */ 4443 public CodeSystem setCount(int value) { 4444 if (this.count == null) 4445 this.count = new UnsignedIntType(); 4446 this.count.setValue(value); 4447 return this; 4448 } 4449 4450 /** 4451 * @return {@link #filter} (A filter that can be used in a value set compose statement when selecting concepts using a filter.) 4452 */ 4453 public List<CodeSystemFilterComponent> getFilter() { 4454 if (this.filter == null) 4455 this.filter = new ArrayList<CodeSystemFilterComponent>(); 4456 return this.filter; 4457 } 4458 4459 /** 4460 * @return Returns a reference to <code>this</code> for easy method chaining 4461 */ 4462 public CodeSystem setFilter(List<CodeSystemFilterComponent> theFilter) { 4463 this.filter = theFilter; 4464 return this; 4465 } 4466 4467 public boolean hasFilter() { 4468 if (this.filter == null) 4469 return false; 4470 for (CodeSystemFilterComponent item : this.filter) 4471 if (!item.isEmpty()) 4472 return true; 4473 return false; 4474 } 4475 4476 public CodeSystemFilterComponent addFilter() { //3 4477 CodeSystemFilterComponent t = new CodeSystemFilterComponent(); 4478 if (this.filter == null) 4479 this.filter = new ArrayList<CodeSystemFilterComponent>(); 4480 this.filter.add(t); 4481 return t; 4482 } 4483 4484 public CodeSystem addFilter(CodeSystemFilterComponent t) { //3 4485 if (t == null) 4486 return this; 4487 if (this.filter == null) 4488 this.filter = new ArrayList<CodeSystemFilterComponent>(); 4489 this.filter.add(t); 4490 return this; 4491 } 4492 4493 /** 4494 * @return The first repetition of repeating field {@link #filter}, creating it if it does not already exist {3} 4495 */ 4496 public CodeSystemFilterComponent getFilterFirstRep() { 4497 if (getFilter().isEmpty()) { 4498 addFilter(); 4499 } 4500 return getFilter().get(0); 4501 } 4502 4503 /** 4504 * @return {@link #property} (A property defines an additional slot through which additional information can be provided about a concept.) 4505 */ 4506 public List<PropertyComponent> getProperty() { 4507 if (this.property == null) 4508 this.property = new ArrayList<PropertyComponent>(); 4509 return this.property; 4510 } 4511 4512 /** 4513 * @return Returns a reference to <code>this</code> for easy method chaining 4514 */ 4515 public CodeSystem setProperty(List<PropertyComponent> theProperty) { 4516 this.property = theProperty; 4517 return this; 4518 } 4519 4520 public boolean hasProperty() { 4521 if (this.property == null) 4522 return false; 4523 for (PropertyComponent item : this.property) 4524 if (!item.isEmpty()) 4525 return true; 4526 return false; 4527 } 4528 4529 public PropertyComponent addProperty() { //3 4530 PropertyComponent t = new PropertyComponent(); 4531 if (this.property == null) 4532 this.property = new ArrayList<PropertyComponent>(); 4533 this.property.add(t); 4534 return t; 4535 } 4536 4537 public CodeSystem addProperty(PropertyComponent t) { //3 4538 if (t == null) 4539 return this; 4540 if (this.property == null) 4541 this.property = new ArrayList<PropertyComponent>(); 4542 this.property.add(t); 4543 return this; 4544 } 4545 4546 /** 4547 * @return The first repetition of repeating field {@link #property}, creating it if it does not already exist {3} 4548 */ 4549 public PropertyComponent getPropertyFirstRep() { 4550 if (getProperty().isEmpty()) { 4551 addProperty(); 4552 } 4553 return getProperty().get(0); 4554 } 4555 4556 /** 4557 * @return {@link #concept} (Concepts that are in the code system. The concept definitions are inherently hierarchical, but the definitions must be consulted to determine what the meanings of the hierarchical relationships are.) 4558 */ 4559 public List<ConceptDefinitionComponent> getConcept() { 4560 if (this.concept == null) 4561 this.concept = new ArrayList<ConceptDefinitionComponent>(); 4562 return this.concept; 4563 } 4564 4565 /** 4566 * @return Returns a reference to <code>this</code> for easy method chaining 4567 */ 4568 public CodeSystem setConcept(List<ConceptDefinitionComponent> theConcept) { 4569 this.concept = theConcept; 4570 return this; 4571 } 4572 4573 public boolean hasConcept() { 4574 if (this.concept == null) 4575 return false; 4576 for (ConceptDefinitionComponent item : this.concept) 4577 if (!item.isEmpty()) 4578 return true; 4579 return false; 4580 } 4581 4582 public ConceptDefinitionComponent addConcept() { //3 4583 ConceptDefinitionComponent t = new ConceptDefinitionComponent(); 4584 if (this.concept == null) 4585 this.concept = new ArrayList<ConceptDefinitionComponent>(); 4586 this.concept.add(t); 4587 return t; 4588 } 4589 4590 public CodeSystem addConcept(ConceptDefinitionComponent t) { //3 4591 if (t == null) 4592 return this; 4593 if (this.concept == null) 4594 this.concept = new ArrayList<ConceptDefinitionComponent>(); 4595 this.concept.add(t); 4596 return this; 4597 } 4598 4599 /** 4600 * @return The first repetition of repeating field {@link #concept}, creating it if it does not already exist {3} 4601 */ 4602 public ConceptDefinitionComponent getConceptFirstRep() { 4603 if (getConcept().isEmpty()) { 4604 addConcept(); 4605 } 4606 return getConcept().get(0); 4607 } 4608 4609 /** 4610 * not supported on this implementation 4611 */ 4612 @Override 4613 public int getVersionAlgorithmMax() { 4614 return 0; 4615 } 4616 /** 4617 * @return {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 4618 */ 4619 public DataType getVersionAlgorithm() { 4620 throw new Error("The resource type \"CodeSystem\" does not implement the property \"versionAlgorithm[x]\""); 4621 } 4622 /** 4623 * @return {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 4624 */ 4625 public StringType getVersionAlgorithmStringType() { 4626 throw new Error("The resource type \"CodeSystem\" does not implement the property \"versionAlgorithm[x]\""); 4627 } 4628 public boolean hasVersionAlgorithmStringType() { 4629 return false;////K 4630 } 4631 /** 4632 * @return {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 4633 */ 4634 public Coding getVersionAlgorithmCoding() { 4635 throw new Error("The resource type \"CodeSystem\" does not implement the property \"versionAlgorithm[x]\""); 4636 } 4637 public boolean hasVersionAlgorithmCoding() { 4638 return false;////K 4639 } 4640 public boolean hasVersionAlgorithm() { 4641 return false; 4642 } 4643 /** 4644 * @param value {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 4645 */ 4646 public CodeSystem setVersionAlgorithm(DataType value) { 4647 throw new Error("The resource type \"CodeSystem\" does not implement the property \"versionAlgorithm[x]\""); 4648 } 4649 4650 /** 4651 * not supported on this implementation 4652 */ 4653 @Override 4654 public int getCopyrightLabelMax() { 4655 return 0; 4656 } 4657 /** 4658 * @return {@link #copyrightLabel} (A short string (<50 characters), suitable for inclusion in a page footer that identifies the copyright holder, effective period, and optionally whether rights are resctricted. (e.g. 'All rights reserved', 'Some rights reserved').). This is the underlying object with id, value and extensions. The accessor "getCopyrightLabel" gives direct access to the value 4659 */ 4660 public StringType getCopyrightLabelElement() { 4661 throw new Error("The resource type \"CodeSystem\" does not implement the property \"copyrightLabel\""); 4662 } 4663 4664 public boolean hasCopyrightLabelElement() { 4665 return false; 4666 } 4667 public boolean hasCopyrightLabel() { 4668 return false; 4669 } 4670 4671 /** 4672 * @param value {@link #copyrightLabel} (A short string (<50 characters), suitable for inclusion in a page footer that identifies the copyright holder, effective period, and optionally whether rights are resctricted. (e.g. 'All rights reserved', 'Some rights reserved').). This is the underlying object with id, value and extensions. The accessor "getCopyrightLabel" gives direct access to the value 4673 */ 4674 public CodeSystem setCopyrightLabelElement(StringType value) { 4675 throw new Error("The resource type \"CodeSystem\" does not implement the property \"copyrightLabel\""); 4676 } 4677 public String getCopyrightLabel() { 4678 throw new Error("The resource type \"CodeSystem\" does not implement the property \"copyrightLabel\""); 4679 } 4680 /** 4681 * @param value A short string (<50 characters), suitable for inclusion in a page footer that identifies the copyright holder, effective period, and optionally whether rights are resctricted. (e.g. 'All rights reserved', 'Some rights reserved'). 4682 */ 4683 public CodeSystem setCopyrightLabel(String value) { 4684 throw new Error("The resource type \"CodeSystem\" does not implement the property \"copyrightLabel\""); 4685 } 4686 protected void listChildren(List<Property> children) { 4687 super.listChildren(children); 4688 children.add(new Property("url", "uri", "An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system.", 0, 1, url)); 4689 children.add(new Property("identifier", "Identifier", "A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier)); 4690 children.add(new Property("version", "string", "The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version.", 0, 1, version)); 4691 children.add(new Property("name", "string", "A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name)); 4692 children.add(new Property("title", "string", "A short, descriptive, user-friendly title for the code system.", 0, 1, title)); 4693 children.add(new Property("status", "code", "The status of this code system. Enables tracking the life-cycle of the content.", 0, 1, status)); 4694 children.add(new Property("experimental", "boolean", "A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 0, 1, experimental)); 4695 children.add(new Property("date", "dateTime", "The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes.", 0, 1, date)); 4696 children.add(new Property("publisher", "string", "The name of the organization or individual responsible for the release and ongoing maintenance of the code system.", 0, 1, publisher)); 4697 children.add(new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact)); 4698 children.add(new Property("description", "markdown", "A free text natural language description of the code system from a consumer's perspective.", 0, 1, description)); 4699 children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate code system instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); 4700 children.add(new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the code system is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction)); 4701 children.add(new Property("purpose", "markdown", "Explanation of why this code system is needed and why it has been designed as it has.", 0, 1, purpose)); 4702 children.add(new Property("copyright", "markdown", "A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system.", 0, 1, copyright)); 4703 children.add(new Property("approvalDate", "date", "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 0, 1, approvalDate)); 4704 children.add(new Property("lastReviewDate", "date", "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 0, 1, lastReviewDate)); 4705 children.add(new Property("effectivePeriod", "Period", "The period during which the CodeSystem content was or is planned to be in active use.", 0, 1, effectivePeriod)); 4706 children.add(new Property("topic", "CodeableConcept", "Descriptions related to the content of the CodeSystem. Topics provide a high-level categorization as well as keywords for the CodeSystem that can be useful for filtering and searching.", 0, java.lang.Integer.MAX_VALUE, topic)); 4707 children.add(new Property("author", "ContactDetail", "An individiual or organization primarily involved in the creation and maintenance of the CodeSystem.", 0, java.lang.Integer.MAX_VALUE, author)); 4708 children.add(new Property("editor", "ContactDetail", "An individual or organization primarily responsible for internal coherence of the CodeSystem.", 0, java.lang.Integer.MAX_VALUE, editor)); 4709 children.add(new Property("reviewer", "ContactDetail", "An individual or organization primarily responsible for review of some aspect of the CodeSystem.", 0, java.lang.Integer.MAX_VALUE, reviewer)); 4710 children.add(new Property("endorser", "ContactDetail", "An individual or organization responsible for officially endorsing the CodeSystem for use in some setting.", 0, java.lang.Integer.MAX_VALUE, endorser)); 4711 children.add(new Property("relatedArtifact", "RelatedArtifact", "Related artifacts such as additional documentation, justification, dependencies, bibliographic references, and predecessor and successor artifacts.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact)); 4712 children.add(new Property("caseSensitive", "boolean", "If code comparison is case sensitive when codes within this system are compared to each other.", 0, 1, caseSensitive)); 4713 children.add(new Property("valueSet", "canonical(ValueSet)", "Canonical reference to the value set that contains all codes in the code system independent of code status.", 0, 1, valueSet)); 4714 children.add(new Property("hierarchyMeaning", "code", "The meaning of the hierarchy of concepts as represented in this resource.", 0, 1, hierarchyMeaning)); 4715 children.add(new Property("compositional", "boolean", "The code system defines a compositional (post-coordination) grammar.", 0, 1, compositional)); 4716 children.add(new Property("versionNeeded", "boolean", "This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system.", 0, 1, versionNeeded)); 4717 children.add(new Property("content", "code", "The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance.", 0, 1, content)); 4718 children.add(new Property("supplements", "canonical(CodeSystem)", "The canonical URL of the code system that this code system supplement is adding designations and properties to.", 0, 1, supplements)); 4719 children.add(new Property("count", "unsignedInt", "The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward.", 0, 1, count)); 4720 children.add(new Property("filter", "", "A filter that can be used in a value set compose statement when selecting concepts using a filter.", 0, java.lang.Integer.MAX_VALUE, filter)); 4721 children.add(new Property("property", "", "A property defines an additional slot through which additional information can be provided about a concept.", 0, java.lang.Integer.MAX_VALUE, property)); 4722 children.add(new Property("concept", "", "Concepts that are in the code system. The concept definitions are inherently hierarchical, but the definitions must be consulted to determine what the meanings of the hierarchical relationships are.", 0, java.lang.Integer.MAX_VALUE, concept)); 4723 } 4724 4725 @Override 4726 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 4727 switch (_hash) { 4728 case 116079: /*url*/ return new Property("url", "uri", "An absolute URI that is used to identify this code system when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which an authoritative instance of this code system is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the code system is stored on different servers. This is used in [Coding](datatypes.html#Coding).system.", 0, 1, url); 4729 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier); 4730 case 351608024: /*version*/ return new Property("version", "string", "The identifier that is used to identify this version of the code system when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the code system author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. This is used in [Coding](datatypes.html#Coding).version.", 0, 1, version); 4731 case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the code system. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name); 4732 case 110371416: /*title*/ return new Property("title", "string", "A short, descriptive, user-friendly title for the code system.", 0, 1, title); 4733 case -892481550: /*status*/ return new Property("status", "code", "The status of this code system. Enables tracking the life-cycle of the content.", 0, 1, status); 4734 case -404562712: /*experimental*/ return new Property("experimental", "boolean", "A Boolean value to indicate that this code system is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 0, 1, experimental); 4735 case 3076014: /*date*/ return new Property("date", "dateTime", "The date (and optionally time) when the code system was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the code system changes.", 0, 1, date); 4736 case 1447404028: /*publisher*/ return new Property("publisher", "string", "The name of the organization or individual responsible for the release and ongoing maintenance of the code system.", 0, 1, publisher); 4737 case 951526432: /*contact*/ return new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact); 4738 case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the code system from a consumer's perspective.", 0, 1, description); 4739 case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate code system instances.", 0, java.lang.Integer.MAX_VALUE, useContext); 4740 case -507075711: /*jurisdiction*/ return new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the code system is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction); 4741 case -220463842: /*purpose*/ return new Property("purpose", "markdown", "Explanation of why this code system is needed and why it has been designed as it has.", 0, 1, purpose); 4742 case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the code system and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the code system.", 0, 1, copyright); 4743 case 223539345: /*approvalDate*/ return new Property("approvalDate", "date", "The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 0, 1, approvalDate); 4744 case -1687512484: /*lastReviewDate*/ return new Property("lastReviewDate", "date", "The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.", 0, 1, lastReviewDate); 4745 case -403934648: /*effectivePeriod*/ return new Property("effectivePeriod", "Period", "The period during which the CodeSystem content was or is planned to be in active use.", 0, 1, effectivePeriod); 4746 case 110546223: /*topic*/ return new Property("topic", "CodeableConcept", "Descriptions related to the content of the CodeSystem. Topics provide a high-level categorization as well as keywords for the CodeSystem that can be useful for filtering and searching.", 0, java.lang.Integer.MAX_VALUE, topic); 4747 case -1406328437: /*author*/ return new Property("author", "ContactDetail", "An individiual or organization primarily involved in the creation and maintenance of the CodeSystem.", 0, java.lang.Integer.MAX_VALUE, author); 4748 case -1307827859: /*editor*/ return new Property("editor", "ContactDetail", "An individual or organization primarily responsible for internal coherence of the CodeSystem.", 0, java.lang.Integer.MAX_VALUE, editor); 4749 case -261190139: /*reviewer*/ return new Property("reviewer", "ContactDetail", "An individual or organization primarily responsible for review of some aspect of the CodeSystem.", 0, java.lang.Integer.MAX_VALUE, reviewer); 4750 case 1740277666: /*endorser*/ return new Property("endorser", "ContactDetail", "An individual or organization responsible for officially endorsing the CodeSystem for use in some setting.", 0, java.lang.Integer.MAX_VALUE, endorser); 4751 case 666807069: /*relatedArtifact*/ return new Property("relatedArtifact", "RelatedArtifact", "Related artifacts such as additional documentation, justification, dependencies, bibliographic references, and predecessor and successor artifacts.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact); 4752 case -35616442: /*caseSensitive*/ return new Property("caseSensitive", "boolean", "If code comparison is case sensitive when codes within this system are compared to each other.", 0, 1, caseSensitive); 4753 case -1410174671: /*valueSet*/ return new Property("valueSet", "canonical(ValueSet)", "Canonical reference to the value set that contains all codes in the code system independent of code status.", 0, 1, valueSet); 4754 case 1913078280: /*hierarchyMeaning*/ return new Property("hierarchyMeaning", "code", "The meaning of the hierarchy of concepts as represented in this resource.", 0, 1, hierarchyMeaning); 4755 case 1248023381: /*compositional*/ return new Property("compositional", "boolean", "The code system defines a compositional (post-coordination) grammar.", 0, 1, compositional); 4756 case 617270957: /*versionNeeded*/ return new Property("versionNeeded", "boolean", "This flag is used to signify that the code system does not commit to concept permanence across versions. If true, a version must be specified when referencing this code system.", 0, 1, versionNeeded); 4757 case 951530617: /*content*/ return new Property("content", "code", "The extent of the content of the code system (the concepts and codes it defines) are represented in this resource instance.", 0, 1, content); 4758 case -596951334: /*supplements*/ return new Property("supplements", "canonical(CodeSystem)", "The canonical URL of the code system that this code system supplement is adding designations and properties to.", 0, 1, supplements); 4759 case 94851343: /*count*/ return new Property("count", "unsignedInt", "The total number of concepts defined by the code system. Where the code system has a compositional grammar, the basis of this count is defined by the system steward.", 0, 1, count); 4760 case -1274492040: /*filter*/ return new Property("filter", "", "A filter that can be used in a value set compose statement when selecting concepts using a filter.", 0, java.lang.Integer.MAX_VALUE, filter); 4761 case -993141291: /*property*/ return new Property("property", "", "A property defines an additional slot through which additional information can be provided about a concept.", 0, java.lang.Integer.MAX_VALUE, property); 4762 case 951024232: /*concept*/ return new Property("concept", "", "Concepts that are in the code system. The concept definitions are inherently hierarchical, but the definitions must be consulted to determine what the meanings of the hierarchical relationships are.", 0, java.lang.Integer.MAX_VALUE, concept); 4763 default: return super.getNamedProperty(_hash, _name, _checkValid); 4764 } 4765 4766 } 4767 4768 @Override 4769 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 4770 switch (hash) { 4771 case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType 4772 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 4773 case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType 4774 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 4775 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 4776 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<PublicationStatus> 4777 case -404562712: /*experimental*/ return this.experimental == null ? new Base[0] : new Base[] {this.experimental}; // BooleanType 4778 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 4779 case 1447404028: /*publisher*/ return this.publisher == null ? new Base[0] : new Base[] {this.publisher}; // StringType 4780 case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 4781 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 4782 case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 4783 case -507075711: /*jurisdiction*/ return this.jurisdiction == null ? new Base[0] : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 4784 case -220463842: /*purpose*/ return this.purpose == null ? new Base[0] : new Base[] {this.purpose}; // MarkdownType 4785 case 1522889671: /*copyright*/ return this.copyright == null ? new Base[0] : new Base[] {this.copyright}; // MarkdownType 4786 case 223539345: /*approvalDate*/ return this.approvalDate == null ? new Base[0] : new Base[] {this.approvalDate}; // DateType 4787 case -1687512484: /*lastReviewDate*/ return this.lastReviewDate == null ? new Base[0] : new Base[] {this.lastReviewDate}; // DateType 4788 case -403934648: /*effectivePeriod*/ return this.effectivePeriod == null ? new Base[0] : new Base[] {this.effectivePeriod}; // Period 4789 case 110546223: /*topic*/ return this.topic == null ? new Base[0] : this.topic.toArray(new Base[this.topic.size()]); // CodeableConcept 4790 case -1406328437: /*author*/ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // ContactDetail 4791 case -1307827859: /*editor*/ return this.editor == null ? new Base[0] : this.editor.toArray(new Base[this.editor.size()]); // ContactDetail 4792 case -261190139: /*reviewer*/ return this.reviewer == null ? new Base[0] : this.reviewer.toArray(new Base[this.reviewer.size()]); // ContactDetail 4793 case 1740277666: /*endorser*/ return this.endorser == null ? new Base[0] : this.endorser.toArray(new Base[this.endorser.size()]); // ContactDetail 4794 case 666807069: /*relatedArtifact*/ return this.relatedArtifact == null ? new Base[0] : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact 4795 case -35616442: /*caseSensitive*/ return this.caseSensitive == null ? new Base[0] : new Base[] {this.caseSensitive}; // BooleanType 4796 case -1410174671: /*valueSet*/ return this.valueSet == null ? new Base[0] : new Base[] {this.valueSet}; // CanonicalType 4797 case 1913078280: /*hierarchyMeaning*/ return this.hierarchyMeaning == null ? new Base[0] : new Base[] {this.hierarchyMeaning}; // Enumeration<CodeSystemHierarchyMeaning> 4798 case 1248023381: /*compositional*/ return this.compositional == null ? new Base[0] : new Base[] {this.compositional}; // BooleanType 4799 case 617270957: /*versionNeeded*/ return this.versionNeeded == null ? new Base[0] : new Base[] {this.versionNeeded}; // BooleanType 4800 case 951530617: /*content*/ return this.content == null ? new Base[0] : new Base[] {this.content}; // Enumeration<CodeSystemContentMode> 4801 case -596951334: /*supplements*/ return this.supplements == null ? new Base[0] : new Base[] {this.supplements}; // CanonicalType 4802 case 94851343: /*count*/ return this.count == null ? new Base[0] : new Base[] {this.count}; // UnsignedIntType 4803 case -1274492040: /*filter*/ return this.filter == null ? new Base[0] : this.filter.toArray(new Base[this.filter.size()]); // CodeSystemFilterComponent 4804 case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // PropertyComponent 4805 case 951024232: /*concept*/ return this.concept == null ? new Base[0] : this.concept.toArray(new Base[this.concept.size()]); // ConceptDefinitionComponent 4806 default: return super.getProperty(hash, name, checkValid); 4807 } 4808 4809 } 4810 4811 @Override 4812 public Base setProperty(int hash, String name, Base value) throws FHIRException { 4813 switch (hash) { 4814 case 116079: // url 4815 this.url = TypeConvertor.castToUri(value); // UriType 4816 return value; 4817 case -1618432855: // identifier 4818 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 4819 return value; 4820 case 351608024: // version 4821 this.version = TypeConvertor.castToString(value); // StringType 4822 return value; 4823 case 3373707: // name 4824 this.name = TypeConvertor.castToString(value); // StringType 4825 return value; 4826 case 110371416: // title 4827 this.title = TypeConvertor.castToString(value); // StringType 4828 return value; 4829 case -892481550: // status 4830 value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 4831 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 4832 return value; 4833 case -404562712: // experimental 4834 this.experimental = TypeConvertor.castToBoolean(value); // BooleanType 4835 return value; 4836 case 3076014: // date 4837 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 4838 return value; 4839 case 1447404028: // publisher 4840 this.publisher = TypeConvertor.castToString(value); // StringType 4841 return value; 4842 case 951526432: // contact 4843 this.getContact().add(TypeConvertor.castToContactDetail(value)); // ContactDetail 4844 return value; 4845 case -1724546052: // description 4846 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 4847 return value; 4848 case -669707736: // useContext 4849 this.getUseContext().add(TypeConvertor.castToUsageContext(value)); // UsageContext 4850 return value; 4851 case -507075711: // jurisdiction 4852 this.getJurisdiction().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 4853 return value; 4854 case -220463842: // purpose 4855 this.purpose = TypeConvertor.castToMarkdown(value); // MarkdownType 4856 return value; 4857 case 1522889671: // copyright 4858 this.copyright = TypeConvertor.castToMarkdown(value); // MarkdownType 4859 return value; 4860 case 223539345: // approvalDate 4861 this.approvalDate = TypeConvertor.castToDate(value); // DateType 4862 return value; 4863 case -1687512484: // lastReviewDate 4864 this.lastReviewDate = TypeConvertor.castToDate(value); // DateType 4865 return value; 4866 case -403934648: // effectivePeriod 4867 this.effectivePeriod = TypeConvertor.castToPeriod(value); // Period 4868 return value; 4869 case 110546223: // topic 4870 this.getTopic().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 4871 return value; 4872 case -1406328437: // author 4873 this.getAuthor().add(TypeConvertor.castToContactDetail(value)); // ContactDetail 4874 return value; 4875 case -1307827859: // editor 4876 this.getEditor().add(TypeConvertor.castToContactDetail(value)); // ContactDetail 4877 return value; 4878 case -261190139: // reviewer 4879 this.getReviewer().add(TypeConvertor.castToContactDetail(value)); // ContactDetail 4880 return value; 4881 case 1740277666: // endorser 4882 this.getEndorser().add(TypeConvertor.castToContactDetail(value)); // ContactDetail 4883 return value; 4884 case 666807069: // relatedArtifact 4885 this.getRelatedArtifact().add(TypeConvertor.castToRelatedArtifact(value)); // RelatedArtifact 4886 return value; 4887 case -35616442: // caseSensitive 4888 this.caseSensitive = TypeConvertor.castToBoolean(value); // BooleanType 4889 return value; 4890 case -1410174671: // valueSet 4891 this.valueSet = TypeConvertor.castToCanonical(value); // CanonicalType 4892 return value; 4893 case 1913078280: // hierarchyMeaning 4894 value = new CodeSystemHierarchyMeaningEnumFactory().fromType(TypeConvertor.castToCode(value)); 4895 this.hierarchyMeaning = (Enumeration) value; // Enumeration<CodeSystemHierarchyMeaning> 4896 return value; 4897 case 1248023381: // compositional 4898 this.compositional = TypeConvertor.castToBoolean(value); // BooleanType 4899 return value; 4900 case 617270957: // versionNeeded 4901 this.versionNeeded = TypeConvertor.castToBoolean(value); // BooleanType 4902 return value; 4903 case 951530617: // content 4904 value = new CodeSystemContentModeEnumFactory().fromType(TypeConvertor.castToCode(value)); 4905 this.content = (Enumeration) value; // Enumeration<CodeSystemContentMode> 4906 return value; 4907 case -596951334: // supplements 4908 this.supplements = TypeConvertor.castToCanonical(value); // CanonicalType 4909 return value; 4910 case 94851343: // count 4911 this.count = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType 4912 return value; 4913 case -1274492040: // filter 4914 this.getFilter().add((CodeSystemFilterComponent) value); // CodeSystemFilterComponent 4915 return value; 4916 case -993141291: // property 4917 this.getProperty().add((PropertyComponent) value); // PropertyComponent 4918 return value; 4919 case 951024232: // concept 4920 this.getConcept().add((ConceptDefinitionComponent) value); // ConceptDefinitionComponent 4921 return value; 4922 default: return super.setProperty(hash, name, value); 4923 } 4924 4925 } 4926 4927 @Override 4928 public Base setProperty(String name, Base value) throws FHIRException { 4929 if (name.equals("url")) { 4930 this.url = TypeConvertor.castToUri(value); // UriType 4931 } else if (name.equals("identifier")) { 4932 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 4933 } else if (name.equals("version")) { 4934 this.version = TypeConvertor.castToString(value); // StringType 4935 } else if (name.equals("name")) { 4936 this.name = TypeConvertor.castToString(value); // StringType 4937 } else if (name.equals("title")) { 4938 this.title = TypeConvertor.castToString(value); // StringType 4939 } else if (name.equals("status")) { 4940 value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 4941 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 4942 } else if (name.equals("experimental")) { 4943 this.experimental = TypeConvertor.castToBoolean(value); // BooleanType 4944 } else if (name.equals("date")) { 4945 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 4946 } else if (name.equals("publisher")) { 4947 this.publisher = TypeConvertor.castToString(value); // StringType 4948 } else if (name.equals("contact")) { 4949 this.getContact().add(TypeConvertor.castToContactDetail(value)); 4950 } else if (name.equals("description")) { 4951 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 4952 } else if (name.equals("useContext")) { 4953 this.getUseContext().add(TypeConvertor.castToUsageContext(value)); 4954 } else if (name.equals("jurisdiction")) { 4955 this.getJurisdiction().add(TypeConvertor.castToCodeableConcept(value)); 4956 } else if (name.equals("purpose")) { 4957 this.purpose = TypeConvertor.castToMarkdown(value); // MarkdownType 4958 } else if (name.equals("copyright")) { 4959 this.copyright = TypeConvertor.castToMarkdown(value); // MarkdownType 4960 } else if (name.equals("approvalDate")) { 4961 this.approvalDate = TypeConvertor.castToDate(value); // DateType 4962 } else if (name.equals("lastReviewDate")) { 4963 this.lastReviewDate = TypeConvertor.castToDate(value); // DateType 4964 } else if (name.equals("effectivePeriod")) { 4965 this.effectivePeriod = TypeConvertor.castToPeriod(value); // Period 4966 } else if (name.equals("topic")) { 4967 this.getTopic().add(TypeConvertor.castToCodeableConcept(value)); 4968 } else if (name.equals("author")) { 4969 this.getAuthor().add(TypeConvertor.castToContactDetail(value)); 4970 } else if (name.equals("editor")) { 4971 this.getEditor().add(TypeConvertor.castToContactDetail(value)); 4972 } else if (name.equals("reviewer")) { 4973 this.getReviewer().add(TypeConvertor.castToContactDetail(value)); 4974 } else if (name.equals("endorser")) { 4975 this.getEndorser().add(TypeConvertor.castToContactDetail(value)); 4976 } else if (name.equals("relatedArtifact")) { 4977 this.getRelatedArtifact().add(TypeConvertor.castToRelatedArtifact(value)); 4978 } else if (name.equals("caseSensitive")) { 4979 this.caseSensitive = TypeConvertor.castToBoolean(value); // BooleanType 4980 } else if (name.equals("valueSet")) { 4981 this.valueSet = TypeConvertor.castToCanonical(value); // CanonicalType 4982 } else if (name.equals("hierarchyMeaning")) { 4983 value = new CodeSystemHierarchyMeaningEnumFactory().fromType(TypeConvertor.castToCode(value)); 4984 this.hierarchyMeaning = (Enumeration) value; // Enumeration<CodeSystemHierarchyMeaning> 4985 } else if (name.equals("compositional")) { 4986 this.compositional = TypeConvertor.castToBoolean(value); // BooleanType 4987 } else if (name.equals("versionNeeded")) { 4988 this.versionNeeded = TypeConvertor.castToBoolean(value); // BooleanType 4989 } else if (name.equals("content")) { 4990 value = new CodeSystemContentModeEnumFactory().fromType(TypeConvertor.castToCode(value)); 4991 this.content = (Enumeration) value; // Enumeration<CodeSystemContentMode> 4992 } else if (name.equals("supplements")) { 4993 this.supplements = TypeConvertor.castToCanonical(value); // CanonicalType 4994 } else if (name.equals("count")) { 4995 this.count = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType 4996 } else if (name.equals("filter")) { 4997 this.getFilter().add((CodeSystemFilterComponent) value); 4998 } else if (name.equals("property")) { 4999 this.getProperty().add((PropertyComponent) value); 5000 } else if (name.equals("concept")) { 5001 this.getConcept().add((ConceptDefinitionComponent) value); 5002 } else 5003 return super.setProperty(name, value); 5004 return value; 5005 } 5006 5007 @Override 5008 public Base makeProperty(int hash, String name) throws FHIRException { 5009 switch (hash) { 5010 case 116079: return getUrlElement(); 5011 case -1618432855: return addIdentifier(); 5012 case 351608024: return getVersionElement(); 5013 case 3373707: return getNameElement(); 5014 case 110371416: return getTitleElement(); 5015 case -892481550: return getStatusElement(); 5016 case -404562712: return getExperimentalElement(); 5017 case 3076014: return getDateElement(); 5018 case 1447404028: return getPublisherElement(); 5019 case 951526432: return addContact(); 5020 case -1724546052: return getDescriptionElement(); 5021 case -669707736: return addUseContext(); 5022 case -507075711: return addJurisdiction(); 5023 case -220463842: return getPurposeElement(); 5024 case 1522889671: return getCopyrightElement(); 5025 case 223539345: return getApprovalDateElement(); 5026 case -1687512484: return getLastReviewDateElement(); 5027 case -403934648: return getEffectivePeriod(); 5028 case 110546223: return addTopic(); 5029 case -1406328437: return addAuthor(); 5030 case -1307827859: return addEditor(); 5031 case -261190139: return addReviewer(); 5032 case 1740277666: return addEndorser(); 5033 case 666807069: return addRelatedArtifact(); 5034 case -35616442: return getCaseSensitiveElement(); 5035 case -1410174671: return getValueSetElement(); 5036 case 1913078280: return getHierarchyMeaningElement(); 5037 case 1248023381: return getCompositionalElement(); 5038 case 617270957: return getVersionNeededElement(); 5039 case 951530617: return getContentElement(); 5040 case -596951334: return getSupplementsElement(); 5041 case 94851343: return getCountElement(); 5042 case -1274492040: return addFilter(); 5043 case -993141291: return addProperty(); 5044 case 951024232: return addConcept(); 5045 default: return super.makeProperty(hash, name); 5046 } 5047 5048 } 5049 5050 @Override 5051 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 5052 switch (hash) { 5053 case 116079: /*url*/ return new String[] {"uri"}; 5054 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 5055 case 351608024: /*version*/ return new String[] {"string"}; 5056 case 3373707: /*name*/ return new String[] {"string"}; 5057 case 110371416: /*title*/ return new String[] {"string"}; 5058 case -892481550: /*status*/ return new String[] {"code"}; 5059 case -404562712: /*experimental*/ return new String[] {"boolean"}; 5060 case 3076014: /*date*/ return new String[] {"dateTime"}; 5061 case 1447404028: /*publisher*/ return new String[] {"string"}; 5062 case 951526432: /*contact*/ return new String[] {"ContactDetail"}; 5063 case -1724546052: /*description*/ return new String[] {"markdown"}; 5064 case -669707736: /*useContext*/ return new String[] {"UsageContext"}; 5065 case -507075711: /*jurisdiction*/ return new String[] {"CodeableConcept"}; 5066 case -220463842: /*purpose*/ return new String[] {"markdown"}; 5067 case 1522889671: /*copyright*/ return new String[] {"markdown"}; 5068 case 223539345: /*approvalDate*/ return new String[] {"date"}; 5069 case -1687512484: /*lastReviewDate*/ return new String[] {"date"}; 5070 case -403934648: /*effectivePeriod*/ return new String[] {"Period"}; 5071 case 110546223: /*topic*/ return new String[] {"CodeableConcept"}; 5072 case -1406328437: /*author*/ return new String[] {"ContactDetail"}; 5073 case -1307827859: /*editor*/ return new String[] {"ContactDetail"}; 5074 case -261190139: /*reviewer*/ return new String[] {"ContactDetail"}; 5075 case 1740277666: /*endorser*/ return new String[] {"ContactDetail"}; 5076 case 666807069: /*relatedArtifact*/ return new String[] {"RelatedArtifact"}; 5077 case -35616442: /*caseSensitive*/ return new String[] {"boolean"}; 5078 case -1410174671: /*valueSet*/ return new String[] {"canonical"}; 5079 case 1913078280: /*hierarchyMeaning*/ return new String[] {"code"}; 5080 case 1248023381: /*compositional*/ return new String[] {"boolean"}; 5081 case 617270957: /*versionNeeded*/ return new String[] {"boolean"}; 5082 case 951530617: /*content*/ return new String[] {"code"}; 5083 case -596951334: /*supplements*/ return new String[] {"canonical"}; 5084 case 94851343: /*count*/ return new String[] {"unsignedInt"}; 5085 case -1274492040: /*filter*/ return new String[] {}; 5086 case -993141291: /*property*/ return new String[] {}; 5087 case 951024232: /*concept*/ return new String[] {}; 5088 default: return super.getTypesForProperty(hash, name); 5089 } 5090 5091 } 5092 5093 @Override 5094 public Base addChild(String name) throws FHIRException { 5095 if (name.equals("url")) { 5096 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.url"); 5097 } 5098 else if (name.equals("identifier")) { 5099 return addIdentifier(); 5100 } 5101 else if (name.equals("version")) { 5102 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.version"); 5103 } 5104 else if (name.equals("name")) { 5105 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.name"); 5106 } 5107 else if (name.equals("title")) { 5108 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.title"); 5109 } 5110 else if (name.equals("status")) { 5111 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.status"); 5112 } 5113 else if (name.equals("experimental")) { 5114 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.experimental"); 5115 } 5116 else if (name.equals("date")) { 5117 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.date"); 5118 } 5119 else if (name.equals("publisher")) { 5120 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.publisher"); 5121 } 5122 else if (name.equals("contact")) { 5123 return addContact(); 5124 } 5125 else if (name.equals("description")) { 5126 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.description"); 5127 } 5128 else if (name.equals("useContext")) { 5129 return addUseContext(); 5130 } 5131 else if (name.equals("jurisdiction")) { 5132 return addJurisdiction(); 5133 } 5134 else if (name.equals("purpose")) { 5135 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.purpose"); 5136 } 5137 else if (name.equals("copyright")) { 5138 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.copyright"); 5139 } 5140 else if (name.equals("approvalDate")) { 5141 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.approvalDate"); 5142 } 5143 else if (name.equals("lastReviewDate")) { 5144 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.lastReviewDate"); 5145 } 5146 else if (name.equals("effectivePeriod")) { 5147 this.effectivePeriod = new Period(); 5148 return this.effectivePeriod; 5149 } 5150 else if (name.equals("topic")) { 5151 return addTopic(); 5152 } 5153 else if (name.equals("author")) { 5154 return addAuthor(); 5155 } 5156 else if (name.equals("editor")) { 5157 return addEditor(); 5158 } 5159 else if (name.equals("reviewer")) { 5160 return addReviewer(); 5161 } 5162 else if (name.equals("endorser")) { 5163 return addEndorser(); 5164 } 5165 else if (name.equals("relatedArtifact")) { 5166 return addRelatedArtifact(); 5167 } 5168 else if (name.equals("caseSensitive")) { 5169 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.caseSensitive"); 5170 } 5171 else if (name.equals("valueSet")) { 5172 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.valueSet"); 5173 } 5174 else if (name.equals("hierarchyMeaning")) { 5175 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.hierarchyMeaning"); 5176 } 5177 else if (name.equals("compositional")) { 5178 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.compositional"); 5179 } 5180 else if (name.equals("versionNeeded")) { 5181 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.versionNeeded"); 5182 } 5183 else if (name.equals("content")) { 5184 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.content"); 5185 } 5186 else if (name.equals("supplements")) { 5187 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.supplements"); 5188 } 5189 else if (name.equals("count")) { 5190 throw new FHIRException("Cannot call addChild on a primitive type CodeSystem.count"); 5191 } 5192 else if (name.equals("filter")) { 5193 return addFilter(); 5194 } 5195 else if (name.equals("property")) { 5196 return addProperty(); 5197 } 5198 else if (name.equals("concept")) { 5199 return addConcept(); 5200 } 5201 else 5202 return super.addChild(name); 5203 } 5204 5205 public String fhirType() { 5206 return "CodeSystem"; 5207 5208 } 5209 5210 public CodeSystem copy() { 5211 CodeSystem dst = new CodeSystem(); 5212 copyValues(dst); 5213 return dst; 5214 } 5215 5216 public void copyValues(CodeSystem dst) { 5217 super.copyValues(dst); 5218 dst.url = url == null ? null : url.copy(); 5219 if (identifier != null) { 5220 dst.identifier = new ArrayList<Identifier>(); 5221 for (Identifier i : identifier) 5222 dst.identifier.add(i.copy()); 5223 }; 5224 dst.version = version == null ? null : version.copy(); 5225 dst.name = name == null ? null : name.copy(); 5226 dst.title = title == null ? null : title.copy(); 5227 dst.status = status == null ? null : status.copy(); 5228 dst.experimental = experimental == null ? null : experimental.copy(); 5229 dst.date = date == null ? null : date.copy(); 5230 dst.publisher = publisher == null ? null : publisher.copy(); 5231 if (contact != null) { 5232 dst.contact = new ArrayList<ContactDetail>(); 5233 for (ContactDetail i : contact) 5234 dst.contact.add(i.copy()); 5235 }; 5236 dst.description = description == null ? null : description.copy(); 5237 if (useContext != null) { 5238 dst.useContext = new ArrayList<UsageContext>(); 5239 for (UsageContext i : useContext) 5240 dst.useContext.add(i.copy()); 5241 }; 5242 if (jurisdiction != null) { 5243 dst.jurisdiction = new ArrayList<CodeableConcept>(); 5244 for (CodeableConcept i : jurisdiction) 5245 dst.jurisdiction.add(i.copy()); 5246 }; 5247 dst.purpose = purpose == null ? null : purpose.copy(); 5248 dst.copyright = copyright == null ? null : copyright.copy(); 5249 dst.approvalDate = approvalDate == null ? null : approvalDate.copy(); 5250 dst.lastReviewDate = lastReviewDate == null ? null : lastReviewDate.copy(); 5251 dst.effectivePeriod = effectivePeriod == null ? null : effectivePeriod.copy(); 5252 if (topic != null) { 5253 dst.topic = new ArrayList<CodeableConcept>(); 5254 for (CodeableConcept i : topic) 5255 dst.topic.add(i.copy()); 5256 }; 5257 if (author != null) { 5258 dst.author = new ArrayList<ContactDetail>(); 5259 for (ContactDetail i : author) 5260 dst.author.add(i.copy()); 5261 }; 5262 if (editor != null) { 5263 dst.editor = new ArrayList<ContactDetail>(); 5264 for (ContactDetail i : editor) 5265 dst.editor.add(i.copy()); 5266 }; 5267 if (reviewer != null) { 5268 dst.reviewer = new ArrayList<ContactDetail>(); 5269 for (ContactDetail i : reviewer) 5270 dst.reviewer.add(i.copy()); 5271 }; 5272 if (endorser != null) { 5273 dst.endorser = new ArrayList<ContactDetail>(); 5274 for (ContactDetail i : endorser) 5275 dst.endorser.add(i.copy()); 5276 }; 5277 if (relatedArtifact != null) { 5278 dst.relatedArtifact = new ArrayList<RelatedArtifact>(); 5279 for (RelatedArtifact i : relatedArtifact) 5280 dst.relatedArtifact.add(i.copy()); 5281 }; 5282 dst.caseSensitive = caseSensitive == null ? null : caseSensitive.copy(); 5283 dst.valueSet = valueSet == null ? null : valueSet.copy(); 5284 dst.hierarchyMeaning = hierarchyMeaning == null ? null : hierarchyMeaning.copy(); 5285 dst.compositional = compositional == null ? null : compositional.copy(); 5286 dst.versionNeeded = versionNeeded == null ? null : versionNeeded.copy(); 5287 dst.content = content == null ? null : content.copy(); 5288 dst.supplements = supplements == null ? null : supplements.copy(); 5289 dst.count = count == null ? null : count.copy(); 5290 if (filter != null) { 5291 dst.filter = new ArrayList<CodeSystemFilterComponent>(); 5292 for (CodeSystemFilterComponent i : filter) 5293 dst.filter.add(i.copy()); 5294 }; 5295 if (property != null) { 5296 dst.property = new ArrayList<PropertyComponent>(); 5297 for (PropertyComponent i : property) 5298 dst.property.add(i.copy()); 5299 }; 5300 if (concept != null) { 5301 dst.concept = new ArrayList<ConceptDefinitionComponent>(); 5302 for (ConceptDefinitionComponent i : concept) 5303 dst.concept.add(i.copy()); 5304 }; 5305 } 5306 5307 protected CodeSystem typedCopy() { 5308 return copy(); 5309 } 5310 5311 @Override 5312 public boolean equalsDeep(Base other_) { 5313 if (!super.equalsDeep(other_)) 5314 return false; 5315 if (!(other_ instanceof CodeSystem)) 5316 return false; 5317 CodeSystem o = (CodeSystem) other_; 5318 return compareDeep(url, o.url, true) && compareDeep(identifier, o.identifier, true) && compareDeep(version, o.version, true) 5319 && compareDeep(name, o.name, true) && compareDeep(title, o.title, true) && compareDeep(status, o.status, true) 5320 && compareDeep(experimental, o.experimental, true) && compareDeep(date, o.date, true) && compareDeep(publisher, o.publisher, true) 5321 && compareDeep(contact, o.contact, true) && compareDeep(description, o.description, true) && compareDeep(useContext, o.useContext, true) 5322 && compareDeep(jurisdiction, o.jurisdiction, true) && compareDeep(purpose, o.purpose, true) && compareDeep(copyright, o.copyright, true) 5323 && compareDeep(approvalDate, o.approvalDate, true) && compareDeep(lastReviewDate, o.lastReviewDate, true) 5324 && compareDeep(effectivePeriod, o.effectivePeriod, true) && compareDeep(topic, o.topic, true) && compareDeep(author, o.author, true) 5325 && compareDeep(editor, o.editor, true) && compareDeep(reviewer, o.reviewer, true) && compareDeep(endorser, o.endorser, true) 5326 && compareDeep(relatedArtifact, o.relatedArtifact, true) && compareDeep(caseSensitive, o.caseSensitive, true) 5327 && compareDeep(valueSet, o.valueSet, true) && compareDeep(hierarchyMeaning, o.hierarchyMeaning, true) 5328 && compareDeep(compositional, o.compositional, true) && compareDeep(versionNeeded, o.versionNeeded, true) 5329 && compareDeep(content, o.content, true) && compareDeep(supplements, o.supplements, true) && compareDeep(count, o.count, true) 5330 && compareDeep(filter, o.filter, true) && compareDeep(property, o.property, true) && compareDeep(concept, o.concept, true) 5331 ; 5332 } 5333 5334 @Override 5335 public boolean equalsShallow(Base other_) { 5336 if (!super.equalsShallow(other_)) 5337 return false; 5338 if (!(other_ instanceof CodeSystem)) 5339 return false; 5340 CodeSystem o = (CodeSystem) other_; 5341 return compareValues(url, o.url, true) && compareValues(version, o.version, true) && compareValues(name, o.name, true) 5342 && compareValues(title, o.title, true) && compareValues(status, o.status, true) && compareValues(experimental, o.experimental, true) 5343 && compareValues(date, o.date, true) && compareValues(publisher, o.publisher, true) && compareValues(description, o.description, true) 5344 && compareValues(purpose, o.purpose, true) && compareValues(copyright, o.copyright, true) && compareValues(approvalDate, o.approvalDate, true) 5345 && compareValues(lastReviewDate, o.lastReviewDate, true) && compareValues(caseSensitive, o.caseSensitive, true) 5346 && compareValues(valueSet, o.valueSet, true) && compareValues(hierarchyMeaning, o.hierarchyMeaning, true) 5347 && compareValues(compositional, o.compositional, true) && compareValues(versionNeeded, o.versionNeeded, true) 5348 && compareValues(content, o.content, true) && compareValues(supplements, o.supplements, true) && compareValues(count, o.count, true) 5349 ; 5350 } 5351 5352 public boolean isEmpty() { 5353 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, identifier, version 5354 , name, title, status, experimental, date, publisher, contact, description, useContext 5355 , jurisdiction, purpose, copyright, approvalDate, lastReviewDate, effectivePeriod 5356 , topic, author, editor, reviewer, endorser, relatedArtifact, caseSensitive, valueSet 5357 , hierarchyMeaning, compositional, versionNeeded, content, supplements, count, filter 5358 , property, concept); 5359 } 5360 5361 @Override 5362 public ResourceType getResourceType() { 5363 return ResourceType.CodeSystem; 5364 } 5365 5366 /** 5367 * Search parameter: <b>code</b> 5368 * <p> 5369 * Description: <b>A code defined in the code system</b><br> 5370 * Type: <b>token</b><br> 5371 * Path: <b>CodeSystem.concept.code</b><br> 5372 * </p> 5373 */ 5374 @SearchParamDefinition(name="code", path="CodeSystem.concept.code", description="A code defined in the code system", type="token" ) 5375 public static final String SP_CODE = "code"; 5376 /** 5377 * <b>Fluent Client</b> search parameter constant for <b>code</b> 5378 * <p> 5379 * Description: <b>A code defined in the code system</b><br> 5380 * Type: <b>token</b><br> 5381 * Path: <b>CodeSystem.concept.code</b><br> 5382 * </p> 5383 */ 5384 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 5385 5386 /** 5387 * Search parameter: <b>content-mode</b> 5388 * <p> 5389 * Description: <b>not-present | example | fragment | complete | supplement</b><br> 5390 * Type: <b>token</b><br> 5391 * Path: <b>CodeSystem.content</b><br> 5392 * </p> 5393 */ 5394 @SearchParamDefinition(name="content-mode", path="CodeSystem.content", description="not-present | example | fragment | complete | supplement", type="token" ) 5395 public static final String SP_CONTENT_MODE = "content-mode"; 5396 /** 5397 * <b>Fluent Client</b> search parameter constant for <b>content-mode</b> 5398 * <p> 5399 * Description: <b>not-present | example | fragment | complete | supplement</b><br> 5400 * Type: <b>token</b><br> 5401 * Path: <b>CodeSystem.content</b><br> 5402 * </p> 5403 */ 5404 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTENT_MODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTENT_MODE); 5405 5406 /** 5407 * Search parameter: <b>derived-from</b> 5408 * <p> 5409 * Description: <b>A resource that the CodeSystem is derived from</b><br> 5410 * Type: <b>reference</b><br> 5411 * Path: <b>CodeSystem.relatedArtifact.where(type='derived-from').resource</b><br> 5412 * </p> 5413 */ 5414 @SearchParamDefinition(name="derived-from", path="CodeSystem.relatedArtifact.where(type='derived-from').resource", description="A resource that the CodeSystem is derived from", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 5415 public static final String SP_DERIVED_FROM = "derived-from"; 5416 /** 5417 * <b>Fluent Client</b> search parameter constant for <b>derived-from</b> 5418 * <p> 5419 * Description: <b>A resource that the CodeSystem is derived from</b><br> 5420 * Type: <b>reference</b><br> 5421 * Path: <b>CodeSystem.relatedArtifact.where(type='derived-from').resource</b><br> 5422 * </p> 5423 */ 5424 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DERIVED_FROM = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_DERIVED_FROM); 5425 5426/** 5427 * Constant for fluent queries to be used to add include statements. Specifies 5428 * the path value of "<b>CodeSystem:derived-from</b>". 5429 */ 5430 public static final ca.uhn.fhir.model.api.Include INCLUDE_DERIVED_FROM = new ca.uhn.fhir.model.api.Include("CodeSystem:derived-from").toLocked(); 5431 5432 /** 5433 * Search parameter: <b>language</b> 5434 * <p> 5435 * Description: <b>A language in which a designation is provided</b><br> 5436 * Type: <b>token</b><br> 5437 * Path: <b>CodeSystem.concept.designation.language</b><br> 5438 * </p> 5439 */ 5440 @SearchParamDefinition(name="language", path="CodeSystem.concept.designation.language", description="A language in which a designation is provided", type="token" ) 5441 public static final String SP_LANGUAGE = "language"; 5442 /** 5443 * <b>Fluent Client</b> search parameter constant for <b>language</b> 5444 * <p> 5445 * Description: <b>A language in which a designation is provided</b><br> 5446 * Type: <b>token</b><br> 5447 * Path: <b>CodeSystem.concept.designation.language</b><br> 5448 * </p> 5449 */ 5450 public static final ca.uhn.fhir.rest.gclient.TokenClientParam LANGUAGE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_LANGUAGE); 5451 5452 /** 5453 * Search parameter: <b>predecessor</b> 5454 * <p> 5455 * Description: <b>The predecessor of the CodeSystem</b><br> 5456 * Type: <b>reference</b><br> 5457 * Path: <b>CodeSystem.relatedArtifact.where(type='predecessor').resource</b><br> 5458 * </p> 5459 */ 5460 @SearchParamDefinition(name="predecessor", path="CodeSystem.relatedArtifact.where(type='predecessor').resource", description="The predecessor of the CodeSystem", type="reference", target={Account.class, ActivityDefinition.class, ActorDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, ArtifactAssessment.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CarePlan.class, CareTeam.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseDefinition.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceDispense.class, DeviceMetric.class, DeviceRequest.class, DeviceUsage.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceReport.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, FormularyItem.class, GenomicStudy.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingSelection.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, InventoryReport.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestOrchestration.class, Requirements.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Transport.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) 5461 public static final String SP_PREDECESSOR = "predecessor"; 5462 /** 5463 * <b>Fluent Client</b> search parameter constant for <b>predecessor</b> 5464 * <p> 5465 * Description: <b>The predecessor of the CodeSystem</b><br> 5466 * Type: <b>reference</b><br> 5467 * Path: <b>CodeSystem.relatedArtifact.where(type='predecessor').resource</b><br> 5468 * </p> 5469 */ 5470 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PREDECESSOR = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PREDECESSOR); 5471 5472/** 5473 * Constant for fluent queries to be used to add include statements. Specifies 5474 * the path value of "<b>CodeSystem:predecessor</b>". 5475 */ 5476 public static final ca.uhn.fhir.model.api.Include INCLUDE_PREDECESSOR = new ca.uhn.fhir.model.api.Include("CodeSystem:predecessor").toLocked(); 5477 5478 /** 5479 * Search parameter: <b>supplements</b> 5480 * <p> 5481 * Description: <b>Find code system supplements for the referenced code system</b><br> 5482 * Type: <b>reference</b><br> 5483 * Path: <b>CodeSystem.supplements</b><br> 5484 * </p> 5485 */ 5486 @SearchParamDefinition(name="supplements", path="CodeSystem.supplements", description="Find code system supplements for the referenced code system", type="reference", target={CodeSystem.class } ) 5487 public static final String SP_SUPPLEMENTS = "supplements"; 5488 /** 5489 * <b>Fluent Client</b> search parameter constant for <b>supplements</b> 5490 * <p> 5491 * Description: <b>Find code system supplements for the referenced code system</b><br> 5492 * Type: <b>reference</b><br> 5493 * Path: <b>CodeSystem.supplements</b><br> 5494 * </p> 5495 */ 5496 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUPPLEMENTS = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUPPLEMENTS); 5497 5498/** 5499 * Constant for fluent queries to be used to add include statements. Specifies 5500 * the path value of "<b>CodeSystem:supplements</b>". 5501 */ 5502 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUPPLEMENTS = new ca.uhn.fhir.model.api.Include("CodeSystem:supplements").toLocked(); 5503 5504 /** 5505 * Search parameter: <b>system</b> 5506 * <p> 5507 * Description: <b>The system for any codes defined by this code system (same as 'url')</b><br> 5508 * Type: <b>uri</b><br> 5509 * Path: <b>CodeSystem.url</b><br> 5510 * </p> 5511 */ 5512 @SearchParamDefinition(name="system", path="CodeSystem.url", description="The system for any codes defined by this code system (same as 'url')", type="uri" ) 5513 public static final String SP_SYSTEM = "system"; 5514 /** 5515 * <b>Fluent Client</b> search parameter constant for <b>system</b> 5516 * <p> 5517 * Description: <b>The system for any codes defined by this code system (same as 'url')</b><br> 5518 * Type: <b>uri</b><br> 5519 * Path: <b>CodeSystem.url</b><br> 5520 * </p> 5521 */ 5522 public static final ca.uhn.fhir.rest.gclient.UriClientParam SYSTEM = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_SYSTEM); 5523 5524 /** 5525 * Search parameter: <b>topic</b> 5526 * <p> 5527 * Description: <b>Topics associated with the CodeSystem</b><br> 5528 * Type: <b>token</b><br> 5529 * Path: <b>CodeSystem.topic</b><br> 5530 * </p> 5531 */ 5532 @SearchParamDefinition(name="topic", path="CodeSystem.topic", description="Topics associated with the CodeSystem", type="token" ) 5533 public static final String SP_TOPIC = "topic"; 5534 /** 5535 * <b>Fluent Client</b> search parameter constant for <b>topic</b> 5536 * <p> 5537 * Description: <b>Topics associated with the CodeSystem</b><br> 5538 * Type: <b>token</b><br> 5539 * Path: <b>CodeSystem.topic</b><br> 5540 * </p> 5541 */ 5542 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TOPIC = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TOPIC); 5543 5544 /** 5545 * Search parameter: <b>author</b> 5546 * <p> 5547 * Description: <b>Optional Extensions Element</b><br> 5548 * Type: <b>string</b><br> 5549 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-author').value</b><br> 5550 * </p> 5551 */ 5552 @SearchParamDefinition(name="author", path="CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-author').value", description="Optional Extensions Element", type="string" ) 5553 public static final String SP_AUTHOR = "author"; 5554 /** 5555 * <b>Fluent Client</b> search parameter constant for <b>author</b> 5556 * <p> 5557 * Description: <b>Optional Extensions Element</b><br> 5558 * Type: <b>string</b><br> 5559 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-author').value</b><br> 5560 * </p> 5561 */ 5562 public static final ca.uhn.fhir.rest.gclient.StringClientParam AUTHOR = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_AUTHOR); 5563 5564 /** 5565 * Search parameter: <b>effective</b> 5566 * <p> 5567 * Description: <b>Optional Extensions Element</b><br> 5568 * Type: <b>date</b><br> 5569 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-effectiveDate'.value)</b><br> 5570 * </p> 5571 */ 5572 @SearchParamDefinition(name="effective", path="CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-effectiveDate'.value)", description="Optional Extensions Element", type="date" ) 5573 public static final String SP_EFFECTIVE = "effective"; 5574 /** 5575 * <b>Fluent Client</b> search parameter constant for <b>effective</b> 5576 * <p> 5577 * Description: <b>Optional Extensions Element</b><br> 5578 * Type: <b>date</b><br> 5579 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-effectiveDate'.value)</b><br> 5580 * </p> 5581 */ 5582 public static final ca.uhn.fhir.rest.gclient.DateClientParam EFFECTIVE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_EFFECTIVE); 5583 5584 /** 5585 * Search parameter: <b>end</b> 5586 * <p> 5587 * Description: <b>Optional Extensions Element</b><br> 5588 * Type: <b>date</b><br> 5589 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-expirationDate').value</b><br> 5590 * </p> 5591 */ 5592 @SearchParamDefinition(name="end", path="CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-expirationDate').value", description="Optional Extensions Element", type="date" ) 5593 public static final String SP_END = "end"; 5594 /** 5595 * <b>Fluent Client</b> search parameter constant for <b>end</b> 5596 * <p> 5597 * Description: <b>Optional Extensions Element</b><br> 5598 * Type: <b>date</b><br> 5599 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-expirationDate').value</b><br> 5600 * </p> 5601 */ 5602 public static final ca.uhn.fhir.rest.gclient.DateClientParam END = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_END); 5603 5604 /** 5605 * Search parameter: <b>keyword</b> 5606 * <p> 5607 * Description: <b>Optional Extensions Element</b><br> 5608 * Type: <b>string</b><br> 5609 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-keyWord').value</b><br> 5610 * </p> 5611 */ 5612 @SearchParamDefinition(name="keyword", path="CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-keyWord').value", description="Optional Extensions Element", type="string" ) 5613 public static final String SP_KEYWORD = "keyword"; 5614 /** 5615 * <b>Fluent Client</b> search parameter constant for <b>keyword</b> 5616 * <p> 5617 * Description: <b>Optional Extensions Element</b><br> 5618 * Type: <b>string</b><br> 5619 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-keyWord').value</b><br> 5620 * </p> 5621 */ 5622 public static final ca.uhn.fhir.rest.gclient.StringClientParam KEYWORD = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_KEYWORD); 5623 5624 /** 5625 * Search parameter: <b>workflow</b> 5626 * <p> 5627 * Description: <b>Optional Extensions Element</b><br> 5628 * Type: <b>token</b><br> 5629 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-workflowStatus').value</b><br> 5630 * </p> 5631 */ 5632 @SearchParamDefinition(name="workflow", path="CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-workflowStatus').value", description="Optional Extensions Element", type="token" ) 5633 public static final String SP_WORKFLOW = "workflow"; 5634 /** 5635 * <b>Fluent Client</b> search parameter constant for <b>workflow</b> 5636 * <p> 5637 * Description: <b>Optional Extensions Element</b><br> 5638 * Type: <b>token</b><br> 5639 * Path: <b>CodeSystem.extension('http://hl7.org/fhir/StructureDefinition/codesystem-workflowStatus').value</b><br> 5640 * </p> 5641 */ 5642 public static final ca.uhn.fhir.rest.gclient.TokenClientParam WORKFLOW = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_WORKFLOW); 5643 5644 /** 5645 * Search parameter: <b>context-quantity</b> 5646 * <p> 5647 * Description: <b>Multiple Resources: 5648 5649* [CapabilityStatement](capabilitystatement.html): A quantity- or range-valued use context assigned to the capability statement 5650* [CodeSystem](codesystem.html): A quantity- or range-valued use context assigned to the code system 5651* [CompartmentDefinition](compartmentdefinition.html): A quantity- or range-valued use context assigned to the compartment definition 5652* [ConceptMap](conceptmap.html): A quantity- or range-valued use context assigned to the concept map 5653* [GraphDefinition](graphdefinition.html): A quantity- or range-valued use context assigned to the graph definition 5654* [ImplementationGuide](implementationguide.html): A quantity- or range-valued use context assigned to the implementation guide 5655* [MessageDefinition](messagedefinition.html): A quantity- or range-valued use context assigned to the message definition 5656* [NamingSystem](namingsystem.html): A quantity- or range-valued use context assigned to the naming system 5657* [OperationDefinition](operationdefinition.html): A quantity- or range-valued use context assigned to the operation definition 5658* [SearchParameter](searchparameter.html): A quantity- or range-valued use context assigned to the search parameter 5659* [StructureDefinition](structuredefinition.html): A quantity- or range-valued use context assigned to the structure definition 5660* [StructureMap](structuremap.html): A quantity- or range-valued use context assigned to the structure map 5661* [TerminologyCapabilities](terminologycapabilities.html): A quantity- or range-valued use context assigned to the terminology capabilities 5662* [ValueSet](valueset.html): A quantity- or range-valued use context assigned to the value set 5663</b><br> 5664 * Type: <b>quantity</b><br> 5665 * Path: <b>(CapabilityStatement.useContext.value as Quantity) | (CapabilityStatement.useContext.value as Range) | (CodeSystem.useContext.value as Quantity) | (CodeSystem.useContext.value as Range) | (CompartmentDefinition.useContext.value as Quantity) | (CompartmentDefinition.useContext.value as Range) | (ConceptMap.useContext.value as Quantity) | (ConceptMap.useContext.value as Range) | (GraphDefinition.useContext.value as Quantity) | (GraphDefinition.useContext.value as Range) | (ImplementationGuide.useContext.value as Quantity) | (ImplementationGuide.useContext.value as Range) | (MessageDefinition.useContext.value as Quantity) | (MessageDefinition.useContext.value as Range) | (NamingSystem.useContext.value as Quantity) | (NamingSystem.useContext.value as Range) | (OperationDefinition.useContext.value as Quantity) | (OperationDefinition.useContext.value as Range) | (SearchParameter.useContext.value as Quantity) | (SearchParameter.useContext.value as Range) | (StructureDefinition.useContext.value as Quantity) | (StructureDefinition.useContext.value as Range) | (StructureMap.useContext.value as Quantity) | (StructureMap.useContext.value as Range) | (TerminologyCapabilities.useContext.value as Quantity) | (TerminologyCapabilities.useContext.value as Range) | (ValueSet.useContext.value as Quantity) | (ValueSet.useContext.value as Range)</b><br> 5666 * </p> 5667 */ 5668 @SearchParamDefinition(name="context-quantity", path="(CapabilityStatement.useContext.value as Quantity) | (CapabilityStatement.useContext.value as Range) | (CodeSystem.useContext.value as Quantity) | (CodeSystem.useContext.value as Range) | (CompartmentDefinition.useContext.value as Quantity) | (CompartmentDefinition.useContext.value as Range) | (ConceptMap.useContext.value as Quantity) | (ConceptMap.useContext.value as Range) | (GraphDefinition.useContext.value as Quantity) | (GraphDefinition.useContext.value as Range) | (ImplementationGuide.useContext.value as Quantity) | (ImplementationGuide.useContext.value as Range) | (MessageDefinition.useContext.value as Quantity) | (MessageDefinition.useContext.value as Range) | (NamingSystem.useContext.value as Quantity) | (NamingSystem.useContext.value as Range) | (OperationDefinition.useContext.value as Quantity) | (OperationDefinition.useContext.value as Range) | (SearchParameter.useContext.value as Quantity) | (SearchParameter.useContext.value as Range) | (StructureDefinition.useContext.value as Quantity) | (StructureDefinition.useContext.value as Range) | (StructureMap.useContext.value as Quantity) | (StructureMap.useContext.value as Range) | (TerminologyCapabilities.useContext.value as Quantity) | (TerminologyCapabilities.useContext.value as Range) | (ValueSet.useContext.value as Quantity) | (ValueSet.useContext.value as Range)", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): A quantity- or range-valued use context assigned to the capability statement\r\n* [CodeSystem](codesystem.html): A quantity- or range-valued use context assigned to the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): A quantity- or range-valued use context assigned to the compartment definition\r\n* [ConceptMap](conceptmap.html): A quantity- or range-valued use context assigned to the concept map\r\n* [GraphDefinition](graphdefinition.html): A quantity- or range-valued use context assigned to the graph definition\r\n* [ImplementationGuide](implementationguide.html): A quantity- or range-valued use context assigned to the implementation guide\r\n* [MessageDefinition](messagedefinition.html): A quantity- or range-valued use context assigned to the message definition\r\n* [NamingSystem](namingsystem.html): A quantity- or range-valued use context assigned to the naming system\r\n* [OperationDefinition](operationdefinition.html): A quantity- or range-valued use context assigned to the operation definition\r\n* [SearchParameter](searchparameter.html): A quantity- or range-valued use context assigned to the search parameter\r\n* [StructureDefinition](structuredefinition.html): A quantity- or range-valued use context assigned to the structure definition\r\n* [StructureMap](structuremap.html): A quantity- or range-valued use context assigned to the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): A quantity- or range-valued use context assigned to the terminology capabilities\r\n* [ValueSet](valueset.html): A quantity- or range-valued use context assigned to the value set\r\n", type="quantity" ) 5669 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 5670 /** 5671 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 5672 * <p> 5673 * Description: <b>Multiple Resources: 5674 5675* [CapabilityStatement](capabilitystatement.html): A quantity- or range-valued use context assigned to the capability statement 5676* [CodeSystem](codesystem.html): A quantity- or range-valued use context assigned to the code system 5677* [CompartmentDefinition](compartmentdefinition.html): A quantity- or range-valued use context assigned to the compartment definition 5678* [ConceptMap](conceptmap.html): A quantity- or range-valued use context assigned to the concept map 5679* [GraphDefinition](graphdefinition.html): A quantity- or range-valued use context assigned to the graph definition 5680* [ImplementationGuide](implementationguide.html): A quantity- or range-valued use context assigned to the implementation guide 5681* [MessageDefinition](messagedefinition.html): A quantity- or range-valued use context assigned to the message definition 5682* [NamingSystem](namingsystem.html): A quantity- or range-valued use context assigned to the naming system 5683* [OperationDefinition](operationdefinition.html): A quantity- or range-valued use context assigned to the operation definition 5684* [SearchParameter](searchparameter.html): A quantity- or range-valued use context assigned to the search parameter 5685* [StructureDefinition](structuredefinition.html): A quantity- or range-valued use context assigned to the structure definition 5686* [StructureMap](structuremap.html): A quantity- or range-valued use context assigned to the structure map 5687* [TerminologyCapabilities](terminologycapabilities.html): A quantity- or range-valued use context assigned to the terminology capabilities 5688* [ValueSet](valueset.html): A quantity- or range-valued use context assigned to the value set 5689</b><br> 5690 * Type: <b>quantity</b><br> 5691 * Path: <b>(CapabilityStatement.useContext.value as Quantity) | (CapabilityStatement.useContext.value as Range) | (CodeSystem.useContext.value as Quantity) | (CodeSystem.useContext.value as Range) | (CompartmentDefinition.useContext.value as Quantity) | (CompartmentDefinition.useContext.value as Range) | (ConceptMap.useContext.value as Quantity) | (ConceptMap.useContext.value as Range) | (GraphDefinition.useContext.value as Quantity) | (GraphDefinition.useContext.value as Range) | (ImplementationGuide.useContext.value as Quantity) | (ImplementationGuide.useContext.value as Range) | (MessageDefinition.useContext.value as Quantity) | (MessageDefinition.useContext.value as Range) | (NamingSystem.useContext.value as Quantity) | (NamingSystem.useContext.value as Range) | (OperationDefinition.useContext.value as Quantity) | (OperationDefinition.useContext.value as Range) | (SearchParameter.useContext.value as Quantity) | (SearchParameter.useContext.value as Range) | (StructureDefinition.useContext.value as Quantity) | (StructureDefinition.useContext.value as Range) | (StructureMap.useContext.value as Quantity) | (StructureMap.useContext.value as Range) | (TerminologyCapabilities.useContext.value as Quantity) | (TerminologyCapabilities.useContext.value as Range) | (ValueSet.useContext.value as Quantity) | (ValueSet.useContext.value as Range)</b><br> 5692 * </p> 5693 */ 5694 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_CONTEXT_QUANTITY); 5695 5696 /** 5697 * Search parameter: <b>context-type-quantity</b> 5698 * <p> 5699 * Description: <b>Multiple Resources: 5700 5701* [CapabilityStatement](capabilitystatement.html): A use context type and quantity- or range-based value assigned to the capability statement 5702* [CodeSystem](codesystem.html): A use context type and quantity- or range-based value assigned to the code system 5703* [CompartmentDefinition](compartmentdefinition.html): A use context type and quantity- or range-based value assigned to the compartment definition 5704* [ConceptMap](conceptmap.html): A use context type and quantity- or range-based value assigned to the concept map 5705* [GraphDefinition](graphdefinition.html): A use context type and quantity- or range-based value assigned to the graph definition 5706* [ImplementationGuide](implementationguide.html): A use context type and quantity- or range-based value assigned to the implementation guide 5707* [MessageDefinition](messagedefinition.html): A use context type and quantity- or range-based value assigned to the message definition 5708* [NamingSystem](namingsystem.html): A use context type and quantity- or range-based value assigned to the naming system 5709* [OperationDefinition](operationdefinition.html): A use context type and quantity- or range-based value assigned to the operation definition 5710* [SearchParameter](searchparameter.html): A use context type and quantity- or range-based value assigned to the search parameter 5711* [StructureDefinition](structuredefinition.html): A use context type and quantity- or range-based value assigned to the structure definition 5712* [StructureMap](structuremap.html): A use context type and quantity- or range-based value assigned to the structure map 5713* [TerminologyCapabilities](terminologycapabilities.html): A use context type and quantity- or range-based value assigned to the terminology capabilities 5714* [ValueSet](valueset.html): A use context type and quantity- or range-based value assigned to the value set 5715</b><br> 5716 * Type: <b>composite</b><br> 5717 * Path: <b>CapabilityStatement.useContext | CodeSystem.useContext | CompartmentDefinition.useContext | ConceptMap.useContext | GraphDefinition.useContext | ImplementationGuide.useContext | MessageDefinition.useContext | NamingSystem.useContext | OperationDefinition.useContext | SearchParameter.useContext | StructureDefinition.useContext | StructureMap.useContext | TerminologyCapabilities.useContext | ValueSet.useContext</b><br> 5718 * </p> 5719 */ 5720 @SearchParamDefinition(name="context-type-quantity", path="CapabilityStatement.useContext | CodeSystem.useContext | CompartmentDefinition.useContext | ConceptMap.useContext | GraphDefinition.useContext | ImplementationGuide.useContext | MessageDefinition.useContext | NamingSystem.useContext | OperationDefinition.useContext | SearchParameter.useContext | StructureDefinition.useContext | StructureMap.useContext | TerminologyCapabilities.useContext | ValueSet.useContext", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): A use context type and quantity- or range-based value assigned to the capability statement\r\n* [CodeSystem](codesystem.html): A use context type and quantity- or range-based value assigned to the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): A use context type and quantity- or range-based value assigned to the compartment definition\r\n* [ConceptMap](conceptmap.html): A use context type and quantity- or range-based value assigned to the concept map\r\n* [GraphDefinition](graphdefinition.html): A use context type and quantity- or range-based value assigned to the graph definition\r\n* [ImplementationGuide](implementationguide.html): A use context type and quantity- or range-based value assigned to the implementation guide\r\n* [MessageDefinition](messagedefinition.html): A use context type and quantity- or range-based value assigned to the message definition\r\n* [NamingSystem](namingsystem.html): A use context type and quantity- or range-based value assigned to the naming system\r\n* [OperationDefinition](operationdefinition.html): A use context type and quantity- or range-based value assigned to the operation definition\r\n* [SearchParameter](searchparameter.html): A use context type and quantity- or range-based value assigned to the search parameter\r\n* [StructureDefinition](structuredefinition.html): A use context type and quantity- or range-based value assigned to the structure definition\r\n* [StructureMap](structuremap.html): A use context type and quantity- or range-based value assigned to the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): A use context type and quantity- or range-based value assigned to the terminology capabilities\r\n* [ValueSet](valueset.html): A use context type and quantity- or range-based value assigned to the value set\r\n", type="composite", compositeOf={"context-type", "context-quantity"} ) 5721 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 5722 /** 5723 * <b>Fluent Client</b> search parameter constant for <b>context-type-quantity</b> 5724 * <p> 5725 * Description: <b>Multiple Resources: 5726 5727* [CapabilityStatement](capabilitystatement.html): A use context type and quantity- or range-based value assigned to the capability statement 5728* [CodeSystem](codesystem.html): A use context type and quantity- or range-based value assigned to the code system 5729* [CompartmentDefinition](compartmentdefinition.html): A use context type and quantity- or range-based value assigned to the compartment definition 5730* [ConceptMap](conceptmap.html): A use context type and quantity- or range-based value assigned to the concept map 5731* [GraphDefinition](graphdefinition.html): A use context type and quantity- or range-based value assigned to the graph definition 5732* [ImplementationGuide](implementationguide.html): A use context type and quantity- or range-based value assigned to the implementation guide 5733* [MessageDefinition](messagedefinition.html): A use context type and quantity- or range-based value assigned to the message definition 5734* [NamingSystem](namingsystem.html): A use context type and quantity- or range-based value assigned to the naming system 5735* [OperationDefinition](operationdefinition.html): A use context type and quantity- or range-based value assigned to the operation definition 5736* [SearchParameter](searchparameter.html): A use context type and quantity- or range-based value assigned to the search parameter 5737* [StructureDefinition](structuredefinition.html): A use context type and quantity- or range-based value assigned to the structure definition 5738* [StructureMap](structuremap.html): A use context type and quantity- or range-based value assigned to the structure map 5739* [TerminologyCapabilities](terminologycapabilities.html): A use context type and quantity- or range-based value assigned to the terminology capabilities 5740* [ValueSet](valueset.html): A use context type and quantity- or range-based value assigned to the value set 5741</b><br> 5742 * Type: <b>composite</b><br> 5743 * Path: <b>CapabilityStatement.useContext | CodeSystem.useContext | CompartmentDefinition.useContext | ConceptMap.useContext | GraphDefinition.useContext | ImplementationGuide.useContext | MessageDefinition.useContext | NamingSystem.useContext | OperationDefinition.useContext | SearchParameter.useContext | StructureDefinition.useContext | StructureMap.useContext | TerminologyCapabilities.useContext | ValueSet.useContext</b><br> 5744 * </p> 5745 */ 5746 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.QuantityClientParam> CONTEXT_TYPE_QUANTITY = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.QuantityClientParam>(SP_CONTEXT_TYPE_QUANTITY); 5747 5748 /** 5749 * Search parameter: <b>context-type-value</b> 5750 * <p> 5751 * Description: <b>Multiple Resources: 5752 5753* [CapabilityStatement](capabilitystatement.html): A use context type and value assigned to the capability statement 5754* [CodeSystem](codesystem.html): A use context type and value assigned to the code system 5755* [CompartmentDefinition](compartmentdefinition.html): A use context type and value assigned to the compartment definition 5756* [ConceptMap](conceptmap.html): A use context type and value assigned to the concept map 5757* [GraphDefinition](graphdefinition.html): A use context type and value assigned to the graph definition 5758* [ImplementationGuide](implementationguide.html): A use context type and value assigned to the implementation guide 5759* [MessageDefinition](messagedefinition.html): A use context type and value assigned to the message definition 5760* [NamingSystem](namingsystem.html): A use context type and value assigned to the naming system 5761* [OperationDefinition](operationdefinition.html): A use context type and value assigned to the operation definition 5762* [SearchParameter](searchparameter.html): A use context type and value assigned to the search parameter 5763* [StructureDefinition](structuredefinition.html): A use context type and value assigned to the structure definition 5764* [StructureMap](structuremap.html): A use context type and value assigned to the structure map 5765* [TerminologyCapabilities](terminologycapabilities.html): A use context type and value assigned to the terminology capabilities 5766* [ValueSet](valueset.html): A use context type and value assigned to the value set 5767</b><br> 5768 * Type: <b>composite</b><br> 5769 * Path: <b>CapabilityStatement.useContext | CodeSystem.useContext | CompartmentDefinition.useContext | ConceptMap.useContext | GraphDefinition.useContext | ImplementationGuide.useContext | MessageDefinition.useContext | NamingSystem.useContext | OperationDefinition.useContext | SearchParameter.useContext | StructureDefinition.useContext | StructureMap.useContext | TerminologyCapabilities.useContext | ValueSet.useContext</b><br> 5770 * </p> 5771 */ 5772 @SearchParamDefinition(name="context-type-value", path="CapabilityStatement.useContext | CodeSystem.useContext | CompartmentDefinition.useContext | ConceptMap.useContext | GraphDefinition.useContext | ImplementationGuide.useContext | MessageDefinition.useContext | NamingSystem.useContext | OperationDefinition.useContext | SearchParameter.useContext | StructureDefinition.useContext | StructureMap.useContext | TerminologyCapabilities.useContext | ValueSet.useContext", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): A use context type and value assigned to the capability statement\r\n* [CodeSystem](codesystem.html): A use context type and value assigned to the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): A use context type and value assigned to the compartment definition\r\n* [ConceptMap](conceptmap.html): A use context type and value assigned to the concept map\r\n* [GraphDefinition](graphdefinition.html): A use context type and value assigned to the graph definition\r\n* [ImplementationGuide](implementationguide.html): A use context type and value assigned to the implementation guide\r\n* [MessageDefinition](messagedefinition.html): A use context type and value assigned to the message definition\r\n* [NamingSystem](namingsystem.html): A use context type and value assigned to the naming system\r\n* [OperationDefinition](operationdefinition.html): A use context type and value assigned to the operation definition\r\n* [SearchParameter](searchparameter.html): A use context type and value assigned to the search parameter\r\n* [StructureDefinition](structuredefinition.html): A use context type and value assigned to the structure definition\r\n* [StructureMap](structuremap.html): A use context type and value assigned to the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): A use context type and value assigned to the terminology capabilities\r\n* [ValueSet](valueset.html): A use context type and value assigned to the value set\r\n", type="composite", compositeOf={"context-type", "context"} ) 5773 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 5774 /** 5775 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 5776 * <p> 5777 * Description: <b>Multiple Resources: 5778 5779* [CapabilityStatement](capabilitystatement.html): A use context type and value assigned to the capability statement 5780* [CodeSystem](codesystem.html): A use context type and value assigned to the code system 5781* [CompartmentDefinition](compartmentdefinition.html): A use context type and value assigned to the compartment definition 5782* [ConceptMap](conceptmap.html): A use context type and value assigned to the concept map 5783* [GraphDefinition](graphdefinition.html): A use context type and value assigned to the graph definition 5784* [ImplementationGuide](implementationguide.html): A use context type and value assigned to the implementation guide 5785* [MessageDefinition](messagedefinition.html): A use context type and value assigned to the message definition 5786* [NamingSystem](namingsystem.html): A use context type and value assigned to the naming system 5787* [OperationDefinition](operationdefinition.html): A use context type and value assigned to the operation definition 5788* [SearchParameter](searchparameter.html): A use context type and value assigned to the search parameter 5789* [StructureDefinition](structuredefinition.html): A use context type and value assigned to the structure definition 5790* [StructureMap](structuremap.html): A use context type and value assigned to the structure map 5791* [TerminologyCapabilities](terminologycapabilities.html): A use context type and value assigned to the terminology capabilities 5792* [ValueSet](valueset.html): A use context type and value assigned to the value set 5793</b><br> 5794 * Type: <b>composite</b><br> 5795 * Path: <b>CapabilityStatement.useContext | CodeSystem.useContext | CompartmentDefinition.useContext | ConceptMap.useContext | GraphDefinition.useContext | ImplementationGuide.useContext | MessageDefinition.useContext | NamingSystem.useContext | OperationDefinition.useContext | SearchParameter.useContext | StructureDefinition.useContext | StructureMap.useContext | TerminologyCapabilities.useContext | ValueSet.useContext</b><br> 5796 * </p> 5797 */ 5798 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam> CONTEXT_TYPE_VALUE = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam>(SP_CONTEXT_TYPE_VALUE); 5799 5800 /** 5801 * Search parameter: <b>context-type</b> 5802 * <p> 5803 * Description: <b>Multiple Resources: 5804 5805* [CapabilityStatement](capabilitystatement.html): A type of use context assigned to the capability statement 5806* [CodeSystem](codesystem.html): A type of use context assigned to the code system 5807* [CompartmentDefinition](compartmentdefinition.html): A type of use context assigned to the compartment definition 5808* [ConceptMap](conceptmap.html): A type of use context assigned to the concept map 5809* [GraphDefinition](graphdefinition.html): A type of use context assigned to the graph definition 5810* [ImplementationGuide](implementationguide.html): A type of use context assigned to the implementation guide 5811* [MessageDefinition](messagedefinition.html): A type of use context assigned to the message definition 5812* [NamingSystem](namingsystem.html): A type of use context assigned to the naming system 5813* [OperationDefinition](operationdefinition.html): A type of use context assigned to the operation definition 5814* [SearchParameter](searchparameter.html): A type of use context assigned to the search parameter 5815* [StructureDefinition](structuredefinition.html): A type of use context assigned to the structure definition 5816* [StructureMap](structuremap.html): A type of use context assigned to the structure map 5817* [TerminologyCapabilities](terminologycapabilities.html): A type of use context assigned to the terminology capabilities 5818* [ValueSet](valueset.html): A type of use context assigned to the value set 5819</b><br> 5820 * Type: <b>token</b><br> 5821 * Path: <b>CapabilityStatement.useContext.code | CodeSystem.useContext.code | CompartmentDefinition.useContext.code | ConceptMap.useContext.code | GraphDefinition.useContext.code | ImplementationGuide.useContext.code | MessageDefinition.useContext.code | NamingSystem.useContext.code | OperationDefinition.useContext.code | SearchParameter.useContext.code | StructureDefinition.useContext.code | StructureMap.useContext.code | TerminologyCapabilities.useContext.code | ValueSet.useContext.code</b><br> 5822 * </p> 5823 */ 5824 @SearchParamDefinition(name="context-type", path="CapabilityStatement.useContext.code | CodeSystem.useContext.code | CompartmentDefinition.useContext.code | ConceptMap.useContext.code | GraphDefinition.useContext.code | ImplementationGuide.useContext.code | MessageDefinition.useContext.code | NamingSystem.useContext.code | OperationDefinition.useContext.code | SearchParameter.useContext.code | StructureDefinition.useContext.code | StructureMap.useContext.code | TerminologyCapabilities.useContext.code | ValueSet.useContext.code", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): A type of use context assigned to the capability statement\r\n* [CodeSystem](codesystem.html): A type of use context assigned to the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): A type of use context assigned to the compartment definition\r\n* [ConceptMap](conceptmap.html): A type of use context assigned to the concept map\r\n* [GraphDefinition](graphdefinition.html): A type of use context assigned to the graph definition\r\n* [ImplementationGuide](implementationguide.html): A type of use context assigned to the implementation guide\r\n* [MessageDefinition](messagedefinition.html): A type of use context assigned to the message definition\r\n* [NamingSystem](namingsystem.html): A type of use context assigned to the naming system\r\n* [OperationDefinition](operationdefinition.html): A type of use context assigned to the operation definition\r\n* [SearchParameter](searchparameter.html): A type of use context assigned to the search parameter\r\n* [StructureDefinition](structuredefinition.html): A type of use context assigned to the structure definition\r\n* [StructureMap](structuremap.html): A type of use context assigned to the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): A type of use context assigned to the terminology capabilities\r\n* [ValueSet](valueset.html): A type of use context assigned to the value set\r\n", type="token" ) 5825 public static final String SP_CONTEXT_TYPE = "context-type"; 5826 /** 5827 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 5828 * <p> 5829 * Description: <b>Multiple Resources: 5830 5831* [CapabilityStatement](capabilitystatement.html): A type of use context assigned to the capability statement 5832* [CodeSystem](codesystem.html): A type of use context assigned to the code system 5833* [CompartmentDefinition](compartmentdefinition.html): A type of use context assigned to the compartment definition 5834* [ConceptMap](conceptmap.html): A type of use context assigned to the concept map 5835* [GraphDefinition](graphdefinition.html): A type of use context assigned to the graph definition 5836* [ImplementationGuide](implementationguide.html): A type of use context assigned to the implementation guide 5837* [MessageDefinition](messagedefinition.html): A type of use context assigned to the message definition 5838* [NamingSystem](namingsystem.html): A type of use context assigned to the naming system 5839* [OperationDefinition](operationdefinition.html): A type of use context assigned to the operation definition 5840* [SearchParameter](searchparameter.html): A type of use context assigned to the search parameter 5841* [StructureDefinition](structuredefinition.html): A type of use context assigned to the structure definition 5842* [StructureMap](structuremap.html): A type of use context assigned to the structure map 5843* [TerminologyCapabilities](terminologycapabilities.html): A type of use context assigned to the terminology capabilities 5844* [ValueSet](valueset.html): A type of use context assigned to the value set 5845</b><br> 5846 * Type: <b>token</b><br> 5847 * Path: <b>CapabilityStatement.useContext.code | CodeSystem.useContext.code | CompartmentDefinition.useContext.code | ConceptMap.useContext.code | GraphDefinition.useContext.code | ImplementationGuide.useContext.code | MessageDefinition.useContext.code | NamingSystem.useContext.code | OperationDefinition.useContext.code | SearchParameter.useContext.code | StructureDefinition.useContext.code | StructureMap.useContext.code | TerminologyCapabilities.useContext.code | ValueSet.useContext.code</b><br> 5848 * </p> 5849 */ 5850 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT_TYPE); 5851 5852 /** 5853 * Search parameter: <b>context</b> 5854 * <p> 5855 * Description: <b>Multiple Resources: 5856 5857* [CapabilityStatement](capabilitystatement.html): A use context assigned to the capability statement 5858* [CodeSystem](codesystem.html): A use context assigned to the code system 5859* [CompartmentDefinition](compartmentdefinition.html): A use context assigned to the compartment definition 5860* [ConceptMap](conceptmap.html): A use context assigned to the concept map 5861* [GraphDefinition](graphdefinition.html): A use context assigned to the graph definition 5862* [ImplementationGuide](implementationguide.html): A use context assigned to the implementation guide 5863* [MessageDefinition](messagedefinition.html): A use context assigned to the message definition 5864* [NamingSystem](namingsystem.html): A use context assigned to the naming system 5865* [OperationDefinition](operationdefinition.html): A use context assigned to the operation definition 5866* [SearchParameter](searchparameter.html): A use context assigned to the search parameter 5867* [StructureDefinition](structuredefinition.html): A use context assigned to the structure definition 5868* [StructureMap](structuremap.html): A use context assigned to the structure map 5869* [TerminologyCapabilities](terminologycapabilities.html): A use context assigned to the terminology capabilities 5870* [ValueSet](valueset.html): A use context assigned to the value set 5871</b><br> 5872 * Type: <b>token</b><br> 5873 * Path: <b>(CapabilityStatement.useContext.value as CodeableConcept) | (CodeSystem.useContext.value as CodeableConcept) | (CompartmentDefinition.useContext.value as CodeableConcept) | (ConceptMap.useContext.value as CodeableConcept) | (GraphDefinition.useContext.value as CodeableConcept) | (ImplementationGuide.useContext.value as CodeableConcept) | (MessageDefinition.useContext.value as CodeableConcept) | (NamingSystem.useContext.value as CodeableConcept) | (OperationDefinition.useContext.value as CodeableConcept) | (SearchParameter.useContext.value as CodeableConcept) | (StructureDefinition.useContext.value as CodeableConcept) | (StructureMap.useContext.value as CodeableConcept) | (TerminologyCapabilities.useContext.value as CodeableConcept) | (ValueSet.useContext.value as CodeableConcept)</b><br> 5874 * </p> 5875 */ 5876 @SearchParamDefinition(name="context", path="(CapabilityStatement.useContext.value as CodeableConcept) | (CodeSystem.useContext.value as CodeableConcept) | (CompartmentDefinition.useContext.value as CodeableConcept) | (ConceptMap.useContext.value as CodeableConcept) | (GraphDefinition.useContext.value as CodeableConcept) | (ImplementationGuide.useContext.value as CodeableConcept) | (MessageDefinition.useContext.value as CodeableConcept) | (NamingSystem.useContext.value as CodeableConcept) | (OperationDefinition.useContext.value as CodeableConcept) | (SearchParameter.useContext.value as CodeableConcept) | (StructureDefinition.useContext.value as CodeableConcept) | (StructureMap.useContext.value as CodeableConcept) | (TerminologyCapabilities.useContext.value as CodeableConcept) | (ValueSet.useContext.value as CodeableConcept)", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): A use context assigned to the capability statement\r\n* [CodeSystem](codesystem.html): A use context assigned to the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): A use context assigned to the compartment definition\r\n* [ConceptMap](conceptmap.html): A use context assigned to the concept map\r\n* [GraphDefinition](graphdefinition.html): A use context assigned to the graph definition\r\n* [ImplementationGuide](implementationguide.html): A use context assigned to the implementation guide\r\n* [MessageDefinition](messagedefinition.html): A use context assigned to the message definition\r\n* [NamingSystem](namingsystem.html): A use context assigned to the naming system\r\n* [OperationDefinition](operationdefinition.html): A use context assigned to the operation definition\r\n* [SearchParameter](searchparameter.html): A use context assigned to the search parameter\r\n* [StructureDefinition](structuredefinition.html): A use context assigned to the structure definition\r\n* [StructureMap](structuremap.html): A use context assigned to the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): A use context assigned to the terminology capabilities\r\n* [ValueSet](valueset.html): A use context assigned to the value set\r\n", type="token" ) 5877 public static final String SP_CONTEXT = "context"; 5878 /** 5879 * <b>Fluent Client</b> search parameter constant for <b>context</b> 5880 * <p> 5881 * Description: <b>Multiple Resources: 5882 5883* [CapabilityStatement](capabilitystatement.html): A use context assigned to the capability statement 5884* [CodeSystem](codesystem.html): A use context assigned to the code system 5885* [CompartmentDefinition](compartmentdefinition.html): A use context assigned to the compartment definition 5886* [ConceptMap](conceptmap.html): A use context assigned to the concept map 5887* [GraphDefinition](graphdefinition.html): A use context assigned to the graph definition 5888* [ImplementationGuide](implementationguide.html): A use context assigned to the implementation guide 5889* [MessageDefinition](messagedefinition.html): A use context assigned to the message definition 5890* [NamingSystem](namingsystem.html): A use context assigned to the naming system 5891* [OperationDefinition](operationdefinition.html): A use context assigned to the operation definition 5892* [SearchParameter](searchparameter.html): A use context assigned to the search parameter 5893* [StructureDefinition](structuredefinition.html): A use context assigned to the structure definition 5894* [StructureMap](structuremap.html): A use context assigned to the structure map 5895* [TerminologyCapabilities](terminologycapabilities.html): A use context assigned to the terminology capabilities 5896* [ValueSet](valueset.html): A use context assigned to the value set 5897</b><br> 5898 * Type: <b>token</b><br> 5899 * Path: <b>(CapabilityStatement.useContext.value as CodeableConcept) | (CodeSystem.useContext.value as CodeableConcept) | (CompartmentDefinition.useContext.value as CodeableConcept) | (ConceptMap.useContext.value as CodeableConcept) | (GraphDefinition.useContext.value as CodeableConcept) | (ImplementationGuide.useContext.value as CodeableConcept) | (MessageDefinition.useContext.value as CodeableConcept) | (NamingSystem.useContext.value as CodeableConcept) | (OperationDefinition.useContext.value as CodeableConcept) | (SearchParameter.useContext.value as CodeableConcept) | (StructureDefinition.useContext.value as CodeableConcept) | (StructureMap.useContext.value as CodeableConcept) | (TerminologyCapabilities.useContext.value as CodeableConcept) | (ValueSet.useContext.value as CodeableConcept)</b><br> 5900 * </p> 5901 */ 5902 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT); 5903 5904 /** 5905 * Search parameter: <b>date</b> 5906 * <p> 5907 * Description: <b>Multiple Resources: 5908 5909* [CapabilityStatement](capabilitystatement.html): The capability statement publication date 5910* [CodeSystem](codesystem.html): The code system publication date 5911* [CompartmentDefinition](compartmentdefinition.html): The compartment definition publication date 5912* [ConceptMap](conceptmap.html): The concept map publication date 5913* [GraphDefinition](graphdefinition.html): The graph definition publication date 5914* [ImplementationGuide](implementationguide.html): The implementation guide publication date 5915* [MessageDefinition](messagedefinition.html): The message definition publication date 5916* [NamingSystem](namingsystem.html): The naming system publication date 5917* [OperationDefinition](operationdefinition.html): The operation definition publication date 5918* [SearchParameter](searchparameter.html): The search parameter publication date 5919* [StructureDefinition](structuredefinition.html): The structure definition publication date 5920* [StructureMap](structuremap.html): The structure map publication date 5921* [TerminologyCapabilities](terminologycapabilities.html): The terminology capabilities publication date 5922* [ValueSet](valueset.html): The value set publication date 5923</b><br> 5924 * Type: <b>date</b><br> 5925 * Path: <b>CapabilityStatement.date | CodeSystem.date | CompartmentDefinition.date | ConceptMap.date | GraphDefinition.date | ImplementationGuide.date | MessageDefinition.date | NamingSystem.date | OperationDefinition.date | SearchParameter.date | StructureDefinition.date | StructureMap.date | TerminologyCapabilities.date | ValueSet.date</b><br> 5926 * </p> 5927 */ 5928 @SearchParamDefinition(name="date", path="CapabilityStatement.date | CodeSystem.date | CompartmentDefinition.date | ConceptMap.date | GraphDefinition.date | ImplementationGuide.date | MessageDefinition.date | NamingSystem.date | OperationDefinition.date | SearchParameter.date | StructureDefinition.date | StructureMap.date | TerminologyCapabilities.date | ValueSet.date", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): The capability statement publication date\r\n* [CodeSystem](codesystem.html): The code system publication date\r\n* [CompartmentDefinition](compartmentdefinition.html): The compartment definition publication date\r\n* [ConceptMap](conceptmap.html): The concept map publication date\r\n* [GraphDefinition](graphdefinition.html): The graph definition publication date\r\n* [ImplementationGuide](implementationguide.html): The implementation guide publication date\r\n* [MessageDefinition](messagedefinition.html): The message definition publication date\r\n* [NamingSystem](namingsystem.html): The naming system publication date\r\n* [OperationDefinition](operationdefinition.html): The operation definition publication date\r\n* [SearchParameter](searchparameter.html): The search parameter publication date\r\n* [StructureDefinition](structuredefinition.html): The structure definition publication date\r\n* [StructureMap](structuremap.html): The structure map publication date\r\n* [TerminologyCapabilities](terminologycapabilities.html): The terminology capabilities publication date\r\n* [ValueSet](valueset.html): The value set publication date\r\n", type="date" ) 5929 public static final String SP_DATE = "date"; 5930 /** 5931 * <b>Fluent Client</b> search parameter constant for <b>date</b> 5932 * <p> 5933 * Description: <b>Multiple Resources: 5934 5935* [CapabilityStatement](capabilitystatement.html): The capability statement publication date 5936* [CodeSystem](codesystem.html): The code system publication date 5937* [CompartmentDefinition](compartmentdefinition.html): The compartment definition publication date 5938* [ConceptMap](conceptmap.html): The concept map publication date 5939* [GraphDefinition](graphdefinition.html): The graph definition publication date 5940* [ImplementationGuide](implementationguide.html): The implementation guide publication date 5941* [MessageDefinition](messagedefinition.html): The message definition publication date 5942* [NamingSystem](namingsystem.html): The naming system publication date 5943* [OperationDefinition](operationdefinition.html): The operation definition publication date 5944* [SearchParameter](searchparameter.html): The search parameter publication date 5945* [StructureDefinition](structuredefinition.html): The structure definition publication date 5946* [StructureMap](structuremap.html): The structure map publication date 5947* [TerminologyCapabilities](terminologycapabilities.html): The terminology capabilities publication date 5948* [ValueSet](valueset.html): The value set publication date 5949</b><br> 5950 * Type: <b>date</b><br> 5951 * Path: <b>CapabilityStatement.date | CodeSystem.date | CompartmentDefinition.date | ConceptMap.date | GraphDefinition.date | ImplementationGuide.date | MessageDefinition.date | NamingSystem.date | OperationDefinition.date | SearchParameter.date | StructureDefinition.date | StructureMap.date | TerminologyCapabilities.date | ValueSet.date</b><br> 5952 * </p> 5953 */ 5954 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 5955 5956 /** 5957 * Search parameter: <b>description</b> 5958 * <p> 5959 * Description: <b>Multiple Resources: 5960 5961* [CapabilityStatement](capabilitystatement.html): The description of the capability statement 5962* [CodeSystem](codesystem.html): The description of the code system 5963* [CompartmentDefinition](compartmentdefinition.html): The description of the compartment definition 5964* [ConceptMap](conceptmap.html): The description of the concept map 5965* [GraphDefinition](graphdefinition.html): The description of the graph definition 5966* [ImplementationGuide](implementationguide.html): The description of the implementation guide 5967* [MessageDefinition](messagedefinition.html): The description of the message definition 5968* [NamingSystem](namingsystem.html): The description of the naming system 5969* [OperationDefinition](operationdefinition.html): The description of the operation definition 5970* [SearchParameter](searchparameter.html): The description of the search parameter 5971* [StructureDefinition](structuredefinition.html): The description of the structure definition 5972* [StructureMap](structuremap.html): The description of the structure map 5973* [TerminologyCapabilities](terminologycapabilities.html): The description of the terminology capabilities 5974* [ValueSet](valueset.html): The description of the value set 5975</b><br> 5976 * Type: <b>string</b><br> 5977 * Path: <b>CapabilityStatement.description | CodeSystem.description | CompartmentDefinition.description | ConceptMap.description | GraphDefinition.description | ImplementationGuide.description | MessageDefinition.description | NamingSystem.description | OperationDefinition.description | SearchParameter.description | StructureDefinition.description | StructureMap.description | TerminologyCapabilities.description | ValueSet.description</b><br> 5978 * </p> 5979 */ 5980 @SearchParamDefinition(name="description", path="CapabilityStatement.description | CodeSystem.description | CompartmentDefinition.description | ConceptMap.description | GraphDefinition.description | ImplementationGuide.description | MessageDefinition.description | NamingSystem.description | OperationDefinition.description | SearchParameter.description | StructureDefinition.description | StructureMap.description | TerminologyCapabilities.description | ValueSet.description", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): The description of the capability statement\r\n* [CodeSystem](codesystem.html): The description of the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): The description of the compartment definition\r\n* [ConceptMap](conceptmap.html): The description of the concept map\r\n* [GraphDefinition](graphdefinition.html): The description of the graph definition\r\n* [ImplementationGuide](implementationguide.html): The description of the implementation guide\r\n* [MessageDefinition](messagedefinition.html): The description of the message definition\r\n* [NamingSystem](namingsystem.html): The description of the naming system\r\n* [OperationDefinition](operationdefinition.html): The description of the operation definition\r\n* [SearchParameter](searchparameter.html): The description of the search parameter\r\n* [StructureDefinition](structuredefinition.html): The description of the structure definition\r\n* [StructureMap](structuremap.html): The description of the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): The description of the terminology capabilities\r\n* [ValueSet](valueset.html): The description of the value set\r\n", type="string" ) 5981 public static final String SP_DESCRIPTION = "description"; 5982 /** 5983 * <b>Fluent Client</b> search parameter constant for <b>description</b> 5984 * <p> 5985 * Description: <b>Multiple Resources: 5986 5987* [CapabilityStatement](capabilitystatement.html): The description of the capability statement 5988* [CodeSystem](codesystem.html): The description of the code system 5989* [CompartmentDefinition](compartmentdefinition.html): The description of the compartment definition 5990* [ConceptMap](conceptmap.html): The description of the concept map 5991* [GraphDefinition](graphdefinition.html): The description of the graph definition 5992* [ImplementationGuide](implementationguide.html): The description of the implementation guide 5993* [MessageDefinition](messagedefinition.html): The description of the message definition 5994* [NamingSystem](namingsystem.html): The description of the naming system 5995* [OperationDefinition](operationdefinition.html): The description of the operation definition 5996* [SearchParameter](searchparameter.html): The description of the search parameter 5997* [StructureDefinition](structuredefinition.html): The description of the structure definition 5998* [StructureMap](structuremap.html): The description of the structure map 5999* [TerminologyCapabilities](terminologycapabilities.html): The description of the terminology capabilities 6000* [ValueSet](valueset.html): The description of the value set 6001</b><br> 6002 * Type: <b>string</b><br> 6003 * Path: <b>CapabilityStatement.description | CodeSystem.description | CompartmentDefinition.description | ConceptMap.description | GraphDefinition.description | ImplementationGuide.description | MessageDefinition.description | NamingSystem.description | OperationDefinition.description | SearchParameter.description | StructureDefinition.description | StructureMap.description | TerminologyCapabilities.description | ValueSet.description</b><br> 6004 * </p> 6005 */ 6006 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DESCRIPTION); 6007 6008 /** 6009 * Search parameter: <b>identifier</b> 6010 * <p> 6011 * Description: <b>Multiple Resources: 6012 6013* [CodeSystem](codesystem.html): External identifier for the code system 6014* [ConceptMap](conceptmap.html): External identifier for the concept map 6015* [MessageDefinition](messagedefinition.html): External identifier for the message definition 6016* [NamingSystem](namingsystem.html): External identifier for the naming system 6017* [StructureDefinition](structuredefinition.html): External identifier for the structure definition 6018* [StructureMap](structuremap.html): External identifier for the structure map 6019* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities 6020* [ValueSet](valueset.html): External identifier for the value set 6021</b><br> 6022 * Type: <b>token</b><br> 6023 * Path: <b>CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | NamingSystem.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier</b><br> 6024 * </p> 6025 */ 6026 @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | NamingSystem.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [NamingSystem](namingsystem.html): External identifier for the naming system\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) 6027 public static final String SP_IDENTIFIER = "identifier"; 6028 /** 6029 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 6030 * <p> 6031 * Description: <b>Multiple Resources: 6032 6033* [CodeSystem](codesystem.html): External identifier for the code system 6034* [ConceptMap](conceptmap.html): External identifier for the concept map 6035* [MessageDefinition](messagedefinition.html): External identifier for the message definition 6036* [NamingSystem](namingsystem.html): External identifier for the naming system 6037* [StructureDefinition](structuredefinition.html): External identifier for the structure definition 6038* [StructureMap](structuremap.html): External identifier for the structure map 6039* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities 6040* [ValueSet](valueset.html): External identifier for the value set 6041</b><br> 6042 * Type: <b>token</b><br> 6043 * Path: <b>CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | NamingSystem.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier</b><br> 6044 * </p> 6045 */ 6046 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 6047 6048 /** 6049 * Search parameter: <b>jurisdiction</b> 6050 * <p> 6051 * Description: <b>Multiple Resources: 6052 6053* [CapabilityStatement](capabilitystatement.html): Intended jurisdiction for the capability statement 6054* [CodeSystem](codesystem.html): Intended jurisdiction for the code system 6055* [ConceptMap](conceptmap.html): Intended jurisdiction for the concept map 6056* [GraphDefinition](graphdefinition.html): Intended jurisdiction for the graph definition 6057* [ImplementationGuide](implementationguide.html): Intended jurisdiction for the implementation guide 6058* [MessageDefinition](messagedefinition.html): Intended jurisdiction for the message definition 6059* [NamingSystem](namingsystem.html): Intended jurisdiction for the naming system 6060* [OperationDefinition](operationdefinition.html): Intended jurisdiction for the operation definition 6061* [SearchParameter](searchparameter.html): Intended jurisdiction for the search parameter 6062* [StructureDefinition](structuredefinition.html): Intended jurisdiction for the structure definition 6063* [StructureMap](structuremap.html): Intended jurisdiction for the structure map 6064* [TerminologyCapabilities](terminologycapabilities.html): Intended jurisdiction for the terminology capabilities 6065* [ValueSet](valueset.html): Intended jurisdiction for the value set 6066</b><br> 6067 * Type: <b>token</b><br> 6068 * Path: <b>CapabilityStatement.jurisdiction | CodeSystem.jurisdiction | ConceptMap.jurisdiction | GraphDefinition.jurisdiction | ImplementationGuide.jurisdiction | MessageDefinition.jurisdiction | NamingSystem.jurisdiction | OperationDefinition.jurisdiction | SearchParameter.jurisdiction | StructureDefinition.jurisdiction | StructureMap.jurisdiction | TerminologyCapabilities.jurisdiction | ValueSet.jurisdiction</b><br> 6069 * </p> 6070 */ 6071 @SearchParamDefinition(name="jurisdiction", path="CapabilityStatement.jurisdiction | CodeSystem.jurisdiction | ConceptMap.jurisdiction | GraphDefinition.jurisdiction | ImplementationGuide.jurisdiction | MessageDefinition.jurisdiction | NamingSystem.jurisdiction | OperationDefinition.jurisdiction | SearchParameter.jurisdiction | StructureDefinition.jurisdiction | StructureMap.jurisdiction | TerminologyCapabilities.jurisdiction | ValueSet.jurisdiction", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): Intended jurisdiction for the capability statement\r\n* [CodeSystem](codesystem.html): Intended jurisdiction for the code system\r\n* [ConceptMap](conceptmap.html): Intended jurisdiction for the concept map\r\n* [GraphDefinition](graphdefinition.html): Intended jurisdiction for the graph definition\r\n* [ImplementationGuide](implementationguide.html): Intended jurisdiction for the implementation guide\r\n* [MessageDefinition](messagedefinition.html): Intended jurisdiction for the message definition\r\n* [NamingSystem](namingsystem.html): Intended jurisdiction for the naming system\r\n* [OperationDefinition](operationdefinition.html): Intended jurisdiction for the operation definition\r\n* [SearchParameter](searchparameter.html): Intended jurisdiction for the search parameter\r\n* [StructureDefinition](structuredefinition.html): Intended jurisdiction for the structure definition\r\n* [StructureMap](structuremap.html): Intended jurisdiction for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): Intended jurisdiction for the terminology capabilities\r\n* [ValueSet](valueset.html): Intended jurisdiction for the value set\r\n", type="token" ) 6072 public static final String SP_JURISDICTION = "jurisdiction"; 6073 /** 6074 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 6075 * <p> 6076 * Description: <b>Multiple Resources: 6077 6078* [CapabilityStatement](capabilitystatement.html): Intended jurisdiction for the capability statement 6079* [CodeSystem](codesystem.html): Intended jurisdiction for the code system 6080* [ConceptMap](conceptmap.html): Intended jurisdiction for the concept map 6081* [GraphDefinition](graphdefinition.html): Intended jurisdiction for the graph definition 6082* [ImplementationGuide](implementationguide.html): Intended jurisdiction for the implementation guide 6083* [MessageDefinition](messagedefinition.html): Intended jurisdiction for the message definition 6084* [NamingSystem](namingsystem.html): Intended jurisdiction for the naming system 6085* [OperationDefinition](operationdefinition.html): Intended jurisdiction for the operation definition 6086* [SearchParameter](searchparameter.html): Intended jurisdiction for the search parameter 6087* [StructureDefinition](structuredefinition.html): Intended jurisdiction for the structure definition 6088* [StructureMap](structuremap.html): Intended jurisdiction for the structure map 6089* [TerminologyCapabilities](terminologycapabilities.html): Intended jurisdiction for the terminology capabilities 6090* [ValueSet](valueset.html): Intended jurisdiction for the value set 6091</b><br> 6092 * Type: <b>token</b><br> 6093 * Path: <b>CapabilityStatement.jurisdiction | CodeSystem.jurisdiction | ConceptMap.jurisdiction | GraphDefinition.jurisdiction | ImplementationGuide.jurisdiction | MessageDefinition.jurisdiction | NamingSystem.jurisdiction | OperationDefinition.jurisdiction | SearchParameter.jurisdiction | StructureDefinition.jurisdiction | StructureMap.jurisdiction | TerminologyCapabilities.jurisdiction | ValueSet.jurisdiction</b><br> 6094 * </p> 6095 */ 6096 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_JURISDICTION); 6097 6098 /** 6099 * Search parameter: <b>name</b> 6100 * <p> 6101 * Description: <b>Multiple Resources: 6102 6103* [CapabilityStatement](capabilitystatement.html): Computationally friendly name of the capability statement 6104* [CodeSystem](codesystem.html): Computationally friendly name of the code system 6105* [CompartmentDefinition](compartmentdefinition.html): Computationally friendly name of the compartment definition 6106* [ConceptMap](conceptmap.html): Computationally friendly name of the concept map 6107* [GraphDefinition](graphdefinition.html): Computationally friendly name of the graph definition 6108* [ImplementationGuide](implementationguide.html): Computationally friendly name of the implementation guide 6109* [MessageDefinition](messagedefinition.html): Computationally friendly name of the message definition 6110* [NamingSystem](namingsystem.html): Computationally friendly name of the naming system 6111* [OperationDefinition](operationdefinition.html): Computationally friendly name of the operation definition 6112* [SearchParameter](searchparameter.html): Computationally friendly name of the search parameter 6113* [StructureDefinition](structuredefinition.html): Computationally friendly name of the structure definition 6114* [StructureMap](structuremap.html): Computationally friendly name of the structure map 6115* [TerminologyCapabilities](terminologycapabilities.html): Computationally friendly name of the terminology capabilities 6116* [ValueSet](valueset.html): Computationally friendly name of the value set 6117</b><br> 6118 * Type: <b>string</b><br> 6119 * Path: <b>CapabilityStatement.name | CodeSystem.name | CompartmentDefinition.name | ConceptMap.name | GraphDefinition.name | ImplementationGuide.name | MessageDefinition.name | NamingSystem.name | OperationDefinition.name | SearchParameter.name | StructureDefinition.name | StructureMap.name | TerminologyCapabilities.name | ValueSet.name</b><br> 6120 * </p> 6121 */ 6122 @SearchParamDefinition(name="name", path="CapabilityStatement.name | CodeSystem.name | CompartmentDefinition.name | ConceptMap.name | GraphDefinition.name | ImplementationGuide.name | MessageDefinition.name | NamingSystem.name | OperationDefinition.name | SearchParameter.name | StructureDefinition.name | StructureMap.name | TerminologyCapabilities.name | ValueSet.name", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): Computationally friendly name of the capability statement\r\n* [CodeSystem](codesystem.html): Computationally friendly name of the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): Computationally friendly name of the compartment definition\r\n* [ConceptMap](conceptmap.html): Computationally friendly name of the concept map\r\n* [GraphDefinition](graphdefinition.html): Computationally friendly name of the graph definition\r\n* [ImplementationGuide](implementationguide.html): Computationally friendly name of the implementation guide\r\n* [MessageDefinition](messagedefinition.html): Computationally friendly name of the message definition\r\n* [NamingSystem](namingsystem.html): Computationally friendly name of the naming system\r\n* [OperationDefinition](operationdefinition.html): Computationally friendly name of the operation definition\r\n* [SearchParameter](searchparameter.html): Computationally friendly name of the search parameter\r\n* [StructureDefinition](structuredefinition.html): Computationally friendly name of the structure definition\r\n* [StructureMap](structuremap.html): Computationally friendly name of the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): Computationally friendly name of the terminology capabilities\r\n* [ValueSet](valueset.html): Computationally friendly name of the value set\r\n", type="string" ) 6123 public static final String SP_NAME = "name"; 6124 /** 6125 * <b>Fluent Client</b> search parameter constant for <b>name</b> 6126 * <p> 6127 * Description: <b>Multiple Resources: 6128 6129* [CapabilityStatement](capabilitystatement.html): Computationally friendly name of the capability statement 6130* [CodeSystem](codesystem.html): Computationally friendly name of the code system 6131* [CompartmentDefinition](compartmentdefinition.html): Computationally friendly name of the compartment definition 6132* [ConceptMap](conceptmap.html): Computationally friendly name of the concept map 6133* [GraphDefinition](graphdefinition.html): Computationally friendly name of the graph definition 6134* [ImplementationGuide](implementationguide.html): Computationally friendly name of the implementation guide 6135* [MessageDefinition](messagedefinition.html): Computationally friendly name of the message definition 6136* [NamingSystem](namingsystem.html): Computationally friendly name of the naming system 6137* [OperationDefinition](operationdefinition.html): Computationally friendly name of the operation definition 6138* [SearchParameter](searchparameter.html): Computationally friendly name of the search parameter 6139* [StructureDefinition](structuredefinition.html): Computationally friendly name of the structure definition 6140* [StructureMap](structuremap.html): Computationally friendly name of the structure map 6141* [TerminologyCapabilities](terminologycapabilities.html): Computationally friendly name of the terminology capabilities 6142* [ValueSet](valueset.html): Computationally friendly name of the value set 6143</b><br> 6144 * Type: <b>string</b><br> 6145 * Path: <b>CapabilityStatement.name | CodeSystem.name | CompartmentDefinition.name | ConceptMap.name | GraphDefinition.name | ImplementationGuide.name | MessageDefinition.name | NamingSystem.name | OperationDefinition.name | SearchParameter.name | StructureDefinition.name | StructureMap.name | TerminologyCapabilities.name | ValueSet.name</b><br> 6146 * </p> 6147 */ 6148 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 6149 6150 /** 6151 * Search parameter: <b>publisher</b> 6152 * <p> 6153 * Description: <b>Multiple Resources: 6154 6155* [CapabilityStatement](capabilitystatement.html): Name of the publisher of the capability statement 6156* [CodeSystem](codesystem.html): Name of the publisher of the code system 6157* [CompartmentDefinition](compartmentdefinition.html): Name of the publisher of the compartment definition 6158* [ConceptMap](conceptmap.html): Name of the publisher of the concept map 6159* [GraphDefinition](graphdefinition.html): Name of the publisher of the graph definition 6160* [ImplementationGuide](implementationguide.html): Name of the publisher of the implementation guide 6161* [MessageDefinition](messagedefinition.html): Name of the publisher of the message definition 6162* [NamingSystem](namingsystem.html): Name of the publisher of the naming system 6163* [OperationDefinition](operationdefinition.html): Name of the publisher of the operation definition 6164* [SearchParameter](searchparameter.html): Name of the publisher of the search parameter 6165* [StructureDefinition](structuredefinition.html): Name of the publisher of the structure definition 6166* [StructureMap](structuremap.html): Name of the publisher of the structure map 6167* [TerminologyCapabilities](terminologycapabilities.html): Name of the publisher of the terminology capabilities 6168* [ValueSet](valueset.html): Name of the publisher of the value set 6169</b><br> 6170 * Type: <b>string</b><br> 6171 * Path: <b>CapabilityStatement.publisher | CodeSystem.publisher | CompartmentDefinition.publisher | ConceptMap.publisher | GraphDefinition.publisher | ImplementationGuide.publisher | MessageDefinition.publisher | NamingSystem.publisher | OperationDefinition.publisher | SearchParameter.publisher | StructureDefinition.publisher | StructureMap.publisher | TerminologyCapabilities.publisher | ValueSet.publisher</b><br> 6172 * </p> 6173 */ 6174 @SearchParamDefinition(name="publisher", path="CapabilityStatement.publisher | CodeSystem.publisher | CompartmentDefinition.publisher | ConceptMap.publisher | GraphDefinition.publisher | ImplementationGuide.publisher | MessageDefinition.publisher | NamingSystem.publisher | OperationDefinition.publisher | SearchParameter.publisher | StructureDefinition.publisher | StructureMap.publisher | TerminologyCapabilities.publisher | ValueSet.publisher", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): Name of the publisher of the capability statement\r\n* [CodeSystem](codesystem.html): Name of the publisher of the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): Name of the publisher of the compartment definition\r\n* [ConceptMap](conceptmap.html): Name of the publisher of the concept map\r\n* [GraphDefinition](graphdefinition.html): Name of the publisher of the graph definition\r\n* [ImplementationGuide](implementationguide.html): Name of the publisher of the implementation guide\r\n* [MessageDefinition](messagedefinition.html): Name of the publisher of the message definition\r\n* [NamingSystem](namingsystem.html): Name of the publisher of the naming system\r\n* [OperationDefinition](operationdefinition.html): Name of the publisher of the operation definition\r\n* [SearchParameter](searchparameter.html): Name of the publisher of the search parameter\r\n* [StructureDefinition](structuredefinition.html): Name of the publisher of the structure definition\r\n* [StructureMap](structuremap.html): Name of the publisher of the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): Name of the publisher of the terminology capabilities\r\n* [ValueSet](valueset.html): Name of the publisher of the value set\r\n", type="string" ) 6175 public static final String SP_PUBLISHER = "publisher"; 6176 /** 6177 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 6178 * <p> 6179 * Description: <b>Multiple Resources: 6180 6181* [CapabilityStatement](capabilitystatement.html): Name of the publisher of the capability statement 6182* [CodeSystem](codesystem.html): Name of the publisher of the code system 6183* [CompartmentDefinition](compartmentdefinition.html): Name of the publisher of the compartment definition 6184* [ConceptMap](conceptmap.html): Name of the publisher of the concept map 6185* [GraphDefinition](graphdefinition.html): Name of the publisher of the graph definition 6186* [ImplementationGuide](implementationguide.html): Name of the publisher of the implementation guide 6187* [MessageDefinition](messagedefinition.html): Name of the publisher of the message definition 6188* [NamingSystem](namingsystem.html): Name of the publisher of the naming system 6189* [OperationDefinition](operationdefinition.html): Name of the publisher of the operation definition 6190* [SearchParameter](searchparameter.html): Name of the publisher of the search parameter 6191* [StructureDefinition](structuredefinition.html): Name of the publisher of the structure definition 6192* [StructureMap](structuremap.html): Name of the publisher of the structure map 6193* [TerminologyCapabilities](terminologycapabilities.html): Name of the publisher of the terminology capabilities 6194* [ValueSet](valueset.html): Name of the publisher of the value set 6195</b><br> 6196 * Type: <b>string</b><br> 6197 * Path: <b>CapabilityStatement.publisher | CodeSystem.publisher | CompartmentDefinition.publisher | ConceptMap.publisher | GraphDefinition.publisher | ImplementationGuide.publisher | MessageDefinition.publisher | NamingSystem.publisher | OperationDefinition.publisher | SearchParameter.publisher | StructureDefinition.publisher | StructureMap.publisher | TerminologyCapabilities.publisher | ValueSet.publisher</b><br> 6198 * </p> 6199 */ 6200 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PUBLISHER); 6201 6202 /** 6203 * Search parameter: <b>status</b> 6204 * <p> 6205 * Description: <b>Multiple Resources: 6206 6207* [CapabilityStatement](capabilitystatement.html): The current status of the capability statement 6208* [CodeSystem](codesystem.html): The current status of the code system 6209* [CompartmentDefinition](compartmentdefinition.html): The current status of the compartment definition 6210* [ConceptMap](conceptmap.html): The current status of the concept map 6211* [GraphDefinition](graphdefinition.html): The current status of the graph definition 6212* [ImplementationGuide](implementationguide.html): The current status of the implementation guide 6213* [MessageDefinition](messagedefinition.html): The current status of the message definition 6214* [NamingSystem](namingsystem.html): The current status of the naming system 6215* [OperationDefinition](operationdefinition.html): The current status of the operation definition 6216* [SearchParameter](searchparameter.html): The current status of the search parameter 6217* [StructureDefinition](structuredefinition.html): The current status of the structure definition 6218* [StructureMap](structuremap.html): The current status of the structure map 6219* [TerminologyCapabilities](terminologycapabilities.html): The current status of the terminology capabilities 6220* [ValueSet](valueset.html): The current status of the value set 6221</b><br> 6222 * Type: <b>token</b><br> 6223 * Path: <b>CapabilityStatement.status | CodeSystem.status | CompartmentDefinition.status | ConceptMap.status | GraphDefinition.status | ImplementationGuide.status | MessageDefinition.status | NamingSystem.status | OperationDefinition.status | SearchParameter.status | StructureDefinition.status | StructureMap.status | TerminologyCapabilities.status | ValueSet.status</b><br> 6224 * </p> 6225 */ 6226 @SearchParamDefinition(name="status", path="CapabilityStatement.status | CodeSystem.status | CompartmentDefinition.status | ConceptMap.status | GraphDefinition.status | ImplementationGuide.status | MessageDefinition.status | NamingSystem.status | OperationDefinition.status | SearchParameter.status | StructureDefinition.status | StructureMap.status | TerminologyCapabilities.status | ValueSet.status", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): The current status of the capability statement\r\n* [CodeSystem](codesystem.html): The current status of the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): The current status of the compartment definition\r\n* [ConceptMap](conceptmap.html): The current status of the concept map\r\n* [GraphDefinition](graphdefinition.html): The current status of the graph definition\r\n* [ImplementationGuide](implementationguide.html): The current status of the implementation guide\r\n* [MessageDefinition](messagedefinition.html): The current status of the message definition\r\n* [NamingSystem](namingsystem.html): The current status of the naming system\r\n* [OperationDefinition](operationdefinition.html): The current status of the operation definition\r\n* [SearchParameter](searchparameter.html): The current status of the search parameter\r\n* [StructureDefinition](structuredefinition.html): The current status of the structure definition\r\n* [StructureMap](structuremap.html): The current status of the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): The current status of the terminology capabilities\r\n* [ValueSet](valueset.html): The current status of the value set\r\n", type="token" ) 6227 public static final String SP_STATUS = "status"; 6228 /** 6229 * <b>Fluent Client</b> search parameter constant for <b>status</b> 6230 * <p> 6231 * Description: <b>Multiple Resources: 6232 6233* [CapabilityStatement](capabilitystatement.html): The current status of the capability statement 6234* [CodeSystem](codesystem.html): The current status of the code system 6235* [CompartmentDefinition](compartmentdefinition.html): The current status of the compartment definition 6236* [ConceptMap](conceptmap.html): The current status of the concept map 6237* [GraphDefinition](graphdefinition.html): The current status of the graph definition 6238* [ImplementationGuide](implementationguide.html): The current status of the implementation guide 6239* [MessageDefinition](messagedefinition.html): The current status of the message definition 6240* [NamingSystem](namingsystem.html): The current status of the naming system 6241* [OperationDefinition](operationdefinition.html): The current status of the operation definition 6242* [SearchParameter](searchparameter.html): The current status of the search parameter 6243* [StructureDefinition](structuredefinition.html): The current status of the structure definition 6244* [StructureMap](structuremap.html): The current status of the structure map 6245* [TerminologyCapabilities](terminologycapabilities.html): The current status of the terminology capabilities 6246* [ValueSet](valueset.html): The current status of the value set 6247</b><br> 6248 * Type: <b>token</b><br> 6249 * Path: <b>CapabilityStatement.status | CodeSystem.status | CompartmentDefinition.status | ConceptMap.status | GraphDefinition.status | ImplementationGuide.status | MessageDefinition.status | NamingSystem.status | OperationDefinition.status | SearchParameter.status | StructureDefinition.status | StructureMap.status | TerminologyCapabilities.status | ValueSet.status</b><br> 6250 * </p> 6251 */ 6252 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 6253 6254 /** 6255 * Search parameter: <b>title</b> 6256 * <p> 6257 * Description: <b>Multiple Resources: 6258 6259* [CapabilityStatement](capabilitystatement.html): The human-friendly name of the capability statement 6260* [CodeSystem](codesystem.html): The human-friendly name of the code system 6261* [ConceptMap](conceptmap.html): The human-friendly name of the concept map 6262* [ImplementationGuide](implementationguide.html): The human-friendly name of the implementation guide 6263* [MessageDefinition](messagedefinition.html): The human-friendly name of the message definition 6264* [OperationDefinition](operationdefinition.html): The human-friendly name of the operation definition 6265* [StructureDefinition](structuredefinition.html): The human-friendly name of the structure definition 6266* [StructureMap](structuremap.html): The human-friendly name of the structure map 6267* [TerminologyCapabilities](terminologycapabilities.html): The human-friendly name of the terminology capabilities 6268* [ValueSet](valueset.html): The human-friendly name of the value set 6269</b><br> 6270 * Type: <b>string</b><br> 6271 * Path: <b>CapabilityStatement.title | CodeSystem.title | ConceptMap.title | ImplementationGuide.title | MessageDefinition.title | OperationDefinition.title | StructureDefinition.title | StructureMap.title | TerminologyCapabilities.title | ValueSet.title</b><br> 6272 * </p> 6273 */ 6274 @SearchParamDefinition(name="title", path="CapabilityStatement.title | CodeSystem.title | ConceptMap.title | ImplementationGuide.title | MessageDefinition.title | OperationDefinition.title | StructureDefinition.title | StructureMap.title | TerminologyCapabilities.title | ValueSet.title", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): The human-friendly name of the capability statement\r\n* [CodeSystem](codesystem.html): The human-friendly name of the code system\r\n* [ConceptMap](conceptmap.html): The human-friendly name of the concept map\r\n* [ImplementationGuide](implementationguide.html): The human-friendly name of the implementation guide\r\n* [MessageDefinition](messagedefinition.html): The human-friendly name of the message definition\r\n* [OperationDefinition](operationdefinition.html): The human-friendly name of the operation definition\r\n* [StructureDefinition](structuredefinition.html): The human-friendly name of the structure definition\r\n* [StructureMap](structuremap.html): The human-friendly name of the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): The human-friendly name of the terminology capabilities\r\n* [ValueSet](valueset.html): The human-friendly name of the value set\r\n", type="string" ) 6275 public static final String SP_TITLE = "title"; 6276 /** 6277 * <b>Fluent Client</b> search parameter constant for <b>title</b> 6278 * <p> 6279 * Description: <b>Multiple Resources: 6280 6281* [CapabilityStatement](capabilitystatement.html): The human-friendly name of the capability statement 6282* [CodeSystem](codesystem.html): The human-friendly name of the code system 6283* [ConceptMap](conceptmap.html): The human-friendly name of the concept map 6284* [ImplementationGuide](implementationguide.html): The human-friendly name of the implementation guide 6285* [MessageDefinition](messagedefinition.html): The human-friendly name of the message definition 6286* [OperationDefinition](operationdefinition.html): The human-friendly name of the operation definition 6287* [StructureDefinition](structuredefinition.html): The human-friendly name of the structure definition 6288* [StructureMap](structuremap.html): The human-friendly name of the structure map 6289* [TerminologyCapabilities](terminologycapabilities.html): The human-friendly name of the terminology capabilities 6290* [ValueSet](valueset.html): The human-friendly name of the value set 6291</b><br> 6292 * Type: <b>string</b><br> 6293 * Path: <b>CapabilityStatement.title | CodeSystem.title | ConceptMap.title | ImplementationGuide.title | MessageDefinition.title | OperationDefinition.title | StructureDefinition.title | StructureMap.title | TerminologyCapabilities.title | ValueSet.title</b><br> 6294 * </p> 6295 */ 6296 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); 6297 6298 /** 6299 * Search parameter: <b>url</b> 6300 * <p> 6301 * Description: <b>Multiple Resources: 6302 6303* [CapabilityStatement](capabilitystatement.html): The uri that identifies the capability statement 6304* [CodeSystem](codesystem.html): The uri that identifies the code system 6305* [CompartmentDefinition](compartmentdefinition.html): The uri that identifies the compartment definition 6306* [ConceptMap](conceptmap.html): The URI that identifies the concept map 6307* [GraphDefinition](graphdefinition.html): The uri that identifies the graph definition 6308* [ImplementationGuide](implementationguide.html): The uri that identifies the implementation guide 6309* [MessageDefinition](messagedefinition.html): The uri that identifies the message definition 6310* [NamingSystem](namingsystem.html): The uri that identifies the naming system 6311* [OperationDefinition](operationdefinition.html): The uri that identifies the operation definition 6312* [SearchParameter](searchparameter.html): The uri that identifies the search parameter 6313* [StructureDefinition](structuredefinition.html): The uri that identifies the structure definition 6314* [StructureMap](structuremap.html): The uri that identifies the structure map 6315* [TerminologyCapabilities](terminologycapabilities.html): The uri that identifies the terminology capabilities 6316* [ValueSet](valueset.html): The uri that identifies the value set 6317</b><br> 6318 * Type: <b>uri</b><br> 6319 * Path: <b>CapabilityStatement.url | CodeSystem.url | CompartmentDefinition.url | ConceptMap.url | GraphDefinition.url | ImplementationGuide.url | MessageDefinition.url | NamingSystem.url | OperationDefinition.url | SearchParameter.url | StructureDefinition.url | StructureMap.url | TerminologyCapabilities.url | ValueSet.url</b><br> 6320 * </p> 6321 */ 6322 @SearchParamDefinition(name="url", path="CapabilityStatement.url | CodeSystem.url | CompartmentDefinition.url | ConceptMap.url | GraphDefinition.url | ImplementationGuide.url | MessageDefinition.url | NamingSystem.url | OperationDefinition.url | SearchParameter.url | StructureDefinition.url | StructureMap.url | TerminologyCapabilities.url | ValueSet.url", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): The uri that identifies the capability statement\r\n* [CodeSystem](codesystem.html): The uri that identifies the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): The uri that identifies the compartment definition\r\n* [ConceptMap](conceptmap.html): The URI that identifies the concept map\r\n* [GraphDefinition](graphdefinition.html): The uri that identifies the graph definition\r\n* [ImplementationGuide](implementationguide.html): The uri that identifies the implementation guide\r\n* [MessageDefinition](messagedefinition.html): The uri that identifies the message definition\r\n* [NamingSystem](namingsystem.html): The uri that identifies the naming system\r\n* [OperationDefinition](operationdefinition.html): The uri that identifies the operation definition\r\n* [SearchParameter](searchparameter.html): The uri that identifies the search parameter\r\n* [StructureDefinition](structuredefinition.html): The uri that identifies the structure definition\r\n* [StructureMap](structuremap.html): The uri that identifies the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): The uri that identifies the terminology capabilities\r\n* [ValueSet](valueset.html): The uri that identifies the value set\r\n", type="uri" ) 6323 public static final String SP_URL = "url"; 6324 /** 6325 * <b>Fluent Client</b> search parameter constant for <b>url</b> 6326 * <p> 6327 * Description: <b>Multiple Resources: 6328 6329* [CapabilityStatement](capabilitystatement.html): The uri that identifies the capability statement 6330* [CodeSystem](codesystem.html): The uri that identifies the code system 6331* [CompartmentDefinition](compartmentdefinition.html): The uri that identifies the compartment definition 6332* [ConceptMap](conceptmap.html): The URI that identifies the concept map 6333* [GraphDefinition](graphdefinition.html): The uri that identifies the graph definition 6334* [ImplementationGuide](implementationguide.html): The uri that identifies the implementation guide 6335* [MessageDefinition](messagedefinition.html): The uri that identifies the message definition 6336* [NamingSystem](namingsystem.html): The uri that identifies the naming system 6337* [OperationDefinition](operationdefinition.html): The uri that identifies the operation definition 6338* [SearchParameter](searchparameter.html): The uri that identifies the search parameter 6339* [StructureDefinition](structuredefinition.html): The uri that identifies the structure definition 6340* [StructureMap](structuremap.html): The uri that identifies the structure map 6341* [TerminologyCapabilities](terminologycapabilities.html): The uri that identifies the terminology capabilities 6342* [ValueSet](valueset.html): The uri that identifies the value set 6343</b><br> 6344 * Type: <b>uri</b><br> 6345 * Path: <b>CapabilityStatement.url | CodeSystem.url | CompartmentDefinition.url | ConceptMap.url | GraphDefinition.url | ImplementationGuide.url | MessageDefinition.url | NamingSystem.url | OperationDefinition.url | SearchParameter.url | StructureDefinition.url | StructureMap.url | TerminologyCapabilities.url | ValueSet.url</b><br> 6346 * </p> 6347 */ 6348 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 6349 6350 /** 6351 * Search parameter: <b>version</b> 6352 * <p> 6353 * Description: <b>Multiple Resources: 6354 6355* [CapabilityStatement](capabilitystatement.html): The business version of the capability statement 6356* [CodeSystem](codesystem.html): The business version of the code system 6357* [CompartmentDefinition](compartmentdefinition.html): The business version of the compartment definition 6358* [ConceptMap](conceptmap.html): The business version of the concept map 6359* [GraphDefinition](graphdefinition.html): The business version of the graph definition 6360* [ImplementationGuide](implementationguide.html): The business version of the implementation guide 6361* [MessageDefinition](messagedefinition.html): The business version of the message definition 6362* [NamingSystem](namingsystem.html): The business version of the naming system 6363* [OperationDefinition](operationdefinition.html): The business version of the operation definition 6364* [SearchParameter](searchparameter.html): The business version of the search parameter 6365* [StructureDefinition](structuredefinition.html): The business version of the structure definition 6366* [StructureMap](structuremap.html): The business version of the structure map 6367* [TerminologyCapabilities](terminologycapabilities.html): The business version of the terminology capabilities 6368* [ValueSet](valueset.html): The business version of the value set 6369</b><br> 6370 * Type: <b>token</b><br> 6371 * Path: <b>CapabilityStatement.version | CodeSystem.version | CompartmentDefinition.version | ConceptMap.version | GraphDefinition.version | ImplementationGuide.version | MessageDefinition.version | NamingSystem.version | OperationDefinition.version | SearchParameter.version | StructureDefinition.version | StructureMap.version | TerminologyCapabilities.version | ValueSet.version</b><br> 6372 * </p> 6373 */ 6374 @SearchParamDefinition(name="version", path="CapabilityStatement.version | CodeSystem.version | CompartmentDefinition.version | ConceptMap.version | GraphDefinition.version | ImplementationGuide.version | MessageDefinition.version | NamingSystem.version | OperationDefinition.version | SearchParameter.version | StructureDefinition.version | StructureMap.version | TerminologyCapabilities.version | ValueSet.version", description="Multiple Resources: \r\n\r\n* [CapabilityStatement](capabilitystatement.html): The business version of the capability statement\r\n* [CodeSystem](codesystem.html): The business version of the code system\r\n* [CompartmentDefinition](compartmentdefinition.html): The business version of the compartment definition\r\n* [ConceptMap](conceptmap.html): The business version of the concept map\r\n* [GraphDefinition](graphdefinition.html): The business version of the graph definition\r\n* [ImplementationGuide](implementationguide.html): The business version of the implementation guide\r\n* [MessageDefinition](messagedefinition.html): The business version of the message definition\r\n* [NamingSystem](namingsystem.html): The business version of the naming system\r\n* [OperationDefinition](operationdefinition.html): The business version of the operation definition\r\n* [SearchParameter](searchparameter.html): The business version of the search parameter\r\n* [StructureDefinition](structuredefinition.html): The business version of the structure definition\r\n* [StructureMap](structuremap.html): The business version of the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): The business version of the terminology capabilities\r\n* [ValueSet](valueset.html): The business version of the value set\r\n", type="token" ) 6375 public static final String SP_VERSION = "version"; 6376 /** 6377 * <b>Fluent Client</b> search parameter constant for <b>version</b> 6378 * <p> 6379 * Description: <b>Multiple Resources: 6380 6381* [CapabilityStatement](capabilitystatement.html): The business version of the capability statement 6382* [CodeSystem](codesystem.html): The business version of the code system 6383* [CompartmentDefinition](compartmentdefinition.html): The business version of the compartment definition 6384* [ConceptMap](conceptmap.html): The business version of the concept map 6385* [GraphDefinition](graphdefinition.html): The business version of the graph definition 6386* [ImplementationGuide](implementationguide.html): The business version of the implementation guide 6387* [MessageDefinition](messagedefinition.html): The business version of the message definition 6388* [NamingSystem](namingsystem.html): The business version of the naming system 6389* [OperationDefinition](operationdefinition.html): The business version of the operation definition 6390* [SearchParameter](searchparameter.html): The business version of the search parameter 6391* [StructureDefinition](structuredefinition.html): The business version of the structure definition 6392* [StructureMap](structuremap.html): The business version of the structure map 6393* [TerminologyCapabilities](terminologycapabilities.html): The business version of the terminology capabilities 6394* [ValueSet](valueset.html): The business version of the value set 6395</b><br> 6396 * Type: <b>token</b><br> 6397 * Path: <b>CapabilityStatement.version | CodeSystem.version | CompartmentDefinition.version | ConceptMap.version | GraphDefinition.version | ImplementationGuide.version | MessageDefinition.version | NamingSystem.version | OperationDefinition.version | SearchParameter.version | StructureDefinition.version | StructureMap.version | TerminologyCapabilities.version | ValueSet.version</b><br> 6398 * </p> 6399 */ 6400 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); 6401 6402// Manual code (from Configuration.txt): 6403public PropertyComponent getProperty(String code) { 6404 for (PropertyComponent pd : getProperty()) { 6405 if (pd.getCode().equalsIgnoreCase(code)) 6406 return pd; 6407 } 6408 return null; 6409 } 6410 6411 public ConceptDefinitionComponent getDefinitionByCode(String code) { 6412 return getDefinitionByCode(getConcept(), code); 6413 } 6414 6415 private ConceptDefinitionComponent getDefinitionByCode(List<ConceptDefinitionComponent> list, String code) { 6416 for (ConceptDefinitionComponent t : list) { 6417 if (code.equals(t.getCode())) { 6418 return t; 6419 } 6420 ConceptDefinitionComponent cc = getDefinitionByCode(t.getConcept(), code); 6421 if (cc != null) { 6422 return cc; 6423 } 6424 } 6425 return null; 6426 } 6427// end addition 6428 6429} 6430