
001package org.hl7.fhir.dstu3.model; 002 003 004 005/* 006 Copyright (c) 2011+, HL7, Inc. 007 All rights reserved. 008 009 Redistribution and use in source and binary forms, with or without modification, 010 are permitted provided that the following conditions are met: 011 012 * Redistributions of source code must retain the above copyright notice, this 013 list of conditions and the following disclaimer. 014 * Redistributions in binary form must reproduce the above copyright notice, 015 this list of conditions and the following disclaimer in the documentation 016 and/or other materials provided with the distribution. 017 * Neither the name of HL7 nor the names of its contributors may be used to 018 endorse or promote products derived from this software without specific 019 prior written permission. 020 021 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 022 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 023 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 024 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 025 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 026 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 027 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 028 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 029 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 030 POSSIBILITY OF SUCH DAMAGE. 031 032*/ 033 034// Generated on Fri, Mar 16, 2018 15:21+1100 for FHIR v3.0.x 035import java.util.ArrayList; 036import java.util.Date; 037import java.util.List; 038 039import org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus; 040import org.hl7.fhir.dstu3.model.Enumerations.PublicationStatusEnumFactory; 041import org.hl7.fhir.exceptions.FHIRException; 042import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 043import org.hl7.fhir.utilities.Utilities; 044 045import ca.uhn.fhir.model.api.annotation.Block; 046import ca.uhn.fhir.model.api.annotation.Child; 047import ca.uhn.fhir.model.api.annotation.ChildOrder; 048import ca.uhn.fhir.model.api.annotation.Description; 049import ca.uhn.fhir.model.api.annotation.ResourceDef; 050import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 051/** 052 * A compartment definition that defines how resources are accessed on a server. 053 */ 054@ResourceDef(name="CompartmentDefinition", profile="http://hl7.org/fhir/Profile/CompartmentDefinition") 055@ChildOrder(names={"url", "name", "title", "status", "experimental", "date", "publisher", "contact", "description", "purpose", "useContext", "jurisdiction", "code", "search", "resource"}) 056public class CompartmentDefinition extends MetadataResource { 057 058 public enum CompartmentType { 059 /** 060 * The compartment definition is for the patient compartment 061 */ 062 PATIENT, 063 /** 064 * The compartment definition is for the encounter compartment 065 */ 066 ENCOUNTER, 067 /** 068 * The compartment definition is for the related-person compartment 069 */ 070 RELATEDPERSON, 071 /** 072 * The compartment definition is for the practitioner compartment 073 */ 074 PRACTITIONER, 075 /** 076 * The compartment definition is for the device compartment 077 */ 078 DEVICE, 079 /** 080 * added to help the parsers with the generic types 081 */ 082 NULL; 083 public static CompartmentType fromCode(String codeString) throws FHIRException { 084 if (codeString == null || "".equals(codeString)) 085 return null; 086 if ("Patient".equals(codeString)) 087 return PATIENT; 088 if ("Encounter".equals(codeString)) 089 return ENCOUNTER; 090 if ("RelatedPerson".equals(codeString)) 091 return RELATEDPERSON; 092 if ("Practitioner".equals(codeString)) 093 return PRACTITIONER; 094 if ("Device".equals(codeString)) 095 return DEVICE; 096 if (Configuration.isAcceptInvalidEnums()) 097 return null; 098 else 099 throw new FHIRException("Unknown CompartmentType code '"+codeString+"'"); 100 } 101 public String toCode() { 102 switch (this) { 103 case PATIENT: return "Patient"; 104 case ENCOUNTER: return "Encounter"; 105 case RELATEDPERSON: return "RelatedPerson"; 106 case PRACTITIONER: return "Practitioner"; 107 case DEVICE: return "Device"; 108 case NULL: return null; 109 default: return "?"; 110 } 111 } 112 public String getSystem() { 113 switch (this) { 114 case PATIENT: return "http://hl7.org/fhir/compartment-type"; 115 case ENCOUNTER: return "http://hl7.org/fhir/compartment-type"; 116 case RELATEDPERSON: return "http://hl7.org/fhir/compartment-type"; 117 case PRACTITIONER: return "http://hl7.org/fhir/compartment-type"; 118 case DEVICE: return "http://hl7.org/fhir/compartment-type"; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 public String getDefinition() { 124 switch (this) { 125 case PATIENT: return "The compartment definition is for the patient compartment"; 126 case ENCOUNTER: return "The compartment definition is for the encounter compartment"; 127 case RELATEDPERSON: return "The compartment definition is for the related-person compartment"; 128 case PRACTITIONER: return "The compartment definition is for the practitioner compartment"; 129 case DEVICE: return "The compartment definition is for the device compartment"; 130 case NULL: return null; 131 default: return "?"; 132 } 133 } 134 public String getDisplay() { 135 switch (this) { 136 case PATIENT: return "Patient"; 137 case ENCOUNTER: return "Encounter"; 138 case RELATEDPERSON: return "RelatedPerson"; 139 case PRACTITIONER: return "Practitioner"; 140 case DEVICE: return "Device"; 141 case NULL: return null; 142 default: return "?"; 143 } 144 } 145 } 146 147 public static class CompartmentTypeEnumFactory implements EnumFactory<CompartmentType> { 148 public CompartmentType fromCode(String codeString) throws IllegalArgumentException { 149 if (codeString == null || "".equals(codeString)) 150 if (codeString == null || "".equals(codeString)) 151 return null; 152 if ("Patient".equals(codeString)) 153 return CompartmentType.PATIENT; 154 if ("Encounter".equals(codeString)) 155 return CompartmentType.ENCOUNTER; 156 if ("RelatedPerson".equals(codeString)) 157 return CompartmentType.RELATEDPERSON; 158 if ("Practitioner".equals(codeString)) 159 return CompartmentType.PRACTITIONER; 160 if ("Device".equals(codeString)) 161 return CompartmentType.DEVICE; 162 throw new IllegalArgumentException("Unknown CompartmentType code '"+codeString+"'"); 163 } 164 public Enumeration<CompartmentType> fromType(PrimitiveType<?> code) throws FHIRException { 165 if (code == null) 166 return null; 167 if (code.isEmpty()) 168 return new Enumeration<CompartmentType>(this); 169 String codeString = code.asStringValue(); 170 if (codeString == null || "".equals(codeString)) 171 return null; 172 if ("Patient".equals(codeString)) 173 return new Enumeration<CompartmentType>(this, CompartmentType.PATIENT); 174 if ("Encounter".equals(codeString)) 175 return new Enumeration<CompartmentType>(this, CompartmentType.ENCOUNTER); 176 if ("RelatedPerson".equals(codeString)) 177 return new Enumeration<CompartmentType>(this, CompartmentType.RELATEDPERSON); 178 if ("Practitioner".equals(codeString)) 179 return new Enumeration<CompartmentType>(this, CompartmentType.PRACTITIONER); 180 if ("Device".equals(codeString)) 181 return new Enumeration<CompartmentType>(this, CompartmentType.DEVICE); 182 throw new FHIRException("Unknown CompartmentType code '"+codeString+"'"); 183 } 184 public String toCode(CompartmentType code) { 185 if (code == CompartmentType.PATIENT) 186 return "Patient"; 187 if (code == CompartmentType.ENCOUNTER) 188 return "Encounter"; 189 if (code == CompartmentType.RELATEDPERSON) 190 return "RelatedPerson"; 191 if (code == CompartmentType.PRACTITIONER) 192 return "Practitioner"; 193 if (code == CompartmentType.DEVICE) 194 return "Device"; 195 return "?"; 196 } 197 public String toSystem(CompartmentType code) { 198 return code.getSystem(); 199 } 200 } 201 202 @Block() 203 public static class CompartmentDefinitionResourceComponent extends BackboneElement implements IBaseBackboneElement { 204 /** 205 * The name of a resource supported by the server. 206 */ 207 @Child(name = "code", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 208 @Description(shortDefinition="Name of resource type", formalDefinition="The name of a resource supported by the server." ) 209 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/resource-types") 210 protected CodeType code; 211 212 /** 213 * The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,. 214 */ 215 @Child(name = "param", type = {StringType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 216 @Description(shortDefinition="Search Parameter Name, or chained parameters", formalDefinition="The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,." ) 217 protected List<StringType> param; 218 219 /** 220 * Additional documentation about the resource and compartment. 221 */ 222 @Child(name = "documentation", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) 223 @Description(shortDefinition="Additional documentation about the resource and compartment", formalDefinition="Additional documentation about the resource and compartment." ) 224 protected StringType documentation; 225 226 private static final long serialVersionUID = 988080897L; 227 228 /** 229 * Constructor 230 */ 231 public CompartmentDefinitionResourceComponent() { 232 super(); 233 } 234 235 /** 236 * Constructor 237 */ 238 public CompartmentDefinitionResourceComponent(CodeType code) { 239 super(); 240 this.code = code; 241 } 242 243 /** 244 * @return {@link #code} (The name of a resource supported by the server.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 245 */ 246 public CodeType getCodeElement() { 247 if (this.code == null) 248 if (Configuration.errorOnAutoCreate()) 249 throw new Error("Attempt to auto-create CompartmentDefinitionResourceComponent.code"); 250 else if (Configuration.doAutoCreate()) 251 this.code = new CodeType(); // bb 252 return this.code; 253 } 254 255 public boolean hasCodeElement() { 256 return this.code != null && !this.code.isEmpty(); 257 } 258 259 public boolean hasCode() { 260 return this.code != null && !this.code.isEmpty(); 261 } 262 263 /** 264 * @param value {@link #code} (The name of a resource supported by the server.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 265 */ 266 public CompartmentDefinitionResourceComponent setCodeElement(CodeType value) { 267 this.code = value; 268 return this; 269 } 270 271 /** 272 * @return The name of a resource supported by the server. 273 */ 274 public String getCode() { 275 return this.code == null ? null : this.code.getValue(); 276 } 277 278 /** 279 * @param value The name of a resource supported by the server. 280 */ 281 public CompartmentDefinitionResourceComponent setCode(String value) { 282 if (this.code == null) 283 this.code = new CodeType(); 284 this.code.setValue(value); 285 return this; 286 } 287 288 /** 289 * @return {@link #param} (The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.) 290 */ 291 public List<StringType> getParam() { 292 if (this.param == null) 293 this.param = new ArrayList<StringType>(); 294 return this.param; 295 } 296 297 /** 298 * @return Returns a reference to <code>this</code> for easy method chaining 299 */ 300 public CompartmentDefinitionResourceComponent setParam(List<StringType> theParam) { 301 this.param = theParam; 302 return this; 303 } 304 305 public boolean hasParam() { 306 if (this.param == null) 307 return false; 308 for (StringType item : this.param) 309 if (!item.isEmpty()) 310 return true; 311 return false; 312 } 313 314 /** 315 * @return {@link #param} (The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.) 316 */ 317 public StringType addParamElement() {//2 318 StringType t = new StringType(); 319 if (this.param == null) 320 this.param = new ArrayList<StringType>(); 321 this.param.add(t); 322 return t; 323 } 324 325 /** 326 * @param value {@link #param} (The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.) 327 */ 328 public CompartmentDefinitionResourceComponent addParam(String value) { //1 329 StringType t = new StringType(); 330 t.setValue(value); 331 if (this.param == null) 332 this.param = new ArrayList<StringType>(); 333 this.param.add(t); 334 return this; 335 } 336 337 /** 338 * @param value {@link #param} (The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.) 339 */ 340 public boolean hasParam(String value) { 341 if (this.param == null) 342 return false; 343 for (StringType v : this.param) 344 if (v.getValue().equals(value)) // string 345 return true; 346 return false; 347 } 348 349 /** 350 * @return {@link #documentation} (Additional documentation about the resource and compartment.). This is the underlying object with id, value and extensions. The accessor "getDocumentation" gives direct access to the value 351 */ 352 public StringType getDocumentationElement() { 353 if (this.documentation == null) 354 if (Configuration.errorOnAutoCreate()) 355 throw new Error("Attempt to auto-create CompartmentDefinitionResourceComponent.documentation"); 356 else if (Configuration.doAutoCreate()) 357 this.documentation = new StringType(); // bb 358 return this.documentation; 359 } 360 361 public boolean hasDocumentationElement() { 362 return this.documentation != null && !this.documentation.isEmpty(); 363 } 364 365 public boolean hasDocumentation() { 366 return this.documentation != null && !this.documentation.isEmpty(); 367 } 368 369 /** 370 * @param value {@link #documentation} (Additional documentation about the resource and compartment.). This is the underlying object with id, value and extensions. The accessor "getDocumentation" gives direct access to the value 371 */ 372 public CompartmentDefinitionResourceComponent setDocumentationElement(StringType value) { 373 this.documentation = value; 374 return this; 375 } 376 377 /** 378 * @return Additional documentation about the resource and compartment. 379 */ 380 public String getDocumentation() { 381 return this.documentation == null ? null : this.documentation.getValue(); 382 } 383 384 /** 385 * @param value Additional documentation about the resource and compartment. 386 */ 387 public CompartmentDefinitionResourceComponent setDocumentation(String value) { 388 if (Utilities.noString(value)) 389 this.documentation = null; 390 else { 391 if (this.documentation == null) 392 this.documentation = new StringType(); 393 this.documentation.setValue(value); 394 } 395 return this; 396 } 397 398 protected void listChildren(List<Property> children) { 399 super.listChildren(children); 400 children.add(new Property("code", "code", "The name of a resource supported by the server.", 0, 1, code)); 401 children.add(new Property("param", "string", "The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.", 0, java.lang.Integer.MAX_VALUE, param)); 402 children.add(new Property("documentation", "string", "Additional documentation about the resource and compartment.", 0, 1, documentation)); 403 } 404 405 @Override 406 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 407 switch (_hash) { 408 case 3059181: /*code*/ return new Property("code", "code", "The name of a resource supported by the server.", 0, 1, code); 409 case 106436749: /*param*/ return new Property("param", "string", "The name of a search parameter that represents the link to the compartment. More than one may be listed because a resource may be linked to a compartment in more than one way,.", 0, java.lang.Integer.MAX_VALUE, param); 410 case 1587405498: /*documentation*/ return new Property("documentation", "string", "Additional documentation about the resource and compartment.", 0, 1, documentation); 411 default: return super.getNamedProperty(_hash, _name, _checkValid); 412 } 413 414 } 415 416 @Override 417 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 418 switch (hash) { 419 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeType 420 case 106436749: /*param*/ return this.param == null ? new Base[0] : this.param.toArray(new Base[this.param.size()]); // StringType 421 case 1587405498: /*documentation*/ return this.documentation == null ? new Base[0] : new Base[] {this.documentation}; // StringType 422 default: return super.getProperty(hash, name, checkValid); 423 } 424 425 } 426 427 @Override 428 public Base setProperty(int hash, String name, Base value) throws FHIRException { 429 switch (hash) { 430 case 3059181: // code 431 this.code = castToCode(value); // CodeType 432 return value; 433 case 106436749: // param 434 this.getParam().add(castToString(value)); // StringType 435 return value; 436 case 1587405498: // documentation 437 this.documentation = castToString(value); // StringType 438 return value; 439 default: return super.setProperty(hash, name, value); 440 } 441 442 } 443 444 @Override 445 public Base setProperty(String name, Base value) throws FHIRException { 446 if (name.equals("code")) { 447 this.code = castToCode(value); // CodeType 448 } else if (name.equals("param")) { 449 this.getParam().add(castToString(value)); 450 } else if (name.equals("documentation")) { 451 this.documentation = castToString(value); // StringType 452 } else 453 return super.setProperty(name, value); 454 return value; 455 } 456 457 @Override 458 public Base makeProperty(int hash, String name) throws FHIRException { 459 switch (hash) { 460 case 3059181: return getCodeElement(); 461 case 106436749: return addParamElement(); 462 case 1587405498: return getDocumentationElement(); 463 default: return super.makeProperty(hash, name); 464 } 465 466 } 467 468 @Override 469 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 470 switch (hash) { 471 case 3059181: /*code*/ return new String[] {"code"}; 472 case 106436749: /*param*/ return new String[] {"string"}; 473 case 1587405498: /*documentation*/ return new String[] {"string"}; 474 default: return super.getTypesForProperty(hash, name); 475 } 476 477 } 478 479 @Override 480 public Base addChild(String name) throws FHIRException { 481 if (name.equals("code")) { 482 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.code"); 483 } 484 else if (name.equals("param")) { 485 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.param"); 486 } 487 else if (name.equals("documentation")) { 488 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.documentation"); 489 } 490 else 491 return super.addChild(name); 492 } 493 494 public CompartmentDefinitionResourceComponent copy() { 495 CompartmentDefinitionResourceComponent dst = new CompartmentDefinitionResourceComponent(); 496 copyValues(dst); 497 dst.code = code == null ? null : code.copy(); 498 if (param != null) { 499 dst.param = new ArrayList<StringType>(); 500 for (StringType i : param) 501 dst.param.add(i.copy()); 502 }; 503 dst.documentation = documentation == null ? null : documentation.copy(); 504 return dst; 505 } 506 507 @Override 508 public boolean equalsDeep(Base other_) { 509 if (!super.equalsDeep(other_)) 510 return false; 511 if (!(other_ instanceof CompartmentDefinitionResourceComponent)) 512 return false; 513 CompartmentDefinitionResourceComponent o = (CompartmentDefinitionResourceComponent) other_; 514 return compareDeep(code, o.code, true) && compareDeep(param, o.param, true) && compareDeep(documentation, o.documentation, true) 515 ; 516 } 517 518 @Override 519 public boolean equalsShallow(Base other_) { 520 if (!super.equalsShallow(other_)) 521 return false; 522 if (!(other_ instanceof CompartmentDefinitionResourceComponent)) 523 return false; 524 CompartmentDefinitionResourceComponent o = (CompartmentDefinitionResourceComponent) other_; 525 return compareValues(code, o.code, true) && compareValues(param, o.param, true) && compareValues(documentation, o.documentation, true) 526 ; 527 } 528 529 public boolean isEmpty() { 530 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, param, documentation 531 ); 532 } 533 534 public String fhirType() { 535 return "CompartmentDefinition.resource"; 536 537 } 538 539 } 540 541 /** 542 * Explaination of why this compartment definition is needed and why it has been designed as it has. 543 */ 544 @Child(name = "purpose", type = {MarkdownType.class}, order=0, min=0, max=1, modifier=false, summary=false) 545 @Description(shortDefinition="Why this compartment definition is defined", formalDefinition="Explaination of why this compartment definition is needed and why it has been designed as it has." ) 546 protected MarkdownType purpose; 547 548 /** 549 * Which compartment this definition describes. 550 */ 551 @Child(name = "code", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) 552 @Description(shortDefinition="Patient | Encounter | RelatedPerson | Practitioner | Device", formalDefinition="Which compartment this definition describes." ) 553 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/compartment-type") 554 protected Enumeration<CompartmentType> code; 555 556 /** 557 * Whether the search syntax is supported,. 558 */ 559 @Child(name = "search", type = {BooleanType.class}, order=2, min=1, max=1, modifier=false, summary=true) 560 @Description(shortDefinition="Whether the search syntax is supported", formalDefinition="Whether the search syntax is supported,." ) 561 protected BooleanType search; 562 563 /** 564 * Information about how a resource is related to the compartment. 565 */ 566 @Child(name = "resource", type = {}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 567 @Description(shortDefinition="How a resource is related to the compartment", formalDefinition="Information about how a resource is related to the compartment." ) 568 protected List<CompartmentDefinitionResourceComponent> resource; 569 570 private static final long serialVersionUID = -1159172945L; 571 572 /** 573 * Constructor 574 */ 575 public CompartmentDefinition() { 576 super(); 577 } 578 579 /** 580 * Constructor 581 */ 582 public CompartmentDefinition(UriType url, StringType name, Enumeration<PublicationStatus> status, Enumeration<CompartmentType> code, BooleanType search) { 583 super(); 584 this.url = url; 585 this.name = name; 586 this.status = status; 587 this.code = code; 588 this.search = search; 589 } 590 591 /** 592 * @return {@link #url} (An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this compartment definition is (or will be) published. The URL SHOULD include the major version of the compartment definition. For more information see [Technical and Business Versions](resource.html#versions).). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 593 */ 594 public UriType getUrlElement() { 595 if (this.url == null) 596 if (Configuration.errorOnAutoCreate()) 597 throw new Error("Attempt to auto-create CompartmentDefinition.url"); 598 else if (Configuration.doAutoCreate()) 599 this.url = new UriType(); // bb 600 return this.url; 601 } 602 603 public boolean hasUrlElement() { 604 return this.url != null && !this.url.isEmpty(); 605 } 606 607 public boolean hasUrl() { 608 return this.url != null && !this.url.isEmpty(); 609 } 610 611 /** 612 * @param value {@link #url} (An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this compartment definition is (or will be) published. The URL SHOULD include the major version of the compartment definition. For more information see [Technical and Business Versions](resource.html#versions).). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value 613 */ 614 public CompartmentDefinition setUrlElement(UriType value) { 615 this.url = value; 616 return this; 617 } 618 619 /** 620 * @return An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this compartment definition is (or will be) published. The URL SHOULD include the major version of the compartment definition. For more information see [Technical and Business Versions](resource.html#versions). 621 */ 622 public String getUrl() { 623 return this.url == null ? null : this.url.getValue(); 624 } 625 626 /** 627 * @param value An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this compartment definition is (or will be) published. The URL SHOULD include the major version of the compartment definition. For more information see [Technical and Business Versions](resource.html#versions). 628 */ 629 public CompartmentDefinition setUrl(String value) { 630 if (this.url == null) 631 this.url = new UriType(); 632 this.url.setValue(value); 633 return this; 634 } 635 636 /** 637 * @return {@link #name} (A natural language name identifying the compartment 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 638 */ 639 public StringType getNameElement() { 640 if (this.name == null) 641 if (Configuration.errorOnAutoCreate()) 642 throw new Error("Attempt to auto-create CompartmentDefinition.name"); 643 else if (Configuration.doAutoCreate()) 644 this.name = new StringType(); // bb 645 return this.name; 646 } 647 648 public boolean hasNameElement() { 649 return this.name != null && !this.name.isEmpty(); 650 } 651 652 public boolean hasName() { 653 return this.name != null && !this.name.isEmpty(); 654 } 655 656 /** 657 * @param value {@link #name} (A natural language name identifying the compartment 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 658 */ 659 public CompartmentDefinition setNameElement(StringType value) { 660 this.name = value; 661 return this; 662 } 663 664 /** 665 * @return A natural language name identifying the compartment definition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 666 */ 667 public String getName() { 668 return this.name == null ? null : this.name.getValue(); 669 } 670 671 /** 672 * @param value A natural language name identifying the compartment definition. This name should be usable as an identifier for the module by machine processing applications such as code generation. 673 */ 674 public CompartmentDefinition setName(String value) { 675 if (this.name == null) 676 this.name = new StringType(); 677 this.name.setValue(value); 678 return this; 679 } 680 681 /** 682 * @return {@link #title} (A short, descriptive, user-friendly title for the compartment definition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 683 */ 684 public StringType getTitleElement() { 685 if (this.title == null) 686 if (Configuration.errorOnAutoCreate()) 687 throw new Error("Attempt to auto-create CompartmentDefinition.title"); 688 else if (Configuration.doAutoCreate()) 689 this.title = new StringType(); // bb 690 return this.title; 691 } 692 693 public boolean hasTitleElement() { 694 return this.title != null && !this.title.isEmpty(); 695 } 696 697 public boolean hasTitle() { 698 return this.title != null && !this.title.isEmpty(); 699 } 700 701 /** 702 * @param value {@link #title} (A short, descriptive, user-friendly title for the compartment definition.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 703 */ 704 public CompartmentDefinition setTitleElement(StringType value) { 705 this.title = value; 706 return this; 707 } 708 709 /** 710 * @return A short, descriptive, user-friendly title for the compartment definition. 711 */ 712 public String getTitle() { 713 return this.title == null ? null : this.title.getValue(); 714 } 715 716 /** 717 * @param value A short, descriptive, user-friendly title for the compartment definition. 718 */ 719 public CompartmentDefinition setTitle(String value) { 720 if (Utilities.noString(value)) 721 this.title = null; 722 else { 723 if (this.title == null) 724 this.title = new StringType(); 725 this.title.setValue(value); 726 } 727 return this; 728 } 729 730 /** 731 * @return {@link #status} (The status of this compartment 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 732 */ 733 public Enumeration<PublicationStatus> getStatusElement() { 734 if (this.status == null) 735 if (Configuration.errorOnAutoCreate()) 736 throw new Error("Attempt to auto-create CompartmentDefinition.status"); 737 else if (Configuration.doAutoCreate()) 738 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); // bb 739 return this.status; 740 } 741 742 public boolean hasStatusElement() { 743 return this.status != null && !this.status.isEmpty(); 744 } 745 746 public boolean hasStatus() { 747 return this.status != null && !this.status.isEmpty(); 748 } 749 750 /** 751 * @param value {@link #status} (The status of this compartment 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 752 */ 753 public CompartmentDefinition setStatusElement(Enumeration<PublicationStatus> value) { 754 this.status = value; 755 return this; 756 } 757 758 /** 759 * @return The status of this compartment definition. Enables tracking the life-cycle of the content. 760 */ 761 public PublicationStatus getStatus() { 762 return this.status == null ? null : this.status.getValue(); 763 } 764 765 /** 766 * @param value The status of this compartment definition. Enables tracking the life-cycle of the content. 767 */ 768 public CompartmentDefinition setStatus(PublicationStatus value) { 769 if (this.status == null) 770 this.status = new Enumeration<PublicationStatus>(new PublicationStatusEnumFactory()); 771 this.status.setValue(value); 772 return this; 773 } 774 775 /** 776 * @return {@link #experimental} (A boolean value to indicate that this compartment 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 777 */ 778 public BooleanType getExperimentalElement() { 779 if (this.experimental == null) 780 if (Configuration.errorOnAutoCreate()) 781 throw new Error("Attempt to auto-create CompartmentDefinition.experimental"); 782 else if (Configuration.doAutoCreate()) 783 this.experimental = new BooleanType(); // bb 784 return this.experimental; 785 } 786 787 public boolean hasExperimentalElement() { 788 return this.experimental != null && !this.experimental.isEmpty(); 789 } 790 791 public boolean hasExperimental() { 792 return this.experimental != null && !this.experimental.isEmpty(); 793 } 794 795 /** 796 * @param value {@link #experimental} (A boolean value to indicate that this compartment 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 797 */ 798 public CompartmentDefinition setExperimentalElement(BooleanType value) { 799 this.experimental = value; 800 return this; 801 } 802 803 /** 804 * @return A boolean value to indicate that this compartment definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. 805 */ 806 public boolean getExperimental() { 807 return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); 808 } 809 810 /** 811 * @param value A boolean value to indicate that this compartment definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. 812 */ 813 public CompartmentDefinition setExperimental(boolean value) { 814 if (this.experimental == null) 815 this.experimental = new BooleanType(); 816 this.experimental.setValue(value); 817 return this; 818 } 819 820 /** 821 * @return {@link #date} (The date (and optionally time) when the compartment definition was published. The date must change if and 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 compartment definition changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 822 */ 823 public DateTimeType getDateElement() { 824 if (this.date == null) 825 if (Configuration.errorOnAutoCreate()) 826 throw new Error("Attempt to auto-create CompartmentDefinition.date"); 827 else if (Configuration.doAutoCreate()) 828 this.date = new DateTimeType(); // bb 829 return this.date; 830 } 831 832 public boolean hasDateElement() { 833 return this.date != null && !this.date.isEmpty(); 834 } 835 836 public boolean hasDate() { 837 return this.date != null && !this.date.isEmpty(); 838 } 839 840 /** 841 * @param value {@link #date} (The date (and optionally time) when the compartment definition was published. The date must change if and 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 compartment definition changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 842 */ 843 public CompartmentDefinition setDateElement(DateTimeType value) { 844 this.date = value; 845 return this; 846 } 847 848 /** 849 * @return The date (and optionally time) when the compartment definition was published. The date must change if and 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 compartment definition changes. 850 */ 851 public Date getDate() { 852 return this.date == null ? null : this.date.getValue(); 853 } 854 855 /** 856 * @param value The date (and optionally time) when the compartment definition was published. The date must change if and 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 compartment definition changes. 857 */ 858 public CompartmentDefinition setDate(Date value) { 859 if (value == null) 860 this.date = null; 861 else { 862 if (this.date == null) 863 this.date = new DateTimeType(); 864 this.date.setValue(value); 865 } 866 return this; 867 } 868 869 /** 870 * @return {@link #publisher} (The name of the individual or organization that published the compartment definition.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 871 */ 872 public StringType getPublisherElement() { 873 if (this.publisher == null) 874 if (Configuration.errorOnAutoCreate()) 875 throw new Error("Attempt to auto-create CompartmentDefinition.publisher"); 876 else if (Configuration.doAutoCreate()) 877 this.publisher = new StringType(); // bb 878 return this.publisher; 879 } 880 881 public boolean hasPublisherElement() { 882 return this.publisher != null && !this.publisher.isEmpty(); 883 } 884 885 public boolean hasPublisher() { 886 return this.publisher != null && !this.publisher.isEmpty(); 887 } 888 889 /** 890 * @param value {@link #publisher} (The name of the individual or organization that published the compartment definition.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value 891 */ 892 public CompartmentDefinition setPublisherElement(StringType value) { 893 this.publisher = value; 894 return this; 895 } 896 897 /** 898 * @return The name of the individual or organization that published the compartment definition. 899 */ 900 public String getPublisher() { 901 return this.publisher == null ? null : this.publisher.getValue(); 902 } 903 904 /** 905 * @param value The name of the individual or organization that published the compartment definition. 906 */ 907 public CompartmentDefinition setPublisher(String value) { 908 if (Utilities.noString(value)) 909 this.publisher = null; 910 else { 911 if (this.publisher == null) 912 this.publisher = new StringType(); 913 this.publisher.setValue(value); 914 } 915 return this; 916 } 917 918 /** 919 * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) 920 */ 921 public List<ContactDetail> getContact() { 922 if (this.contact == null) 923 this.contact = new ArrayList<ContactDetail>(); 924 return this.contact; 925 } 926 927 /** 928 * @return Returns a reference to <code>this</code> for easy method chaining 929 */ 930 public CompartmentDefinition setContact(List<ContactDetail> theContact) { 931 this.contact = theContact; 932 return this; 933 } 934 935 public boolean hasContact() { 936 if (this.contact == null) 937 return false; 938 for (ContactDetail item : this.contact) 939 if (!item.isEmpty()) 940 return true; 941 return false; 942 } 943 944 public ContactDetail addContact() { //3 945 ContactDetail t = new ContactDetail(); 946 if (this.contact == null) 947 this.contact = new ArrayList<ContactDetail>(); 948 this.contact.add(t); 949 return t; 950 } 951 952 public CompartmentDefinition addContact(ContactDetail t) { //3 953 if (t == null) 954 return this; 955 if (this.contact == null) 956 this.contact = new ArrayList<ContactDetail>(); 957 this.contact.add(t); 958 return this; 959 } 960 961 /** 962 * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist 963 */ 964 public ContactDetail getContactFirstRep() { 965 if (getContact().isEmpty()) { 966 addContact(); 967 } 968 return getContact().get(0); 969 } 970 971 /** 972 * @return {@link #description} (A free text natural language description of the compartment 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 973 */ 974 public MarkdownType getDescriptionElement() { 975 if (this.description == null) 976 if (Configuration.errorOnAutoCreate()) 977 throw new Error("Attempt to auto-create CompartmentDefinition.description"); 978 else if (Configuration.doAutoCreate()) 979 this.description = new MarkdownType(); // bb 980 return this.description; 981 } 982 983 public boolean hasDescriptionElement() { 984 return this.description != null && !this.description.isEmpty(); 985 } 986 987 public boolean hasDescription() { 988 return this.description != null && !this.description.isEmpty(); 989 } 990 991 /** 992 * @param value {@link #description} (A free text natural language description of the compartment 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 993 */ 994 public CompartmentDefinition setDescriptionElement(MarkdownType value) { 995 this.description = value; 996 return this; 997 } 998 999 /** 1000 * @return A free text natural language description of the compartment definition from a consumer's perspective. 1001 */ 1002 public String getDescription() { 1003 return this.description == null ? null : this.description.getValue(); 1004 } 1005 1006 /** 1007 * @param value A free text natural language description of the compartment definition from a consumer's perspective. 1008 */ 1009 public CompartmentDefinition setDescription(String value) { 1010 if (value == null) 1011 this.description = null; 1012 else { 1013 if (this.description == null) 1014 this.description = new MarkdownType(); 1015 this.description.setValue(value); 1016 } 1017 return this; 1018 } 1019 1020 /** 1021 * @return {@link #purpose} (Explaination of why this compartment 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 1022 */ 1023 public MarkdownType getPurposeElement() { 1024 if (this.purpose == null) 1025 if (Configuration.errorOnAutoCreate()) 1026 throw new Error("Attempt to auto-create CompartmentDefinition.purpose"); 1027 else if (Configuration.doAutoCreate()) 1028 this.purpose = new MarkdownType(); // bb 1029 return this.purpose; 1030 } 1031 1032 public boolean hasPurposeElement() { 1033 return this.purpose != null && !this.purpose.isEmpty(); 1034 } 1035 1036 public boolean hasPurpose() { 1037 return this.purpose != null && !this.purpose.isEmpty(); 1038 } 1039 1040 /** 1041 * @param value {@link #purpose} (Explaination of why this compartment 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 1042 */ 1043 public CompartmentDefinition setPurposeElement(MarkdownType value) { 1044 this.purpose = value; 1045 return this; 1046 } 1047 1048 /** 1049 * @return Explaination of why this compartment definition is needed and why it has been designed as it has. 1050 */ 1051 public String getPurpose() { 1052 return this.purpose == null ? null : this.purpose.getValue(); 1053 } 1054 1055 /** 1056 * @param value Explaination of why this compartment definition is needed and why it has been designed as it has. 1057 */ 1058 public CompartmentDefinition setPurpose(String value) { 1059 if (value == null) 1060 this.purpose = null; 1061 else { 1062 if (this.purpose == null) 1063 this.purpose = new MarkdownType(); 1064 this.purpose.setValue(value); 1065 } 1066 return this; 1067 } 1068 1069 /** 1070 * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate compartment definition instances.) 1071 */ 1072 public List<UsageContext> getUseContext() { 1073 if (this.useContext == null) 1074 this.useContext = new ArrayList<UsageContext>(); 1075 return this.useContext; 1076 } 1077 1078 /** 1079 * @return Returns a reference to <code>this</code> for easy method chaining 1080 */ 1081 public CompartmentDefinition setUseContext(List<UsageContext> theUseContext) { 1082 this.useContext = theUseContext; 1083 return this; 1084 } 1085 1086 public boolean hasUseContext() { 1087 if (this.useContext == null) 1088 return false; 1089 for (UsageContext item : this.useContext) 1090 if (!item.isEmpty()) 1091 return true; 1092 return false; 1093 } 1094 1095 public UsageContext addUseContext() { //3 1096 UsageContext t = new UsageContext(); 1097 if (this.useContext == null) 1098 this.useContext = new ArrayList<UsageContext>(); 1099 this.useContext.add(t); 1100 return t; 1101 } 1102 1103 public CompartmentDefinition addUseContext(UsageContext t) { //3 1104 if (t == null) 1105 return this; 1106 if (this.useContext == null) 1107 this.useContext = new ArrayList<UsageContext>(); 1108 this.useContext.add(t); 1109 return this; 1110 } 1111 1112 /** 1113 * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist 1114 */ 1115 public UsageContext getUseContextFirstRep() { 1116 if (getUseContext().isEmpty()) { 1117 addUseContext(); 1118 } 1119 return getUseContext().get(0); 1120 } 1121 1122 /** 1123 * @return {@link #jurisdiction} (A legal or geographic region in which the compartment definition is intended to be used.) 1124 */ 1125 public List<CodeableConcept> getJurisdiction() { 1126 if (this.jurisdiction == null) 1127 this.jurisdiction = new ArrayList<CodeableConcept>(); 1128 return this.jurisdiction; 1129 } 1130 1131 /** 1132 * @return Returns a reference to <code>this</code> for easy method chaining 1133 */ 1134 public CompartmentDefinition setJurisdiction(List<CodeableConcept> theJurisdiction) { 1135 this.jurisdiction = theJurisdiction; 1136 return this; 1137 } 1138 1139 public boolean hasJurisdiction() { 1140 if (this.jurisdiction == null) 1141 return false; 1142 for (CodeableConcept item : this.jurisdiction) 1143 if (!item.isEmpty()) 1144 return true; 1145 return false; 1146 } 1147 1148 public CodeableConcept addJurisdiction() { //3 1149 CodeableConcept t = new CodeableConcept(); 1150 if (this.jurisdiction == null) 1151 this.jurisdiction = new ArrayList<CodeableConcept>(); 1152 this.jurisdiction.add(t); 1153 return t; 1154 } 1155 1156 public CompartmentDefinition addJurisdiction(CodeableConcept t) { //3 1157 if (t == null) 1158 return this; 1159 if (this.jurisdiction == null) 1160 this.jurisdiction = new ArrayList<CodeableConcept>(); 1161 this.jurisdiction.add(t); 1162 return this; 1163 } 1164 1165 /** 1166 * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist 1167 */ 1168 public CodeableConcept getJurisdictionFirstRep() { 1169 if (getJurisdiction().isEmpty()) { 1170 addJurisdiction(); 1171 } 1172 return getJurisdiction().get(0); 1173 } 1174 1175 /** 1176 * @return {@link #code} (Which compartment this definition describes.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 1177 */ 1178 public Enumeration<CompartmentType> getCodeElement() { 1179 if (this.code == null) 1180 if (Configuration.errorOnAutoCreate()) 1181 throw new Error("Attempt to auto-create CompartmentDefinition.code"); 1182 else if (Configuration.doAutoCreate()) 1183 this.code = new Enumeration<CompartmentType>(new CompartmentTypeEnumFactory()); // bb 1184 return this.code; 1185 } 1186 1187 public boolean hasCodeElement() { 1188 return this.code != null && !this.code.isEmpty(); 1189 } 1190 1191 public boolean hasCode() { 1192 return this.code != null && !this.code.isEmpty(); 1193 } 1194 1195 /** 1196 * @param value {@link #code} (Which compartment this definition describes.). This is the underlying object with id, value and extensions. The accessor "getCode" gives direct access to the value 1197 */ 1198 public CompartmentDefinition setCodeElement(Enumeration<CompartmentType> value) { 1199 this.code = value; 1200 return this; 1201 } 1202 1203 /** 1204 * @return Which compartment this definition describes. 1205 */ 1206 public CompartmentType getCode() { 1207 return this.code == null ? null : this.code.getValue(); 1208 } 1209 1210 /** 1211 * @param value Which compartment this definition describes. 1212 */ 1213 public CompartmentDefinition setCode(CompartmentType value) { 1214 if (this.code == null) 1215 this.code = new Enumeration<CompartmentType>(new CompartmentTypeEnumFactory()); 1216 this.code.setValue(value); 1217 return this; 1218 } 1219 1220 /** 1221 * @return {@link #search} (Whether the search syntax is supported,.). This is the underlying object with id, value and extensions. The accessor "getSearch" gives direct access to the value 1222 */ 1223 public BooleanType getSearchElement() { 1224 if (this.search == null) 1225 if (Configuration.errorOnAutoCreate()) 1226 throw new Error("Attempt to auto-create CompartmentDefinition.search"); 1227 else if (Configuration.doAutoCreate()) 1228 this.search = new BooleanType(); // bb 1229 return this.search; 1230 } 1231 1232 public boolean hasSearchElement() { 1233 return this.search != null && !this.search.isEmpty(); 1234 } 1235 1236 public boolean hasSearch() { 1237 return this.search != null && !this.search.isEmpty(); 1238 } 1239 1240 /** 1241 * @param value {@link #search} (Whether the search syntax is supported,.). This is the underlying object with id, value and extensions. The accessor "getSearch" gives direct access to the value 1242 */ 1243 public CompartmentDefinition setSearchElement(BooleanType value) { 1244 this.search = value; 1245 return this; 1246 } 1247 1248 /** 1249 * @return Whether the search syntax is supported,. 1250 */ 1251 public boolean getSearch() { 1252 return this.search == null || this.search.isEmpty() ? false : this.search.getValue(); 1253 } 1254 1255 /** 1256 * @param value Whether the search syntax is supported,. 1257 */ 1258 public CompartmentDefinition setSearch(boolean value) { 1259 if (this.search == null) 1260 this.search = new BooleanType(); 1261 this.search.setValue(value); 1262 return this; 1263 } 1264 1265 /** 1266 * @return {@link #resource} (Information about how a resource is related to the compartment.) 1267 */ 1268 public List<CompartmentDefinitionResourceComponent> getResource() { 1269 if (this.resource == null) 1270 this.resource = new ArrayList<CompartmentDefinitionResourceComponent>(); 1271 return this.resource; 1272 } 1273 1274 /** 1275 * @return Returns a reference to <code>this</code> for easy method chaining 1276 */ 1277 public CompartmentDefinition setResource(List<CompartmentDefinitionResourceComponent> theResource) { 1278 this.resource = theResource; 1279 return this; 1280 } 1281 1282 public boolean hasResource() { 1283 if (this.resource == null) 1284 return false; 1285 for (CompartmentDefinitionResourceComponent item : this.resource) 1286 if (!item.isEmpty()) 1287 return true; 1288 return false; 1289 } 1290 1291 public CompartmentDefinitionResourceComponent addResource() { //3 1292 CompartmentDefinitionResourceComponent t = new CompartmentDefinitionResourceComponent(); 1293 if (this.resource == null) 1294 this.resource = new ArrayList<CompartmentDefinitionResourceComponent>(); 1295 this.resource.add(t); 1296 return t; 1297 } 1298 1299 public CompartmentDefinition addResource(CompartmentDefinitionResourceComponent t) { //3 1300 if (t == null) 1301 return this; 1302 if (this.resource == null) 1303 this.resource = new ArrayList<CompartmentDefinitionResourceComponent>(); 1304 this.resource.add(t); 1305 return this; 1306 } 1307 1308 /** 1309 * @return The first repetition of repeating field {@link #resource}, creating it if it does not already exist 1310 */ 1311 public CompartmentDefinitionResourceComponent getResourceFirstRep() { 1312 if (getResource().isEmpty()) { 1313 addResource(); 1314 } 1315 return getResource().get(0); 1316 } 1317 1318 protected void listChildren(List<Property> children) { 1319 super.listChildren(children); 1320 children.add(new Property("url", "uri", "An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this compartment definition is (or will be) published. The URL SHOULD include the major version of the compartment definition. For more information see [Technical and Business Versions](resource.html#versions).", 0, 1, url)); 1321 children.add(new Property("name", "string", "A natural language name identifying the compartment definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name)); 1322 children.add(new Property("title", "string", "A short, descriptive, user-friendly title for the compartment definition.", 0, 1, title)); 1323 children.add(new Property("status", "code", "The status of this compartment definition. Enables tracking the life-cycle of the content.", 0, 1, status)); 1324 children.add(new Property("experimental", "boolean", "A boolean value to indicate that this compartment definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.", 0, 1, experimental)); 1325 children.add(new Property("date", "dateTime", "The date (and optionally time) when the compartment definition was published. The date must change if and 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 compartment definition changes.", 0, 1, date)); 1326 children.add(new Property("publisher", "string", "The name of the individual or organization that published the compartment definition.", 0, 1, publisher)); 1327 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)); 1328 children.add(new Property("description", "markdown", "A free text natural language description of the compartment definition from a consumer's perspective.", 0, 1, description)); 1329 children.add(new Property("purpose", "markdown", "Explaination of why this compartment definition is needed and why it has been designed as it has.", 0, 1, purpose)); 1330 children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching for appropriate compartment definition instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); 1331 children.add(new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the compartment definition is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction)); 1332 children.add(new Property("code", "code", "Which compartment this definition describes.", 0, 1, code)); 1333 children.add(new Property("search", "boolean", "Whether the search syntax is supported,.", 0, 1, search)); 1334 children.add(new Property("resource", "", "Information about how a resource is related to the compartment.", 0, java.lang.Integer.MAX_VALUE, resource)); 1335 } 1336 1337 @Override 1338 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1339 switch (_hash) { 1340 case 116079: /*url*/ return new Property("url", "uri", "An absolute URI that is used to identify this compartment definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this compartment definition is (or will be) published. The URL SHOULD include the major version of the compartment definition. For more information see [Technical and Business Versions](resource.html#versions).", 0, 1, url); 1341 case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the compartment definition. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name); 1342 case 110371416: /*title*/ return new Property("title", "string", "A short, descriptive, user-friendly title for the compartment definition.", 0, 1, title); 1343 case -892481550: /*status*/ return new Property("status", "code", "The status of this compartment definition. Enables tracking the life-cycle of the content.", 0, 1, status); 1344 case -404562712: /*experimental*/ return new Property("experimental", "boolean", "A boolean value to indicate that this compartment definition is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.", 0, 1, experimental); 1345 case 3076014: /*date*/ return new Property("date", "dateTime", "The date (and optionally time) when the compartment definition was published. The date must change if and 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 compartment definition changes.", 0, 1, date); 1346 case 1447404028: /*publisher*/ return new Property("publisher", "string", "The name of the individual or organization that published the compartment definition.", 0, 1, publisher); 1347 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); 1348 case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the compartment definition from a consumer's perspective.", 0, 1, description); 1349 case -220463842: /*purpose*/ return new Property("purpose", "markdown", "Explaination of why this compartment definition is needed and why it has been designed as it has.", 0, 1, purpose); 1350 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 terms may be used to assist with indexing and searching for appropriate compartment definition instances.", 0, java.lang.Integer.MAX_VALUE, useContext); 1351 case -507075711: /*jurisdiction*/ return new Property("jurisdiction", "CodeableConcept", "A legal or geographic region in which the compartment definition is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction); 1352 case 3059181: /*code*/ return new Property("code", "code", "Which compartment this definition describes.", 0, 1, code); 1353 case -906336856: /*search*/ return new Property("search", "boolean", "Whether the search syntax is supported,.", 0, 1, search); 1354 case -341064690: /*resource*/ return new Property("resource", "", "Information about how a resource is related to the compartment.", 0, java.lang.Integer.MAX_VALUE, resource); 1355 default: return super.getNamedProperty(_hash, _name, _checkValid); 1356 } 1357 1358 } 1359 1360 @Override 1361 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1362 switch (hash) { 1363 case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType 1364 case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType 1365 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 1366 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<PublicationStatus> 1367 case -404562712: /*experimental*/ return this.experimental == null ? new Base[0] : new Base[] {this.experimental}; // BooleanType 1368 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 1369 case 1447404028: /*publisher*/ return this.publisher == null ? new Base[0] : new Base[] {this.publisher}; // StringType 1370 case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactDetail 1371 case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType 1372 case -220463842: /*purpose*/ return this.purpose == null ? new Base[0] : new Base[] {this.purpose}; // MarkdownType 1373 case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext 1374 case -507075711: /*jurisdiction*/ return this.jurisdiction == null ? new Base[0] : this.jurisdiction.toArray(new Base[this.jurisdiction.size()]); // CodeableConcept 1375 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // Enumeration<CompartmentType> 1376 case -906336856: /*search*/ return this.search == null ? new Base[0] : new Base[] {this.search}; // BooleanType 1377 case -341064690: /*resource*/ return this.resource == null ? new Base[0] : this.resource.toArray(new Base[this.resource.size()]); // CompartmentDefinitionResourceComponent 1378 default: return super.getProperty(hash, name, checkValid); 1379 } 1380 1381 } 1382 1383 @Override 1384 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1385 switch (hash) { 1386 case 116079: // url 1387 this.url = castToUri(value); // UriType 1388 return value; 1389 case 3373707: // name 1390 this.name = castToString(value); // StringType 1391 return value; 1392 case 110371416: // title 1393 this.title = castToString(value); // StringType 1394 return value; 1395 case -892481550: // status 1396 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 1397 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 1398 return value; 1399 case -404562712: // experimental 1400 this.experimental = castToBoolean(value); // BooleanType 1401 return value; 1402 case 3076014: // date 1403 this.date = castToDateTime(value); // DateTimeType 1404 return value; 1405 case 1447404028: // publisher 1406 this.publisher = castToString(value); // StringType 1407 return value; 1408 case 951526432: // contact 1409 this.getContact().add(castToContactDetail(value)); // ContactDetail 1410 return value; 1411 case -1724546052: // description 1412 this.description = castToMarkdown(value); // MarkdownType 1413 return value; 1414 case -220463842: // purpose 1415 this.purpose = castToMarkdown(value); // MarkdownType 1416 return value; 1417 case -669707736: // useContext 1418 this.getUseContext().add(castToUsageContext(value)); // UsageContext 1419 return value; 1420 case -507075711: // jurisdiction 1421 this.getJurisdiction().add(castToCodeableConcept(value)); // CodeableConcept 1422 return value; 1423 case 3059181: // code 1424 value = new CompartmentTypeEnumFactory().fromType(castToCode(value)); 1425 this.code = (Enumeration) value; // Enumeration<CompartmentType> 1426 return value; 1427 case -906336856: // search 1428 this.search = castToBoolean(value); // BooleanType 1429 return value; 1430 case -341064690: // resource 1431 this.getResource().add((CompartmentDefinitionResourceComponent) value); // CompartmentDefinitionResourceComponent 1432 return value; 1433 default: return super.setProperty(hash, name, value); 1434 } 1435 1436 } 1437 1438 @Override 1439 public Base setProperty(String name, Base value) throws FHIRException { 1440 if (name.equals("url")) { 1441 this.url = castToUri(value); // UriType 1442 } else if (name.equals("name")) { 1443 this.name = castToString(value); // StringType 1444 } else if (name.equals("title")) { 1445 this.title = castToString(value); // StringType 1446 } else if (name.equals("status")) { 1447 value = new PublicationStatusEnumFactory().fromType(castToCode(value)); 1448 this.status = (Enumeration) value; // Enumeration<PublicationStatus> 1449 } else if (name.equals("experimental")) { 1450 this.experimental = castToBoolean(value); // BooleanType 1451 } else if (name.equals("date")) { 1452 this.date = castToDateTime(value); // DateTimeType 1453 } else if (name.equals("publisher")) { 1454 this.publisher = castToString(value); // StringType 1455 } else if (name.equals("contact")) { 1456 this.getContact().add(castToContactDetail(value)); 1457 } else if (name.equals("description")) { 1458 this.description = castToMarkdown(value); // MarkdownType 1459 } else if (name.equals("purpose")) { 1460 this.purpose = castToMarkdown(value); // MarkdownType 1461 } else if (name.equals("useContext")) { 1462 this.getUseContext().add(castToUsageContext(value)); 1463 } else if (name.equals("jurisdiction")) { 1464 this.getJurisdiction().add(castToCodeableConcept(value)); 1465 } else if (name.equals("code")) { 1466 value = new CompartmentTypeEnumFactory().fromType(castToCode(value)); 1467 this.code = (Enumeration) value; // Enumeration<CompartmentType> 1468 } else if (name.equals("search")) { 1469 this.search = castToBoolean(value); // BooleanType 1470 } else if (name.equals("resource")) { 1471 this.getResource().add((CompartmentDefinitionResourceComponent) value); 1472 } else 1473 return super.setProperty(name, value); 1474 return value; 1475 } 1476 1477 @Override 1478 public Base makeProperty(int hash, String name) throws FHIRException { 1479 switch (hash) { 1480 case 116079: return getUrlElement(); 1481 case 3373707: return getNameElement(); 1482 case 110371416: return getTitleElement(); 1483 case -892481550: return getStatusElement(); 1484 case -404562712: return getExperimentalElement(); 1485 case 3076014: return getDateElement(); 1486 case 1447404028: return getPublisherElement(); 1487 case 951526432: return addContact(); 1488 case -1724546052: return getDescriptionElement(); 1489 case -220463842: return getPurposeElement(); 1490 case -669707736: return addUseContext(); 1491 case -507075711: return addJurisdiction(); 1492 case 3059181: return getCodeElement(); 1493 case -906336856: return getSearchElement(); 1494 case -341064690: return addResource(); 1495 default: return super.makeProperty(hash, name); 1496 } 1497 1498 } 1499 1500 @Override 1501 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1502 switch (hash) { 1503 case 116079: /*url*/ return new String[] {"uri"}; 1504 case 3373707: /*name*/ return new String[] {"string"}; 1505 case 110371416: /*title*/ return new String[] {"string"}; 1506 case -892481550: /*status*/ return new String[] {"code"}; 1507 case -404562712: /*experimental*/ return new String[] {"boolean"}; 1508 case 3076014: /*date*/ return new String[] {"dateTime"}; 1509 case 1447404028: /*publisher*/ return new String[] {"string"}; 1510 case 951526432: /*contact*/ return new String[] {"ContactDetail"}; 1511 case -1724546052: /*description*/ return new String[] {"markdown"}; 1512 case -220463842: /*purpose*/ return new String[] {"markdown"}; 1513 case -669707736: /*useContext*/ return new String[] {"UsageContext"}; 1514 case -507075711: /*jurisdiction*/ return new String[] {"CodeableConcept"}; 1515 case 3059181: /*code*/ return new String[] {"code"}; 1516 case -906336856: /*search*/ return new String[] {"boolean"}; 1517 case -341064690: /*resource*/ return new String[] {}; 1518 default: return super.getTypesForProperty(hash, name); 1519 } 1520 1521 } 1522 1523 @Override 1524 public Base addChild(String name) throws FHIRException { 1525 if (name.equals("url")) { 1526 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.url"); 1527 } 1528 else if (name.equals("name")) { 1529 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.name"); 1530 } 1531 else if (name.equals("title")) { 1532 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.title"); 1533 } 1534 else if (name.equals("status")) { 1535 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.status"); 1536 } 1537 else if (name.equals("experimental")) { 1538 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.experimental"); 1539 } 1540 else if (name.equals("date")) { 1541 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.date"); 1542 } 1543 else if (name.equals("publisher")) { 1544 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.publisher"); 1545 } 1546 else if (name.equals("contact")) { 1547 return addContact(); 1548 } 1549 else if (name.equals("description")) { 1550 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.description"); 1551 } 1552 else if (name.equals("purpose")) { 1553 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.purpose"); 1554 } 1555 else if (name.equals("useContext")) { 1556 return addUseContext(); 1557 } 1558 else if (name.equals("jurisdiction")) { 1559 return addJurisdiction(); 1560 } 1561 else if (name.equals("code")) { 1562 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.code"); 1563 } 1564 else if (name.equals("search")) { 1565 throw new FHIRException("Cannot call addChild on a singleton property CompartmentDefinition.search"); 1566 } 1567 else if (name.equals("resource")) { 1568 return addResource(); 1569 } 1570 else 1571 return super.addChild(name); 1572 } 1573 1574 public String fhirType() { 1575 return "CompartmentDefinition"; 1576 1577 } 1578 1579 public CompartmentDefinition copy() { 1580 CompartmentDefinition dst = new CompartmentDefinition(); 1581 copyValues(dst); 1582 dst.url = url == null ? null : url.copy(); 1583 dst.name = name == null ? null : name.copy(); 1584 dst.title = title == null ? null : title.copy(); 1585 dst.status = status == null ? null : status.copy(); 1586 dst.experimental = experimental == null ? null : experimental.copy(); 1587 dst.date = date == null ? null : date.copy(); 1588 dst.publisher = publisher == null ? null : publisher.copy(); 1589 if (contact != null) { 1590 dst.contact = new ArrayList<ContactDetail>(); 1591 for (ContactDetail i : contact) 1592 dst.contact.add(i.copy()); 1593 }; 1594 dst.description = description == null ? null : description.copy(); 1595 dst.purpose = purpose == null ? null : purpose.copy(); 1596 if (useContext != null) { 1597 dst.useContext = new ArrayList<UsageContext>(); 1598 for (UsageContext i : useContext) 1599 dst.useContext.add(i.copy()); 1600 }; 1601 if (jurisdiction != null) { 1602 dst.jurisdiction = new ArrayList<CodeableConcept>(); 1603 for (CodeableConcept i : jurisdiction) 1604 dst.jurisdiction.add(i.copy()); 1605 }; 1606 dst.code = code == null ? null : code.copy(); 1607 dst.search = search == null ? null : search.copy(); 1608 if (resource != null) { 1609 dst.resource = new ArrayList<CompartmentDefinitionResourceComponent>(); 1610 for (CompartmentDefinitionResourceComponent i : resource) 1611 dst.resource.add(i.copy()); 1612 }; 1613 return dst; 1614 } 1615 1616 protected CompartmentDefinition typedCopy() { 1617 return copy(); 1618 } 1619 1620 @Override 1621 public boolean equalsDeep(Base other_) { 1622 if (!super.equalsDeep(other_)) 1623 return false; 1624 if (!(other_ instanceof CompartmentDefinition)) 1625 return false; 1626 CompartmentDefinition o = (CompartmentDefinition) other_; 1627 return compareDeep(purpose, o.purpose, true) && compareDeep(code, o.code, true) && compareDeep(search, o.search, true) 1628 && compareDeep(resource, o.resource, true); 1629 } 1630 1631 @Override 1632 public boolean equalsShallow(Base other_) { 1633 if (!super.equalsShallow(other_)) 1634 return false; 1635 if (!(other_ instanceof CompartmentDefinition)) 1636 return false; 1637 CompartmentDefinition o = (CompartmentDefinition) other_; 1638 return compareValues(purpose, o.purpose, true) && compareValues(code, o.code, true) && compareValues(search, o.search, true) 1639 ; 1640 } 1641 1642 public boolean isEmpty() { 1643 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(purpose, code, search, resource 1644 ); 1645 } 1646 1647 @Override 1648 public ResourceType getResourceType() { 1649 return ResourceType.CompartmentDefinition; 1650 } 1651 1652 /** 1653 * Search parameter: <b>date</b> 1654 * <p> 1655 * Description: <b>The compartment definition publication date</b><br> 1656 * Type: <b>date</b><br> 1657 * Path: <b>CompartmentDefinition.date</b><br> 1658 * </p> 1659 */ 1660 @SearchParamDefinition(name="date", path="CompartmentDefinition.date", description="The compartment definition publication date", type="date" ) 1661 public static final String SP_DATE = "date"; 1662 /** 1663 * <b>Fluent Client</b> search parameter constant for <b>date</b> 1664 * <p> 1665 * Description: <b>The compartment definition publication date</b><br> 1666 * Type: <b>date</b><br> 1667 * Path: <b>CompartmentDefinition.date</b><br> 1668 * </p> 1669 */ 1670 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 1671 1672 /** 1673 * Search parameter: <b>code</b> 1674 * <p> 1675 * Description: <b>Patient | Encounter | RelatedPerson | Practitioner | Device</b><br> 1676 * Type: <b>token</b><br> 1677 * Path: <b>CompartmentDefinition.code</b><br> 1678 * </p> 1679 */ 1680 @SearchParamDefinition(name="code", path="CompartmentDefinition.code", description="Patient | Encounter | RelatedPerson | Practitioner | Device", type="token" ) 1681 public static final String SP_CODE = "code"; 1682 /** 1683 * <b>Fluent Client</b> search parameter constant for <b>code</b> 1684 * <p> 1685 * Description: <b>Patient | Encounter | RelatedPerson | Practitioner | Device</b><br> 1686 * Type: <b>token</b><br> 1687 * Path: <b>CompartmentDefinition.code</b><br> 1688 * </p> 1689 */ 1690 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 1691 1692 /** 1693 * Search parameter: <b>resource</b> 1694 * <p> 1695 * Description: <b>Name of resource type</b><br> 1696 * Type: <b>token</b><br> 1697 * Path: <b>CompartmentDefinition.resource.code</b><br> 1698 * </p> 1699 */ 1700 @SearchParamDefinition(name="resource", path="CompartmentDefinition.resource.code", description="Name of resource type", type="token" ) 1701 public static final String SP_RESOURCE = "resource"; 1702 /** 1703 * <b>Fluent Client</b> search parameter constant for <b>resource</b> 1704 * <p> 1705 * Description: <b>Name of resource type</b><br> 1706 * Type: <b>token</b><br> 1707 * Path: <b>CompartmentDefinition.resource.code</b><br> 1708 * </p> 1709 */ 1710 public static final ca.uhn.fhir.rest.gclient.TokenClientParam RESOURCE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_RESOURCE); 1711 1712 /** 1713 * Search parameter: <b>jurisdiction</b> 1714 * <p> 1715 * Description: <b>Intended jurisdiction for the compartment definition</b><br> 1716 * Type: <b>token</b><br> 1717 * Path: <b>CompartmentDefinition.jurisdiction</b><br> 1718 * </p> 1719 */ 1720 @SearchParamDefinition(name="jurisdiction", path="CompartmentDefinition.jurisdiction", description="Intended jurisdiction for the compartment definition", type="token" ) 1721 public static final String SP_JURISDICTION = "jurisdiction"; 1722 /** 1723 * <b>Fluent Client</b> search parameter constant for <b>jurisdiction</b> 1724 * <p> 1725 * Description: <b>Intended jurisdiction for the compartment definition</b><br> 1726 * Type: <b>token</b><br> 1727 * Path: <b>CompartmentDefinition.jurisdiction</b><br> 1728 * </p> 1729 */ 1730 public static final ca.uhn.fhir.rest.gclient.TokenClientParam JURISDICTION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_JURISDICTION); 1731 1732 /** 1733 * Search parameter: <b>name</b> 1734 * <p> 1735 * Description: <b>Computationally friendly name of the compartment definition</b><br> 1736 * Type: <b>string</b><br> 1737 * Path: <b>CompartmentDefinition.name</b><br> 1738 * </p> 1739 */ 1740 @SearchParamDefinition(name="name", path="CompartmentDefinition.name", description="Computationally friendly name of the compartment definition", type="string" ) 1741 public static final String SP_NAME = "name"; 1742 /** 1743 * <b>Fluent Client</b> search parameter constant for <b>name</b> 1744 * <p> 1745 * Description: <b>Computationally friendly name of the compartment definition</b><br> 1746 * Type: <b>string</b><br> 1747 * Path: <b>CompartmentDefinition.name</b><br> 1748 * </p> 1749 */ 1750 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 1751 1752 /** 1753 * Search parameter: <b>description</b> 1754 * <p> 1755 * Description: <b>The description of the compartment definition</b><br> 1756 * Type: <b>string</b><br> 1757 * Path: <b>CompartmentDefinition.description</b><br> 1758 * </p> 1759 */ 1760 @SearchParamDefinition(name="description", path="CompartmentDefinition.description", description="The description of the compartment definition", type="string" ) 1761 public static final String SP_DESCRIPTION = "description"; 1762 /** 1763 * <b>Fluent Client</b> search parameter constant for <b>description</b> 1764 * <p> 1765 * Description: <b>The description of the compartment definition</b><br> 1766 * Type: <b>string</b><br> 1767 * Path: <b>CompartmentDefinition.description</b><br> 1768 * </p> 1769 */ 1770 public static final ca.uhn.fhir.rest.gclient.StringClientParam DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DESCRIPTION); 1771 1772 /** 1773 * Search parameter: <b>publisher</b> 1774 * <p> 1775 * Description: <b>Name of the publisher of the compartment definition</b><br> 1776 * Type: <b>string</b><br> 1777 * Path: <b>CompartmentDefinition.publisher</b><br> 1778 * </p> 1779 */ 1780 @SearchParamDefinition(name="publisher", path="CompartmentDefinition.publisher", description="Name of the publisher of the compartment definition", type="string" ) 1781 public static final String SP_PUBLISHER = "publisher"; 1782 /** 1783 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 1784 * <p> 1785 * Description: <b>Name of the publisher of the compartment definition</b><br> 1786 * Type: <b>string</b><br> 1787 * Path: <b>CompartmentDefinition.publisher</b><br> 1788 * </p> 1789 */ 1790 public static final ca.uhn.fhir.rest.gclient.StringClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PUBLISHER); 1791 1792 /** 1793 * Search parameter: <b>title</b> 1794 * <p> 1795 * Description: <b>The human-friendly name of the compartment definition</b><br> 1796 * Type: <b>string</b><br> 1797 * Path: <b>CompartmentDefinition.title</b><br> 1798 * </p> 1799 */ 1800 @SearchParamDefinition(name="title", path="CompartmentDefinition.title", description="The human-friendly name of the compartment definition", type="string" ) 1801 public static final String SP_TITLE = "title"; 1802 /** 1803 * <b>Fluent Client</b> search parameter constant for <b>title</b> 1804 * <p> 1805 * Description: <b>The human-friendly name of the compartment definition</b><br> 1806 * Type: <b>string</b><br> 1807 * Path: <b>CompartmentDefinition.title</b><br> 1808 * </p> 1809 */ 1810 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); 1811 1812 /** 1813 * Search parameter: <b>url</b> 1814 * <p> 1815 * Description: <b>The uri that identifies the compartment definition</b><br> 1816 * Type: <b>uri</b><br> 1817 * Path: <b>CompartmentDefinition.url</b><br> 1818 * </p> 1819 */ 1820 @SearchParamDefinition(name="url", path="CompartmentDefinition.url", description="The uri that identifies the compartment definition", type="uri" ) 1821 public static final String SP_URL = "url"; 1822 /** 1823 * <b>Fluent Client</b> search parameter constant for <b>url</b> 1824 * <p> 1825 * Description: <b>The uri that identifies the compartment definition</b><br> 1826 * Type: <b>uri</b><br> 1827 * Path: <b>CompartmentDefinition.url</b><br> 1828 * </p> 1829 */ 1830 public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); 1831 1832 /** 1833 * Search parameter: <b>status</b> 1834 * <p> 1835 * Description: <b>The current status of the compartment definition</b><br> 1836 * Type: <b>token</b><br> 1837 * Path: <b>CompartmentDefinition.status</b><br> 1838 * </p> 1839 */ 1840 @SearchParamDefinition(name="status", path="CompartmentDefinition.status", description="The current status of the compartment definition", type="token" ) 1841 public static final String SP_STATUS = "status"; 1842 /** 1843 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1844 * <p> 1845 * Description: <b>The current status of the compartment definition</b><br> 1846 * Type: <b>token</b><br> 1847 * Path: <b>CompartmentDefinition.status</b><br> 1848 * </p> 1849 */ 1850 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1851 1852 1853}