
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 * A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types. 052 */ 053@ResourceDef(name="StructureDefinition", profile="http://hl7.org/fhir/StructureDefinition/StructureDefinition") 054public class StructureDefinition extends CanonicalResource { 055 056 public enum ExtensionContextType { 057 /** 058 * The context is all elements that match the FHIRPath query found in the expression. 059 */ 060 FHIRPATH, 061 /** 062 * The context is any element that has an ElementDefinition.id that matches that found in the expression. This includes ElementDefinition Ids that have slicing identifiers. The full path for the element is [url]#[elementid]. If there is no #, the Element id is one defined in the base specification. 063 */ 064 ELEMENT, 065 /** 066 * The context is a particular extension from a particular StructureDefinition, and the expression is just a uri that identifies the extension. 067 */ 068 EXTENSION, 069 /** 070 * added to help the parsers with the generic types 071 */ 072 NULL; 073 public static ExtensionContextType fromCode(String codeString) throws FHIRException { 074 if (codeString == null || "".equals(codeString)) 075 return null; 076 if ("fhirpath".equals(codeString)) 077 return FHIRPATH; 078 if ("element".equals(codeString)) 079 return ELEMENT; 080 if ("extension".equals(codeString)) 081 return EXTENSION; 082 if (Configuration.isAcceptInvalidEnums()) 083 return null; 084 else 085 throw new FHIRException("Unknown ExtensionContextType code '"+codeString+"'"); 086 } 087 public String toCode() { 088 switch (this) { 089 case FHIRPATH: return "fhirpath"; 090 case ELEMENT: return "element"; 091 case EXTENSION: return "extension"; 092 case NULL: return null; 093 default: return "?"; 094 } 095 } 096 public String getSystem() { 097 switch (this) { 098 case FHIRPATH: return "http://hl7.org/fhir/extension-context-type"; 099 case ELEMENT: return "http://hl7.org/fhir/extension-context-type"; 100 case EXTENSION: return "http://hl7.org/fhir/extension-context-type"; 101 case NULL: return null; 102 default: return "?"; 103 } 104 } 105 public String getDefinition() { 106 switch (this) { 107 case FHIRPATH: return "The context is all elements that match the FHIRPath query found in the expression."; 108 case ELEMENT: return "The context is any element that has an ElementDefinition.id that matches that found in the expression. This includes ElementDefinition Ids that have slicing identifiers. The full path for the element is [url]#[elementid]. If there is no #, the Element id is one defined in the base specification."; 109 case EXTENSION: return "The context is a particular extension from a particular StructureDefinition, and the expression is just a uri that identifies the extension."; 110 case NULL: return null; 111 default: return "?"; 112 } 113 } 114 public String getDisplay() { 115 switch (this) { 116 case FHIRPATH: return "FHIRPath"; 117 case ELEMENT: return "Element ID"; 118 case EXTENSION: return "Extension URL"; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 } 124 125 public static class ExtensionContextTypeEnumFactory implements EnumFactory<ExtensionContextType> { 126 public ExtensionContextType fromCode(String codeString) throws IllegalArgumentException { 127 if (codeString == null || "".equals(codeString)) 128 if (codeString == null || "".equals(codeString)) 129 return null; 130 if ("fhirpath".equals(codeString)) 131 return ExtensionContextType.FHIRPATH; 132 if ("element".equals(codeString)) 133 return ExtensionContextType.ELEMENT; 134 if ("extension".equals(codeString)) 135 return ExtensionContextType.EXTENSION; 136 throw new IllegalArgumentException("Unknown ExtensionContextType code '"+codeString+"'"); 137 } 138 public Enumeration<ExtensionContextType> fromType(Base code) throws FHIRException { 139 if (code == null) 140 return null; 141 if (code.isEmpty()) 142 return new Enumeration<ExtensionContextType>(this); 143 String codeString = ((PrimitiveType) code).asStringValue(); 144 if (codeString == null || "".equals(codeString)) 145 return null; 146 if ("fhirpath".equals(codeString)) 147 return new Enumeration<ExtensionContextType>(this, ExtensionContextType.FHIRPATH); 148 if ("element".equals(codeString)) 149 return new Enumeration<ExtensionContextType>(this, ExtensionContextType.ELEMENT); 150 if ("extension".equals(codeString)) 151 return new Enumeration<ExtensionContextType>(this, ExtensionContextType.EXTENSION); 152 throw new FHIRException("Unknown ExtensionContextType code '"+codeString+"'"); 153 } 154 public String toCode(ExtensionContextType code) { 155 if (code == ExtensionContextType.FHIRPATH) 156 return "fhirpath"; 157 if (code == ExtensionContextType.ELEMENT) 158 return "element"; 159 if (code == ExtensionContextType.EXTENSION) 160 return "extension"; 161 return "?"; 162 } 163 public String toSystem(ExtensionContextType code) { 164 return code.getSystem(); 165 } 166 } 167 168 public enum StructureDefinitionKind { 169 /** 170 * A primitive type that has a value and an extension. These can be used throughout complex datatype, Resource and extension definitions. Only the base specification can define primitive types. 171 */ 172 PRIMITIVETYPE, 173 /** 174 * A complex structure that defines a set of data elements that is suitable for use in 'resources'. The base specification defines a number of complex types, and other specifications can define additional types. These structures do not have a maintained identity. 175 */ 176 COMPLEXTYPE, 177 /** 178 * A 'resource' - a directed acyclic graph of elements that aggregrates other types into an identifiable entity. The base FHIR resources are defined by the FHIR specification itself but other 'resources' can be defined in additional specifications (though these will not be recognised as 'resources' by the FHIR specification; i.e. they do not get end-points etc, or act as the targets of references in FHIR defined resources - though other specifications can treat them this way). 179 */ 180 RESOURCE, 181 /** 182 * A pattern or a template that is not intended to be a real resource or complex type. 183 */ 184 LOGICAL, 185 /** 186 * added to help the parsers with the generic types 187 */ 188 NULL; 189 public static StructureDefinitionKind fromCode(String codeString) throws FHIRException { 190 if (codeString == null || "".equals(codeString)) 191 return null; 192 if ("primitive-type".equals(codeString)) 193 return PRIMITIVETYPE; 194 if ("complex-type".equals(codeString)) 195 return COMPLEXTYPE; 196 if ("resource".equals(codeString)) 197 return RESOURCE; 198 if ("logical".equals(codeString)) 199 return LOGICAL; 200 if (Configuration.isAcceptInvalidEnums()) 201 return null; 202 else 203 throw new FHIRException("Unknown StructureDefinitionKind code '"+codeString+"'"); 204 } 205 public String toCode() { 206 switch (this) { 207 case PRIMITIVETYPE: return "primitive-type"; 208 case COMPLEXTYPE: return "complex-type"; 209 case RESOURCE: return "resource"; 210 case LOGICAL: return "logical"; 211 case NULL: return null; 212 default: return "?"; 213 } 214 } 215 public String getSystem() { 216 switch (this) { 217 case PRIMITIVETYPE: return "http://hl7.org/fhir/structure-definition-kind"; 218 case COMPLEXTYPE: return "http://hl7.org/fhir/structure-definition-kind"; 219 case RESOURCE: return "http://hl7.org/fhir/structure-definition-kind"; 220 case LOGICAL: return "http://hl7.org/fhir/structure-definition-kind"; 221 case NULL: return null; 222 default: return "?"; 223 } 224 } 225 public String getDefinition() { 226 switch (this) { 227 case PRIMITIVETYPE: return "A primitive type that has a value and an extension. These can be used throughout complex datatype, Resource and extension definitions. Only the base specification can define primitive types."; 228 case COMPLEXTYPE: return "A complex structure that defines a set of data elements that is suitable for use in 'resources'. The base specification defines a number of complex types, and other specifications can define additional types. These structures do not have a maintained identity."; 229 case RESOURCE: return "A 'resource' - a directed acyclic graph of elements that aggregrates other types into an identifiable entity. The base FHIR resources are defined by the FHIR specification itself but other 'resources' can be defined in additional specifications (though these will not be recognised as 'resources' by the FHIR specification; i.e. they do not get end-points etc, or act as the targets of references in FHIR defined resources - though other specifications can treat them this way)."; 230 case LOGICAL: return "A pattern or a template that is not intended to be a real resource or complex type."; 231 case NULL: return null; 232 default: return "?"; 233 } 234 } 235 public String getDisplay() { 236 switch (this) { 237 case PRIMITIVETYPE: return "Primitive Data Type"; 238 case COMPLEXTYPE: return "Complex Data Type"; 239 case RESOURCE: return "Resource"; 240 case LOGICAL: return "Logical"; 241 case NULL: return null; 242 default: return "?"; 243 } 244 } 245 } 246 247 public static class StructureDefinitionKindEnumFactory implements EnumFactory<StructureDefinitionKind> { 248 public StructureDefinitionKind fromCode(String codeString) throws IllegalArgumentException { 249 if (codeString == null || "".equals(codeString)) 250 if (codeString == null || "".equals(codeString)) 251 return null; 252 if ("primitive-type".equals(codeString)) 253 return StructureDefinitionKind.PRIMITIVETYPE; 254 if ("complex-type".equals(codeString)) 255 return StructureDefinitionKind.COMPLEXTYPE; 256 if ("resource".equals(codeString)) 257 return StructureDefinitionKind.RESOURCE; 258 if ("logical".equals(codeString)) 259 return StructureDefinitionKind.LOGICAL; 260 throw new IllegalArgumentException("Unknown StructureDefinitionKind code '"+codeString+"'"); 261 } 262 public Enumeration<StructureDefinitionKind> fromType(Base code) throws FHIRException { 263 if (code == null) 264 return null; 265 if (code.isEmpty()) 266 return new Enumeration<StructureDefinitionKind>(this); 267 String codeString = ((PrimitiveType) code).asStringValue(); 268 if (codeString == null || "".equals(codeString)) 269 return null; 270 if ("primitive-type".equals(codeString)) 271 return new Enumeration<StructureDefinitionKind>(this, StructureDefinitionKind.PRIMITIVETYPE); 272 if ("complex-type".equals(codeString)) 273 return new Enumeration<StructureDefinitionKind>(this, StructureDefinitionKind.COMPLEXTYPE); 274 if ("resource".equals(codeString)) 275 return new Enumeration<StructureDefinitionKind>(this, StructureDefinitionKind.RESOURCE); 276 if ("logical".equals(codeString)) 277 return new Enumeration<StructureDefinitionKind>(this, StructureDefinitionKind.LOGICAL); 278 throw new FHIRException("Unknown StructureDefinitionKind code '"+codeString+"'"); 279 } 280 public String toCode(StructureDefinitionKind code) { 281 if (code == StructureDefinitionKind.PRIMITIVETYPE) 282 return "primitive-type"; 283 if (code == StructureDefinitionKind.COMPLEXTYPE) 284 return "complex-type"; 285 if (code == StructureDefinitionKind.RESOURCE) 286 return "resource"; 287 if (code == StructureDefinitionKind.LOGICAL) 288 return "logical"; 289 return "?"; 290 } 291 public String toSystem(StructureDefinitionKind code) { 292 return code.getSystem(); 293 } 294 } 295 296 public enum TypeDerivationRule { 297 /** 298 * This definition defines a new type that adds additional elements and optionally additional rules to the base type. 299 */ 300 SPECIALIZATION, 301 /** 302 * This definition adds additional rules to an existing concrete type. 303 */ 304 CONSTRAINT, 305 /** 306 * added to help the parsers with the generic types 307 */ 308 NULL; 309 public static TypeDerivationRule fromCode(String codeString) throws FHIRException { 310 if (codeString == null || "".equals(codeString)) 311 return null; 312 if ("specialization".equals(codeString)) 313 return SPECIALIZATION; 314 if ("constraint".equals(codeString)) 315 return CONSTRAINT; 316 if (Configuration.isAcceptInvalidEnums()) 317 return null; 318 else 319 throw new FHIRException("Unknown TypeDerivationRule code '"+codeString+"'"); 320 } 321 public String toCode() { 322 switch (this) { 323 case SPECIALIZATION: return "specialization"; 324 case CONSTRAINT: return "constraint"; 325 case NULL: return null; 326 default: return "?"; 327 } 328 } 329 public String getSystem() { 330 switch (this) { 331 case SPECIALIZATION: return "http://hl7.org/fhir/type-derivation-rule"; 332 case CONSTRAINT: return "http://hl7.org/fhir/type-derivation-rule"; 333 case NULL: return null; 334 default: return "?"; 335 } 336 } 337 public String getDefinition() { 338 switch (this) { 339 case SPECIALIZATION: return "This definition defines a new type that adds additional elements and optionally additional rules to the base type."; 340 case CONSTRAINT: return "This definition adds additional rules to an existing concrete type."; 341 case NULL: return null; 342 default: return "?"; 343 } 344 } 345 public String getDisplay() { 346 switch (this) { 347 case SPECIALIZATION: return "Specialization"; 348 case CONSTRAINT: return "Constraint"; 349 case NULL: return null; 350 default: return "?"; 351 } 352 } 353 } 354 355 public static class TypeDerivationRuleEnumFactory implements EnumFactory<TypeDerivationRule> { 356 public TypeDerivationRule fromCode(String codeString) throws IllegalArgumentException { 357 if (codeString == null || "".equals(codeString)) 358 if (codeString == null || "".equals(codeString)) 359 return null; 360 if ("specialization".equals(codeString)) 361 return TypeDerivationRule.SPECIALIZATION; 362 if ("constraint".equals(codeString)) 363 return TypeDerivationRule.CONSTRAINT; 364 throw new IllegalArgumentException("Unknown TypeDerivationRule code '"+codeString+"'"); 365 } 366 public Enumeration<TypeDerivationRule> fromType(Base code) throws FHIRException { 367 if (code == null) 368 return null; 369 if (code.isEmpty()) 370 return new Enumeration<TypeDerivationRule>(this); 371 String codeString = ((PrimitiveType) code).asStringValue(); 372 if (codeString == null || "".equals(codeString)) 373 return null; 374 if ("specialization".equals(codeString)) 375 return new Enumeration<TypeDerivationRule>(this, TypeDerivationRule.SPECIALIZATION); 376 if ("constraint".equals(codeString)) 377 return new Enumeration<TypeDerivationRule>(this, TypeDerivationRule.CONSTRAINT); 378 throw new FHIRException("Unknown TypeDerivationRule code '"+codeString+"'"); 379 } 380 public String toCode(TypeDerivationRule code) { 381 if (code == TypeDerivationRule.SPECIALIZATION) 382 return "specialization"; 383 if (code == TypeDerivationRule.CONSTRAINT) 384 return "constraint"; 385 return "?"; 386 } 387 public String toSystem(TypeDerivationRule code) { 388 return code.getSystem(); 389 } 390 } 391 392 @Block() 393 public static class StructureDefinitionMappingComponent extends BackboneElement implements IBaseBackboneElement { 394 /** 395 * An Internal id that is used to identify this mapping set when specific mappings are made. 396 */ 397 @Child(name = "identity", type = {IdType.class}, order=1, min=1, max=1, modifier=false, summary=false) 398 @Description(shortDefinition="Internal id when this mapping is used", formalDefinition="An Internal id that is used to identify this mapping set when specific mappings are made." ) 399 protected IdType identity; 400 401 /** 402 * An absolute URI that identifies the specification that this mapping is expressed to. 403 */ 404 @Child(name = "uri", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=false) 405 @Description(shortDefinition="Identifies what this mapping refers to", formalDefinition="An absolute URI that identifies the specification that this mapping is expressed to." ) 406 protected UriType uri; 407 408 /** 409 * A name for the specification that is being mapped to. 410 */ 411 @Child(name = "name", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) 412 @Description(shortDefinition="Names what this mapping refers to", formalDefinition="A name for the specification that is being mapped to." ) 413 protected StringType name; 414 415 /** 416 * Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage. 417 */ 418 @Child(name = "comment", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) 419 @Description(shortDefinition="Versions, Issues, Scope limitations etc.", formalDefinition="Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage." ) 420 protected StringType comment; 421 422 private static final long serialVersionUID = 9610265L; 423 424 /** 425 * Constructor 426 */ 427 public StructureDefinitionMappingComponent() { 428 super(); 429 } 430 431 /** 432 * Constructor 433 */ 434 public StructureDefinitionMappingComponent(String identity) { 435 super(); 436 this.setIdentity(identity); 437 } 438 439 /** 440 * @return {@link #identity} (An Internal id that is used to identify this mapping set when specific mappings are made.). This is the underlying object with id, value and extensions. The accessor "getIdentity" gives direct access to the value 441 */ 442 public IdType getIdentityElement() { 443 if (this.identity == null) 444 if (Configuration.errorOnAutoCreate()) 445 throw new Error("Attempt to auto-create StructureDefinitionMappingComponent.identity"); 446 else if (Configuration.doAutoCreate()) 447 this.identity = new IdType(); // bb 448 return this.identity; 449 } 450 451 public boolean hasIdentityElement() { 452 return this.identity != null && !this.identity.isEmpty(); 453 } 454 455 public boolean hasIdentity() { 456 return this.identity != null && !this.identity.isEmpty(); 457 } 458 459 /** 460 * @param value {@link #identity} (An Internal id that is used to identify this mapping set when specific mappings are made.). This is the underlying object with id, value and extensions. The accessor "getIdentity" gives direct access to the value 461 */ 462 public StructureDefinitionMappingComponent setIdentityElement(IdType value) { 463 this.identity = value; 464 return this; 465 } 466 467 /** 468 * @return An Internal id that is used to identify this mapping set when specific mappings are made. 469 */ 470 public String getIdentity() { 471 return this.identity == null ? null : this.identity.getValue(); 472 } 473 474 /** 475 * @param value An Internal id that is used to identify this mapping set when specific mappings are made. 476 */ 477 public StructureDefinitionMappingComponent setIdentity(String value) { 478 if (this.identity == null) 479 this.identity = new IdType(); 480 this.identity.setValue(value); 481 return this; 482 } 483 484 /** 485 * @return {@link #uri} (An absolute URI that identifies the specification that this mapping is expressed to.). This is the underlying object with id, value and extensions. The accessor "getUri" gives direct access to the value 486 */ 487 public UriType getUriElement() { 488 if (this.uri == null) 489 if (Configuration.errorOnAutoCreate()) 490 throw new Error("Attempt to auto-create StructureDefinitionMappingComponent.uri"); 491 else if (Configuration.doAutoCreate()) 492 this.uri = new UriType(); // bb 493 return this.uri; 494 } 495 496 public boolean hasUriElement() { 497 return this.uri != null && !this.uri.isEmpty(); 498 } 499 500 public boolean hasUri() { 501 return this.uri != null && !this.uri.isEmpty(); 502 } 503 504 /** 505 * @param value {@link #uri} (An absolute URI that identifies the specification that this mapping is expressed to.). This is the underlying object with id, value and extensions. The accessor "getUri" gives direct access to the value 506 */ 507 public StructureDefinitionMappingComponent setUriElement(UriType value) { 508 this.uri = value; 509 return this; 510 } 511 512 /** 513 * @return An absolute URI that identifies the specification that this mapping is expressed to. 514 */ 515 public String getUri() { 516 return this.uri == null ? null : this.uri.getValue(); 517 } 518 519 /** 520 * @param value An absolute URI that identifies the specification that this mapping is expressed to. 521 */ 522 public StructureDefinitionMappingComponent setUri(String value) { 523 if (Utilities.noString(value)) 524 this.uri = null; 525 else { 526 if (this.uri == null) 527 this.uri = new UriType(); 528 this.uri.setValue(value); 529 } 530 return this; 531 } 532 533 /** 534 * @return {@link #name} (A name for the specification that is being mapped to.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 535 */ 536 public StringType getNameElement() { 537 if (this.name == null) 538 if (Configuration.errorOnAutoCreate()) 539 throw new Error("Attempt to auto-create StructureDefinitionMappingComponent.name"); 540 else if (Configuration.doAutoCreate()) 541 this.name = new StringType(); // bb 542 return this.name; 543 } 544 545 public boolean hasNameElement() { 546 return this.name != null && !this.name.isEmpty(); 547 } 548 549 public boolean hasName() { 550 return this.name != null && !this.name.isEmpty(); 551 } 552 553 /** 554 * @param value {@link #name} (A name for the specification that is being mapped to.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value 555 */ 556 public StructureDefinitionMappingComponent setNameElement(StringType value) { 557 this.name = value; 558 return this; 559 } 560 561 /** 562 * @return A name for the specification that is being mapped to. 563 */ 564 public String getName() { 565 return this.name == null ? null : this.name.getValue(); 566 } 567 568 /** 569 * @param value A name for the specification that is being mapped to. 570 */ 571 public StructureDefinitionMappingComponent setName(String value) { 572 if (Utilities.noString(value)) 573 this.name = null; 574 else { 575 if (this.name == null) 576 this.name = new StringType(); 577 this.name.setValue(value); 578 } 579 return this; 580 } 581 582 /** 583 * @return {@link #comment} (Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage.). This is the underlying object with id, value and extensions. The accessor "getComment" gives direct access to the value 584 */ 585 public StringType getCommentElement() { 586 if (this.comment == null) 587 if (Configuration.errorOnAutoCreate()) 588 throw new Error("Attempt to auto-create StructureDefinitionMappingComponent.comment"); 589 else if (Configuration.doAutoCreate()) 590 this.comment = new StringType(); // bb 591 return this.comment; 592 } 593 594 public boolean hasCommentElement() { 595 return this.comment != null && !this.comment.isEmpty(); 596 } 597 598 public boolean hasComment() { 599 return this.comment != null && !this.comment.isEmpty(); 600 } 601 602 /** 603 * @param value {@link #comment} (Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage.). This is the underlying object with id, value and extensions. The accessor "getComment" gives direct access to the value 604 */ 605 public StructureDefinitionMappingComponent setCommentElement(StringType value) { 606 this.comment = value; 607 return this; 608 } 609 610 /** 611 * @return Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage. 612 */ 613 public String getComment() { 614 return this.comment == null ? null : this.comment.getValue(); 615 } 616 617 /** 618 * @param value Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage. 619 */ 620 public StructureDefinitionMappingComponent setComment(String value) { 621 if (Utilities.noString(value)) 622 this.comment = null; 623 else { 624 if (this.comment == null) 625 this.comment = new StringType(); 626 this.comment.setValue(value); 627 } 628 return this; 629 } 630 631 protected void listChildren(List<Property> children) { 632 super.listChildren(children); 633 children.add(new Property("identity", "id", "An Internal id that is used to identify this mapping set when specific mappings are made.", 0, 1, identity)); 634 children.add(new Property("uri", "uri", "An absolute URI that identifies the specification that this mapping is expressed to.", 0, 1, uri)); 635 children.add(new Property("name", "string", "A name for the specification that is being mapped to.", 0, 1, name)); 636 children.add(new Property("comment", "string", "Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage.", 0, 1, comment)); 637 } 638 639 @Override 640 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 641 switch (_hash) { 642 case -135761730: /*identity*/ return new Property("identity", "id", "An Internal id that is used to identify this mapping set when specific mappings are made.", 0, 1, identity); 643 case 116076: /*uri*/ return new Property("uri", "uri", "An absolute URI that identifies the specification that this mapping is expressed to.", 0, 1, uri); 644 case 3373707: /*name*/ return new Property("name", "string", "A name for the specification that is being mapped to.", 0, 1, name); 645 case 950398559: /*comment*/ return new Property("comment", "string", "Comments about this mapping, including version notes, issues, scope limitations, and other important notes for usage.", 0, 1, comment); 646 default: return super.getNamedProperty(_hash, _name, _checkValid); 647 } 648 649 } 650 651 @Override 652 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 653 switch (hash) { 654 case -135761730: /*identity*/ return this.identity == null ? new Base[0] : new Base[] {this.identity}; // IdType 655 case 116076: /*uri*/ return this.uri == null ? new Base[0] : new Base[] {this.uri}; // UriType 656 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 657 case 950398559: /*comment*/ return this.comment == null ? new Base[0] : new Base[] {this.comment}; // StringType 658 default: return super.getProperty(hash, name, checkValid); 659 } 660 661 } 662 663 @Override 664 public Base setProperty(int hash, String name, Base value) throws FHIRException { 665 switch (hash) { 666 case -135761730: // identity 667 this.identity = TypeConvertor.castToId(value); // IdType 668 return value; 669 case 116076: // uri 670 this.uri = TypeConvertor.castToUri(value); // UriType 671 return value; 672 case 3373707: // name 673 this.name = TypeConvertor.castToString(value); // StringType 674 return value; 675 case 950398559: // comment 676 this.comment = TypeConvertor.castToString(value); // StringType 677 return value; 678 default: return super.setProperty(hash, name, value); 679 } 680 681 } 682 683 @Override 684 public Base setProperty(String name, Base value) throws FHIRException { 685 if (name.equals("identity")) { 686 this.identity = TypeConvertor.castToId(value); // IdType 687 } else if (name.equals("uri")) { 688 this.uri = TypeConvertor.castToUri(value); // UriType 689 } else if (name.equals("name")) { 690 this.name = TypeConvertor.castToString(value); // StringType 691 } else if (name.equals("comment")) { 692 this.comment = TypeConvertor.castToString(value); // StringType 693 } else 694 return super.setProperty(name, value); 695 return value; 696 } 697 698 @Override 699 public Base makeProperty(int hash, String name) throws FHIRException { 700 switch (hash) { 701 case -135761730: return getIdentityElement(); 702 case 116076: return getUriElement(); 703 case 3373707: return getNameElement(); 704 case 950398559: return getCommentElement(); 705 default: return super.makeProperty(hash, name); 706 } 707 708 } 709 710 @Override 711 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 712 switch (hash) { 713 case -135761730: /*identity*/ return new String[] {"id"}; 714 case 116076: /*uri*/ return new String[] {"uri"}; 715 case 3373707: /*name*/ return new String[] {"string"}; 716 case 950398559: /*comment*/ return new String[] {"string"}; 717 default: return super.getTypesForProperty(hash, name); 718 } 719 720 } 721 722 @Override 723 public Base addChild(String name) throws FHIRException { 724 if (name.equals("identity")) { 725 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.mapping.identity"); 726 } 727 else if (name.equals("uri")) { 728 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.mapping.uri"); 729 } 730 else if (name.equals("name")) { 731 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.mapping.name"); 732 } 733 else if (name.equals("comment")) { 734 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.mapping.comment"); 735 } 736 else 737 return super.addChild(name); 738 } 739 740 public StructureDefinitionMappingComponent copy() { 741 StructureDefinitionMappingComponent dst = new StructureDefinitionMappingComponent(); 742 copyValues(dst); 743 return dst; 744 } 745 746 public void copyValues(StructureDefinitionMappingComponent dst) { 747 super.copyValues(dst); 748 dst.identity = identity == null ? null : identity.copy(); 749 dst.uri = uri == null ? null : uri.copy(); 750 dst.name = name == null ? null : name.copy(); 751 dst.comment = comment == null ? null : comment.copy(); 752 } 753 754 @Override 755 public boolean equalsDeep(Base other_) { 756 if (!super.equalsDeep(other_)) 757 return false; 758 if (!(other_ instanceof StructureDefinitionMappingComponent)) 759 return false; 760 StructureDefinitionMappingComponent o = (StructureDefinitionMappingComponent) other_; 761 return compareDeep(identity, o.identity, true) && compareDeep(uri, o.uri, true) && compareDeep(name, o.name, true) 762 && compareDeep(comment, o.comment, true); 763 } 764 765 @Override 766 public boolean equalsShallow(Base other_) { 767 if (!super.equalsShallow(other_)) 768 return false; 769 if (!(other_ instanceof StructureDefinitionMappingComponent)) 770 return false; 771 StructureDefinitionMappingComponent o = (StructureDefinitionMappingComponent) other_; 772 return compareValues(identity, o.identity, true) && compareValues(uri, o.uri, true) && compareValues(name, o.name, true) 773 && compareValues(comment, o.comment, true); 774 } 775 776 public boolean isEmpty() { 777 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identity, uri, name, comment 778 ); 779 } 780 781 public String fhirType() { 782 return "StructureDefinition.mapping"; 783 784 } 785 786 } 787 788 @Block() 789 public static class StructureDefinitionContextComponent extends BackboneElement implements IBaseBackboneElement { 790 /** 791 * Defines how to interpret the expression that defines what the context of the extension is. 792 */ 793 @Child(name = "type", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 794 @Description(shortDefinition="fhirpath | element | extension", formalDefinition="Defines how to interpret the expression that defines what the context of the extension is." ) 795 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/extension-context-type") 796 protected Enumeration<ExtensionContextType> type; 797 798 /** 799 * An expression that defines where an extension can be used in resources. 800 */ 801 @Child(name = "expression", type = {StringType.class}, order=2, min=1, max=1, modifier=false, summary=true) 802 @Description(shortDefinition="Where the extension can be used in instances", formalDefinition="An expression that defines where an extension can be used in resources." ) 803 protected StringType expression; 804 805 private static final long serialVersionUID = 1958074856L; 806 807 /** 808 * Constructor 809 */ 810 public StructureDefinitionContextComponent() { 811 super(); 812 } 813 814 /** 815 * Constructor 816 */ 817 public StructureDefinitionContextComponent(ExtensionContextType type, String expression) { 818 super(); 819 this.setType(type); 820 this.setExpression(expression); 821 } 822 823 /** 824 * @return {@link #type} (Defines how to interpret the expression that defines what the context of the extension is.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 825 */ 826 public Enumeration<ExtensionContextType> getTypeElement() { 827 if (this.type == null) 828 if (Configuration.errorOnAutoCreate()) 829 throw new Error("Attempt to auto-create StructureDefinitionContextComponent.type"); 830 else if (Configuration.doAutoCreate()) 831 this.type = new Enumeration<ExtensionContextType>(new ExtensionContextTypeEnumFactory()); // bb 832 return this.type; 833 } 834 835 public boolean hasTypeElement() { 836 return this.type != null && !this.type.isEmpty(); 837 } 838 839 public boolean hasType() { 840 return this.type != null && !this.type.isEmpty(); 841 } 842 843 /** 844 * @param value {@link #type} (Defines how to interpret the expression that defines what the context of the extension is.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 845 */ 846 public StructureDefinitionContextComponent setTypeElement(Enumeration<ExtensionContextType> value) { 847 this.type = value; 848 return this; 849 } 850 851 /** 852 * @return Defines how to interpret the expression that defines what the context of the extension is. 853 */ 854 public ExtensionContextType getType() { 855 return this.type == null ? null : this.type.getValue(); 856 } 857 858 /** 859 * @param value Defines how to interpret the expression that defines what the context of the extension is. 860 */ 861 public StructureDefinitionContextComponent setType(ExtensionContextType value) { 862 if (this.type == null) 863 this.type = new Enumeration<ExtensionContextType>(new ExtensionContextTypeEnumFactory()); 864 this.type.setValue(value); 865 return this; 866 } 867 868 /** 869 * @return {@link #expression} (An expression that defines where an extension can be used in resources.). This is the underlying object with id, value and extensions. The accessor "getExpression" gives direct access to the value 870 */ 871 public StringType getExpressionElement() { 872 if (this.expression == null) 873 if (Configuration.errorOnAutoCreate()) 874 throw new Error("Attempt to auto-create StructureDefinitionContextComponent.expression"); 875 else if (Configuration.doAutoCreate()) 876 this.expression = new StringType(); // bb 877 return this.expression; 878 } 879 880 public boolean hasExpressionElement() { 881 return this.expression != null && !this.expression.isEmpty(); 882 } 883 884 public boolean hasExpression() { 885 return this.expression != null && !this.expression.isEmpty(); 886 } 887 888 /** 889 * @param value {@link #expression} (An expression that defines where an extension can be used in resources.). This is the underlying object with id, value and extensions. The accessor "getExpression" gives direct access to the value 890 */ 891 public StructureDefinitionContextComponent setExpressionElement(StringType value) { 892 this.expression = value; 893 return this; 894 } 895 896 /** 897 * @return An expression that defines where an extension can be used in resources. 898 */ 899 public String getExpression() { 900 return this.expression == null ? null : this.expression.getValue(); 901 } 902 903 /** 904 * @param value An expression that defines where an extension can be used in resources. 905 */ 906 public StructureDefinitionContextComponent setExpression(String value) { 907 if (this.expression == null) 908 this.expression = new StringType(); 909 this.expression.setValue(value); 910 return this; 911 } 912 913 protected void listChildren(List<Property> children) { 914 super.listChildren(children); 915 children.add(new Property("type", "code", "Defines how to interpret the expression that defines what the context of the extension is.", 0, 1, type)); 916 children.add(new Property("expression", "string", "An expression that defines where an extension can be used in resources.", 0, 1, expression)); 917 } 918 919 @Override 920 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 921 switch (_hash) { 922 case 3575610: /*type*/ return new Property("type", "code", "Defines how to interpret the expression that defines what the context of the extension is.", 0, 1, type); 923 case -1795452264: /*expression*/ return new Property("expression", "string", "An expression that defines where an extension can be used in resources.", 0, 1, expression); 924 default: return super.getNamedProperty(_hash, _name, _checkValid); 925 } 926 927 } 928 929 @Override 930 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 931 switch (hash) { 932 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Enumeration<ExtensionContextType> 933 case -1795452264: /*expression*/ return this.expression == null ? new Base[0] : new Base[] {this.expression}; // StringType 934 default: return super.getProperty(hash, name, checkValid); 935 } 936 937 } 938 939 @Override 940 public Base setProperty(int hash, String name, Base value) throws FHIRException { 941 switch (hash) { 942 case 3575610: // type 943 value = new ExtensionContextTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); 944 this.type = (Enumeration) value; // Enumeration<ExtensionContextType> 945 return value; 946 case -1795452264: // expression 947 this.expression = TypeConvertor.castToString(value); // StringType 948 return value; 949 default: return super.setProperty(hash, name, value); 950 } 951 952 } 953 954 @Override 955 public Base setProperty(String name, Base value) throws FHIRException { 956 if (name.equals("type")) { 957 value = new ExtensionContextTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); 958 this.type = (Enumeration) value; // Enumeration<ExtensionContextType> 959 } else if (name.equals("expression")) { 960 this.expression = TypeConvertor.castToString(value); // StringType 961 } else 962 return super.setProperty(name, value); 963 return value; 964 } 965 966 @Override 967 public Base makeProperty(int hash, String name) throws FHIRException { 968 switch (hash) { 969 case 3575610: return getTypeElement(); 970 case -1795452264: return getExpressionElement(); 971 default: return super.makeProperty(hash, name); 972 } 973 974 } 975 976 @Override 977 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 978 switch (hash) { 979 case 3575610: /*type*/ return new String[] {"code"}; 980 case -1795452264: /*expression*/ return new String[] {"string"}; 981 default: return super.getTypesForProperty(hash, name); 982 } 983 984 } 985 986 @Override 987 public Base addChild(String name) throws FHIRException { 988 if (name.equals("type")) { 989 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.context.type"); 990 } 991 else if (name.equals("expression")) { 992 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.context.expression"); 993 } 994 else 995 return super.addChild(name); 996 } 997 998 public StructureDefinitionContextComponent copy() { 999 StructureDefinitionContextComponent dst = new StructureDefinitionContextComponent(); 1000 copyValues(dst); 1001 return dst; 1002 } 1003 1004 public void copyValues(StructureDefinitionContextComponent dst) { 1005 super.copyValues(dst); 1006 dst.type = type == null ? null : type.copy(); 1007 dst.expression = expression == null ? null : expression.copy(); 1008 } 1009 1010 @Override 1011 public boolean equalsDeep(Base other_) { 1012 if (!super.equalsDeep(other_)) 1013 return false; 1014 if (!(other_ instanceof StructureDefinitionContextComponent)) 1015 return false; 1016 StructureDefinitionContextComponent o = (StructureDefinitionContextComponent) other_; 1017 return compareDeep(type, o.type, true) && compareDeep(expression, o.expression, true); 1018 } 1019 1020 @Override 1021 public boolean equalsShallow(Base other_) { 1022 if (!super.equalsShallow(other_)) 1023 return false; 1024 if (!(other_ instanceof StructureDefinitionContextComponent)) 1025 return false; 1026 StructureDefinitionContextComponent o = (StructureDefinitionContextComponent) other_; 1027 return compareValues(type, o.type, true) && compareValues(expression, o.expression, true); 1028 } 1029 1030 public boolean isEmpty() { 1031 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, expression); 1032 } 1033 1034 public String fhirType() { 1035 return "StructureDefinition.context"; 1036 1037 } 1038 1039 } 1040 1041 @Block() 1042 public static class StructureDefinitionSnapshotComponent extends BackboneElement implements IBaseBackboneElement { 1043 /** 1044 * Captures constraints on each element within the resource. 1045 */ 1046 @Child(name = "element", type = {ElementDefinition.class}, order=1, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1047 @Description(shortDefinition="Definition of elements in the resource (if no StructureDefinition)", formalDefinition="Captures constraints on each element within the resource." ) 1048 protected List<ElementDefinition> element; 1049 1050 private static final long serialVersionUID = 53896641L; 1051 1052 /** 1053 * Constructor 1054 */ 1055 public StructureDefinitionSnapshotComponent() { 1056 super(); 1057 } 1058 1059 /** 1060 * Constructor 1061 */ 1062 public StructureDefinitionSnapshotComponent(ElementDefinition element) { 1063 super(); 1064 this.addElement(element); 1065 } 1066 1067 /** 1068 * @return {@link #element} (Captures constraints on each element within the resource.) 1069 */ 1070 public List<ElementDefinition> getElement() { 1071 if (this.element == null) 1072 this.element = new ArrayList<ElementDefinition>(); 1073 return this.element; 1074 } 1075 1076 /** 1077 * @return Returns a reference to <code>this</code> for easy method chaining 1078 */ 1079 public StructureDefinitionSnapshotComponent setElement(List<ElementDefinition> theElement) { 1080 this.element = theElement; 1081 return this; 1082 } 1083 1084 public boolean hasElement() { 1085 if (this.element == null) 1086 return false; 1087 for (ElementDefinition item : this.element) 1088 if (!item.isEmpty()) 1089 return true; 1090 return false; 1091 } 1092 1093 public ElementDefinition addElement() { //3 1094 ElementDefinition t = new ElementDefinition(); 1095 if (this.element == null) 1096 this.element = new ArrayList<ElementDefinition>(); 1097 this.element.add(t); 1098 return t; 1099 } 1100 1101 public StructureDefinitionSnapshotComponent addElement(ElementDefinition t) { //3 1102 if (t == null) 1103 return this; 1104 if (this.element == null) 1105 this.element = new ArrayList<ElementDefinition>(); 1106 this.element.add(t); 1107 return this; 1108 } 1109 1110 /** 1111 * @return The first repetition of repeating field {@link #element}, creating it if it does not already exist {3} 1112 */ 1113 public ElementDefinition getElementFirstRep() { 1114 if (getElement().isEmpty()) { 1115 addElement(); 1116 } 1117 return getElement().get(0); 1118 } 1119 1120 protected void listChildren(List<Property> children) { 1121 super.listChildren(children); 1122 children.add(new Property("element", "ElementDefinition", "Captures constraints on each element within the resource.", 0, java.lang.Integer.MAX_VALUE, element)); 1123 } 1124 1125 @Override 1126 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1127 switch (_hash) { 1128 case -1662836996: /*element*/ return new Property("element", "ElementDefinition", "Captures constraints on each element within the resource.", 0, java.lang.Integer.MAX_VALUE, element); 1129 default: return super.getNamedProperty(_hash, _name, _checkValid); 1130 } 1131 1132 } 1133 1134 @Override 1135 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1136 switch (hash) { 1137 case -1662836996: /*element*/ return this.element == null ? new Base[0] : this.element.toArray(new Base[this.element.size()]); // ElementDefinition 1138 default: return super.getProperty(hash, name, checkValid); 1139 } 1140 1141 } 1142 1143 @Override 1144 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1145 switch (hash) { 1146 case -1662836996: // element 1147 this.getElement().add(TypeConvertor.castToElementDefinition(value)); // ElementDefinition 1148 return value; 1149 default: return super.setProperty(hash, name, value); 1150 } 1151 1152 } 1153 1154 @Override 1155 public Base setProperty(String name, Base value) throws FHIRException { 1156 if (name.equals("element")) { 1157 this.getElement().add(TypeConvertor.castToElementDefinition(value)); 1158 } else 1159 return super.setProperty(name, value); 1160 return value; 1161 } 1162 1163 @Override 1164 public Base makeProperty(int hash, String name) throws FHIRException { 1165 switch (hash) { 1166 case -1662836996: return addElement(); 1167 default: return super.makeProperty(hash, name); 1168 } 1169 1170 } 1171 1172 @Override 1173 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1174 switch (hash) { 1175 case -1662836996: /*element*/ return new String[] {"ElementDefinition"}; 1176 default: return super.getTypesForProperty(hash, name); 1177 } 1178 1179 } 1180 1181 @Override 1182 public Base addChild(String name) throws FHIRException { 1183 if (name.equals("element")) { 1184 return addElement(); 1185 } 1186 else 1187 return super.addChild(name); 1188 } 1189 1190 public StructureDefinitionSnapshotComponent copy() { 1191 StructureDefinitionSnapshotComponent dst = new StructureDefinitionSnapshotComponent(); 1192 copyValues(dst); 1193 return dst; 1194 } 1195 1196 public void copyValues(StructureDefinitionSnapshotComponent dst) { 1197 super.copyValues(dst); 1198 if (element != null) { 1199 dst.element = new ArrayList<ElementDefinition>(); 1200 for (ElementDefinition i : element) 1201 dst.element.add(i.copy()); 1202 }; 1203 } 1204 1205 @Override 1206 public boolean equalsDeep(Base other_) { 1207 if (!super.equalsDeep(other_)) 1208 return false; 1209 if (!(other_ instanceof StructureDefinitionSnapshotComponent)) 1210 return false; 1211 StructureDefinitionSnapshotComponent o = (StructureDefinitionSnapshotComponent) other_; 1212 return compareDeep(element, o.element, true); 1213 } 1214 1215 @Override 1216 public boolean equalsShallow(Base other_) { 1217 if (!super.equalsShallow(other_)) 1218 return false; 1219 if (!(other_ instanceof StructureDefinitionSnapshotComponent)) 1220 return false; 1221 StructureDefinitionSnapshotComponent o = (StructureDefinitionSnapshotComponent) other_; 1222 return true; 1223 } 1224 1225 public boolean isEmpty() { 1226 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(element); 1227 } 1228 1229 public String fhirType() { 1230 return "StructureDefinition.snapshot"; 1231 1232 } 1233 1234 } 1235 1236 @Block() 1237 public static class StructureDefinitionDifferentialComponent extends BackboneElement implements IBaseBackboneElement { 1238 /** 1239 * Captures constraints on each element within the resource. 1240 */ 1241 @Child(name = "element", type = {ElementDefinition.class}, order=1, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1242 @Description(shortDefinition="Definition of elements in the resource (if no StructureDefinition)", formalDefinition="Captures constraints on each element within the resource." ) 1243 protected List<ElementDefinition> element; 1244 1245 private static final long serialVersionUID = 53896641L; 1246 1247 /** 1248 * Constructor 1249 */ 1250 public StructureDefinitionDifferentialComponent() { 1251 super(); 1252 } 1253 1254 /** 1255 * Constructor 1256 */ 1257 public StructureDefinitionDifferentialComponent(ElementDefinition element) { 1258 super(); 1259 this.addElement(element); 1260 } 1261 1262 /** 1263 * @return {@link #element} (Captures constraints on each element within the resource.) 1264 */ 1265 public List<ElementDefinition> getElement() { 1266 if (this.element == null) 1267 this.element = new ArrayList<ElementDefinition>(); 1268 return this.element; 1269 } 1270 1271 /** 1272 * @return Returns a reference to <code>this</code> for easy method chaining 1273 */ 1274 public StructureDefinitionDifferentialComponent setElement(List<ElementDefinition> theElement) { 1275 this.element = theElement; 1276 return this; 1277 } 1278 1279 public boolean hasElement() { 1280 if (this.element == null) 1281 return false; 1282 for (ElementDefinition item : this.element) 1283 if (!item.isEmpty()) 1284 return true; 1285 return false; 1286 } 1287 1288 public ElementDefinition addElement() { //3 1289 ElementDefinition t = new ElementDefinition(); 1290 if (this.element == null) 1291 this.element = new ArrayList<ElementDefinition>(); 1292 this.element.add(t); 1293 return t; 1294 } 1295 1296 public StructureDefinitionDifferentialComponent addElement(ElementDefinition t) { //3 1297 if (t == null) 1298 return this; 1299 if (this.element == null) 1300 this.element = new ArrayList<ElementDefinition>(); 1301 this.element.add(t); 1302 return this; 1303 } 1304 1305 /** 1306 * @return The first repetition of repeating field {@link #element}, creating it if it does not already exist {3} 1307 */ 1308 public ElementDefinition getElementFirstRep() { 1309 if (getElement().isEmpty()) { 1310 addElement(); 1311 } 1312 return getElement().get(0); 1313 } 1314 1315 protected void listChildren(List<Property> children) { 1316 super.listChildren(children); 1317 children.add(new Property("element", "ElementDefinition", "Captures constraints on each element within the resource.", 0, java.lang.Integer.MAX_VALUE, element)); 1318 } 1319 1320 @Override 1321 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1322 switch (_hash) { 1323 case -1662836996: /*element*/ return new Property("element", "ElementDefinition", "Captures constraints on each element within the resource.", 0, java.lang.Integer.MAX_VALUE, element); 1324 default: return super.getNamedProperty(_hash, _name, _checkValid); 1325 } 1326 1327 } 1328 1329 @Override 1330 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1331 switch (hash) { 1332 case -1662836996: /*element*/ return this.element == null ? new Base[0] : this.element.toArray(new Base[this.element.size()]); // ElementDefinition 1333 default: return super.getProperty(hash, name, checkValid); 1334 } 1335 1336 } 1337 1338 @Override 1339 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1340 switch (hash) { 1341 case -1662836996: // element 1342 this.getElement().add(TypeConvertor.castToElementDefinition(value)); // ElementDefinition 1343 return value; 1344 default: return super.setProperty(hash, name, value); 1345 } 1346 1347 } 1348 1349 @Override 1350 public Base setProperty(String name, Base value) throws FHIRException { 1351 if (name.equals("element")) { 1352 this.getElement().add(TypeConvertor.castToElementDefinition(value)); 1353 } else 1354 return super.setProperty(name, value); 1355 return value; 1356 } 1357 1358 @Override 1359 public Base makeProperty(int hash, String name) throws FHIRException { 1360 switch (hash) { 1361 case -1662836996: return addElement(); 1362 default: return super.makeProperty(hash, name); 1363 } 1364 1365 } 1366 1367 @Override 1368 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1369 switch (hash) { 1370 case -1662836996: /*element*/ return new String[] {"ElementDefinition"}; 1371 default: return super.getTypesForProperty(hash, name); 1372 } 1373 1374 } 1375 1376 @Override 1377 public Base addChild(String name) throws FHIRException { 1378 if (name.equals("element")) { 1379 return addElement(); 1380 } 1381 else 1382 return super.addChild(name); 1383 } 1384 1385 public StructureDefinitionDifferentialComponent copy() { 1386 StructureDefinitionDifferentialComponent dst = new StructureDefinitionDifferentialComponent(); 1387 copyValues(dst); 1388 return dst; 1389 } 1390 1391 public void copyValues(StructureDefinitionDifferentialComponent dst) { 1392 super.copyValues(dst); 1393 if (element != null) { 1394 dst.element = new ArrayList<ElementDefinition>(); 1395 for (ElementDefinition i : element) 1396 dst.element.add(i.copy()); 1397 }; 1398 } 1399 1400 @Override 1401 public boolean equalsDeep(Base other_) { 1402 if (!super.equalsDeep(other_)) 1403 return false; 1404 if (!(other_ instanceof StructureDefinitionDifferentialComponent)) 1405 return false; 1406 StructureDefinitionDifferentialComponent o = (StructureDefinitionDifferentialComponent) other_; 1407 return compareDeep(element, o.element, true); 1408 } 1409 1410 @Override 1411 public boolean equalsShallow(Base other_) { 1412 if (!super.equalsShallow(other_)) 1413 return false; 1414 if (!(other_ instanceof StructureDefinitionDifferentialComponent)) 1415 return false; 1416 StructureDefinitionDifferentialComponent o = (StructureDefinitionDifferentialComponent) other_; 1417 return true; 1418 } 1419 1420 public boolean isEmpty() { 1421 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(element); 1422 } 1423 1424 public String fhirType() { 1425 return "StructureDefinition.differential"; 1426 1427 } 1428 1429 } 1430 1431 /** 1432 * An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers. 1433 */ 1434 @Child(name = "url", type = {UriType.class}, order=0, min=1, max=1, modifier=false, summary=true) 1435 @Description(shortDefinition="Canonical identifier for this structure definition, represented as a URI (globally unique)", formalDefinition="An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers." ) 1436 protected UriType url; 1437 1438 /** 1439 * A formal identifier that is used to identify this structure definition when it is represented in other formats, or referenced in a specification, model, design or an instance. 1440 */ 1441 @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1442 @Description(shortDefinition="Additional identifier for the structure definition", formalDefinition="A formal identifier that is used to identify this structure definition when it is represented in other formats, or referenced in a specification, model, design or an instance." ) 1443 protected List<Identifier> identifier; 1444 1445 /** 1446 * The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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. 1447 */ 1448 @Child(name = "version", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) 1449 @Description(shortDefinition="Business version of the structure definition", formalDefinition="The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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." ) 1450 protected StringType version; 1451 1452 /** 1453 * Indicates the mechanism used to compare versions to determine which is more current. 1454 */ 1455 @Child(name = "versionAlgorithm", type = {StringType.class, Coding.class}, order=3, min=0, max=1, modifier=false, summary=true) 1456 @Description(shortDefinition="How to compare versions", formalDefinition="Indicates the mechanism used to compare versions to determine which is more current." ) 1457 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/version-algorithm") 1458 protected DataType versionAlgorithm; 1459 1460 /** 1461 * A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 1462 */ 1463 @Child(name = "name", type = {StringType.class}, order=4, min=1, max=1, modifier=false, summary=true) 1464 @Description(shortDefinition="Name for this structure definition (computer friendly)", formalDefinition="A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation." ) 1465 protected StringType name; 1466 1467 /** 1468 * A short, descriptive, user-friendly title for the structure definition. 1469 */ 1470 @Child(name = "title", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=true) 1471 @Description(shortDefinition="Name for this structure definition (human friendly)", formalDefinition="A short, descriptive, user-friendly title for the structure definition." ) 1472 protected StringType title; 1473 1474 /** 1475 * The status of this structure definition. Enables tracking the life-cycle of the content. 1476 */ 1477 @Child(name = "status", type = {CodeType.class}, order=6, min=1, max=1, modifier=true, summary=true) 1478 @Description(shortDefinition="draft | active | retired | unknown", formalDefinition="The status of this structure definition. Enables tracking the life-cycle of the content." ) 1479 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") 1480 protected Enumeration<PublicationStatus> status; 1481 1482 /** 1483 * A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. 1484 */ 1485 @Child(name = "experimental", type = {BooleanType.class}, order=7, min=0, max=1, modifier=false, summary=true) 1486 @Description(shortDefinition="For testing purposes, not real usage", formalDefinition="A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage." ) 1487 protected BooleanType experimental; 1488 1489 /** 1490 * The date (and optionally time) when the structure definition 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 structure definition changes. 1491 */ 1492 @Child(name = "date", type = {DateTimeType.class}, order=8, min=0, max=1, modifier=false, summary=true) 1493 @Description(shortDefinition="Date last changed", formalDefinition="The date (and optionally time) when the structure definition 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 structure definition changes." ) 1494 protected DateTimeType date; 1495 1496 /** 1497 * The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition. 1498 */ 1499 @Child(name = "publisher", type = {StringType.class}, order=9, min=0, max=1, modifier=false, summary=true) 1500 @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 structure definition." ) 1501 protected StringType publisher; 1502 1503 /** 1504 * Contact details to assist a user in finding and communicating with the publisher. 1505 */ 1506 @Child(name = "contact", type = {ContactDetail.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1507 @Description(shortDefinition="Contact details for the publisher", formalDefinition="Contact details to assist a user in finding and communicating with the publisher." ) 1508 protected List<ContactDetail> contact; 1509 1510 /** 1511 * A free text natural language description of the structure definition from a consumer's perspective. 1512 */ 1513 @Child(name = "description", type = {MarkdownType.class}, order=11, min=0, max=1, modifier=false, summary=false) 1514 @Description(shortDefinition="Natural language description of the structure definition", formalDefinition="A free text natural language description of the structure definition from a consumer's perspective." ) 1515 protected MarkdownType description; 1516 1517 /** 1518 * 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 structure definition instances. 1519 */ 1520 @Child(name = "useContext", type = {UsageContext.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1521 @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 structure definition instances." ) 1522 protected List<UsageContext> useContext; 1523 1524 /** 1525 * A legal or geographic region in which the structure definition is intended to be used. 1526 */ 1527 @Child(name = "jurisdiction", type = {CodeableConcept.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1528 @Description(shortDefinition="Intended jurisdiction for structure definition (if applicable)", formalDefinition="A legal or geographic region in which the structure definition is intended to be used." ) 1529 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/jurisdiction") 1530 protected List<CodeableConcept> jurisdiction; 1531 1532 /** 1533 * Explanation of why this structure definition is needed and why it has been designed as it has. 1534 */ 1535 @Child(name = "purpose", type = {MarkdownType.class}, order=14, min=0, max=1, modifier=false, summary=false) 1536 @Description(shortDefinition="Why this structure definition is defined", formalDefinition="Explanation of why this structure definition is needed and why it has been designed as it has." ) 1537 protected MarkdownType purpose; 1538 1539 /** 1540 * A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element. 1541 */ 1542 @Child(name = "copyright", type = {MarkdownType.class}, order=15, min=0, max=1, modifier=false, summary=false) 1543 @Description(shortDefinition="Use and/or publishing restrictions", formalDefinition="A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element." ) 1544 protected MarkdownType copyright; 1545 1546 /** 1547 * 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'). 1548 */ 1549 @Child(name = "copyrightLabel", type = {StringType.class}, order=16, min=0, max=1, modifier=false, summary=false) 1550 @Description(shortDefinition="Copyright holder and year(s)", formalDefinition="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')." ) 1551 protected StringType copyrightLabel; 1552 1553 /** 1554 * (DEPRECATED) A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes. 1555 */ 1556 @Child(name = "keyword", type = {Coding.class}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1557 @Description(shortDefinition="Assist with indexing and finding", formalDefinition="(DEPRECATED) A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes." ) 1558 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/definition-use") 1559 protected List<Coding> keyword; 1560 1561 /** 1562 * The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version. 1563 */ 1564 @Child(name = "fhirVersion", type = {CodeType.class}, order=18, min=0, max=1, modifier=false, summary=true) 1565 @Description(shortDefinition="FHIR Version this StructureDefinition targets", formalDefinition="The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version." ) 1566 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/FHIR-version") 1567 protected Enumeration<FHIRVersion> fhirVersion; 1568 1569 /** 1570 * An external specification that the content is mapped to. 1571 */ 1572 @Child(name = "mapping", type = {}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 1573 @Description(shortDefinition="External specification that the content is mapped to", formalDefinition="An external specification that the content is mapped to." ) 1574 protected List<StructureDefinitionMappingComponent> mapping; 1575 1576 /** 1577 * Defines the kind of structure that this definition is describing. 1578 */ 1579 @Child(name = "kind", type = {CodeType.class}, order=20, min=1, max=1, modifier=false, summary=true) 1580 @Description(shortDefinition="primitive-type | complex-type | resource | logical", formalDefinition="Defines the kind of structure that this definition is describing." ) 1581 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/structure-definition-kind") 1582 protected Enumeration<StructureDefinitionKind> kind; 1583 1584 /** 1585 * Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems. 1586 */ 1587 @Child(name = "abstract", type = {BooleanType.class}, order=21, min=1, max=1, modifier=false, summary=true) 1588 @Description(shortDefinition="Whether the structure is abstract", formalDefinition="Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems." ) 1589 protected BooleanType abstract_; 1590 1591 /** 1592 * Identifies the types of resource or data type elements to which the extension can be applied. 1593 */ 1594 @Child(name = "context", type = {}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1595 @Description(shortDefinition="If an extension, where it can be used in instances", formalDefinition="Identifies the types of resource or data type elements to which the extension can be applied." ) 1596 protected List<StructureDefinitionContextComponent> context; 1597 1598 /** 1599 * A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true. 1600 */ 1601 @Child(name = "contextInvariant", type = {StringType.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 1602 @Description(shortDefinition="FHIRPath invariants - when the extension can be used", formalDefinition="A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true." ) 1603 protected List<StringType> contextInvariant; 1604 1605 /** 1606 * The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. "string" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models. 1607 */ 1608 @Child(name = "type", type = {UriType.class}, order=24, min=1, max=1, modifier=false, summary=true) 1609 @Description(shortDefinition="Type defined or constrained by this structure", formalDefinition="The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. \"string\" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models." ) 1610 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/fhir-types") 1611 protected UriType type; 1612 1613 /** 1614 * An absolute URI that is the base structure from which this type is derived, either by specialization or constraint. 1615 */ 1616 @Child(name = "baseDefinition", type = {CanonicalType.class}, order=25, min=0, max=1, modifier=false, summary=true) 1617 @Description(shortDefinition="Definition that this type is constrained/specialized from", formalDefinition="An absolute URI that is the base structure from which this type is derived, either by specialization or constraint." ) 1618 protected CanonicalType baseDefinition; 1619 1620 /** 1621 * How the type relates to the baseDefinition. 1622 */ 1623 @Child(name = "derivation", type = {CodeType.class}, order=26, min=0, max=1, modifier=false, summary=true) 1624 @Description(shortDefinition="specialization | constraint - How relates to base definition", formalDefinition="How the type relates to the baseDefinition." ) 1625 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/type-derivation-rule") 1626 protected Enumeration<TypeDerivationRule> derivation; 1627 1628 /** 1629 * A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition. 1630 */ 1631 @Child(name = "snapshot", type = {}, order=27, min=0, max=1, modifier=false, summary=false) 1632 @Description(shortDefinition="Snapshot view of the structure", formalDefinition="A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition." ) 1633 protected StructureDefinitionSnapshotComponent snapshot; 1634 1635 /** 1636 * A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies. 1637 */ 1638 @Child(name = "differential", type = {}, order=28, min=0, max=1, modifier=false, summary=false) 1639 @Description(shortDefinition="Differential view of the structure", formalDefinition="A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies." ) 1640 protected StructureDefinitionDifferentialComponent differential; 1641 1642 private static final long serialVersionUID = -1127285723L; 1643 1644 /** 1645 * Constructor 1646 */ 1647 public StructureDefinition() { 1648 super(); 1649 } 1650 1651 /** 1652 * Constructor 1653 */ 1654 public StructureDefinition(String url, String name, PublicationStatus status, StructureDefinitionKind kind, boolean abstract_, String type) { 1655 super(); 1656 this.setUrl(url); 1657 this.setName(name); 1658 this.setStatus(status); 1659 this.setKind(kind); 1660 this.setAbstract(abstract_); 1661 this.setType(type); 1662 } 1663 1664 /** 1665 * @return {@link #url} (An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 1666 */ 1667 public UriType getUrlElement() { 1668 if (this.url == null) 1669 if (Configuration.errorOnAutoCreate()) 1670 throw new Error("Attempt to auto-create StructureDefinition.url"); 1671 else if (Configuration.doAutoCreate()) 1672 this.url = new UriType(); // bb 1673 return this.url; 1674 } 1675 1676 public boolean hasUrlElement() { 1677 return this.url != null && !this.url.isEmpty(); 1678 } 1679 1680 public boolean hasUrl() { 1681 return this.url != null && !this.url.isEmpty(); 1682 } 1683 1684 /** 1685 * @param value {@link #url} (An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 1686 */ 1687 public StructureDefinition setUrlElement(UriType value) { 1688 this.url = value; 1689 return this; 1690 } 1691 1692 /** 1693 * @return An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers. 1694 */ 1695 public String getUrl() { 1696 return this.url == null ? null : this.url.getValue(); 1697 } 1698 1699 /** 1700 * @param value An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers. 1701 */ 1702 public StructureDefinition setUrl(String value) { 1703 if (this.url == null) 1704 this.url = new UriType(); 1705 this.url.setValue(value); 1706 return this; 1707 } 1708 1709 /** 1710 * @return {@link #identifier} (A formal identifier that is used to identify this structure definition when it is represented in other formats, or referenced in a specification, model, design or an instance.) 1711 */ 1712 public List<Identifier> getIdentifier() { 1713 if (this.identifier == null) 1714 this.identifier = new ArrayList<Identifier>(); 1715 return this.identifier; 1716 } 1717 1718 /** 1719 * @return Returns a reference to <code>this</code> for easy method chaining 1720 */ 1721 public StructureDefinition setIdentifier(List<Identifier> theIdentifier) { 1722 this.identifier = theIdentifier; 1723 return this; 1724 } 1725 1726 public boolean hasIdentifier() { 1727 if (this.identifier == null) 1728 return false; 1729 for (Identifier item : this.identifier) 1730 if (!item.isEmpty()) 1731 return true; 1732 return false; 1733 } 1734 1735 public Identifier addIdentifier() { //3 1736 Identifier t = new Identifier(); 1737 if (this.identifier == null) 1738 this.identifier = new ArrayList<Identifier>(); 1739 this.identifier.add(t); 1740 return t; 1741 } 1742 1743 public StructureDefinition addIdentifier(Identifier t) { //3 1744 if (t == null) 1745 return this; 1746 if (this.identifier == null) 1747 this.identifier = new ArrayList<Identifier>(); 1748 this.identifier.add(t); 1749 return this; 1750 } 1751 1752 /** 1753 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 1754 */ 1755 public Identifier getIdentifierFirstRep() { 1756 if (getIdentifier().isEmpty()) { 1757 addIdentifier(); 1758 } 1759 return getIdentifier().get(0); 1760 } 1761 1762 /** 1763 * @return {@link #version} (The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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 the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1764 */ 1765 public StringType getVersionElement() { 1766 if (this.version == null) 1767 if (Configuration.errorOnAutoCreate()) 1768 throw new Error("Attempt to auto-create StructureDefinition.version"); 1769 else if (Configuration.doAutoCreate()) 1770 this.version = new StringType(); // bb 1771 return this.version; 1772 } 1773 1774 public boolean hasVersionElement() { 1775 return this.version != null && !this.version.isEmpty(); 1776 } 1777 1778 public boolean hasVersion() { 1779 return this.version != null && !this.version.isEmpty(); 1780 } 1781 1782 /** 1783 * @param value {@link #version} (The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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 the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value 1784 */ 1785 public StructureDefinition setVersionElement(StringType value) { 1786 this.version = value; 1787 return this; 1788 } 1789 1790 /** 1791 * @return The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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. 1792 */ 1793 public String getVersion() { 1794 return this.version == null ? null : this.version.getValue(); 1795 } 1796 1797 /** 1798 * @param value The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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. 1799 */ 1800 public StructureDefinition setVersion(String value) { 1801 if (Utilities.noString(value)) 1802 this.version = null; 1803 else { 1804 if (this.version == null) 1805 this.version = new StringType(); 1806 this.version.setValue(value); 1807 } 1808 return this; 1809 } 1810 1811 /** 1812 * @return {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 1813 */ 1814 public DataType getVersionAlgorithm() { 1815 return this.versionAlgorithm; 1816 } 1817 1818 /** 1819 * @return {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 1820 */ 1821 public StringType getVersionAlgorithmStringType() throws FHIRException { 1822 if (this.versionAlgorithm == null) 1823 this.versionAlgorithm = new StringType(); 1824 if (!(this.versionAlgorithm instanceof StringType)) 1825 throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.versionAlgorithm.getClass().getName()+" was encountered"); 1826 return (StringType) this.versionAlgorithm; 1827 } 1828 1829 public boolean hasVersionAlgorithmStringType() { 1830 return this != null && this.versionAlgorithm instanceof StringType; 1831 } 1832 1833 /** 1834 * @return {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 1835 */ 1836 public Coding getVersionAlgorithmCoding() throws FHIRException { 1837 if (this.versionAlgorithm == null) 1838 this.versionAlgorithm = new Coding(); 1839 if (!(this.versionAlgorithm instanceof Coding)) 1840 throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.versionAlgorithm.getClass().getName()+" was encountered"); 1841 return (Coding) this.versionAlgorithm; 1842 } 1843 1844 public boolean hasVersionAlgorithmCoding() { 1845 return this != null && this.versionAlgorithm instanceof Coding; 1846 } 1847 1848 public boolean hasVersionAlgorithm() { 1849 return this.versionAlgorithm != null && !this.versionAlgorithm.isEmpty(); 1850 } 1851 1852 /** 1853 * @param value {@link #versionAlgorithm} (Indicates the mechanism used to compare versions to determine which is more current.) 1854 */ 1855 public StructureDefinition setVersionAlgorithm(DataType value) { 1856 if (value != null && !(value instanceof StringType || value instanceof Coding)) 1857 throw new Error("Not the right type for StructureDefinition.versionAlgorithm[x]: "+value.fhirType()); 1858 this.versionAlgorithm = value; 1859 return this; 1860 } 1861 1862 /** 1863 * @return {@link #name} (A natural language name identifying the structure definition. 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 1864 */ 1865 public StringType getNameElement() { 1866 if (this.name == null) 1867 if (Configuration.errorOnAutoCreate()) 1868 throw new Error("Attempt to auto-create StructureDefinition.name"); 1869 else if (Configuration.doAutoCreate()) 1870 this.name = new StringType(); // bb 1871 return this.name; 1872 } 1873 1874 public boolean hasNameElement() { 1875 return this.name != null && !this.name.isEmpty(); 1876 } 1877 1878 public boolean hasName() { 1879 return this.name != null && !this.name.isEmpty(); 1880 } 1881 1882 /** 1883 * @param value {@link #name} (A natural language name identifying the structure definition. 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 1884 */ 1885 public StructureDefinition setNameElement(StringType value) { 1886 this.name = value; 1887 return this; 1888 } 1889 1890 /** 1891 * @return A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 1892 */ 1893 public String getName() { 1894 return this.name == null ? null : this.name.getValue(); 1895 } 1896 1897 /** 1898 * @param value A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 1899 */ 1900 public StructureDefinition setName(String value) { 1901 if (this.name == null) 1902 this.name = new StringType(); 1903 this.name.setValue(value); 1904 return this; 1905 } 1906 1907 /** 1908 * @return {@link #title} (A short, descriptive, user-friendly title for the structure definition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 1909 */ 1910 public StringType getTitleElement() { 1911 if (this.title == null) 1912 if (Configuration.errorOnAutoCreate()) 1913 throw new Error("Attempt to auto-create StructureDefinition.title"); 1914 else if (Configuration.doAutoCreate()) 1915 this.title = new StringType(); // bb 1916 return this.title; 1917 } 1918 1919 public boolean hasTitleElement() { 1920 return this.title != null && !this.title.isEmpty(); 1921 } 1922 1923 public boolean hasTitle() { 1924 return this.title != null && !this.title.isEmpty(); 1925 } 1926 1927 /** 1928 * @param value {@link #title} (A short, descriptive, user-friendly title for the structure definition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 1929 */ 1930 public StructureDefinition setTitleElement(StringType value) { 1931 this.title = value; 1932 return this; 1933 } 1934 1935 /** 1936 * @return A short, descriptive, user-friendly title for the structure definition. 1937 */ 1938 public String getTitle() { 1939 return this.title == null ? null : this.title.getValue(); 1940 } 1941 1942 /** 1943 * @param value A short, descriptive, user-friendly title for the structure definition. 1944 */ 1945 public StructureDefinition setTitle(String value) { 1946 if (Utilities.noString(value)) 1947 this.title = null; 1948 else { 1949 if (this.title == null) 1950 this.title = new StringType(); 1951 this.title.setValue(value); 1952 } 1953 return this; 1954 } 1955 1956 /** 1957 * @return {@link #status} (The status of this structure definition. 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 1958 */ 1959 public Enumeration<PublicationStatus> getStatusElement() { 1960 if (this.status == null) 1961 if (Configuration.errorOnAutoCreate()) 1962 throw new Error("Attempt to auto-create StructureDefinition.status"); 1963 else if (Configuration.doAutoCreate()) 1964 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 1965 return this.status; 1966 } 1967 1968 public boolean hasStatusElement() { 1969 return this.status != null && !this.status.isEmpty(); 1970 } 1971 1972 public boolean hasStatus() { 1973 return this.status != null && !this.status.isEmpty(); 1974 } 1975 1976 /** 1977 * @param value {@link #status} (The status of this structure definition. 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 1978 */ 1979 public StructureDefinition setStatusElement(Enumeration<PublicationStatus> value) { 1980 this.status = value; 1981 return this; 1982 } 1983 1984 /** 1985 * @return The status of this structure definition. Enables tracking the life-cycle of the content. 1986 */ 1987 public PublicationStatus getStatus() { 1988 return this.status == null ? null : this.status.getValue(); 1989 } 1990 1991 /** 1992 * @param value The status of this structure definition. Enables tracking the life-cycle of the content. 1993 */ 1994 public StructureDefinition setStatus(PublicationStatus value) { 1995 if (this.status == null) 1996 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 1997 this.status.setValue(value); 1998 return this; 1999 } 2000 2001 /** 2002 * @return {@link #experimental} (A Boolean value to indicate that this structure definition 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 2003 */ 2004 public BooleanType getExperimentalElement() { 2005 if (this.experimental == null) 2006 if (Configuration.errorOnAutoCreate()) 2007 throw new Error("Attempt to auto-create StructureDefinition.experimental"); 2008 else if (Configuration.doAutoCreate()) 2009 this.experimental = new BooleanType(); // bb 2010 return this.experimental; 2011 } 2012 2013 public boolean hasExperimentalElement() { 2014 return this.experimental != null && !this.experimental.isEmpty(); 2015 } 2016 2017 public boolean hasExperimental() { 2018 return this.experimental != null && !this.experimental.isEmpty(); 2019 } 2020 2021 /** 2022 * @param value {@link #experimental} (A Boolean value to indicate that this structure definition 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 2023 */ 2024 public StructureDefinition setExperimentalElement(BooleanType value) { 2025 this.experimental = value; 2026 return this; 2027 } 2028 2029 /** 2030 * @return A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. 2031 */ 2032 public boolean getExperimental() { 2033 return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); 2034 } 2035 2036 /** 2037 * @param value A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. 2038 */ 2039 public StructureDefinition setExperimental(boolean value) { 2040 if (this.experimental == null) 2041 this.experimental = new BooleanType(); 2042 this.experimental.setValue(value); 2043 return this; 2044 } 2045 2046 /** 2047 * @return {@link #date} (The date (and optionally time) when the structure definition 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 structure definition changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 2048 */ 2049 public DateTimeType getDateElement() { 2050 if (this.date == null) 2051 if (Configuration.errorOnAutoCreate()) 2052 throw new Error("Attempt to auto-create StructureDefinition.date"); 2053 else if (Configuration.doAutoCreate()) 2054 this.date = new DateTimeType(); // bb 2055 return this.date; 2056 } 2057 2058 public boolean hasDateElement() { 2059 return this.date != null && !this.date.isEmpty(); 2060 } 2061 2062 public boolean hasDate() { 2063 return this.date != null && !this.date.isEmpty(); 2064 } 2065 2066 /** 2067 * @param value {@link #date} (The date (and optionally time) when the structure definition 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 structure definition changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 2068 */ 2069 public StructureDefinition setDateElement(DateTimeType value) { 2070 this.date = value; 2071 return this; 2072 } 2073 2074 /** 2075 * @return The date (and optionally time) when the structure definition 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 structure definition changes. 2076 */ 2077 public Date getDate() { 2078 return this.date == null ? null : this.date.getValue(); 2079 } 2080 2081 /** 2082 * @param value The date (and optionally time) when the structure definition 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 structure definition changes. 2083 */ 2084 public StructureDefinition setDate(Date value) { 2085 if (value == null) 2086 this.date = null; 2087 else { 2088 if (this.date == null) 2089 this.date = new DateTimeType(); 2090 this.date.setValue(value); 2091 } 2092 return this; 2093 } 2094 2095 /** 2096 * @return {@link #publisher} (The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 2097 */ 2098 public StringType getPublisherElement() { 2099 if (this.publisher == null) 2100 if (Configuration.errorOnAutoCreate()) 2101 throw new Error("Attempt to auto-create StructureDefinition.publisher"); 2102 else if (Configuration.doAutoCreate()) 2103 this.publisher = new StringType(); // bb 2104 return this.publisher; 2105 } 2106 2107 public boolean hasPublisherElement() { 2108 return this.publisher != null && !this.publisher.isEmpty(); 2109 } 2110 2111 public boolean hasPublisher() { 2112 return this.publisher != null && !this.publisher.isEmpty(); 2113 } 2114 2115 /** 2116 * @param value {@link #publisher} (The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 2117 */ 2118 public StructureDefinition setPublisherElement(StringType value) { 2119 this.publisher = value; 2120 return this; 2121 } 2122 2123 /** 2124 * @return The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition. 2125 */ 2126 public String getPublisher() { 2127 return this.publisher == null ? null : this.publisher.getValue(); 2128 } 2129 2130 /** 2131 * @param value The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition. 2132 */ 2133 public StructureDefinition setPublisher(String value) { 2134 if (Utilities.noString(value)) 2135 this.publisher = null; 2136 else { 2137 if (this.publisher == null) 2138 this.publisher = new StringType(); 2139 this.publisher.setValue(value); 2140 } 2141 return this; 2142 } 2143 2144 /** 2145 * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) 2146 */ 2147 public List<ContactDetail> getContact() { 2148 if (this.contact == null) 2149 this.contact = new ArrayList<ContactDetail>(); 2150 return this.contact; 2151 } 2152 2153 /** 2154 * @return Returns a reference to <code>this</code> for easy method chaining 2155 */ 2156 public StructureDefinition setContact(List<ContactDetail> theContact) { 2157 this.contact = theContact; 2158 return this; 2159 } 2160 2161 public boolean hasContact() { 2162 if (this.contact == null) 2163 return false; 2164 for (ContactDetail item : this.contact) 2165 if (!item.isEmpty()) 2166 return true; 2167 return false; 2168 } 2169 2170 public ContactDetail addContact() { //3 2171 ContactDetail t = new ContactDetail(); 2172 if (this.contact == null) 2173 this.contact = new ArrayList<ContactDetail>(); 2174 this.contact.add(t); 2175 return t; 2176 } 2177 2178 public StructureDefinition addContact(ContactDetail t) { //3 2179 if (t == null) 2180 return this; 2181 if (this.contact == null) 2182 this.contact = new ArrayList<ContactDetail>(); 2183 this.contact.add(t); 2184 return this; 2185 } 2186 2187 /** 2188 * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist {3} 2189 */ 2190 public ContactDetail getContactFirstRep() { 2191 if (getContact().isEmpty()) { 2192 addContact(); 2193 } 2194 return getContact().get(0); 2195 } 2196 2197 /** 2198 * @return {@link #description} (A free text natural language description of the structure definition from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 2199 */ 2200 public MarkdownType getDescriptionElement() { 2201 if (this.description == null) 2202 if (Configuration.errorOnAutoCreate()) 2203 throw new Error("Attempt to auto-create StructureDefinition.description"); 2204 else if (Configuration.doAutoCreate()) 2205 this.description = new MarkdownType(); // bb 2206 return this.description; 2207 } 2208 2209 public boolean hasDescriptionElement() { 2210 return this.description != null && !this.description.isEmpty(); 2211 } 2212 2213 public boolean hasDescription() { 2214 return this.description != null && !this.description.isEmpty(); 2215 } 2216 2217 /** 2218 * @param value {@link #description} (A free text natural language description of the structure definition from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value 2219 */ 2220 public StructureDefinition setDescriptionElement(MarkdownType value) { 2221 this.description = value; 2222 return this; 2223 } 2224 2225 /** 2226 * @return A free text natural language description of the structure definition from a consumer's perspective. 2227 */ 2228 public String getDescription() { 2229 return this.description == null ? null : this.description.getValue(); 2230 } 2231 2232 /** 2233 * @param value A free text natural language description of the structure definition from a consumer's perspective. 2234 */ 2235 public StructureDefinition setDescription(String value) { 2236 if (value == null) 2237 this.description = null; 2238 else { 2239 if (this.description == null) 2240 this.description = new MarkdownType(); 2241 this.description.setValue(value); 2242 } 2243 return this; 2244 } 2245 2246 /** 2247 * @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 structure definition instances.) 2248 */ 2249 public List<UsageContext> getUseContext() { 2250 if (this.useContext == null) 2251 this.useContext = new ArrayList<UsageContext>(); 2252 return this.useContext; 2253 } 2254 2255 /** 2256 * @return Returns a reference to <code>this</code> for easy method chaining 2257 */ 2258 public StructureDefinition setUseContext(List<UsageContext> theUseContext) { 2259 this.useContext = theUseContext; 2260 return this; 2261 } 2262 2263 public boolean hasUseContext() { 2264 if (this.useContext == null) 2265 return false; 2266 for (UsageContext item : this.useContext) 2267 if (!item.isEmpty()) 2268 return true; 2269 return false; 2270 } 2271 2272 public UsageContext addUseContext() { //3 2273 UsageContext t = new UsageContext(); 2274 if (this.useContext == null) 2275 this.useContext = new ArrayList<UsageContext>(); 2276 this.useContext.add(t); 2277 return t; 2278 } 2279 2280 public StructureDefinition addUseContext(UsageContext t) { //3 2281 if (t == null) 2282 return this; 2283 if (this.useContext == null) 2284 this.useContext = new ArrayList<UsageContext>(); 2285 this.useContext.add(t); 2286 return this; 2287 } 2288 2289 /** 2290 * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist {3} 2291 */ 2292 public UsageContext getUseContextFirstRep() { 2293 if (getUseContext().isEmpty()) { 2294 addUseContext(); 2295 } 2296 return getUseContext().get(0); 2297 } 2298 2299 /** 2300 * @return {@link #jurisdiction} (A legal or geographic region in which the structure definition is intended to be used.) 2301 */ 2302 public List<CodeableConcept> getJurisdiction() { 2303 if (this.jurisdiction == null) 2304 this.jurisdiction = new ArrayList<CodeableConcept>(); 2305 return this.jurisdiction; 2306 } 2307 2308 /** 2309 * @return Returns a reference to <code>this</code> for easy method chaining 2310 */ 2311 public StructureDefinition setJurisdiction(List<CodeableConcept> theJurisdiction) { 2312 this.jurisdiction = theJurisdiction; 2313 return this; 2314 } 2315 2316 public boolean hasJurisdiction() { 2317 if (this.jurisdiction == null) 2318 return false; 2319 for (CodeableConcept item : this.jurisdiction) 2320 if (!item.isEmpty()) 2321 return true; 2322 return false; 2323 } 2324 2325 public CodeableConcept addJurisdiction() { //3 2326 CodeableConcept t = new CodeableConcept(); 2327 if (this.jurisdiction == null) 2328 this.jurisdiction = new ArrayList<CodeableConcept>(); 2329 this.jurisdiction.add(t); 2330 return t; 2331 } 2332 2333 public StructureDefinition addJurisdiction(CodeableConcept t) { //3 2334 if (t == null) 2335 return this; 2336 if (this.jurisdiction == null) 2337 this.jurisdiction = new ArrayList<CodeableConcept>(); 2338 this.jurisdiction.add(t); 2339 return this; 2340 } 2341 2342 /** 2343 * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist {3} 2344 */ 2345 public CodeableConcept getJurisdictionFirstRep() { 2346 if (getJurisdiction().isEmpty()) { 2347 addJurisdiction(); 2348 } 2349 return getJurisdiction().get(0); 2350 } 2351 2352 /** 2353 * @return {@link #purpose} (Explanation of why this structure definition 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 2354 */ 2355 public MarkdownType getPurposeElement() { 2356 if (this.purpose == null) 2357 if (Configuration.errorOnAutoCreate()) 2358 throw new Error("Attempt to auto-create StructureDefinition.purpose"); 2359 else if (Configuration.doAutoCreate()) 2360 this.purpose = new MarkdownType(); // bb 2361 return this.purpose; 2362 } 2363 2364 public boolean hasPurposeElement() { 2365 return this.purpose != null && !this.purpose.isEmpty(); 2366 } 2367 2368 public boolean hasPurpose() { 2369 return this.purpose != null && !this.purpose.isEmpty(); 2370 } 2371 2372 /** 2373 * @param value {@link #purpose} (Explanation of why this structure definition 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 2374 */ 2375 public StructureDefinition setPurposeElement(MarkdownType value) { 2376 this.purpose = value; 2377 return this; 2378 } 2379 2380 /** 2381 * @return Explanation of why this structure definition is needed and why it has been designed as it has. 2382 */ 2383 public String getPurpose() { 2384 return this.purpose == null ? null : this.purpose.getValue(); 2385 } 2386 2387 /** 2388 * @param value Explanation of why this structure definition is needed and why it has been designed as it has. 2389 */ 2390 public StructureDefinition setPurpose(String value) { 2391 if (value == null) 2392 this.purpose = null; 2393 else { 2394 if (this.purpose == null) 2395 this.purpose = new MarkdownType(); 2396 this.purpose.setValue(value); 2397 } 2398 return this; 2399 } 2400 2401 /** 2402 * @return {@link #copyright} (A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value 2403 */ 2404 public MarkdownType getCopyrightElement() { 2405 if (this.copyright == null) 2406 if (Configuration.errorOnAutoCreate()) 2407 throw new Error("Attempt to auto-create StructureDefinition.copyright"); 2408 else if (Configuration.doAutoCreate()) 2409 this.copyright = new MarkdownType(); // bb 2410 return this.copyright; 2411 } 2412 2413 public boolean hasCopyrightElement() { 2414 return this.copyright != null && !this.copyright.isEmpty(); 2415 } 2416 2417 public boolean hasCopyright() { 2418 return this.copyright != null && !this.copyright.isEmpty(); 2419 } 2420 2421 /** 2422 * @param value {@link #copyright} (A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value 2423 */ 2424 public StructureDefinition setCopyrightElement(MarkdownType value) { 2425 this.copyright = value; 2426 return this; 2427 } 2428 2429 /** 2430 * @return A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element. 2431 */ 2432 public String getCopyright() { 2433 return this.copyright == null ? null : this.copyright.getValue(); 2434 } 2435 2436 /** 2437 * @param value A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element. 2438 */ 2439 public StructureDefinition setCopyright(String value) { 2440 if (value == null) 2441 this.copyright = null; 2442 else { 2443 if (this.copyright == null) 2444 this.copyright = new MarkdownType(); 2445 this.copyright.setValue(value); 2446 } 2447 return this; 2448 } 2449 2450 /** 2451 * @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 2452 */ 2453 public StringType getCopyrightLabelElement() { 2454 if (this.copyrightLabel == null) 2455 if (Configuration.errorOnAutoCreate()) 2456 throw new Error("Attempt to auto-create StructureDefinition.copyrightLabel"); 2457 else if (Configuration.doAutoCreate()) 2458 this.copyrightLabel = new StringType(); // bb 2459 return this.copyrightLabel; 2460 } 2461 2462 public boolean hasCopyrightLabelElement() { 2463 return this.copyrightLabel != null && !this.copyrightLabel.isEmpty(); 2464 } 2465 2466 public boolean hasCopyrightLabel() { 2467 return this.copyrightLabel != null && !this.copyrightLabel.isEmpty(); 2468 } 2469 2470 /** 2471 * @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 2472 */ 2473 public StructureDefinition setCopyrightLabelElement(StringType value) { 2474 this.copyrightLabel = value; 2475 return this; 2476 } 2477 2478 /** 2479 * @return 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'). 2480 */ 2481 public String getCopyrightLabel() { 2482 return this.copyrightLabel == null ? null : this.copyrightLabel.getValue(); 2483 } 2484 2485 /** 2486 * @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'). 2487 */ 2488 public StructureDefinition setCopyrightLabel(String value) { 2489 if (Utilities.noString(value)) 2490 this.copyrightLabel = null; 2491 else { 2492 if (this.copyrightLabel == null) 2493 this.copyrightLabel = new StringType(); 2494 this.copyrightLabel.setValue(value); 2495 } 2496 return this; 2497 } 2498 2499 /** 2500 * @return {@link #keyword} ((DEPRECATED) A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes.) 2501 */ 2502 public List<Coding> getKeyword() { 2503 if (this.keyword == null) 2504 this.keyword = new ArrayList<Coding>(); 2505 return this.keyword; 2506 } 2507 2508 /** 2509 * @return Returns a reference to <code>this</code> for easy method chaining 2510 */ 2511 public StructureDefinition setKeyword(List<Coding> theKeyword) { 2512 this.keyword = theKeyword; 2513 return this; 2514 } 2515 2516 public boolean hasKeyword() { 2517 if (this.keyword == null) 2518 return false; 2519 for (Coding item : this.keyword) 2520 if (!item.isEmpty()) 2521 return true; 2522 return false; 2523 } 2524 2525 public Coding addKeyword() { //3 2526 Coding t = new Coding(); 2527 if (this.keyword == null) 2528 this.keyword = new ArrayList<Coding>(); 2529 this.keyword.add(t); 2530 return t; 2531 } 2532 2533 public StructureDefinition addKeyword(Coding t) { //3 2534 if (t == null) 2535 return this; 2536 if (this.keyword == null) 2537 this.keyword = new ArrayList<Coding>(); 2538 this.keyword.add(t); 2539 return this; 2540 } 2541 2542 /** 2543 * @return The first repetition of repeating field {@link #keyword}, creating it if it does not already exist {3} 2544 */ 2545 public Coding getKeywordFirstRep() { 2546 if (getKeyword().isEmpty()) { 2547 addKeyword(); 2548 } 2549 return getKeyword().get(0); 2550 } 2551 2552 /** 2553 * @return {@link #fhirVersion} (The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version.). This is the underlying object with id, value and extensions. The accessor "getFhirVersion" gives direct access to the value 2554 */ 2555 public Enumeration<FHIRVersion> getFhirVersionElement() { 2556 if (this.fhirVersion == null) 2557 if (Configuration.errorOnAutoCreate()) 2558 throw new Error("Attempt to auto-create StructureDefinition.fhirVersion"); 2559 else if (Configuration.doAutoCreate()) 2560 this.fhirVersion = new Enumeration<FHIRVersion>(new FHIRVersionEnumFactory()); // bb 2561 return this.fhirVersion; 2562 } 2563 2564 public boolean hasFhirVersionElement() { 2565 return this.fhirVersion != null && !this.fhirVersion.isEmpty(); 2566 } 2567 2568 public boolean hasFhirVersion() { 2569 return this.fhirVersion != null && !this.fhirVersion.isEmpty(); 2570 } 2571 2572 /** 2573 * @param value {@link #fhirVersion} (The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version.). This is the underlying object with id, value and extensions. The accessor "getFhirVersion" gives direct access to the value 2574 */ 2575 public StructureDefinition setFhirVersionElement(Enumeration<FHIRVersion> value) { 2576 this.fhirVersion = value; 2577 return this; 2578 } 2579 2580 /** 2581 * @return The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version. 2582 */ 2583 public FHIRVersion getFhirVersion() { 2584 return this.fhirVersion == null ? null : this.fhirVersion.getValue(); 2585 } 2586 2587 /** 2588 * @param value The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version. 2589 */ 2590 public StructureDefinition setFhirVersion(FHIRVersion value) { 2591 if (value == null) 2592 this.fhirVersion = null; 2593 else { 2594 if (this.fhirVersion == null) 2595 this.fhirVersion = new Enumeration<FHIRVersion>(new FHIRVersionEnumFactory()); 2596 this.fhirVersion.setValue(value); 2597 } 2598 return this; 2599 } 2600 2601 /** 2602 * @return {@link #mapping} (An external specification that the content is mapped to.) 2603 */ 2604 public List<StructureDefinitionMappingComponent> getMapping() { 2605 if (this.mapping == null) 2606 this.mapping = new ArrayList<StructureDefinitionMappingComponent>(); 2607 return this.mapping; 2608 } 2609 2610 /** 2611 * @return Returns a reference to <code>this</code> for easy method chaining 2612 */ 2613 public StructureDefinition setMapping(List<StructureDefinitionMappingComponent> theMapping) { 2614 this.mapping = theMapping; 2615 return this; 2616 } 2617 2618 public boolean hasMapping() { 2619 if (this.mapping == null) 2620 return false; 2621 for (StructureDefinitionMappingComponent item : this.mapping) 2622 if (!item.isEmpty()) 2623 return true; 2624 return false; 2625 } 2626 2627 public StructureDefinitionMappingComponent addMapping() { //3 2628 StructureDefinitionMappingComponent t = new StructureDefinitionMappingComponent(); 2629 if (this.mapping == null) 2630 this.mapping = new ArrayList<StructureDefinitionMappingComponent>(); 2631 this.mapping.add(t); 2632 return t; 2633 } 2634 2635 public StructureDefinition addMapping(StructureDefinitionMappingComponent t) { //3 2636 if (t == null) 2637 return this; 2638 if (this.mapping == null) 2639 this.mapping = new ArrayList<StructureDefinitionMappingComponent>(); 2640 this.mapping.add(t); 2641 return this; 2642 } 2643 2644 /** 2645 * @return The first repetition of repeating field {@link #mapping}, creating it if it does not already exist {3} 2646 */ 2647 public StructureDefinitionMappingComponent getMappingFirstRep() { 2648 if (getMapping().isEmpty()) { 2649 addMapping(); 2650 } 2651 return getMapping().get(0); 2652 } 2653 2654 /** 2655 * @return {@link #kind} (Defines the kind of structure that this definition is describing.). This is the underlying object with id, value and extensions. The accessor "getKind" gives direct access to the value 2656 */ 2657 public Enumeration<StructureDefinitionKind> getKindElement() { 2658 if (this.kind == null) 2659 if (Configuration.errorOnAutoCreate()) 2660 throw new Error("Attempt to auto-create StructureDefinition.kind"); 2661 else if (Configuration.doAutoCreate()) 2662 this.kind = new Enumeration<StructureDefinitionKind>(new StructureDefinitionKindEnumFactory()); // bb 2663 return this.kind; 2664 } 2665 2666 public boolean hasKindElement() { 2667 return this.kind != null && !this.kind.isEmpty(); 2668 } 2669 2670 public boolean hasKind() { 2671 return this.kind != null && !this.kind.isEmpty(); 2672 } 2673 2674 /** 2675 * @param value {@link #kind} (Defines the kind of structure that this definition is describing.). This is the underlying object with id, value and extensions. The accessor "getKind" gives direct access to the value 2676 */ 2677 public StructureDefinition setKindElement(Enumeration<StructureDefinitionKind> value) { 2678 this.kind = value; 2679 return this; 2680 } 2681 2682 /** 2683 * @return Defines the kind of structure that this definition is describing. 2684 */ 2685 public StructureDefinitionKind getKind() { 2686 return this.kind == null ? null : this.kind.getValue(); 2687 } 2688 2689 /** 2690 * @param value Defines the kind of structure that this definition is describing. 2691 */ 2692 public StructureDefinition setKind(StructureDefinitionKind value) { 2693 if (this.kind == null) 2694 this.kind = new Enumeration<StructureDefinitionKind>(new StructureDefinitionKindEnumFactory()); 2695 this.kind.setValue(value); 2696 return this; 2697 } 2698 2699 /** 2700 * @return {@link #abstract_} (Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.). This is the underlying object with id, value and extensions. The accessor "getAbstract" gives direct access to the value 2701 */ 2702 public BooleanType getAbstractElement() { 2703 if (this.abstract_ == null) 2704 if (Configuration.errorOnAutoCreate()) 2705 throw new Error("Attempt to auto-create StructureDefinition.abstract_"); 2706 else if (Configuration.doAutoCreate()) 2707 this.abstract_ = new BooleanType(); // bb 2708 return this.abstract_; 2709 } 2710 2711 public boolean hasAbstractElement() { 2712 return this.abstract_ != null && !this.abstract_.isEmpty(); 2713 } 2714 2715 public boolean hasAbstract() { 2716 return this.abstract_ != null && !this.abstract_.isEmpty(); 2717 } 2718 2719 /** 2720 * @param value {@link #abstract_} (Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.). This is the underlying object with id, value and extensions. The accessor "getAbstract" gives direct access to the value 2721 */ 2722 public StructureDefinition setAbstractElement(BooleanType value) { 2723 this.abstract_ = value; 2724 return this; 2725 } 2726 2727 /** 2728 * @return Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems. 2729 */ 2730 public boolean getAbstract() { 2731 return this.abstract_ == null || this.abstract_.isEmpty() ? false : this.abstract_.getValue(); 2732 } 2733 2734 /** 2735 * @param value Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems. 2736 */ 2737 public StructureDefinition setAbstract(boolean value) { 2738 if (this.abstract_ == null) 2739 this.abstract_ = new BooleanType(); 2740 this.abstract_.setValue(value); 2741 return this; 2742 } 2743 2744 /** 2745 * @return {@link #context} (Identifies the types of resource or data type elements to which the extension can be applied.) 2746 */ 2747 public List<StructureDefinitionContextComponent> getContext() { 2748 if (this.context == null) 2749 this.context = new ArrayList<StructureDefinitionContextComponent>(); 2750 return this.context; 2751 } 2752 2753 /** 2754 * @return Returns a reference to <code>this</code> for easy method chaining 2755 */ 2756 public StructureDefinition setContext(List<StructureDefinitionContextComponent> theContext) { 2757 this.context = theContext; 2758 return this; 2759 } 2760 2761 public boolean hasContext() { 2762 if (this.context == null) 2763 return false; 2764 for (StructureDefinitionContextComponent item : this.context) 2765 if (!item.isEmpty()) 2766 return true; 2767 return false; 2768 } 2769 2770 public StructureDefinitionContextComponent addContext() { //3 2771 StructureDefinitionContextComponent t = new StructureDefinitionContextComponent(); 2772 if (this.context == null) 2773 this.context = new ArrayList<StructureDefinitionContextComponent>(); 2774 this.context.add(t); 2775 return t; 2776 } 2777 2778 public StructureDefinition addContext(StructureDefinitionContextComponent t) { //3 2779 if (t == null) 2780 return this; 2781 if (this.context == null) 2782 this.context = new ArrayList<StructureDefinitionContextComponent>(); 2783 this.context.add(t); 2784 return this; 2785 } 2786 2787 /** 2788 * @return The first repetition of repeating field {@link #context}, creating it if it does not already exist {3} 2789 */ 2790 public StructureDefinitionContextComponent getContextFirstRep() { 2791 if (getContext().isEmpty()) { 2792 addContext(); 2793 } 2794 return getContext().get(0); 2795 } 2796 2797 /** 2798 * @return {@link #contextInvariant} (A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.) 2799 */ 2800 public List<StringType> getContextInvariant() { 2801 if (this.contextInvariant == null) 2802 this.contextInvariant = new ArrayList<StringType>(); 2803 return this.contextInvariant; 2804 } 2805 2806 /** 2807 * @return Returns a reference to <code>this</code> for easy method chaining 2808 */ 2809 public StructureDefinition setContextInvariant(List<StringType> theContextInvariant) { 2810 this.contextInvariant = theContextInvariant; 2811 return this; 2812 } 2813 2814 public boolean hasContextInvariant() { 2815 if (this.contextInvariant == null) 2816 return false; 2817 for (StringType item : this.contextInvariant) 2818 if (!item.isEmpty()) 2819 return true; 2820 return false; 2821 } 2822 2823 /** 2824 * @return {@link #contextInvariant} (A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.) 2825 */ 2826 public StringType addContextInvariantElement() {//2 2827 StringType t = new StringType(); 2828 if (this.contextInvariant == null) 2829 this.contextInvariant = new ArrayList<StringType>(); 2830 this.contextInvariant.add(t); 2831 return t; 2832 } 2833 2834 /** 2835 * @param value {@link #contextInvariant} (A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.) 2836 */ 2837 public StructureDefinition addContextInvariant(String value) { //1 2838 StringType t = new StringType(); 2839 t.setValue(value); 2840 if (this.contextInvariant == null) 2841 this.contextInvariant = new ArrayList<StringType>(); 2842 this.contextInvariant.add(t); 2843 return this; 2844 } 2845 2846 /** 2847 * @param value {@link #contextInvariant} (A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.) 2848 */ 2849 public boolean hasContextInvariant(String value) { 2850 if (this.contextInvariant == null) 2851 return false; 2852 for (StringType v : this.contextInvariant) 2853 if (v.getValue().equals(value)) // string 2854 return true; 2855 return false; 2856 } 2857 2858 /** 2859 * @return {@link #type} (The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. "string" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 2860 */ 2861 public UriType getTypeElement() { 2862 if (this.type == null) 2863 if (Configuration.errorOnAutoCreate()) 2864 throw new Error("Attempt to auto-create StructureDefinition.type"); 2865 else if (Configuration.doAutoCreate()) 2866 this.type = new UriType(); // bb 2867 return this.type; 2868 } 2869 2870 public boolean hasTypeElement() { 2871 return this.type != null && !this.type.isEmpty(); 2872 } 2873 2874 public boolean hasType() { 2875 return this.type != null && !this.type.isEmpty(); 2876 } 2877 2878 /** 2879 * @param value {@link #type} (The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. "string" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value 2880 */ 2881 public StructureDefinition setTypeElement(UriType value) { 2882 this.type = value; 2883 return this; 2884 } 2885 2886 /** 2887 * @return The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. "string" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models. 2888 */ 2889 public String getType() { 2890 return this.type == null ? null : this.type.getValue(); 2891 } 2892 2893 /** 2894 * @param value The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. "string" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models. 2895 */ 2896 public StructureDefinition setType(String value) { 2897 if (this.type == null) 2898 this.type = new UriType(); 2899 this.type.setValue(value); 2900 return this; 2901 } 2902 2903 /** 2904 * @return {@link #baseDefinition} (An absolute URI that is the base structure from which this type is derived, either by specialization or constraint.). This is the underlying object with id, value and extensions. The accessor "getBaseDefinition" gives direct access to the value 2905 */ 2906 public CanonicalType getBaseDefinitionElement() { 2907 if (this.baseDefinition == null) 2908 if (Configuration.errorOnAutoCreate()) 2909 throw new Error("Attempt to auto-create StructureDefinition.baseDefinition"); 2910 else if (Configuration.doAutoCreate()) 2911 this.baseDefinition = new CanonicalType(); // bb 2912 return this.baseDefinition; 2913 } 2914 2915 public boolean hasBaseDefinitionElement() { 2916 return this.baseDefinition != null && !this.baseDefinition.isEmpty(); 2917 } 2918 2919 public boolean hasBaseDefinition() { 2920 return this.baseDefinition != null && !this.baseDefinition.isEmpty(); 2921 } 2922 2923 /** 2924 * @param value {@link #baseDefinition} (An absolute URI that is the base structure from which this type is derived, either by specialization or constraint.). This is the underlying object with id, value and extensions. The accessor "getBaseDefinition" gives direct access to the value 2925 */ 2926 public StructureDefinition setBaseDefinitionElement(CanonicalType value) { 2927 this.baseDefinition = value; 2928 return this; 2929 } 2930 2931 /** 2932 * @return An absolute URI that is the base structure from which this type is derived, either by specialization or constraint. 2933 */ 2934 public String getBaseDefinition() { 2935 return this.baseDefinition == null ? null : this.baseDefinition.getValue(); 2936 } 2937 2938 /** 2939 * @param value An absolute URI that is the base structure from which this type is derived, either by specialization or constraint. 2940 */ 2941 public StructureDefinition setBaseDefinition(String value) { 2942 if (Utilities.noString(value)) 2943 this.baseDefinition = null; 2944 else { 2945 if (this.baseDefinition == null) 2946 this.baseDefinition = new CanonicalType(); 2947 this.baseDefinition.setValue(value); 2948 } 2949 return this; 2950 } 2951 2952 /** 2953 * @return {@link #derivation} (How the type relates to the baseDefinition.). This is the underlying object with id, value and extensions. The accessor "getDerivation" gives direct access to the value 2954 */ 2955 public Enumeration<TypeDerivationRule> getDerivationElement() { 2956 if (this.derivation == null) 2957 if (Configuration.errorOnAutoCreate()) 2958 throw new Error("Attempt to auto-create StructureDefinition.derivation"); 2959 else if (Configuration.doAutoCreate()) 2960 this.derivation = new Enumeration<TypeDerivationRule>(new TypeDerivationRuleEnumFactory()); // bb 2961 return this.derivation; 2962 } 2963 2964 public boolean hasDerivationElement() { 2965 return this.derivation != null && !this.derivation.isEmpty(); 2966 } 2967 2968 public boolean hasDerivation() { 2969 return this.derivation != null && !this.derivation.isEmpty(); 2970 } 2971 2972 /** 2973 * @param value {@link #derivation} (How the type relates to the baseDefinition.). This is the underlying object with id, value and extensions. The accessor "getDerivation" gives direct access to the value 2974 */ 2975 public StructureDefinition setDerivationElement(Enumeration<TypeDerivationRule> value) { 2976 this.derivation = value; 2977 return this; 2978 } 2979 2980 /** 2981 * @return How the type relates to the baseDefinition. 2982 */ 2983 public TypeDerivationRule getDerivation() { 2984 return this.derivation == null ? null : this.derivation.getValue(); 2985 } 2986 2987 /** 2988 * @param value How the type relates to the baseDefinition. 2989 */ 2990 public StructureDefinition setDerivation(TypeDerivationRule value) { 2991 if (value == null) 2992 this.derivation = null; 2993 else { 2994 if (this.derivation == null) 2995 this.derivation = new Enumeration<TypeDerivationRule>(new TypeDerivationRuleEnumFactory()); 2996 this.derivation.setValue(value); 2997 } 2998 return this; 2999 } 3000 3001 /** 3002 * @return {@link #snapshot} (A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition.) 3003 */ 3004 public StructureDefinitionSnapshotComponent getSnapshot() { 3005 if (this.snapshot == null) 3006 if (Configuration.errorOnAutoCreate()) 3007 throw new Error("Attempt to auto-create StructureDefinition.snapshot"); 3008 else if (Configuration.doAutoCreate()) 3009 this.snapshot = new StructureDefinitionSnapshotComponent(); // cc 3010 return this.snapshot; 3011 } 3012 3013 public boolean hasSnapshot() { 3014 return this.snapshot != null && !this.snapshot.isEmpty(); 3015 } 3016 3017 /** 3018 * @param value {@link #snapshot} (A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition.) 3019 */ 3020 public StructureDefinition setSnapshot(StructureDefinitionSnapshotComponent value) { 3021 this.snapshot = value; 3022 return this; 3023 } 3024 3025 /** 3026 * @return {@link #differential} (A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies.) 3027 */ 3028 public StructureDefinitionDifferentialComponent getDifferential() { 3029 if (this.differential == null) 3030 if (Configuration.errorOnAutoCreate()) 3031 throw new Error("Attempt to auto-create StructureDefinition.differential"); 3032 else if (Configuration.doAutoCreate()) 3033 this.differential = new StructureDefinitionDifferentialComponent(); // cc 3034 return this.differential; 3035 } 3036 3037 public boolean hasDifferential() { 3038 return this.differential != null && !this.differential.isEmpty(); 3039 } 3040 3041 /** 3042 * @param value {@link #differential} (A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies.) 3043 */ 3044 public StructureDefinition setDifferential(StructureDefinitionDifferentialComponent value) { 3045 this.differential = value; 3046 return this; 3047 } 3048 3049 protected void listChildren(List<Property> children) { 3050 super.listChildren(children); 3051 children.add(new Property("url", "uri", "An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers.", 0, 1, url)); 3052 children.add(new Property("identifier", "Identifier", "A formal identifier that is used to identify this structure definition when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier)); 3053 children.add(new Property("version", "string", "The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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.", 0, 1, version)); 3054 children.add(new Property("versionAlgorithm[x]", "string|Coding", "Indicates the mechanism used to compare versions to determine which is more current.", 0, 1, versionAlgorithm)); 3055 children.add(new Property("name", "string", "A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name)); 3056 children.add(new Property("title", "string", "A short, descriptive, user-friendly title for the structure definition.", 0, 1, title)); 3057 children.add(new Property("status", "code", "The status of this structure definition. Enables tracking the life-cycle of the content.", 0, 1, status)); 3058 children.add(new Property("experimental", "boolean", "A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 0, 1, experimental)); 3059 children.add(new Property("date", "dateTime", "The date (and optionally time) when the structure definition 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 structure definition changes.", 0, 1, date)); 3060 children.add(new Property("publisher", "string", "The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition.", 0, 1, publisher)); 3061 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)); 3062 children.add(new Property("description", "markdown", "A free text natural language description of the structure definition from a consumer's perspective.", 0, 1, description)); 3063 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 structure definition instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); 3064 children.add(new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the structure definition is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction)); 3065 children.add(new Property("purpose", "markdown", "Explanation of why this structure definition is needed and why it has been designed as it has.", 0, 1, purpose)); 3066 children.add(new Property("copyright", "markdown", "A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element.", 0, 1, copyright)); 3067 children.add(new Property("copyrightLabel", "string", "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').", 0, 1, copyrightLabel)); 3068 children.add(new Property("keyword", "Coding", "(DEPRECATED) A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes.", 0, java.lang.Integer.MAX_VALUE, keyword)); 3069 children.add(new Property("fhirVersion", "code", "The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version.", 0, 1, fhirVersion)); 3070 children.add(new Property("mapping", "", "An external specification that the content is mapped to.", 0, java.lang.Integer.MAX_VALUE, mapping)); 3071 children.add(new Property("kind", "code", "Defines the kind of structure that this definition is describing.", 0, 1, kind)); 3072 children.add(new Property("abstract", "boolean", "Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.", 0, 1, abstract_)); 3073 children.add(new Property("context", "", "Identifies the types of resource or data type elements to which the extension can be applied.", 0, java.lang.Integer.MAX_VALUE, context)); 3074 children.add(new Property("contextInvariant", "string", "A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.", 0, java.lang.Integer.MAX_VALUE, contextInvariant)); 3075 children.add(new Property("type", "uri", "The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. \"string\" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models.", 0, 1, type)); 3076 children.add(new Property("baseDefinition", "canonical(StructureDefinition)", "An absolute URI that is the base structure from which this type is derived, either by specialization or constraint.", 0, 1, baseDefinition)); 3077 children.add(new Property("derivation", "code", "How the type relates to the baseDefinition.", 0, 1, derivation)); 3078 children.add(new Property("snapshot", "", "A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition.", 0, 1, snapshot)); 3079 children.add(new Property("differential", "", "A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies.", 0, 1, differential)); 3080 } 3081 3082 @Override 3083 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 3084 switch (_hash) { 3085 case 116079: /*url*/ return new Property("url", "uri", "An absolute URI that is used to identify this structure definition 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 structure definition is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the structure definition is stored on different servers.", 0, 1, url); 3086 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A formal identifier that is used to identify this structure definition when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier); 3087 case 351608024: /*version*/ return new Property("version", "string", "The identifier that is used to identify this version of the structure definition when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the structure definition 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.", 0, 1, version); 3088 case -115699031: /*versionAlgorithm[x]*/ return new Property("versionAlgorithm[x]", "string|Coding", "Indicates the mechanism used to compare versions to determine which is more current.", 0, 1, versionAlgorithm); 3089 case 1508158071: /*versionAlgorithm*/ return new Property("versionAlgorithm[x]", "string|Coding", "Indicates the mechanism used to compare versions to determine which is more current.", 0, 1, versionAlgorithm); 3090 case 1836908904: /*versionAlgorithmString*/ return new Property("versionAlgorithm[x]", "string", "Indicates the mechanism used to compare versions to determine which is more current.", 0, 1, versionAlgorithm); 3091 case 1373807809: /*versionAlgorithmCoding*/ return new Property("versionAlgorithm[x]", "Coding", "Indicates the mechanism used to compare versions to determine which is more current.", 0, 1, versionAlgorithm); 3092 case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the structure definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name); 3093 case 110371416: /*title*/ return new Property("title", "string", "A short, descriptive, user-friendly title for the structure definition.", 0, 1, title); 3094 case -892481550: /*status*/ return new Property("status", "code", "The status of this structure definition. Enables tracking the life-cycle of the content.", 0, 1, status); 3095 case -404562712: /*experimental*/ return new Property("experimental", "boolean", "A Boolean value to indicate that this structure definition is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.", 0, 1, experimental); 3096 case 3076014: /*date*/ return new Property("date", "dateTime", "The date (and optionally time) when the structure definition 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 structure definition changes.", 0, 1, date); 3097 case 1447404028: /*publisher*/ return new Property("publisher", "string", "The name of the organization or individual responsible for the release and ongoing maintenance of the structure definition.", 0, 1, publisher); 3098 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); 3099 case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the structure definition from a consumer's perspective.", 0, 1, description); 3100 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 structure definition instances.", 0, java.lang.Integer.MAX_VALUE, useContext); 3101 case -507075711: /*jurisdiction*/ return new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the structure definition is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction); 3102 case -220463842: /*purpose*/ return new Property("purpose", "markdown", "Explanation of why this structure definition is needed and why it has been designed as it has.", 0, 1, purpose); 3103 case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition. The short copyright declaration (e.g. (c) '2015+ xyz organization' should be sent in the copyrightLabel element.", 0, 1, copyright); 3104 case 765157229: /*copyrightLabel*/ return new Property("copyrightLabel", "string", "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').", 0, 1, copyrightLabel); 3105 case -814408215: /*keyword*/ return new Property("keyword", "Coding", "(DEPRECATED) A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes.", 0, java.lang.Integer.MAX_VALUE, keyword); 3106 case 461006061: /*fhirVersion*/ return new Property("fhirVersion", "code", "The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.6.0. for this version.", 0, 1, fhirVersion); 3107 case 837556430: /*mapping*/ return new Property("mapping", "", "An external specification that the content is mapped to.", 0, java.lang.Integer.MAX_VALUE, mapping); 3108 case 3292052: /*kind*/ return new Property("kind", "code", "Defines the kind of structure that this definition is describing.", 0, 1, kind); 3109 case 1732898850: /*abstract*/ return new Property("abstract", "boolean", "Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.", 0, 1, abstract_); 3110 case 951530927: /*context*/ return new Property("context", "", "Identifies the types of resource or data type elements to which the extension can be applied.", 0, java.lang.Integer.MAX_VALUE, context); 3111 case -802505007: /*contextInvariant*/ return new Property("contextInvariant", "string", "A set of rules as FHIRPath Invariants about when the extension can be used (e.g. co-occurrence variants for the extension). All the rules must be true.", 0, java.lang.Integer.MAX_VALUE, contextInvariant); 3112 case 3575610: /*type*/ return new Property("type", "uri", "The type this structure describes. If the derivation kind is 'specialization' then this is the master definition for a type, and there is always one of these (a data type, an extension, a resource, including abstract ones). Otherwise the structure definition is a constraint on the stated type (and in this case, the type cannot be an abstract type). References are URLs that are relative to http://hl7.org/fhir/StructureDefinition e.g. \"string\" is a reference to http://hl7.org/fhir/StructureDefinition/string. Absolute URLs are only allowed in logical models.", 0, 1, type); 3113 case 1139771140: /*baseDefinition*/ return new Property("baseDefinition", "canonical(StructureDefinition)", "An absolute URI that is the base structure from which this type is derived, either by specialization or constraint.", 0, 1, baseDefinition); 3114 case -1353885513: /*derivation*/ return new Property("derivation", "code", "How the type relates to the baseDefinition.", 0, 1, derivation); 3115 case 284874180: /*snapshot*/ return new Property("snapshot", "", "A snapshot view is expressed in a standalone form that can be used and interpreted without considering the base StructureDefinition.", 0, 1, snapshot); 3116 case -1196150917: /*differential*/ return new Property("differential", "", "A differential view is expressed relative to the base StructureDefinition - a statement of differences that it applies.", 0, 1, differential); 3117 default: return super.getNamedProperty(_hash, _name, _checkValid); 3118 } 3119 3120 } 3121 3122 @Override 3123 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 3124 switch (hash) { 3125 case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType 3126 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 3127 case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType 3128 case 1508158071: /*versionAlgorithm*/ return this.versionAlgorithm == null ? new Base[0] : new Base[] {this.versionAlgorithm}; // DataType 3129 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 3130 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 3131 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<PublicationStatus> 3132 case -404562712: /*experimental*/ return this.experimental == null ? new Base[0] : new Base[] {this.experimental}; // BooleanType 3133 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 3134 case 1447404028: /*publisher*/ return this.publisher == null ? new Base[0] : new Base[] {this.publisher}; // StringType 3135 case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 3136 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 3137 case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 3138 case -507075711: /*jurisdiction*/ return this.jurisdiction == null ? new Base[0] : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 3139 case -220463842: /*purpose*/ return this.purpose == null ? new Base[0] : new Base[] {this.purpose}; // MarkdownType 3140 case 1522889671: /*copyright*/ return this.copyright == null ? new Base[0] : new Base[] {this.copyright}; // MarkdownType 3141 case 765157229: /*copyrightLabel*/ return this.copyrightLabel == null ? new Base[0] : new Base[] {this.copyrightLabel}; // StringType 3142 case -814408215: /*keyword*/ return this.keyword == null ? new Base[0] : this.keyword.toArray(new Base[this.keyword.size()]); // Coding 3143 case 461006061: /*fhirVersion*/ return this.fhirVersion == null ? new Base[0] : new Base[] {this.fhirVersion}; // Enumeration<FHIRVersion> 3144 case 837556430: /*mapping*/ return this.mapping == null ? new Base[0] : this.mapping.toArray(new Base[this.mapping.size()]); // StructureDefinitionMappingComponent 3145 case 3292052: /*kind*/ return this.kind == null ? new Base[0] : new Base[] {this.kind}; // Enumeration<StructureDefinitionKind> 3146 case 1732898850: /*abstract*/ return this.abstract_ == null ? new Base[0] : new Base[] {this.abstract_}; // BooleanType 3147 case 951530927: /*context*/ return this.context == null ? new Base[0] : this.context.toArray(new Base[this.context.size()]); // StructureDefinitionContextComponent 3148 case -802505007: /*contextInvariant*/ return this.contextInvariant == null ? new Base[0] : this.contextInvariant.toArray(new Base[this.contextInvariant.size()]); // StringType 3149 case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // UriType 3150 case 1139771140: /*baseDefinition*/ return this.baseDefinition == null ? new Base[0] : new Base[] {this.baseDefinition}; // CanonicalType 3151 case -1353885513: /*derivation*/ return this.derivation == null ? new Base[0] : new Base[] {this.derivation}; // Enumeration<TypeDerivationRule> 3152 case 284874180: /*snapshot*/ return this.snapshot == null ? new Base[0] : new Base[] {this.snapshot}; // StructureDefinitionSnapshotComponent 3153 case -1196150917: /*differential*/ return this.differential == null ? new Base[0] : new Base[] {this.differential}; // StructureDefinitionDifferentialComponent 3154 default: return super.getProperty(hash, name, checkValid); 3155 } 3156 3157 } 3158 3159 @Override 3160 public Base setProperty(int hash, String name, Base value) throws FHIRException { 3161 switch (hash) { 3162 case 116079: // url 3163 this.url = TypeConvertor.castToUri(value); // UriType 3164 return value; 3165 case -1618432855: // identifier 3166 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 3167 return value; 3168 case 351608024: // version 3169 this.version = TypeConvertor.castToString(value); // StringType 3170 return value; 3171 case 1508158071: // versionAlgorithm 3172 this.versionAlgorithm = TypeConvertor.castToType(value); // DataType 3173 return value; 3174 case 3373707: // name 3175 this.name = TypeConvertor.castToString(value); // StringType 3176 return value; 3177 case 110371416: // title 3178 this.title = TypeConvertor.castToString(value); // StringType 3179 return value; 3180 case -892481550: // status 3181 value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 3182 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 3183 return value; 3184 case -404562712: // experimental 3185 this.experimental = TypeConvertor.castToBoolean(value); // BooleanType 3186 return value; 3187 case 3076014: // date 3188 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 3189 return value; 3190 case 1447404028: // publisher 3191 this.publisher = TypeConvertor.castToString(value); // StringType 3192 return value; 3193 case 951526432: // contact 3194 this.getContact().add(TypeConvertor.castToContactDetail(value)); // ContactDetail 3195 return value; 3196 case -1724546052: // description 3197 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 3198 return value; 3199 case -669707736: // useContext 3200 this.getUseContext().add(TypeConvertor.castToUsageContext(value)); // UsageContext 3201 return value; 3202 case -507075711: // jurisdiction 3203 this.getJurisdiction().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept 3204 return value; 3205 case -220463842: // purpose 3206 this.purpose = TypeConvertor.castToMarkdown(value); // MarkdownType 3207 return value; 3208 case 1522889671: // copyright 3209 this.copyright = TypeConvertor.castToMarkdown(value); // MarkdownType 3210 return value; 3211 case 765157229: // copyrightLabel 3212 this.copyrightLabel = TypeConvertor.castToString(value); // StringType 3213 return value; 3214 case -814408215: // keyword 3215 this.getKeyword().add(TypeConvertor.castToCoding(value)); // Coding 3216 return value; 3217 case 461006061: // fhirVersion 3218 value = new FHIRVersionEnumFactory().fromType(TypeConvertor.castToCode(value)); 3219 this.fhirVersion = (Enumeration) value; // Enumeration<FHIRVersion> 3220 return value; 3221 case 837556430: // mapping 3222 this.getMapping().add((StructureDefinitionMappingComponent) value); // StructureDefinitionMappingComponent 3223 return value; 3224 case 3292052: // kind 3225 value = new StructureDefinitionKindEnumFactory().fromType(TypeConvertor.castToCode(value)); 3226 this.kind = (Enumeration) value; // Enumeration<StructureDefinitionKind> 3227 return value; 3228 case 1732898850: // abstract 3229 this.abstract_ = TypeConvertor.castToBoolean(value); // BooleanType 3230 return value; 3231 case 951530927: // context 3232 this.getContext().add((StructureDefinitionContextComponent) value); // StructureDefinitionContextComponent 3233 return value; 3234 case -802505007: // contextInvariant 3235 this.getContextInvariant().add(TypeConvertor.castToString(value)); // StringType 3236 return value; 3237 case 3575610: // type 3238 this.type = TypeConvertor.castToUri(value); // UriType 3239 return value; 3240 case 1139771140: // baseDefinition 3241 this.baseDefinition = TypeConvertor.castToCanonical(value); // CanonicalType 3242 return value; 3243 case -1353885513: // derivation 3244 value = new TypeDerivationRuleEnumFactory().fromType(TypeConvertor.castToCode(value)); 3245 this.derivation = (Enumeration) value; // Enumeration<TypeDerivationRule> 3246 return value; 3247 case 284874180: // snapshot 3248 this.snapshot = (StructureDefinitionSnapshotComponent) value; // StructureDefinitionSnapshotComponent 3249 return value; 3250 case -1196150917: // differential 3251 this.differential = (StructureDefinitionDifferentialComponent) value; // StructureDefinitionDifferentialComponent 3252 return value; 3253 default: return super.setProperty(hash, name, value); 3254 } 3255 3256 } 3257 3258 @Override 3259 public Base setProperty(String name, Base value) throws FHIRException { 3260 if (name.equals("url")) { 3261 this.url = TypeConvertor.castToUri(value); // UriType 3262 } else if (name.equals("identifier")) { 3263 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 3264 } else if (name.equals("version")) { 3265 this.version = TypeConvertor.castToString(value); // StringType 3266 } else if (name.equals("versionAlgorithm[x]")) { 3267 this.versionAlgorithm = TypeConvertor.castToType(value); // DataType 3268 } else if (name.equals("name")) { 3269 this.name = TypeConvertor.castToString(value); // StringType 3270 } else if (name.equals("title")) { 3271 this.title = TypeConvertor.castToString(value); // StringType 3272 } else if (name.equals("status")) { 3273 value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); 3274 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 3275 } else if (name.equals("experimental")) { 3276 this.experimental = TypeConvertor.castToBoolean(value); // BooleanType 3277 } else if (name.equals("date")) { 3278 this.date = TypeConvertor.castToDateTime(value); // DateTimeType 3279 } else if (name.equals("publisher")) { 3280 this.publisher = TypeConvertor.castToString(value); // StringType 3281 } else if (name.equals("contact")) { 3282 this.getContact().add(TypeConvertor.castToContactDetail(value)); 3283 } else if (name.equals("description")) { 3284 this.description = TypeConvertor.castToMarkdown(value); // MarkdownType 3285 } else if (name.equals("useContext")) { 3286 this.getUseContext().add(TypeConvertor.castToUsageContext(value)); 3287 } else if (name.equals("jurisdiction")) { 3288 this.getJurisdiction().add(TypeConvertor.castToCodeableConcept(value)); 3289 } else if (name.equals("purpose")) { 3290 this.purpose = TypeConvertor.castToMarkdown(value); // MarkdownType 3291 } else if (name.equals("copyright")) { 3292 this.copyright = TypeConvertor.castToMarkdown(value); // MarkdownType 3293 } else if (name.equals("copyrightLabel")) { 3294 this.copyrightLabel = TypeConvertor.castToString(value); // StringType 3295 } else if (name.equals("keyword")) { 3296 this.getKeyword().add(TypeConvertor.castToCoding(value)); 3297 } else if (name.equals("fhirVersion")) { 3298 value = new FHIRVersionEnumFactory().fromType(TypeConvertor.castToCode(value)); 3299 this.fhirVersion = (Enumeration) value; // Enumeration<FHIRVersion> 3300 } else if (name.equals("mapping")) { 3301 this.getMapping().add((StructureDefinitionMappingComponent) value); 3302 } else if (name.equals("kind")) { 3303 value = new StructureDefinitionKindEnumFactory().fromType(TypeConvertor.castToCode(value)); 3304 this.kind = (Enumeration) value; // Enumeration<StructureDefinitionKind> 3305 } else if (name.equals("abstract")) { 3306 this.abstract_ = TypeConvertor.castToBoolean(value); // BooleanType 3307 } else if (name.equals("context")) { 3308 this.getContext().add((StructureDefinitionContextComponent) value); 3309 } else if (name.equals("contextInvariant")) { 3310 this.getContextInvariant().add(TypeConvertor.castToString(value)); 3311 } else if (name.equals("type")) { 3312 this.type = TypeConvertor.castToUri(value); // UriType 3313 } else if (name.equals("baseDefinition")) { 3314 this.baseDefinition = TypeConvertor.castToCanonical(value); // CanonicalType 3315 } else if (name.equals("derivation")) { 3316 value = new TypeDerivationRuleEnumFactory().fromType(TypeConvertor.castToCode(value)); 3317 this.derivation = (Enumeration) value; // Enumeration<TypeDerivationRule> 3318 } else if (name.equals("snapshot")) { 3319 this.snapshot = (StructureDefinitionSnapshotComponent) value; // StructureDefinitionSnapshotComponent 3320 } else if (name.equals("differential")) { 3321 this.differential = (StructureDefinitionDifferentialComponent) value; // StructureDefinitionDifferentialComponent 3322 } else 3323 return super.setProperty(name, value); 3324 return value; 3325 } 3326 3327 @Override 3328 public Base makeProperty(int hash, String name) throws FHIRException { 3329 switch (hash) { 3330 case 116079: return getUrlElement(); 3331 case -1618432855: return addIdentifier(); 3332 case 351608024: return getVersionElement(); 3333 case -115699031: return getVersionAlgorithm(); 3334 case 1508158071: return getVersionAlgorithm(); 3335 case 3373707: return getNameElement(); 3336 case 110371416: return getTitleElement(); 3337 case -892481550: return getStatusElement(); 3338 case -404562712: return getExperimentalElement(); 3339 case 3076014: return getDateElement(); 3340 case 1447404028: return getPublisherElement(); 3341 case 951526432: return addContact(); 3342 case -1724546052: return getDescriptionElement(); 3343 case -669707736: return addUseContext(); 3344 case -507075711: return addJurisdiction(); 3345 case -220463842: return getPurposeElement(); 3346 case 1522889671: return getCopyrightElement(); 3347 case 765157229: return getCopyrightLabelElement(); 3348 case -814408215: return addKeyword(); 3349 case 461006061: return getFhirVersionElement(); 3350 case 837556430: return addMapping(); 3351 case 3292052: return getKindElement(); 3352 case 1732898850: return getAbstractElement(); 3353 case 951530927: return addContext(); 3354 case -802505007: return addContextInvariantElement(); 3355 case 3575610: return getTypeElement(); 3356 case 1139771140: return getBaseDefinitionElement(); 3357 case -1353885513: return getDerivationElement(); 3358 case 284874180: return getSnapshot(); 3359 case -1196150917: return getDifferential(); 3360 default: return super.makeProperty(hash, name); 3361 } 3362 3363 } 3364 3365 @Override 3366 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 3367 switch (hash) { 3368 case 116079: /*url*/ return new String[] {"uri"}; 3369 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 3370 case 351608024: /*version*/ return new String[] {"string"}; 3371 case 1508158071: /*versionAlgorithm*/ return new String[] {"string", "Coding"}; 3372 case 3373707: /*name*/ return new String[] {"string"}; 3373 case 110371416: /*title*/ return new String[] {"string"}; 3374 case -892481550: /*status*/ return new String[] {"code"}; 3375 case -404562712: /*experimental*/ return new String[] {"boolean"}; 3376 case 3076014: /*date*/ return new String[] {"dateTime"}; 3377 case 1447404028: /*publisher*/ return new String[] {"string"}; 3378 case 951526432: /*contact*/ return new String[] {"ContactDetail"}; 3379 case -1724546052: /*description*/ return new String[] {"markdown"}; 3380 case -669707736: /*useContext*/ return new String[] {"UsageContext"}; 3381 case -507075711: /*jurisdiction*/ return new String[] {"CodeableConcept"}; 3382 case -220463842: /*purpose*/ return new String[] {"markdown"}; 3383 case 1522889671: /*copyright*/ return new String[] {"markdown"}; 3384 case 765157229: /*copyrightLabel*/ return new String[] {"string"}; 3385 case -814408215: /*keyword*/ return new String[] {"Coding"}; 3386 case 461006061: /*fhirVersion*/ return new String[] {"code"}; 3387 case 837556430: /*mapping*/ return new String[] {}; 3388 case 3292052: /*kind*/ return new String[] {"code"}; 3389 case 1732898850: /*abstract*/ return new String[] {"boolean"}; 3390 case 951530927: /*context*/ return new String[] {}; 3391 case -802505007: /*contextInvariant*/ return new String[] {"string"}; 3392 case 3575610: /*type*/ return new String[] {"uri"}; 3393 case 1139771140: /*baseDefinition*/ return new String[] {"canonical"}; 3394 case -1353885513: /*derivation*/ return new String[] {"code"}; 3395 case 284874180: /*snapshot*/ return new String[] {}; 3396 case -1196150917: /*differential*/ return new String[] {}; 3397 default: return super.getTypesForProperty(hash, name); 3398 } 3399 3400 } 3401 3402 @Override 3403 public Base addChild(String name) throws FHIRException { 3404 if (name.equals("url")) { 3405 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.url"); 3406 } 3407 else if (name.equals("identifier")) { 3408 return addIdentifier(); 3409 } 3410 else if (name.equals("version")) { 3411 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.version"); 3412 } 3413 else if (name.equals("versionAlgorithmString")) { 3414 this.versionAlgorithm = new StringType(); 3415 return this.versionAlgorithm; 3416 } 3417 else if (name.equals("versionAlgorithmCoding")) { 3418 this.versionAlgorithm = new Coding(); 3419 return this.versionAlgorithm; 3420 } 3421 else if (name.equals("name")) { 3422 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.name"); 3423 } 3424 else if (name.equals("title")) { 3425 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.title"); 3426 } 3427 else if (name.equals("status")) { 3428 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.status"); 3429 } 3430 else if (name.equals("experimental")) { 3431 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.experimental"); 3432 } 3433 else if (name.equals("date")) { 3434 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.date"); 3435 } 3436 else if (name.equals("publisher")) { 3437 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.publisher"); 3438 } 3439 else if (name.equals("contact")) { 3440 return addContact(); 3441 } 3442 else if (name.equals("description")) { 3443 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.description"); 3444 } 3445 else if (name.equals("useContext")) { 3446 return addUseContext(); 3447 } 3448 else if (name.equals("jurisdiction")) { 3449 return addJurisdiction(); 3450 } 3451 else if (name.equals("purpose")) { 3452 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.purpose"); 3453 } 3454 else if (name.equals("copyright")) { 3455 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.copyright"); 3456 } 3457 else if (name.equals("copyrightLabel")) { 3458 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.copyrightLabel"); 3459 } 3460 else if (name.equals("keyword")) { 3461 return addKeyword(); 3462 } 3463 else if (name.equals("fhirVersion")) { 3464 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.fhirVersion"); 3465 } 3466 else if (name.equals("mapping")) { 3467 return addMapping(); 3468 } 3469 else if (name.equals("kind")) { 3470 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.kind"); 3471 } 3472 else if (name.equals("abstract")) { 3473 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.abstract"); 3474 } 3475 else if (name.equals("context")) { 3476 return addContext(); 3477 } 3478 else if (name.equals("contextInvariant")) { 3479 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.contextInvariant"); 3480 } 3481 else if (name.equals("type")) { 3482 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.type"); 3483 } 3484 else if (name.equals("baseDefinition")) { 3485 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.baseDefinition"); 3486 } 3487 else if (name.equals("derivation")) { 3488 throw new FHIRException("Cannot call addChild on a primitive type StructureDefinition.derivation"); 3489 } 3490 else if (name.equals("snapshot")) { 3491 this.snapshot = new StructureDefinitionSnapshotComponent(); 3492 return this.snapshot; 3493 } 3494 else if (name.equals("differential")) { 3495 this.differential = new StructureDefinitionDifferentialComponent(); 3496 return this.differential; 3497 } 3498 else 3499 return super.addChild(name); 3500 } 3501 3502 public String fhirType() { 3503 return "StructureDefinition"; 3504 3505 } 3506 3507 public StructureDefinition copy() { 3508 StructureDefinition dst = new StructureDefinition(); 3509 copyValues(dst); 3510 return dst; 3511 } 3512 3513 public void copyValues(StructureDefinition dst) { 3514 super.copyValues(dst); 3515 dst.url = url == null ? null : url.copy(); 3516 if (identifier != null) { 3517 dst.identifier = new ArrayList<Identifier>(); 3518 for (Identifier i : identifier) 3519 dst.identifier.add(i.copy()); 3520 }; 3521 dst.version = version == null ? null : version.copy(); 3522 dst.versionAlgorithm = versionAlgorithm == null ? null : versionAlgorithm.copy(); 3523 dst.name = name == null ? null : name.copy(); 3524 dst.title = title == null ? null : title.copy(); 3525 dst.status = status == null ? null : status.copy(); 3526 dst.experimental = experimental == null ? null : experimental.copy(); 3527 dst.date = date == null ? null : date.copy(); 3528 dst.publisher = publisher == null ? null : publisher.copy(); 3529 if (contact != null) { 3530 dst.contact = new ArrayList<ContactDetail>(); 3531 for (ContactDetail i : contact) 3532 dst.contact.add(i.copy()); 3533 }; 3534 dst.description = description == null ? null : description.copy(); 3535 if (useContext != null) { 3536 dst.useContext = new ArrayList<UsageContext>(); 3537 for (UsageContext i : useContext) 3538 dst.useContext.add(i.copy()); 3539 }; 3540 if (jurisdiction != null) { 3541 dst.jurisdiction = new ArrayList<CodeableConcept>(); 3542 for (CodeableConcept i : jurisdiction) 3543 dst.jurisdiction.add(i.copy()); 3544 }; 3545 dst.purpose = purpose == null ? null : purpose.copy(); 3546 dst.copyright = copyright == null ? null : copyright.copy(); 3547 dst.copyrightLabel = copyrightLabel == null ? null : copyrightLabel.copy(); 3548 if (keyword != null) { 3549 dst.keyword = new ArrayList<Coding>(); 3550 for (Coding i : keyword) 3551 dst.keyword.add(i.copy()); 3552 }; 3553 dst.fhirVersion = fhirVersion == null ? null : fhirVersion.copy(); 3554 if (mapping != null) { 3555 dst.mapping = new ArrayList<StructureDefinitionMappingComponent>(); 3556 for (StructureDefinitionMappingComponent i : mapping) 3557 dst.mapping.add(i.copy()); 3558 }; 3559 dst.kind = kind == null ? null : kind.copy(); 3560 dst.abstract_ = abstract_ == null ? null : abstract_.copy(); 3561 if (context != null) { 3562 dst.context = new ArrayList<StructureDefinitionContextComponent>(); 3563 for (StructureDefinitionContextComponent i : context) 3564 dst.context.add(i.copy()); 3565 }; 3566 if (contextInvariant != null) { 3567 dst.contextInvariant = new ArrayList<StringType>(); 3568 for (StringType i : contextInvariant) 3569 dst.contextInvariant.add(i.copy()); 3570 }; 3571 dst.type = type == null ? null : type.copy(); 3572 dst.baseDefinition = baseDefinition == null ? null : baseDefinition.copy(); 3573 dst.derivation = derivation == null ? null : derivation.copy(); 3574 dst.snapshot = snapshot == null ? null : snapshot.copy(); 3575 dst.differential = differential == null ? null : differential.copy(); 3576 } 3577 3578 protected StructureDefinition typedCopy() { 3579 return copy(); 3580 } 3581 3582 @Override 3583 public boolean equalsDeep(Base other_) { 3584 if (!super.equalsDeep(other_)) 3585 return false; 3586 if (!(other_ instanceof StructureDefinition)) 3587 return false; 3588 StructureDefinition o = (StructureDefinition) other_; 3589 return compareDeep(url, o.url, true) && compareDeep(identifier, o.identifier, true) && compareDeep(version, o.version, true) 3590 && compareDeep(versionAlgorithm, o.versionAlgorithm, true) && compareDeep(name, o.name, true) && compareDeep(title, o.title, true) 3591 && compareDeep(status, o.status, true) && compareDeep(experimental, o.experimental, true) && compareDeep(date, o.date, true) 3592 && compareDeep(publisher, o.publisher, true) && compareDeep(contact, o.contact, true) && compareDeep(description, o.description, true) 3593 && compareDeep(useContext, o.useContext, true) && compareDeep(jurisdiction, o.jurisdiction, true) 3594 && compareDeep(purpose, o.purpose, true) && compareDeep(copyright, o.copyright, true) && compareDeep(copyrightLabel, o.copyrightLabel, true) 3595 && compareDeep(keyword, o.keyword, true) && compareDeep(fhirVersion, o.fhirVersion, true) && compareDeep(mapping, o.mapping, true) 3596 && compareDeep(kind, o.kind, true) && compareDeep(abstract_, o.abstract_, true) && compareDeep(context, o.context, true) 3597 && compareDeep(contextInvariant, o.contextInvariant, true) && compareDeep(type, o.type, true) && compareDeep(baseDefinition, o.baseDefinition, true) 3598 && compareDeep(derivation, o.derivation, true) && compareDeep(snapshot, o.snapshot, true) && compareDeep(differential, o.differential, true) 3599 ; 3600 } 3601 3602 @Override 3603 public boolean equalsShallow(Base other_) { 3604 if (!super.equalsShallow(other_)) 3605 return false; 3606 if (!(other_ instanceof StructureDefinition)) 3607 return false; 3608 StructureDefinition o = (StructureDefinition) other_; 3609 return compareValues(url, o.url, true) && compareValues(version, o.version, true) && compareValues(name, o.name, true) 3610 && compareValues(title, o.title, true) && compareValues(status, o.status, true) && compareValues(experimental, o.experimental, true) 3611 && compareValues(date, o.date, true) && compareValues(publisher, o.publisher, true) && compareValues(description, o.description, true) 3612 && compareValues(purpose, o.purpose, true) && compareValues(copyright, o.copyright, true) && compareValues(copyrightLabel, o.copyrightLabel, true) 3613 && compareValues(fhirVersion, o.fhirVersion, true) && compareValues(kind, o.kind, true) && compareValues(abstract_, o.abstract_, true) 3614 && compareValues(contextInvariant, o.contextInvariant, true) && compareValues(type, o.type, true) && compareValues(baseDefinition, o.baseDefinition, true) 3615 && compareValues(derivation, o.derivation, true); 3616 } 3617 3618 public boolean isEmpty() { 3619 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, identifier, version 3620 , versionAlgorithm, name, title, status, experimental, date, publisher, contact 3621 , description, useContext, jurisdiction, purpose, copyright, copyrightLabel, keyword 3622 , fhirVersion, mapping, kind, abstract_, context, contextInvariant, type, baseDefinition 3623 , derivation, snapshot, differential); 3624 } 3625 3626 @Override 3627 public ResourceType getResourceType() { 3628 return ResourceType.StructureDefinition; 3629 } 3630 3631 /** 3632 * Search parameter: <b>abstract</b> 3633 * <p> 3634 * Description: <b>Whether the structure is abstract</b><br> 3635 * Type: <b>token</b><br> 3636 * Path: <b>StructureDefinition.abstract</b><br> 3637 * </p> 3638 */ 3639 @SearchParamDefinition(name="abstract", path="StructureDefinition.abstract", description="Whether the structure is abstract", type="token" ) 3640 public static final String SP_ABSTRACT = "abstract"; 3641 /** 3642 * <b>Fluent Client</b> search parameter constant for <b>abstract</b> 3643 * <p> 3644 * Description: <b>Whether the structure is abstract</b><br> 3645 * Type: <b>token</b><br> 3646 * Path: <b>StructureDefinition.abstract</b><br> 3647 * </p> 3648 */ 3649 public static final ca.uhn.fhir.rest.gclient.TokenClientParam ABSTRACT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ABSTRACT); 3650 3651 /** 3652 * Search parameter: <b>base-path</b> 3653 * <p> 3654 * Description: <b>Path that identifies the base element</b><br> 3655 * Type: <b>token</b><br> 3656 * Path: <b>StructureDefinition.snapshot.element.base.path | StructureDefinition.differential.element.base.path</b><br> 3657 * </p> 3658 */ 3659 @SearchParamDefinition(name="base-path", path="StructureDefinition.snapshot.element.base.path | StructureDefinition.differential.element.base.path", description="Path that identifies the base element", type="token" ) 3660 public static final String SP_BASE_PATH = "base-path"; 3661 /** 3662 * <b>Fluent Client</b> search parameter constant for <b>base-path</b> 3663 * <p> 3664 * Description: <b>Path that identifies the base element</b><br> 3665 * Type: <b>token</b><br> 3666 * Path: <b>StructureDefinition.snapshot.element.base.path | StructureDefinition.differential.element.base.path</b><br> 3667 * </p> 3668 */ 3669 public static final ca.uhn.fhir.rest.gclient.TokenClientParam BASE_PATH = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_BASE_PATH); 3670 3671 /** 3672 * Search parameter: <b>base</b> 3673 * <p> 3674 * Description: <b>Definition that this type is constrained/specialized from</b><br> 3675 * Type: <b>reference</b><br> 3676 * Path: <b>StructureDefinition.baseDefinition</b><br> 3677 * </p> 3678 */ 3679 @SearchParamDefinition(name="base", path="StructureDefinition.baseDefinition", description="Definition that this type is constrained/specialized from", type="reference", target={StructureDefinition.class } ) 3680 public static final String SP_BASE = "base"; 3681 /** 3682 * <b>Fluent Client</b> search parameter constant for <b>base</b> 3683 * <p> 3684 * Description: <b>Definition that this type is constrained/specialized from</b><br> 3685 * Type: <b>reference</b><br> 3686 * Path: <b>StructureDefinition.baseDefinition</b><br> 3687 * </p> 3688 */ 3689 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam BASE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_BASE); 3690 3691/** 3692 * Constant for fluent queries to be used to add include statements. Specifies 3693 * the path value of "<b>StructureDefinition:base</b>". 3694 */ 3695 public static final ca.uhn.fhir.model.api.Include INCLUDE_BASE = new ca.uhn.fhir.model.api.Include("StructureDefinition:base").toLocked(); 3696 3697 /** 3698 * Search parameter: <b>derivation</b> 3699 * <p> 3700 * Description: <b>specialization | constraint - How relates to base definition</b><br> 3701 * Type: <b>token</b><br> 3702 * Path: <b>StructureDefinition.derivation</b><br> 3703 * </p> 3704 */ 3705 @SearchParamDefinition(name="derivation", path="StructureDefinition.derivation", description="specialization | constraint - How relates to base definition", type="token" ) 3706 public static final String SP_DERIVATION = "derivation"; 3707 /** 3708 * <b>Fluent Client</b> search parameter constant for <b>derivation</b> 3709 * <p> 3710 * Description: <b>specialization | constraint - How relates to base definition</b><br> 3711 * Type: <b>token</b><br> 3712 * Path: <b>StructureDefinition.derivation</b><br> 3713 * </p> 3714 */ 3715 public static final ca.uhn.fhir.rest.gclient.TokenClientParam DERIVATION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_DERIVATION); 3716 3717 /** 3718 * Search parameter: <b>experimental</b> 3719 * <p> 3720 * Description: <b>For testing purposes, not real usage</b><br> 3721 * Type: <b>token</b><br> 3722 * Path: <b>StructureDefinition.experimental</b><br> 3723 * </p> 3724 */ 3725 @SearchParamDefinition(name="experimental", path="StructureDefinition.experimental", description="For testing purposes, not real usage", type="token" ) 3726 public static final String SP_EXPERIMENTAL = "experimental"; 3727 /** 3728 * <b>Fluent Client</b> search parameter constant for <b>experimental</b> 3729 * <p> 3730 * Description: <b>For testing purposes, not real usage</b><br> 3731 * Type: <b>token</b><br> 3732 * Path: <b>StructureDefinition.experimental</b><br> 3733 * </p> 3734 */ 3735 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EXPERIMENTAL = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EXPERIMENTAL); 3736 3737 /** 3738 * Search parameter: <b>ext-context-expression</b> 3739 * <p> 3740 * Description: <b>An expression of extension context assigned to the structure definition</b><br> 3741 * Type: <b>token</b><br> 3742 * Path: <b>StructureDefinition.context.expression</b><br> 3743 * </p> 3744 */ 3745 @SearchParamDefinition(name="ext-context-expression", path="StructureDefinition.context.expression", description="An expression of extension context assigned to the structure definition", type="token" ) 3746 public static final String SP_EXT_CONTEXT_EXPRESSION = "ext-context-expression"; 3747 /** 3748 * <b>Fluent Client</b> search parameter constant for <b>ext-context-expression</b> 3749 * <p> 3750 * Description: <b>An expression of extension context assigned to the structure definition</b><br> 3751 * Type: <b>token</b><br> 3752 * Path: <b>StructureDefinition.context.expression</b><br> 3753 * </p> 3754 */ 3755 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EXT_CONTEXT_EXPRESSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EXT_CONTEXT_EXPRESSION); 3756 3757 /** 3758 * Search parameter: <b>ext-context-type</b> 3759 * <p> 3760 * Description: <b>A type of extension context assigned to the structure definition</b><br> 3761 * Type: <b>token</b><br> 3762 * Path: <b>StructureDefinition.context.type</b><br> 3763 * </p> 3764 */ 3765 @SearchParamDefinition(name="ext-context-type", path="StructureDefinition.context.type", description="A type of extension context assigned to the structure definition", type="token" ) 3766 public static final String SP_EXT_CONTEXT_TYPE = "ext-context-type"; 3767 /** 3768 * <b>Fluent Client</b> search parameter constant for <b>ext-context-type</b> 3769 * <p> 3770 * Description: <b>A type of extension context assigned to the structure definition</b><br> 3771 * Type: <b>token</b><br> 3772 * Path: <b>StructureDefinition.context.type</b><br> 3773 * </p> 3774 */ 3775 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EXT_CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EXT_CONTEXT_TYPE); 3776 3777 /** 3778 * Search parameter: <b>ext-context</b> 3779 * <p> 3780 * Description: <b>An extension context assigned to the structure definition</b><br> 3781 * Type: <b>composite</b><br> 3782 * Path: <b>StructureDefinition.context</b><br> 3783 * </p> 3784 */ 3785 @SearchParamDefinition(name="ext-context", path="StructureDefinition.context", description="An extension context assigned to the structure definition", type="composite", compositeOf={"ext-context-type", "ext-context-expression"} ) 3786 public static final String SP_EXT_CONTEXT = "ext-context"; 3787 /** 3788 * <b>Fluent Client</b> search parameter constant for <b>ext-context</b> 3789 * <p> 3790 * Description: <b>An extension context assigned to the structure definition</b><br> 3791 * Type: <b>composite</b><br> 3792 * Path: <b>StructureDefinition.context</b><br> 3793 * </p> 3794 */ 3795 public static final ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam> EXT_CONTEXT = new ca.uhn.fhir.rest.gclient.CompositeClientParam<ca.uhn.fhir.rest.gclient.TokenClientParam, ca.uhn.fhir.rest.gclient.TokenClientParam>(SP_EXT_CONTEXT); 3796 3797 /** 3798 * Search parameter: <b>keyword</b> 3799 * <p> 3800 * Description: <b>A code for the StructureDefinition</b><br> 3801 * Type: <b>token</b><br> 3802 * Path: <b>StructureDefinition.keyword</b><br> 3803 * </p> 3804 */ 3805 @SearchParamDefinition(name="keyword", path="StructureDefinition.keyword", description="A code for the StructureDefinition", type="token" ) 3806 public static final String SP_KEYWORD = "keyword"; 3807 /** 3808 * <b>Fluent Client</b> search parameter constant for <b>keyword</b> 3809 * <p> 3810 * Description: <b>A code for the StructureDefinition</b><br> 3811 * Type: <b>token</b><br> 3812 * Path: <b>StructureDefinition.keyword</b><br> 3813 * </p> 3814 */ 3815 public static final ca.uhn.fhir.rest.gclient.TokenClientParam KEYWORD = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_KEYWORD); 3816 3817 /** 3818 * Search parameter: <b>kind</b> 3819 * <p> 3820 * Description: <b>primitive-type | complex-type | resource | logical</b><br> 3821 * Type: <b>token</b><br> 3822 * Path: <b>StructureDefinition.kind</b><br> 3823 * </p> 3824 */ 3825 @SearchParamDefinition(name="kind", path="StructureDefinition.kind", description="primitive-type | complex-type | resource | logical", type="token" ) 3826 public static final String SP_KIND = "kind"; 3827 /** 3828 * <b>Fluent Client</b> search parameter constant for <b>kind</b> 3829 * <p> 3830 * Description: <b>primitive-type | complex-type | resource | logical</b><br> 3831 * Type: <b>token</b><br> 3832 * Path: <b>StructureDefinition.kind</b><br> 3833 * </p> 3834 */ 3835 public static final ca.uhn.fhir.rest.gclient.TokenClientParam KIND = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_KIND); 3836 3837 /** 3838 * Search parameter: <b>path</b> 3839 * <p> 3840 * Description: <b>A path that is constrained in the StructureDefinition</b><br> 3841 * Type: <b>token</b><br> 3842 * Path: <b>StructureDefinition.snapshot.element.path | StructureDefinition.differential.element.path</b><br> 3843 * </p> 3844 */ 3845 @SearchParamDefinition(name="path", path="StructureDefinition.snapshot.element.path | StructureDefinition.differential.element.path", description="A path that is constrained in the StructureDefinition", type="token" ) 3846 public static final String SP_PATH = "path"; 3847 /** 3848 * <b>Fluent Client</b> search parameter constant for <b>path</b> 3849 * <p> 3850 * Description: <b>A path that is constrained in the StructureDefinition</b><br> 3851 * Type: <b>token</b><br> 3852 * Path: <b>StructureDefinition.snapshot.element.path | StructureDefinition.differential.element.path</b><br> 3853 * </p> 3854 */ 3855 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PATH = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PATH); 3856 3857 /** 3858 * Search parameter: <b>type</b> 3859 * <p> 3860 * Description: <b>Type defined or constrained by this structure</b><br> 3861 * Type: <b>uri</b><br> 3862 * Path: <b>StructureDefinition.type</b><br> 3863 * </p> 3864 */ 3865 @SearchParamDefinition(name="type", path="StructureDefinition.type", description="Type defined or constrained by this structure", type="uri" ) 3866 public static final String SP_TYPE = "type"; 3867 /** 3868 * <b>Fluent Client</b> search parameter constant for <b>type</b> 3869 * <p> 3870 * Description: <b>Type defined or constrained by this structure</b><br> 3871 * Type: <b>uri</b><br> 3872 * Path: <b>StructureDefinition.type</b><br> 3873 * </p> 3874 */ 3875 public static final ca.uhn.fhir.rest.gclient.UriClientParam TYPE = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_TYPE); 3876 3877 /** 3878 * Search parameter: <b>valueset</b> 3879 * <p> 3880 * Description: <b>A vocabulary binding reference</b><br> 3881 * Type: <b>reference</b><br> 3882 * Path: <b>StructureDefinition.snapshot.element.binding.valueSet</b><br> 3883 * </p> 3884 */ 3885 @SearchParamDefinition(name="valueset", path="StructureDefinition.snapshot.element.binding.valueSet", description="A vocabulary binding reference", type="reference", target={ValueSet.class } ) 3886 public static final String SP_VALUESET = "valueset"; 3887 /** 3888 * <b>Fluent Client</b> search parameter constant for <b>valueset</b> 3889 * <p> 3890 * Description: <b>A vocabulary binding reference</b><br> 3891 * Type: <b>reference</b><br> 3892 * Path: <b>StructureDefinition.snapshot.element.binding.valueSet</b><br> 3893 * </p> 3894 */ 3895 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam VALUESET = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_VALUESET); 3896 3897/** 3898 * Constant for fluent queries to be used to add include statements. Specifies 3899 * the path value of "<b>StructureDefinition:valueset</b>". 3900 */ 3901 public static final ca.uhn.fhir.model.api.Include INCLUDE_VALUESET = new ca.uhn.fhir.model.api.Include("StructureDefinition:valueset").toLocked(); 3902 3903 /** 3904 * Search parameter: <b>context-quantity</b> 3905 * <p> 3906 * Description: <b>Multiple Resources: 3907 3908* [CapabilityStatement](capabilitystatement.html): A quantity- or range-valued use context assigned to the capability statement 3909* [CodeSystem](codesystem.html): A quantity- or range-valued use context assigned to the code system 3910* [CompartmentDefinition](compartmentdefinition.html): A quantity- or range-valued use context assigned to the compartment definition 3911* [ConceptMap](conceptmap.html): A quantity- or range-valued use context assigned to the concept map 3912* [GraphDefinition](graphdefinition.html): A quantity- or range-valued use context assigned to the graph definition 3913* [ImplementationGuide](implementationguide.html): A quantity- or range-valued use context assigned to the implementation guide 3914* [MessageDefinition](messagedefinition.html): A quantity- or range-valued use context assigned to the message definition 3915* [NamingSystem](namingsystem.html): A quantity- or range-valued use context assigned to the naming system 3916* [OperationDefinition](operationdefinition.html): A quantity- or range-valued use context assigned to the operation definition 3917* [SearchParameter](searchparameter.html): A quantity- or range-valued use context assigned to the search parameter 3918* [StructureDefinition](structuredefinition.html): A quantity- or range-valued use context assigned to the structure definition 3919* [StructureMap](structuremap.html): A quantity- or range-valued use context assigned to the structure map 3920* [TerminologyCapabilities](terminologycapabilities.html): A quantity- or range-valued use context assigned to the terminology capabilities 3921* [ValueSet](valueset.html): A quantity- or range-valued use context assigned to the value set 3922</b><br> 3923 * Type: <b>quantity</b><br> 3924 * 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> 3925 * </p> 3926 */ 3927 @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" ) 3928 public static final String SP_CONTEXT_QUANTITY = "context-quantity"; 3929 /** 3930 * <b>Fluent Client</b> search parameter constant for <b>context-quantity</b> 3931 * <p> 3932 * Description: <b>Multiple Resources: 3933 3934* [CapabilityStatement](capabilitystatement.html): A quantity- or range-valued use context assigned to the capability statement 3935* [CodeSystem](codesystem.html): A quantity- or range-valued use context assigned to the code system 3936* [CompartmentDefinition](compartmentdefinition.html): A quantity- or range-valued use context assigned to the compartment definition 3937* [ConceptMap](conceptmap.html): A quantity- or range-valued use context assigned to the concept map 3938* [GraphDefinition](graphdefinition.html): A quantity- or range-valued use context assigned to the graph definition 3939* [ImplementationGuide](implementationguide.html): A quantity- or range-valued use context assigned to the implementation guide 3940* [MessageDefinition](messagedefinition.html): A quantity- or range-valued use context assigned to the message definition 3941* [NamingSystem](namingsystem.html): A quantity- or range-valued use context assigned to the naming system 3942* [OperationDefinition](operationdefinition.html): A quantity- or range-valued use context assigned to the operation definition 3943* [SearchParameter](searchparameter.html): A quantity- or range-valued use context assigned to the search parameter 3944* [StructureDefinition](structuredefinition.html): A quantity- or range-valued use context assigned to the structure definition 3945* [StructureMap](structuremap.html): A quantity- or range-valued use context assigned to the structure map 3946* [TerminologyCapabilities](terminologycapabilities.html): A quantity- or range-valued use context assigned to the terminology capabilities 3947* [ValueSet](valueset.html): A quantity- or range-valued use context assigned to the value set 3948</b><br> 3949 * Type: <b>quantity</b><br> 3950 * 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> 3951 * </p> 3952 */ 3953 public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_CONTEXT_QUANTITY); 3954 3955 /** 3956 * Search parameter: <b>context-type-quantity</b> 3957 * <p> 3958 * Description: <b>Multiple Resources: 3959 3960* [CapabilityStatement](capabilitystatement.html): A use context type and quantity- or range-based value assigned to the capability statement 3961* [CodeSystem](codesystem.html): A use context type and quantity- or range-based value assigned to the code system 3962* [CompartmentDefinition](compartmentdefinition.html): A use context type and quantity- or range-based value assigned to the compartment definition 3963* [ConceptMap](conceptmap.html): A use context type and quantity- or range-based value assigned to the concept map 3964* [GraphDefinition](graphdefinition.html): A use context type and quantity- or range-based value assigned to the graph definition 3965* [ImplementationGuide](implementationguide.html): A use context type and quantity- or range-based value assigned to the implementation guide 3966* [MessageDefinition](messagedefinition.html): A use context type and quantity- or range-based value assigned to the message definition 3967* [NamingSystem](namingsystem.html): A use context type and quantity- or range-based value assigned to the naming system 3968* [OperationDefinition](operationdefinition.html): A use context type and quantity- or range-based value assigned to the operation definition 3969* [SearchParameter](searchparameter.html): A use context type and quantity- or range-based value assigned to the search parameter 3970* [StructureDefinition](structuredefinition.html): A use context type and quantity- or range-based value assigned to the structure definition 3971* [StructureMap](structuremap.html): A use context type and quantity- or range-based value assigned to the structure map 3972* [TerminologyCapabilities](terminologycapabilities.html): A use context type and quantity- or range-based value assigned to the terminology capabilities 3973* [ValueSet](valueset.html): A use context type and quantity- or range-based value assigned to the value set 3974</b><br> 3975 * Type: <b>composite</b><br> 3976 * 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> 3977 * </p> 3978 */ 3979 @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"} ) 3980 public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; 3981 /** 3982 * <b>Fluent Client</b> search parameter constant for <b>context-type-quantity</b> 3983 * <p> 3984 * Description: <b>Multiple Resources: 3985 3986* [CapabilityStatement](capabilitystatement.html): A use context type and quantity- or range-based value assigned to the capability statement 3987* [CodeSystem](codesystem.html): A use context type and quantity- or range-based value assigned to the code system 3988* [CompartmentDefinition](compartmentdefinition.html): A use context type and quantity- or range-based value assigned to the compartment definition 3989* [ConceptMap](conceptmap.html): A use context type and quantity- or range-based value assigned to the concept map 3990* [GraphDefinition](graphdefinition.html): A use context type and quantity- or range-based value assigned to the graph definition 3991* [ImplementationGuide](implementationguide.html): A use context type and quantity- or range-based value assigned to the implementation guide 3992* [MessageDefinition](messagedefinition.html): A use context type and quantity- or range-based value assigned to the message definition 3993* [NamingSystem](namingsystem.html): A use context type and quantity- or range-based value assigned to the naming system 3994* [OperationDefinition](operationdefinition.html): A use context type and quantity- or range-based value assigned to the operation definition 3995* [SearchParameter](searchparameter.html): A use context type and quantity- or range-based value assigned to the search parameter 3996* [StructureDefinition](structuredefinition.html): A use context type and quantity- or range-based value assigned to the structure definition 3997* [StructureMap](structuremap.html): A use context type and quantity- or range-based value assigned to the structure map 3998* [TerminologyCapabilities](terminologycapabilities.html): A use context type and quantity- or range-based value assigned to the terminology capabilities 3999* [ValueSet](valueset.html): A use context type and quantity- or range-based value assigned to the value set 4000</b><br> 4001 * Type: <b>composite</b><br> 4002 * 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> 4003 * </p> 4004 */ 4005 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); 4006 4007 /** 4008 * Search parameter: <b>context-type-value</b> 4009 * <p> 4010 * Description: <b>Multiple Resources: 4011 4012* [CapabilityStatement](capabilitystatement.html): A use context type and value assigned to the capability statement 4013* [CodeSystem](codesystem.html): A use context type and value assigned to the code system 4014* [CompartmentDefinition](compartmentdefinition.html): A use context type and value assigned to the compartment definition 4015* [ConceptMap](conceptmap.html): A use context type and value assigned to the concept map 4016* [GraphDefinition](graphdefinition.html): A use context type and value assigned to the graph definition 4017* [ImplementationGuide](implementationguide.html): A use context type and value assigned to the implementation guide 4018* [MessageDefinition](messagedefinition.html): A use context type and value assigned to the message definition 4019* [NamingSystem](namingsystem.html): A use context type and value assigned to the naming system 4020* [OperationDefinition](operationdefinition.html): A use context type and value assigned to the operation definition 4021* [SearchParameter](searchparameter.html): A use context type and value assigned to the search parameter 4022* [StructureDefinition](structuredefinition.html): A use context type and value assigned to the structure definition 4023* [StructureMap](structuremap.html): A use context type and value assigned to the structure map 4024* [TerminologyCapabilities](terminologycapabilities.html): A use context type and value assigned to the terminology capabilities 4025* [ValueSet](valueset.html): A use context type and value assigned to the value set 4026</b><br> 4027 * Type: <b>composite</b><br> 4028 * 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> 4029 * </p> 4030 */ 4031 @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"} ) 4032 public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; 4033 /** 4034 * <b>Fluent Client</b> search parameter constant for <b>context-type-value</b> 4035 * <p> 4036 * Description: <b>Multiple Resources: 4037 4038* [CapabilityStatement](capabilitystatement.html): A use context type and value assigned to the capability statement 4039* [CodeSystem](codesystem.html): A use context type and value assigned to the code system 4040* [CompartmentDefinition](compartmentdefinition.html): A use context type and value assigned to the compartment definition 4041* [ConceptMap](conceptmap.html): A use context type and value assigned to the concept map 4042* [GraphDefinition](graphdefinition.html): A use context type and value assigned to the graph definition 4043* [ImplementationGuide](implementationguide.html): A use context type and value assigned to the implementation guide 4044* [MessageDefinition](messagedefinition.html): A use context type and value assigned to the message definition 4045* [NamingSystem](namingsystem.html): A use context type and value assigned to the naming system 4046* [OperationDefinition](operationdefinition.html): A use context type and value assigned to the operation definition 4047* [SearchParameter](searchparameter.html): A use context type and value assigned to the search parameter 4048* [StructureDefinition](structuredefinition.html): A use context type and value assigned to the structure definition 4049* [StructureMap](structuremap.html): A use context type and value assigned to the structure map 4050* [TerminologyCapabilities](terminologycapabilities.html): A use context type and value assigned to the terminology capabilities 4051* [ValueSet](valueset.html): A use context type and value assigned to the value set 4052</b><br> 4053 * Type: <b>composite</b><br> 4054 * 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> 4055 * </p> 4056 */ 4057 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); 4058 4059 /** 4060 * Search parameter: <b>context-type</b> 4061 * <p> 4062 * Description: <b>Multiple Resources: 4063 4064* [CapabilityStatement](capabilitystatement.html): A type of use context assigned to the capability statement 4065* [CodeSystem](codesystem.html): A type of use context assigned to the code system 4066* [CompartmentDefinition](compartmentdefinition.html): A type of use context assigned to the compartment definition 4067* [ConceptMap](conceptmap.html): A type of use context assigned to the concept map 4068* [GraphDefinition](graphdefinition.html): A type of use context assigned to the graph definition 4069* [ImplementationGuide](implementationguide.html): A type of use context assigned to the implementation guide 4070* [MessageDefinition](messagedefinition.html): A type of use context assigned to the message definition 4071* [NamingSystem](namingsystem.html): A type of use context assigned to the naming system 4072* [OperationDefinition](operationdefinition.html): A type of use context assigned to the operation definition 4073* [SearchParameter](searchparameter.html): A type of use context assigned to the search parameter 4074* [StructureDefinition](structuredefinition.html): A type of use context assigned to the structure definition 4075* [StructureMap](structuremap.html): A type of use context assigned to the structure map 4076* [TerminologyCapabilities](terminologycapabilities.html): A type of use context assigned to the terminology capabilities 4077* [ValueSet](valueset.html): A type of use context assigned to the value set 4078</b><br> 4079 * Type: <b>token</b><br> 4080 * 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> 4081 * </p> 4082 */ 4083 @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" ) 4084 public static final String SP_CONTEXT_TYPE = "context-type"; 4085 /** 4086 * <b>Fluent Client</b> search parameter constant for <b>context-type</b> 4087 * <p> 4088 * Description: <b>Multiple Resources: 4089 4090* [CapabilityStatement](capabilitystatement.html): A type of use context assigned to the capability statement 4091* [CodeSystem](codesystem.html): A type of use context assigned to the code system 4092* [CompartmentDefinition](compartmentdefinition.html): A type of use context assigned to the compartment definition 4093* [ConceptMap](conceptmap.html): A type of use context assigned to the concept map 4094* [GraphDefinition](graphdefinition.html): A type of use context assigned to the graph definition 4095* [ImplementationGuide](implementationguide.html): A type of use context assigned to the implementation guide 4096* [MessageDefinition](messagedefinition.html): A type of use context assigned to the message definition 4097* [NamingSystem](namingsystem.html): A type of use context assigned to the naming system 4098* [OperationDefinition](operationdefinition.html): A type of use context assigned to the operation definition 4099* [SearchParameter](searchparameter.html): A type of use context assigned to the search parameter 4100* [StructureDefinition](structuredefinition.html): A type of use context assigned to the structure definition 4101* [StructureMap](structuremap.html): A type of use context assigned to the structure map 4102* [TerminologyCapabilities](terminologycapabilities.html): A type of use context assigned to the terminology capabilities 4103* [ValueSet](valueset.html): A type of use context assigned to the value set 4104</b><br> 4105 * Type: <b>token</b><br> 4106 * 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> 4107 * </p> 4108 */ 4109 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT_TYPE); 4110 4111 /** 4112 * Search parameter: <b>context</b> 4113 * <p> 4114 * Description: <b>Multiple Resources: 4115 4116* [CapabilityStatement](capabilitystatement.html): A use context assigned to the capability statement 4117* [CodeSystem](codesystem.html): A use context assigned to the code system 4118* [CompartmentDefinition](compartmentdefinition.html): A use context assigned to the compartment definition 4119* [ConceptMap](conceptmap.html): A use context assigned to the concept map 4120* [GraphDefinition](graphdefinition.html): A use context assigned to the graph definition 4121* [ImplementationGuide](implementationguide.html): A use context assigned to the implementation guide 4122* [MessageDefinition](messagedefinition.html): A use context assigned to the message definition 4123* [NamingSystem](namingsystem.html): A use context assigned to the naming system 4124* [OperationDefinition](operationdefinition.html): A use context assigned to the operation definition 4125* [SearchParameter](searchparameter.html): A use context assigned to the search parameter 4126* [StructureDefinition](structuredefinition.html): A use context assigned to the structure definition 4127* [StructureMap](structuremap.html): A use context assigned to the structure map 4128* [TerminologyCapabilities](terminologycapabilities.html): A use context assigned to the terminology capabilities 4129* [ValueSet](valueset.html): A use context assigned to the value set 4130</b><br> 4131 * Type: <b>token</b><br> 4132 * 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> 4133 * </p> 4134 */ 4135 @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" ) 4136 public static final String SP_CONTEXT = "context"; 4137 /** 4138 * <b>Fluent Client</b> search parameter constant for <b>context</b> 4139 * <p> 4140 * Description: <b>Multiple Resources: 4141 4142* [CapabilityStatement](capabilitystatement.html): A use context assigned to the capability statement 4143* [CodeSystem](codesystem.html): A use context assigned to the code system 4144* [CompartmentDefinition](compartmentdefinition.html): A use context assigned to the compartment definition 4145* [ConceptMap](conceptmap.html): A use context assigned to the concept map 4146* [GraphDefinition](graphdefinition.html): A use context assigned to the graph definition 4147* [ImplementationGuide](implementationguide.html): A use context assigned to the implementation guide 4148* [MessageDefinition](messagedefinition.html): A use context assigned to the message definition 4149* [NamingSystem](namingsystem.html): A use context assigned to the naming system 4150* [OperationDefinition](operationdefinition.html): A use context assigned to the operation definition 4151* [SearchParameter](searchparameter.html): A use context assigned to the search parameter 4152* [StructureDefinition](structuredefinition.html): A use context assigned to the structure definition 4153* [StructureMap](structuremap.html): A use context assigned to the structure map 4154* [TerminologyCapabilities](terminologycapabilities.html): A use context assigned to the terminology capabilities 4155* [ValueSet](valueset.html): A use context assigned to the value set 4156</b><br> 4157 * Type: <b>token</b><br> 4158 * 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> 4159 * </p> 4160 */ 4161 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT); 4162 4163 /** 4164 * Search parameter: <b>date</b> 4165 * <p> 4166 * Description: <b>Multiple Resources: 4167 4168* [CapabilityStatement](capabilitystatement.html): The capability statement publication date 4169* [CodeSystem](codesystem.html): The code system publication date 4170* [CompartmentDefinition](compartmentdefinition.html): The compartment definition publication date 4171* [ConceptMap](conceptmap.html): The concept map publication date 4172* [GraphDefinition](graphdefinition.html): The graph definition publication date 4173* [ImplementationGuide](implementationguide.html): The implementation guide publication date 4174* [MessageDefinition](messagedefinition.html): The message definition publication date 4175* [NamingSystem](namingsystem.html): The naming system publication date 4176* [OperationDefinition](operationdefinition.html): The operation definition publication date 4177* [SearchParameter](searchparameter.html): The search parameter publication date 4178* [StructureDefinition](structuredefinition.html): The structure definition publication date 4179* [StructureMap](structuremap.html): The structure map publication date 4180* [TerminologyCapabilities](terminologycapabilities.html): The terminology capabilities publication date 4181* [ValueSet](valueset.html): The value set publication date 4182</b><br> 4183 * Type: <b>date</b><br> 4184 * 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> 4185 * </p> 4186 */ 4187 @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" ) 4188 public static final String SP_DATE = "date"; 4189 /** 4190 * <b>Fluent Client</b> search parameter constant for <b>date</b> 4191 * <p> 4192 * Description: <b>Multiple Resources: 4193 4194* [CapabilityStatement](capabilitystatement.html): The capability statement publication date 4195* [CodeSystem](codesystem.html): The code system publication date 4196* [CompartmentDefinition](compartmentdefinition.html): The compartment definition publication date 4197* [ConceptMap](conceptmap.html): The concept map publication date 4198* [GraphDefinition](graphdefinition.html): The graph definition publication date 4199* [ImplementationGuide](implementationguide.html): The implementation guide publication date 4200* [MessageDefinition](messagedefinition.html): The message definition publication date 4201* [NamingSystem](namingsystem.html): The naming system publication date 4202* [OperationDefinition](operationdefinition.html): The operation definition publication date 4203* [SearchParameter](searchparameter.html): The search parameter publication date 4204* [StructureDefinition](structuredefinition.html): The structure definition publication date 4205* [StructureMap](structuremap.html): The structure map publication date 4206* [TerminologyCapabilities](terminologycapabilities.html): The terminology capabilities publication date 4207* [ValueSet](valueset.html): The value set publication date 4208</b><br> 4209 * Type: <b>date</b><br> 4210 * 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> 4211 * </p> 4212 */ 4213 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 4214 4215 /** 4216 * Search parameter: <b>description</b> 4217 * <p> 4218 * Description: <b>Multiple Resources: 4219 4220* [CapabilityStatement](capabilitystatement.html): The description of the capability statement 4221* [CodeSystem](codesystem.html): The description of the code system 4222* [CompartmentDefinition](compartmentdefinition.html): The description of the compartment definition 4223* [ConceptMap](conceptmap.html): The description of the concept map 4224* [GraphDefinition](graphdefinition.html): The description of the graph definition 4225* [ImplementationGuide](implementationguide.html): The description of the implementation guide 4226* [MessageDefinition](messagedefinition.html): The description of the message definition 4227* [NamingSystem](namingsystem.html): The description of the naming system 4228* [OperationDefinition](operationdefinition.html): The description of the operation definition 4229* [SearchParameter](searchparameter.html): The description of the search parameter 4230* [StructureDefinition](structuredefinition.html): The description of the structure definition 4231* [StructureMap](structuremap.html): The description of the structure map 4232* [TerminologyCapabilities](terminologycapabilities.html): The description of the terminology capabilities 4233* [ValueSet](valueset.html): The description of the value set 4234</b><br> 4235 * Type: <b>string</b><br> 4236 * 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> 4237 * </p> 4238 */ 4239 @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" ) 4240 public static final String SP_DESCRIPTION = "description"; 4241 /** 4242 * <b>Fluent Client</b> search parameter constant for <b>description</b> 4243 * <p> 4244 * Description: <b>Multiple Resources: 4245 4246* [CapabilityStatement](capabilitystatement.html): The description of the capability statement 4247* [CodeSystem](codesystem.html): The description of the code system 4248* [CompartmentDefinition](compartmentdefinition.html): The description of the compartment definition 4249* [ConceptMap](conceptmap.html): The description of the concept map 4250* [GraphDefinition](graphdefinition.html): The description of the graph definition 4251* [ImplementationGuide](implementationguide.html): The description of the implementation guide 4252* [MessageDefinition](messagedefinition.html): The description of the message definition 4253* [NamingSystem](namingsystem.html): The description of the naming system 4254* [OperationDefinition](operationdefinition.html): The description of the operation definition 4255* [SearchParameter](searchparameter.html): The description of the search parameter 4256* [StructureDefinition](structuredefinition.html): The description of the structure definition 4257* [StructureMap](structuremap.html): The description of the structure map 4258* [TerminologyCapabilities](terminologycapabilities.html): The description of the terminology capabilities 4259* [ValueSet](valueset.html): The description of the value set 4260</b><br> 4261 * Type: <b>string</b><br> 4262 * 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> 4263 * </p> 4264 */ 4265 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DESCRIPTION); 4266 4267 /** 4268 * Search parameter: <b>identifier</b> 4269 * <p> 4270 * Description: <b>Multiple Resources: 4271 4272* [CodeSystem](codesystem.html): External identifier for the code system 4273* [ConceptMap](conceptmap.html): External identifier for the concept map 4274* [MessageDefinition](messagedefinition.html): External identifier for the message definition 4275* [NamingSystem](namingsystem.html): External identifier for the naming system 4276* [StructureDefinition](structuredefinition.html): External identifier for the structure definition 4277* [StructureMap](structuremap.html): External identifier for the structure map 4278* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities 4279* [ValueSet](valueset.html): External identifier for the value set 4280</b><br> 4281 * Type: <b>token</b><br> 4282 * Path: <b>CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | NamingSystem.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier</b><br> 4283 * </p> 4284 */ 4285 @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" ) 4286 public static final String SP_IDENTIFIER = "identifier"; 4287 /** 4288 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 4289 * <p> 4290 * Description: <b>Multiple Resources: 4291 4292* [CodeSystem](codesystem.html): External identifier for the code system 4293* [ConceptMap](conceptmap.html): External identifier for the concept map 4294* [MessageDefinition](messagedefinition.html): External identifier for the message definition 4295* [NamingSystem](namingsystem.html): External identifier for the naming system 4296* [StructureDefinition](structuredefinition.html): External identifier for the structure definition 4297* [StructureMap](structuremap.html): External identifier for the structure map 4298* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities 4299* [ValueSet](valueset.html): External identifier for the value set 4300</b><br> 4301 * Type: <b>token</b><br> 4302 * Path: <b>CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | NamingSystem.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier</b><br> 4303 * </p> 4304 */ 4305 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 4306 4307 /** 4308 * Search parameter: <b>jurisdiction</b> 4309 * <p> 4310 * Description: <b>Multiple Resources: 4311 4312* [CapabilityStatement](capabilitystatement.html): Intended jurisdiction for the capability statement 4313* [CodeSystem](codesystem.html): Intended jurisdiction for the code system 4314* [ConceptMap](conceptmap.html): Intended jurisdiction for the concept map 4315* [GraphDefinition](graphdefinition.html): Intended jurisdiction for the graph definition 4316* [ImplementationGuide](implementationguide.html): Intended jurisdiction for the implementation guide 4317* [MessageDefinition](messagedefinition.html): Intended jurisdiction for the message definition 4318* [NamingSystem](namingsystem.html): Intended jurisdiction for the naming system 4319* [OperationDefinition](operationdefinition.html): Intended jurisdiction for the operation definition 4320* [SearchParameter](searchparameter.html): Intended jurisdiction for the search parameter 4321* [StructureDefinition](structuredefinition.html): Intended jurisdiction for the structure definition 4322* [StructureMap](structuremap.html): Intended jurisdiction for the structure map 4323* [TerminologyCapabilities](terminologycapabilities.html): Intended jurisdiction for the terminology capabilities 4324* [ValueSet](valueset.html): Intended jurisdiction for the value set 4325</b><br> 4326 * Type: <b>token</b><br> 4327 * 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> 4328 * </p> 4329 */ 4330 @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" ) 4331 public static final String SP_JURISDICTION = "jurisdiction"; 4332 /** 4333 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 4334 * <p> 4335 * Description: <b>Multiple Resources: 4336 4337* [CapabilityStatement](capabilitystatement.html): Intended jurisdiction for the capability statement 4338* [CodeSystem](codesystem.html): Intended jurisdiction for the code system 4339* [ConceptMap](conceptmap.html): Intended jurisdiction for the concept map 4340* [GraphDefinition](graphdefinition.html): Intended jurisdiction for the graph definition 4341* [ImplementationGuide](implementationguide.html): Intended jurisdiction for the implementation guide 4342* [MessageDefinition](messagedefinition.html): Intended jurisdiction for the message definition 4343* [NamingSystem](namingsystem.html): Intended jurisdiction for the naming system 4344* [OperationDefinition](operationdefinition.html): Intended jurisdiction for the operation definition 4345* [SearchParameter](searchparameter.html): Intended jurisdiction for the search parameter 4346* [StructureDefinition](structuredefinition.html): Intended jurisdiction for the structure definition 4347* [StructureMap](structuremap.html): Intended jurisdiction for the structure map 4348* [TerminologyCapabilities](terminologycapabilities.html): Intended jurisdiction for the terminology capabilities 4349* [ValueSet](valueset.html): Intended jurisdiction for the value set 4350</b><br> 4351 * Type: <b>token</b><br> 4352 * 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> 4353 * </p> 4354 */ 4355 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_JURISDICTION); 4356 4357 /** 4358 * Search parameter: <b>name</b> 4359 * <p> 4360 * Description: <b>Multiple Resources: 4361 4362* [CapabilityStatement](capabilitystatement.html): Computationally friendly name of the capability statement 4363* [CodeSystem](codesystem.html): Computationally friendly name of the code system 4364* [CompartmentDefinition](compartmentdefinition.html): Computationally friendly name of the compartment definition 4365* [ConceptMap](conceptmap.html): Computationally friendly name of the concept map 4366* [GraphDefinition](graphdefinition.html): Computationally friendly name of the graph definition 4367* [ImplementationGuide](implementationguide.html): Computationally friendly name of the implementation guide 4368* [MessageDefinition](messagedefinition.html): Computationally friendly name of the message definition 4369* [NamingSystem](namingsystem.html): Computationally friendly name of the naming system 4370* [OperationDefinition](operationdefinition.html): Computationally friendly name of the operation definition 4371* [SearchParameter](searchparameter.html): Computationally friendly name of the search parameter 4372* [StructureDefinition](structuredefinition.html): Computationally friendly name of the structure definition 4373* [StructureMap](structuremap.html): Computationally friendly name of the structure map 4374* [TerminologyCapabilities](terminologycapabilities.html): Computationally friendly name of the terminology capabilities 4375* [ValueSet](valueset.html): Computationally friendly name of the value set 4376</b><br> 4377 * Type: <b>string</b><br> 4378 * 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> 4379 * </p> 4380 */ 4381 @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" ) 4382 public static final String SP_NAME = "name"; 4383 /** 4384 * <b>Fluent Client</b> search parameter constant for <b>name</b> 4385 * <p> 4386 * Description: <b>Multiple Resources: 4387 4388* [CapabilityStatement](capabilitystatement.html): Computationally friendly name of the capability statement 4389* [CodeSystem](codesystem.html): Computationally friendly name of the code system 4390* [CompartmentDefinition](compartmentdefinition.html): Computationally friendly name of the compartment definition 4391* [ConceptMap](conceptmap.html): Computationally friendly name of the concept map 4392* [GraphDefinition](graphdefinition.html): Computationally friendly name of the graph definition 4393* [ImplementationGuide](implementationguide.html): Computationally friendly name of the implementation guide 4394* [MessageDefinition](messagedefinition.html): Computationally friendly name of the message definition 4395* [NamingSystem](namingsystem.html): Computationally friendly name of the naming system 4396* [OperationDefinition](operationdefinition.html): Computationally friendly name of the operation definition 4397* [SearchParameter](searchparameter.html): Computationally friendly name of the search parameter 4398* [StructureDefinition](structuredefinition.html): Computationally friendly name of the structure definition 4399* [StructureMap](structuremap.html): Computationally friendly name of the structure map 4400* [TerminologyCapabilities](terminologycapabilities.html): Computationally friendly name of the terminology capabilities 4401* [ValueSet](valueset.html): Computationally friendly name of the value set 4402</b><br> 4403 * Type: <b>string</b><br> 4404 * 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> 4405 * </p> 4406 */ 4407 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 4408 4409 /** 4410 * Search parameter: <b>publisher</b> 4411 * <p> 4412 * Description: <b>Multiple Resources: 4413 4414* [CapabilityStatement](capabilitystatement.html): Name of the publisher of the capability statement 4415* [CodeSystem](codesystem.html): Name of the publisher of the code system 4416* [CompartmentDefinition](compartmentdefinition.html): Name of the publisher of the compartment definition 4417* [ConceptMap](conceptmap.html): Name of the publisher of the concept map 4418* [GraphDefinition](graphdefinition.html): Name of the publisher of the graph definition 4419* [ImplementationGuide](implementationguide.html): Name of the publisher of the implementation guide 4420* [MessageDefinition](messagedefinition.html): Name of the publisher of the message definition 4421* [NamingSystem](namingsystem.html): Name of the publisher of the naming system 4422* [OperationDefinition](operationdefinition.html): Name of the publisher of the operation definition 4423* [SearchParameter](searchparameter.html): Name of the publisher of the search parameter 4424* [StructureDefinition](structuredefinition.html): Name of the publisher of the structure definition 4425* [StructureMap](structuremap.html): Name of the publisher of the structure map 4426* [TerminologyCapabilities](terminologycapabilities.html): Name of the publisher of the terminology capabilities 4427* [ValueSet](valueset.html): Name of the publisher of the value set 4428</b><br> 4429 * Type: <b>string</b><br> 4430 * 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> 4431 * </p> 4432 */ 4433 @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" ) 4434 public static final String SP_PUBLISHER = "publisher"; 4435 /** 4436 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 4437 * <p> 4438 * Description: <b>Multiple Resources: 4439 4440* [CapabilityStatement](capabilitystatement.html): Name of the publisher of the capability statement 4441* [CodeSystem](codesystem.html): Name of the publisher of the code system 4442* [CompartmentDefinition](compartmentdefinition.html): Name of the publisher of the compartment definition 4443* [ConceptMap](conceptmap.html): Name of the publisher of the concept map 4444* [GraphDefinition](graphdefinition.html): Name of the publisher of the graph definition 4445* [ImplementationGuide](implementationguide.html): Name of the publisher of the implementation guide 4446* [MessageDefinition](messagedefinition.html): Name of the publisher of the message definition 4447* [NamingSystem](namingsystem.html): Name of the publisher of the naming system 4448* [OperationDefinition](operationdefinition.html): Name of the publisher of the operation definition 4449* [SearchParameter](searchparameter.html): Name of the publisher of the search parameter 4450* [StructureDefinition](structuredefinition.html): Name of the publisher of the structure definition 4451* [StructureMap](structuremap.html): Name of the publisher of the structure map 4452* [TerminologyCapabilities](terminologycapabilities.html): Name of the publisher of the terminology capabilities 4453* [ValueSet](valueset.html): Name of the publisher of the value set 4454</b><br> 4455 * Type: <b>string</b><br> 4456 * 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> 4457 * </p> 4458 */ 4459 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PUBLISHER); 4460 4461 /** 4462 * Search parameter: <b>status</b> 4463 * <p> 4464 * Description: <b>Multiple Resources: 4465 4466* [CapabilityStatement](capabilitystatement.html): The current status of the capability statement 4467* [CodeSystem](codesystem.html): The current status of the code system 4468* [CompartmentDefinition](compartmentdefinition.html): The current status of the compartment definition 4469* [ConceptMap](conceptmap.html): The current status of the concept map 4470* [GraphDefinition](graphdefinition.html): The current status of the graph definition 4471* [ImplementationGuide](implementationguide.html): The current status of the implementation guide 4472* [MessageDefinition](messagedefinition.html): The current status of the message definition 4473* [NamingSystem](namingsystem.html): The current status of the naming system 4474* [OperationDefinition](operationdefinition.html): The current status of the operation definition 4475* [SearchParameter](searchparameter.html): The current status of the search parameter 4476* [StructureDefinition](structuredefinition.html): The current status of the structure definition 4477* [StructureMap](structuremap.html): The current status of the structure map 4478* [TerminologyCapabilities](terminologycapabilities.html): The current status of the terminology capabilities 4479* [ValueSet](valueset.html): The current status of the value set 4480</b><br> 4481 * Type: <b>token</b><br> 4482 * 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> 4483 * </p> 4484 */ 4485 @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" ) 4486 public static final String SP_STATUS = "status"; 4487 /** 4488 * <b>Fluent Client</b> search parameter constant for <b>status</b> 4489 * <p> 4490 * Description: <b>Multiple Resources: 4491 4492* [CapabilityStatement](capabilitystatement.html): The current status of the capability statement 4493* [CodeSystem](codesystem.html): The current status of the code system 4494* [CompartmentDefinition](compartmentdefinition.html): The current status of the compartment definition 4495* [ConceptMap](conceptmap.html): The current status of the concept map 4496* [GraphDefinition](graphdefinition.html): The current status of the graph definition 4497* [ImplementationGuide](implementationguide.html): The current status of the implementation guide 4498* [MessageDefinition](messagedefinition.html): The current status of the message definition 4499* [NamingSystem](namingsystem.html): The current status of the naming system 4500* [OperationDefinition](operationdefinition.html): The current status of the operation definition 4501* [SearchParameter](searchparameter.html): The current status of the search parameter 4502* [StructureDefinition](structuredefinition.html): The current status of the structure definition 4503* [StructureMap](structuremap.html): The current status of the structure map 4504* [TerminologyCapabilities](terminologycapabilities.html): The current status of the terminology capabilities 4505* [ValueSet](valueset.html): The current status of the value set 4506</b><br> 4507 * Type: <b>token</b><br> 4508 * 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> 4509 * </p> 4510 */ 4511 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 4512 4513 /** 4514 * Search parameter: <b>title</b> 4515 * <p> 4516 * Description: <b>Multiple Resources: 4517 4518* [CapabilityStatement](capabilitystatement.html): The human-friendly name of the capability statement 4519* [CodeSystem](codesystem.html): The human-friendly name of the code system 4520* [ConceptMap](conceptmap.html): The human-friendly name of the concept map 4521* [ImplementationGuide](implementationguide.html): The human-friendly name of the implementation guide 4522* [MessageDefinition](messagedefinition.html): The human-friendly name of the message definition 4523* [OperationDefinition](operationdefinition.html): The human-friendly name of the operation definition 4524* [StructureDefinition](structuredefinition.html): The human-friendly name of the structure definition 4525* [StructureMap](structuremap.html): The human-friendly name of the structure map 4526* [TerminologyCapabilities](terminologycapabilities.html): The human-friendly name of the terminology capabilities 4527* [ValueSet](valueset.html): The human-friendly name of the value set 4528</b><br> 4529 * Type: <b>string</b><br> 4530 * Path: <b>CapabilityStatement.title | CodeSystem.title | ConceptMap.title | ImplementationGuide.title | MessageDefinition.title | OperationDefinition.title | StructureDefinition.title | StructureMap.title | TerminologyCapabilities.title | ValueSet.title</b><br> 4531 * </p> 4532 */ 4533 @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" ) 4534 public static final String SP_TITLE = "title"; 4535 /** 4536 * <b>Fluent Client</b> search parameter constant for <b>title</b> 4537 * <p> 4538 * Description: <b>Multiple Resources: 4539 4540* [CapabilityStatement](capabilitystatement.html): The human-friendly name of the capability statement 4541* [CodeSystem](codesystem.html): The human-friendly name of the code system 4542* [ConceptMap](conceptmap.html): The human-friendly name of the concept map 4543* [ImplementationGuide](implementationguide.html): The human-friendly name of the implementation guide 4544* [MessageDefinition](messagedefinition.html): The human-friendly name of the message definition 4545* [OperationDefinition](operationdefinition.html): The human-friendly name of the operation definition 4546* [StructureDefinition](structuredefinition.html): The human-friendly name of the structure definition 4547* [StructureMap](structuremap.html): The human-friendly name of the structure map 4548* [TerminologyCapabilities](terminologycapabilities.html): The human-friendly name of the terminology capabilities 4549* [ValueSet](valueset.html): The human-friendly name of the value set 4550</b><br> 4551 * Type: <b>string</b><br> 4552 * Path: <b>CapabilityStatement.title | CodeSystem.title | ConceptMap.title | ImplementationGuide.title | MessageDefinition.title | OperationDefinition.title | StructureDefinition.title | StructureMap.title | TerminologyCapabilities.title | ValueSet.title</b><br> 4553 * </p> 4554 */ 4555 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); 4556 4557 /** 4558 * Search parameter: <b>url</b> 4559 * <p> 4560 * Description: <b>Multiple Resources: 4561 4562* [CapabilityStatement](capabilitystatement.html): The uri that identifies the capability statement 4563* [CodeSystem](codesystem.html): The uri that identifies the code system 4564* [CompartmentDefinition](compartmentdefinition.html): The uri that identifies the compartment definition 4565* [ConceptMap](conceptmap.html): The URI that identifies the concept map 4566* [GraphDefinition](graphdefinition.html): The uri that identifies the graph definition 4567* [ImplementationGuide](implementationguide.html): The uri that identifies the implementation guide 4568* [MessageDefinition](messagedefinition.html): The uri that identifies the message definition 4569* [NamingSystem](namingsystem.html): The uri that identifies the naming system 4570* [OperationDefinition](operationdefinition.html): The uri that identifies the operation definition 4571* [SearchParameter](searchparameter.html): The uri that identifies the search parameter 4572* [StructureDefinition](structuredefinition.html): The uri that identifies the structure definition 4573* [StructureMap](structuremap.html): The uri that identifies the structure map 4574* [TerminologyCapabilities](terminologycapabilities.html): The uri that identifies the terminology capabilities 4575* [ValueSet](valueset.html): The uri that identifies the value set 4576</b><br> 4577 * Type: <b>uri</b><br> 4578 * 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> 4579 * </p> 4580 */ 4581 @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" ) 4582 public static final String SP_URL = "url"; 4583 /** 4584 * <b>Fluent Client</b> search parameter constant for <b>url</b> 4585 * <p> 4586 * Description: <b>Multiple Resources: 4587 4588* [CapabilityStatement](capabilitystatement.html): The uri that identifies the capability statement 4589* [CodeSystem](codesystem.html): The uri that identifies the code system 4590* [CompartmentDefinition](compartmentdefinition.html): The uri that identifies the compartment definition 4591* [ConceptMap](conceptmap.html): The URI that identifies the concept map 4592* [GraphDefinition](graphdefinition.html): The uri that identifies the graph definition 4593* [ImplementationGuide](implementationguide.html): The uri that identifies the implementation guide 4594* [MessageDefinition](messagedefinition.html): The uri that identifies the message definition 4595* [NamingSystem](namingsystem.html): The uri that identifies the naming system 4596* [OperationDefinition](operationdefinition.html): The uri that identifies the operation definition 4597* [SearchParameter](searchparameter.html): The uri that identifies the search parameter 4598* [StructureDefinition](structuredefinition.html): The uri that identifies the structure definition 4599* [StructureMap](structuremap.html): The uri that identifies the structure map 4600* [TerminologyCapabilities](terminologycapabilities.html): The uri that identifies the terminology capabilities 4601* [ValueSet](valueset.html): The uri that identifies the value set 4602</b><br> 4603 * Type: <b>uri</b><br> 4604 * 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> 4605 * </p> 4606 */ 4607 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 4608 4609 /** 4610 * Search parameter: <b>version</b> 4611 * <p> 4612 * Description: <b>Multiple Resources: 4613 4614* [CapabilityStatement](capabilitystatement.html): The business version of the capability statement 4615* [CodeSystem](codesystem.html): The business version of the code system 4616* [CompartmentDefinition](compartmentdefinition.html): The business version of the compartment definition 4617* [ConceptMap](conceptmap.html): The business version of the concept map 4618* [GraphDefinition](graphdefinition.html): The business version of the graph definition 4619* [ImplementationGuide](implementationguide.html): The business version of the implementation guide 4620* [MessageDefinition](messagedefinition.html): The business version of the message definition 4621* [NamingSystem](namingsystem.html): The business version of the naming system 4622* [OperationDefinition](operationdefinition.html): The business version of the operation definition 4623* [SearchParameter](searchparameter.html): The business version of the search parameter 4624* [StructureDefinition](structuredefinition.html): The business version of the structure definition 4625* [StructureMap](structuremap.html): The business version of the structure map 4626* [TerminologyCapabilities](terminologycapabilities.html): The business version of the terminology capabilities 4627* [ValueSet](valueset.html): The business version of the value set 4628</b><br> 4629 * Type: <b>token</b><br> 4630 * 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> 4631 * </p> 4632 */ 4633 @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" ) 4634 public static final String SP_VERSION = "version"; 4635 /** 4636 * <b>Fluent Client</b> search parameter constant for <b>version</b> 4637 * <p> 4638 * Description: <b>Multiple Resources: 4639 4640* [CapabilityStatement](capabilitystatement.html): The business version of the capability statement 4641* [CodeSystem](codesystem.html): The business version of the code system 4642* [CompartmentDefinition](compartmentdefinition.html): The business version of the compartment definition 4643* [ConceptMap](conceptmap.html): The business version of the concept map 4644* [GraphDefinition](graphdefinition.html): The business version of the graph definition 4645* [ImplementationGuide](implementationguide.html): The business version of the implementation guide 4646* [MessageDefinition](messagedefinition.html): The business version of the message definition 4647* [NamingSystem](namingsystem.html): The business version of the naming system 4648* [OperationDefinition](operationdefinition.html): The business version of the operation definition 4649* [SearchParameter](searchparameter.html): The business version of the search parameter 4650* [StructureDefinition](structuredefinition.html): The business version of the structure definition 4651* [StructureMap](structuremap.html): The business version of the structure map 4652* [TerminologyCapabilities](terminologycapabilities.html): The business version of the terminology capabilities 4653* [ValueSet](valueset.html): The business version of the value set 4654</b><br> 4655 * Type: <b>token</b><br> 4656 * 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> 4657 * </p> 4658 */ 4659 public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); 4660 4661 // Manual code (from Configuration.txt): 4662 public String describeType() { 4663 if ("Extension".equals(getType())) 4664 return "Extension" ; 4665 switch (getKind()) { 4666 case COMPLEXTYPE: return getDerivation() == TypeDerivationRule.CONSTRAINT ? "DataType Constraint" : "DataType" ; 4667 case LOGICAL: return getDerivation() == TypeDerivationRule.CONSTRAINT ? "Logical Model" : "Logical Model Profile"; 4668 case PRIMITIVETYPE: return getDerivation() == TypeDerivationRule.CONSTRAINT ? "PrimitiveType Constraint" : "PrimitiveType"; 4669 case RESOURCE: return getDerivation() == TypeDerivationRule.CONSTRAINT ? "Resource Profile" : "Resource"; 4670 default: 4671 return "Definition"; 4672 } 4673 } 4674 4675 public String getTypeName() { 4676 String t = getType(); 4677 return StructureDefinitionKind.LOGICAL.equals(getKind()) && t.contains("/") ? t.substring(t.lastIndexOf("/")+1) : t; 4678 } 4679 4680 public String getTypeTail() { 4681 if (getType().contains("/")) { 4682 return getType().substring(getType().lastIndexOf("/")+1); 4683 } else { 4684 return getType(); 4685 } 4686 } 4687 4688 // end addition 4689 4690 4691} 4692