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.exceptions.FHIRException; 040import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 041import org.hl7.fhir.utilities.Utilities; 042 043import ca.uhn.fhir.model.api.annotation.Block; 044import ca.uhn.fhir.model.api.annotation.Child; 045import ca.uhn.fhir.model.api.annotation.Description; 046import ca.uhn.fhir.model.api.annotation.ResourceDef; 047import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 048/** 049 * A set of information summarized from a list of other resources. 050 */ 051@ResourceDef(name="List", profile="http://hl7.org/fhir/Profile/ListResource") 052public class ListResource extends DomainResource { 053 054 public enum ListStatus { 055 /** 056 * The list is considered to be an active part of the patient's record. 057 */ 058 CURRENT, 059 /** 060 * The list is "old" and should no longer be considered accurate or relevant. 061 */ 062 RETIRED, 063 /** 064 * The list was never accurate. It is retained for medico-legal purposes only. 065 */ 066 ENTEREDINERROR, 067 /** 068 * added to help the parsers with the generic types 069 */ 070 NULL; 071 public static ListStatus fromCode(String codeString) throws FHIRException { 072 if (codeString == null || "".equals(codeString)) 073 return null; 074 if ("current".equals(codeString)) 075 return CURRENT; 076 if ("retired".equals(codeString)) 077 return RETIRED; 078 if ("entered-in-error".equals(codeString)) 079 return ENTEREDINERROR; 080 if (Configuration.isAcceptInvalidEnums()) 081 return null; 082 else 083 throw new FHIRException("Unknown ListStatus code '"+codeString+"'"); 084 } 085 public String toCode() { 086 switch (this) { 087 case CURRENT: return "current"; 088 case RETIRED: return "retired"; 089 case ENTEREDINERROR: return "entered-in-error"; 090 case NULL: return null; 091 default: return "?"; 092 } 093 } 094 public String getSystem() { 095 switch (this) { 096 case CURRENT: return "http://hl7.org/fhir/list-status"; 097 case RETIRED: return "http://hl7.org/fhir/list-status"; 098 case ENTEREDINERROR: return "http://hl7.org/fhir/list-status"; 099 case NULL: return null; 100 default: return "?"; 101 } 102 } 103 public String getDefinition() { 104 switch (this) { 105 case CURRENT: return "The list is considered to be an active part of the patient's record."; 106 case RETIRED: return "The list is \"old\" and should no longer be considered accurate or relevant."; 107 case ENTEREDINERROR: return "The list was never accurate. It is retained for medico-legal purposes only."; 108 case NULL: return null; 109 default: return "?"; 110 } 111 } 112 public String getDisplay() { 113 switch (this) { 114 case CURRENT: return "Current"; 115 case RETIRED: return "Retired"; 116 case ENTEREDINERROR: return "Entered In Error"; 117 case NULL: return null; 118 default: return "?"; 119 } 120 } 121 } 122 123 public static class ListStatusEnumFactory implements EnumFactory<ListStatus> { 124 public ListStatus fromCode(String codeString) throws IllegalArgumentException { 125 if (codeString == null || "".equals(codeString)) 126 if (codeString == null || "".equals(codeString)) 127 return null; 128 if ("current".equals(codeString)) 129 return ListStatus.CURRENT; 130 if ("retired".equals(codeString)) 131 return ListStatus.RETIRED; 132 if ("entered-in-error".equals(codeString)) 133 return ListStatus.ENTEREDINERROR; 134 throw new IllegalArgumentException("Unknown ListStatus code '"+codeString+"'"); 135 } 136 public Enumeration<ListStatus> fromType(PrimitiveType<?> code) throws FHIRException { 137 if (code == null) 138 return null; 139 if (code.isEmpty()) 140 return new Enumeration<ListStatus>(this); 141 String codeString = code.asStringValue(); 142 if (codeString == null || "".equals(codeString)) 143 return null; 144 if ("current".equals(codeString)) 145 return new Enumeration<ListStatus>(this, ListStatus.CURRENT); 146 if ("retired".equals(codeString)) 147 return new Enumeration<ListStatus>(this, ListStatus.RETIRED); 148 if ("entered-in-error".equals(codeString)) 149 return new Enumeration<ListStatus>(this, ListStatus.ENTEREDINERROR); 150 throw new FHIRException("Unknown ListStatus code '"+codeString+"'"); 151 } 152 public String toCode(ListStatus code) { 153 if (code == ListStatus.CURRENT) 154 return "current"; 155 if (code == ListStatus.RETIRED) 156 return "retired"; 157 if (code == ListStatus.ENTEREDINERROR) 158 return "entered-in-error"; 159 return "?"; 160 } 161 public String toSystem(ListStatus code) { 162 return code.getSystem(); 163 } 164 } 165 166 public enum ListMode { 167 /** 168 * This list is the master list, maintained in an ongoing fashion with regular updates as the real world list it is tracking changes 169 */ 170 WORKING, 171 /** 172 * This list was prepared as a snapshot. It should not be assumed to be current 173 */ 174 SNAPSHOT, 175 /** 176 * A list that indicates where changes have been made or recommended 177 */ 178 CHANGES, 179 /** 180 * added to help the parsers with the generic types 181 */ 182 NULL; 183 public static ListMode fromCode(String codeString) throws FHIRException { 184 if (codeString == null || "".equals(codeString)) 185 return null; 186 if ("working".equals(codeString)) 187 return WORKING; 188 if ("snapshot".equals(codeString)) 189 return SNAPSHOT; 190 if ("changes".equals(codeString)) 191 return CHANGES; 192 if (Configuration.isAcceptInvalidEnums()) 193 return null; 194 else 195 throw new FHIRException("Unknown ListMode code '"+codeString+"'"); 196 } 197 public String toCode() { 198 switch (this) { 199 case WORKING: return "working"; 200 case SNAPSHOT: return "snapshot"; 201 case CHANGES: return "changes"; 202 case NULL: return null; 203 default: return "?"; 204 } 205 } 206 public String getSystem() { 207 switch (this) { 208 case WORKING: return "http://hl7.org/fhir/list-mode"; 209 case SNAPSHOT: return "http://hl7.org/fhir/list-mode"; 210 case CHANGES: return "http://hl7.org/fhir/list-mode"; 211 case NULL: return null; 212 default: return "?"; 213 } 214 } 215 public String getDefinition() { 216 switch (this) { 217 case WORKING: return "This list is the master list, maintained in an ongoing fashion with regular updates as the real world list it is tracking changes"; 218 case SNAPSHOT: return "This list was prepared as a snapshot. It should not be assumed to be current"; 219 case CHANGES: return "A list that indicates where changes have been made or recommended"; 220 case NULL: return null; 221 default: return "?"; 222 } 223 } 224 public String getDisplay() { 225 switch (this) { 226 case WORKING: return "Working List"; 227 case SNAPSHOT: return "Snapshot List"; 228 case CHANGES: return "Change List"; 229 case NULL: return null; 230 default: return "?"; 231 } 232 } 233 } 234 235 public static class ListModeEnumFactory implements EnumFactory<ListMode> { 236 public ListMode fromCode(String codeString) throws IllegalArgumentException { 237 if (codeString == null || "".equals(codeString)) 238 if (codeString == null || "".equals(codeString)) 239 return null; 240 if ("working".equals(codeString)) 241 return ListMode.WORKING; 242 if ("snapshot".equals(codeString)) 243 return ListMode.SNAPSHOT; 244 if ("changes".equals(codeString)) 245 return ListMode.CHANGES; 246 throw new IllegalArgumentException("Unknown ListMode code '"+codeString+"'"); 247 } 248 public Enumeration<ListMode> fromType(PrimitiveType<?> code) throws FHIRException { 249 if (code == null) 250 return null; 251 if (code.isEmpty()) 252 return new Enumeration<ListMode>(this); 253 String codeString = code.asStringValue(); 254 if (codeString == null || "".equals(codeString)) 255 return null; 256 if ("working".equals(codeString)) 257 return new Enumeration<ListMode>(this, ListMode.WORKING); 258 if ("snapshot".equals(codeString)) 259 return new Enumeration<ListMode>(this, ListMode.SNAPSHOT); 260 if ("changes".equals(codeString)) 261 return new Enumeration<ListMode>(this, ListMode.CHANGES); 262 throw new FHIRException("Unknown ListMode code '"+codeString+"'"); 263 } 264 public String toCode(ListMode code) { 265 if (code == ListMode.WORKING) 266 return "working"; 267 if (code == ListMode.SNAPSHOT) 268 return "snapshot"; 269 if (code == ListMode.CHANGES) 270 return "changes"; 271 return "?"; 272 } 273 public String toSystem(ListMode code) { 274 return code.getSystem(); 275 } 276 } 277 278 @Block() 279 public static class ListEntryComponent extends BackboneElement implements IBaseBackboneElement { 280 /** 281 * The flag allows the system constructing the list to indicate the role and significance of the item in the list. 282 */ 283 @Child(name = "flag", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) 284 @Description(shortDefinition="Status/Workflow information about this item", formalDefinition="The flag allows the system constructing the list to indicate the role and significance of the item in the list." ) 285 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-item-flag") 286 protected CodeableConcept flag; 287 288 /** 289 * True if this item is marked as deleted in the list. 290 */ 291 @Child(name = "deleted", type = {BooleanType.class}, order=2, min=0, max=1, modifier=true, summary=false) 292 @Description(shortDefinition="If this item is actually marked as deleted", formalDefinition="True if this item is marked as deleted in the list." ) 293 protected BooleanType deleted; 294 295 /** 296 * When this item was added to the list. 297 */ 298 @Child(name = "date", type = {DateTimeType.class}, order=3, min=0, max=1, modifier=false, summary=false) 299 @Description(shortDefinition="When item added to list", formalDefinition="When this item was added to the list." ) 300 protected DateTimeType date; 301 302 /** 303 * A reference to the actual resource from which data was derived. 304 */ 305 @Child(name = "item", type = {Reference.class}, order=4, min=1, max=1, modifier=false, summary=false) 306 @Description(shortDefinition="Actual entry", formalDefinition="A reference to the actual resource from which data was derived." ) 307 protected Reference item; 308 309 /** 310 * The actual object that is the target of the reference (A reference to the actual resource from which data was derived.) 311 */ 312 protected Resource itemTarget; 313 314 private static final long serialVersionUID = -758164425L; 315 316 /** 317 * Constructor 318 */ 319 public ListEntryComponent() { 320 super(); 321 } 322 323 /** 324 * Constructor 325 */ 326 public ListEntryComponent(Reference item) { 327 super(); 328 this.item = item; 329 } 330 331 /** 332 * @return {@link #flag} (The flag allows the system constructing the list to indicate the role and significance of the item in the list.) 333 */ 334 public CodeableConcept getFlag() { 335 if (this.flag == null) 336 if (Configuration.errorOnAutoCreate()) 337 throw new Error("Attempt to auto-create ListEntryComponent.flag"); 338 else if (Configuration.doAutoCreate()) 339 this.flag = new CodeableConcept(); // cc 340 return this.flag; 341 } 342 343 public boolean hasFlag() { 344 return this.flag != null && !this.flag.isEmpty(); 345 } 346 347 /** 348 * @param value {@link #flag} (The flag allows the system constructing the list to indicate the role and significance of the item in the list.) 349 */ 350 public ListEntryComponent setFlag(CodeableConcept value) { 351 this.flag = value; 352 return this; 353 } 354 355 /** 356 * @return {@link #deleted} (True if this item is marked as deleted in the list.). This is the underlying object with id, value and extensions. The accessor "getDeleted" gives direct access to the value 357 */ 358 public BooleanType getDeletedElement() { 359 if (this.deleted == null) 360 if (Configuration.errorOnAutoCreate()) 361 throw new Error("Attempt to auto-create ListEntryComponent.deleted"); 362 else if (Configuration.doAutoCreate()) 363 this.deleted = new BooleanType(); // bb 364 return this.deleted; 365 } 366 367 public boolean hasDeletedElement() { 368 return this.deleted != null && !this.deleted.isEmpty(); 369 } 370 371 public boolean hasDeleted() { 372 return this.deleted != null && !this.deleted.isEmpty(); 373 } 374 375 /** 376 * @param value {@link #deleted} (True if this item is marked as deleted in the list.). This is the underlying object with id, value and extensions. The accessor "getDeleted" gives direct access to the value 377 */ 378 public ListEntryComponent setDeletedElement(BooleanType value) { 379 this.deleted = value; 380 return this; 381 } 382 383 /** 384 * @return True if this item is marked as deleted in the list. 385 */ 386 public boolean getDeleted() { 387 return this.deleted == null || this.deleted.isEmpty() ? false : this.deleted.getValue(); 388 } 389 390 /** 391 * @param value True if this item is marked as deleted in the list. 392 */ 393 public ListEntryComponent setDeleted(boolean value) { 394 if (this.deleted == null) 395 this.deleted = new BooleanType(); 396 this.deleted.setValue(value); 397 return this; 398 } 399 400 /** 401 * @return {@link #date} (When this item was added to the list.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 402 */ 403 public DateTimeType getDateElement() { 404 if (this.date == null) 405 if (Configuration.errorOnAutoCreate()) 406 throw new Error("Attempt to auto-create ListEntryComponent.date"); 407 else if (Configuration.doAutoCreate()) 408 this.date = new DateTimeType(); // bb 409 return this.date; 410 } 411 412 public boolean hasDateElement() { 413 return this.date != null && !this.date.isEmpty(); 414 } 415 416 public boolean hasDate() { 417 return this.date != null && !this.date.isEmpty(); 418 } 419 420 /** 421 * @param value {@link #date} (When this item was added to the list.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 422 */ 423 public ListEntryComponent setDateElement(DateTimeType value) { 424 this.date = value; 425 return this; 426 } 427 428 /** 429 * @return When this item was added to the list. 430 */ 431 public Date getDate() { 432 return this.date == null ? null : this.date.getValue(); 433 } 434 435 /** 436 * @param value When this item was added to the list. 437 */ 438 public ListEntryComponent setDate(Date value) { 439 if (value == null) 440 this.date = null; 441 else { 442 if (this.date == null) 443 this.date = new DateTimeType(); 444 this.date.setValue(value); 445 } 446 return this; 447 } 448 449 /** 450 * @return {@link #item} (A reference to the actual resource from which data was derived.) 451 */ 452 public Reference getItem() { 453 if (this.item == null) 454 if (Configuration.errorOnAutoCreate()) 455 throw new Error("Attempt to auto-create ListEntryComponent.item"); 456 else if (Configuration.doAutoCreate()) 457 this.item = new Reference(); // cc 458 return this.item; 459 } 460 461 public boolean hasItem() { 462 return this.item != null && !this.item.isEmpty(); 463 } 464 465 /** 466 * @param value {@link #item} (A reference to the actual resource from which data was derived.) 467 */ 468 public ListEntryComponent setItem(Reference value) { 469 this.item = value; 470 return this; 471 } 472 473 /** 474 * @return {@link #item} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (A reference to the actual resource from which data was derived.) 475 */ 476 public Resource getItemTarget() { 477 return this.itemTarget; 478 } 479 480 /** 481 * @param value {@link #item} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (A reference to the actual resource from which data was derived.) 482 */ 483 public ListEntryComponent setItemTarget(Resource value) { 484 this.itemTarget = value; 485 return this; 486 } 487 488 protected void listChildren(List<Property> children) { 489 super.listChildren(children); 490 children.add(new Property("flag", "CodeableConcept", "The flag allows the system constructing the list to indicate the role and significance of the item in the list.", 0, 1, flag)); 491 children.add(new Property("deleted", "boolean", "True if this item is marked as deleted in the list.", 0, 1, deleted)); 492 children.add(new Property("date", "dateTime", "When this item was added to the list.", 0, 1, date)); 493 children.add(new Property("item", "Reference(Any)", "A reference to the actual resource from which data was derived.", 0, 1, item)); 494 } 495 496 @Override 497 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 498 switch (_hash) { 499 case 3145580: /*flag*/ return new Property("flag", "CodeableConcept", "The flag allows the system constructing the list to indicate the role and significance of the item in the list.", 0, 1, flag); 500 case 1550463001: /*deleted*/ return new Property("deleted", "boolean", "True if this item is marked as deleted in the list.", 0, 1, deleted); 501 case 3076014: /*date*/ return new Property("date", "dateTime", "When this item was added to the list.", 0, 1, date); 502 case 3242771: /*item*/ return new Property("item", "Reference(Any)", "A reference to the actual resource from which data was derived.", 0, 1, item); 503 default: return super.getNamedProperty(_hash, _name, _checkValid); 504 } 505 506 } 507 508 @Override 509 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 510 switch (hash) { 511 case 3145580: /*flag*/ return this.flag == null ? new Base[0] : new Base[] {this.flag}; // CodeableConcept 512 case 1550463001: /*deleted*/ return this.deleted == null ? new Base[0] : new Base[] {this.deleted}; // BooleanType 513 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 514 case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // Reference 515 default: return super.getProperty(hash, name, checkValid); 516 } 517 518 } 519 520 @Override 521 public Base setProperty(int hash, String name, Base value) throws FHIRException { 522 switch (hash) { 523 case 3145580: // flag 524 this.flag = castToCodeableConcept(value); // CodeableConcept 525 return value; 526 case 1550463001: // deleted 527 this.deleted = castToBoolean(value); // BooleanType 528 return value; 529 case 3076014: // date 530 this.date = castToDateTime(value); // DateTimeType 531 return value; 532 case 3242771: // item 533 this.item = castToReference(value); // Reference 534 return value; 535 default: return super.setProperty(hash, name, value); 536 } 537 538 } 539 540 @Override 541 public Base setProperty(String name, Base value) throws FHIRException { 542 if (name.equals("flag")) { 543 this.flag = castToCodeableConcept(value); // CodeableConcept 544 } else if (name.equals("deleted")) { 545 this.deleted = castToBoolean(value); // BooleanType 546 } else if (name.equals("date")) { 547 this.date = castToDateTime(value); // DateTimeType 548 } else if (name.equals("item")) { 549 this.item = castToReference(value); // Reference 550 } else 551 return super.setProperty(name, value); 552 return value; 553 } 554 555 @Override 556 public Base makeProperty(int hash, String name) throws FHIRException { 557 switch (hash) { 558 case 3145580: return getFlag(); 559 case 1550463001: return getDeletedElement(); 560 case 3076014: return getDateElement(); 561 case 3242771: return getItem(); 562 default: return super.makeProperty(hash, name); 563 } 564 565 } 566 567 @Override 568 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 569 switch (hash) { 570 case 3145580: /*flag*/ return new String[] {"CodeableConcept"}; 571 case 1550463001: /*deleted*/ return new String[] {"boolean"}; 572 case 3076014: /*date*/ return new String[] {"dateTime"}; 573 case 3242771: /*item*/ return new String[] {"Reference"}; 574 default: return super.getTypesForProperty(hash, name); 575 } 576 577 } 578 579 @Override 580 public Base addChild(String name) throws FHIRException { 581 if (name.equals("flag")) { 582 this.flag = new CodeableConcept(); 583 return this.flag; 584 } 585 else if (name.equals("deleted")) { 586 throw new FHIRException("Cannot call addChild on a singleton property List.deleted"); 587 } 588 else if (name.equals("date")) { 589 throw new FHIRException("Cannot call addChild on a singleton property List.date"); 590 } 591 else if (name.equals("item")) { 592 this.item = new Reference(); 593 return this.item; 594 } 595 else 596 return super.addChild(name); 597 } 598 599 public ListEntryComponent copy() { 600 ListEntryComponent dst = new ListEntryComponent(); 601 copyValues(dst); 602 dst.flag = flag == null ? null : flag.copy(); 603 dst.deleted = deleted == null ? null : deleted.copy(); 604 dst.date = date == null ? null : date.copy(); 605 dst.item = item == null ? null : item.copy(); 606 return dst; 607 } 608 609 @Override 610 public boolean equalsDeep(Base other_) { 611 if (!super.equalsDeep(other_)) 612 return false; 613 if (!(other_ instanceof ListEntryComponent)) 614 return false; 615 ListEntryComponent o = (ListEntryComponent) other_; 616 return compareDeep(flag, o.flag, true) && compareDeep(deleted, o.deleted, true) && compareDeep(date, o.date, true) 617 && compareDeep(item, o.item, true); 618 } 619 620 @Override 621 public boolean equalsShallow(Base other_) { 622 if (!super.equalsShallow(other_)) 623 return false; 624 if (!(other_ instanceof ListEntryComponent)) 625 return false; 626 ListEntryComponent o = (ListEntryComponent) other_; 627 return compareValues(deleted, o.deleted, true) && compareValues(date, o.date, true); 628 } 629 630 public boolean isEmpty() { 631 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(flag, deleted, date, item 632 ); 633 } 634 635 public String fhirType() { 636 return "List.entry"; 637 638 } 639 640 } 641 642 /** 643 * Identifier for the List assigned for business purposes outside the context of FHIR. 644 */ 645 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 646 @Description(shortDefinition="Business identifier", formalDefinition="Identifier for the List assigned for business purposes outside the context of FHIR." ) 647 protected List<Identifier> identifier; 648 649 /** 650 * Indicates the current state of this list. 651 */ 652 @Child(name = "status", type = {CodeType.class}, order=1, min=1, max=1, modifier=true, summary=true) 653 @Description(shortDefinition="current | retired | entered-in-error", formalDefinition="Indicates the current state of this list." ) 654 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-status") 655 protected Enumeration<ListStatus> status; 656 657 /** 658 * How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted. 659 */ 660 @Child(name = "mode", type = {CodeType.class}, order=2, min=1, max=1, modifier=true, summary=true) 661 @Description(shortDefinition="working | snapshot | changes", formalDefinition="How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted." ) 662 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-mode") 663 protected Enumeration<ListMode> mode; 664 665 /** 666 * A label for the list assigned by the author. 667 */ 668 @Child(name = "title", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) 669 @Description(shortDefinition="Descriptive name for the list", formalDefinition="A label for the list assigned by the author." ) 670 protected StringType title; 671 672 /** 673 * This code defines the purpose of the list - why it was created. 674 */ 675 @Child(name = "code", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=true) 676 @Description(shortDefinition="What the purpose of this list is", formalDefinition="This code defines the purpose of the list - why it was created." ) 677 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-example-codes") 678 protected CodeableConcept code; 679 680 /** 681 * The common subject (or patient) of the resources that are in the list, if there is one. 682 */ 683 @Child(name = "subject", type = {Patient.class, Group.class, Device.class, Location.class}, order=5, min=0, max=1, modifier=false, summary=true) 684 @Description(shortDefinition="If all resources have the same subject", formalDefinition="The common subject (or patient) of the resources that are in the list, if there is one." ) 685 protected Reference subject; 686 687 /** 688 * The actual object that is the target of the reference (The common subject (or patient) of the resources that are in the list, if there is one.) 689 */ 690 protected Resource subjectTarget; 691 692 /** 693 * The encounter that is the context in which this list was created. 694 */ 695 @Child(name = "encounter", type = {Encounter.class}, order=6, min=0, max=1, modifier=false, summary=false) 696 @Description(shortDefinition="Context in which list created", formalDefinition="The encounter that is the context in which this list was created." ) 697 protected Reference encounter; 698 699 /** 700 * The actual object that is the target of the reference (The encounter that is the context in which this list was created.) 701 */ 702 protected Encounter encounterTarget; 703 704 /** 705 * The date that the list was prepared. 706 */ 707 @Child(name = "date", type = {DateTimeType.class}, order=7, min=0, max=1, modifier=false, summary=true) 708 @Description(shortDefinition="When the list was prepared", formalDefinition="The date that the list was prepared." ) 709 protected DateTimeType date; 710 711 /** 712 * The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list. 713 */ 714 @Child(name = "source", type = {Practitioner.class, Patient.class, Device.class}, order=8, min=0, max=1, modifier=false, summary=true) 715 @Description(shortDefinition="Who and/or what defined the list contents (aka Author)", formalDefinition="The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list." ) 716 protected Reference source; 717 718 /** 719 * The actual object that is the target of the reference (The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.) 720 */ 721 protected Resource sourceTarget; 722 723 /** 724 * What order applies to the items in the list. 725 */ 726 @Child(name = "orderedBy", type = {CodeableConcept.class}, order=9, min=0, max=1, modifier=false, summary=false) 727 @Description(shortDefinition="What order the list has", formalDefinition="What order applies to the items in the list." ) 728 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-order") 729 protected CodeableConcept orderedBy; 730 731 /** 732 * Comments that apply to the overall list. 733 */ 734 @Child(name = "note", type = {Annotation.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 735 @Description(shortDefinition="Comments about the list", formalDefinition="Comments that apply to the overall list." ) 736 protected List<Annotation> note; 737 738 /** 739 * Entries in this list. 740 */ 741 @Child(name = "entry", type = {}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 742 @Description(shortDefinition="Entries in the list", formalDefinition="Entries in this list." ) 743 protected List<ListEntryComponent> entry; 744 745 /** 746 * If the list is empty, why the list is empty. 747 */ 748 @Child(name = "emptyReason", type = {CodeableConcept.class}, order=12, min=0, max=1, modifier=false, summary=false) 749 @Description(shortDefinition="Why list is empty", formalDefinition="If the list is empty, why the list is empty." ) 750 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/list-empty-reason") 751 protected CodeableConcept emptyReason; 752 753 private static final long serialVersionUID = 2071342704L; 754 755 /** 756 * Constructor 757 */ 758 public ListResource() { 759 super(); 760 } 761 762 /** 763 * Constructor 764 */ 765 public ListResource(Enumeration<ListStatus> status, Enumeration<ListMode> mode) { 766 super(); 767 this.status = status; 768 this.mode = mode; 769 } 770 771 /** 772 * @return {@link #identifier} (Identifier for the List assigned for business purposes outside the context of FHIR.) 773 */ 774 public List<Identifier> getIdentifier() { 775 if (this.identifier == null) 776 this.identifier = new ArrayList<Identifier>(); 777 return this.identifier; 778 } 779 780 /** 781 * @return Returns a reference to <code>this</code> for easy method chaining 782 */ 783 public ListResource setIdentifier(List<Identifier> theIdentifier) { 784 this.identifier = theIdentifier; 785 return this; 786 } 787 788 public boolean hasIdentifier() { 789 if (this.identifier == null) 790 return false; 791 for (Identifier item : this.identifier) 792 if (!item.isEmpty()) 793 return true; 794 return false; 795 } 796 797 public Identifier addIdentifier() { //3 798 Identifier t = new Identifier(); 799 if (this.identifier == null) 800 this.identifier = new ArrayList<Identifier>(); 801 this.identifier.add(t); 802 return t; 803 } 804 805 public ListResource addIdentifier(Identifier t) { //3 806 if (t == null) 807 return this; 808 if (this.identifier == null) 809 this.identifier = new ArrayList<Identifier>(); 810 this.identifier.add(t); 811 return this; 812 } 813 814 /** 815 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 816 */ 817 public Identifier getIdentifierFirstRep() { 818 if (getIdentifier().isEmpty()) { 819 addIdentifier(); 820 } 821 return getIdentifier().get(0); 822 } 823 824 /** 825 * @return {@link #status} (Indicates the current state of this list.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 826 */ 827 public Enumeration<ListStatus> getStatusElement() { 828 if (this.status == null) 829 if (Configuration.errorOnAutoCreate()) 830 throw new Error("Attempt to auto-create List.status"); 831 else if (Configuration.doAutoCreate()) 832 this.status = new Enumeration<ListStatus>(new ListStatusEnumFactory()); // bb 833 return this.status; 834 } 835 836 public boolean hasStatusElement() { 837 return this.status != null && !this.status.isEmpty(); 838 } 839 840 public boolean hasStatus() { 841 return this.status != null && !this.status.isEmpty(); 842 } 843 844 /** 845 * @param value {@link #status} (Indicates the current state of this list.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value 846 */ 847 public ListResource setStatusElement(Enumeration<ListStatus> value) { 848 this.status = value; 849 return this; 850 } 851 852 /** 853 * @return Indicates the current state of this list. 854 */ 855 public ListStatus getStatus() { 856 return this.status == null ? null : this.status.getValue(); 857 } 858 859 /** 860 * @param value Indicates the current state of this list. 861 */ 862 public ListResource setStatus(ListStatus value) { 863 if (this.status == null) 864 this.status = new Enumeration<ListStatus>(new ListStatusEnumFactory()); 865 this.status.setValue(value); 866 return this; 867 } 868 869 /** 870 * @return {@link #mode} (How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.). This is the underlying object with id, value and extensions. The accessor "getMode" gives direct access to the value 871 */ 872 public Enumeration<ListMode> getModeElement() { 873 if (this.mode == null) 874 if (Configuration.errorOnAutoCreate()) 875 throw new Error("Attempt to auto-create List.mode"); 876 else if (Configuration.doAutoCreate()) 877 this.mode = new Enumeration<ListMode>(new ListModeEnumFactory()); // bb 878 return this.mode; 879 } 880 881 public boolean hasModeElement() { 882 return this.mode != null && !this.mode.isEmpty(); 883 } 884 885 public boolean hasMode() { 886 return this.mode != null && !this.mode.isEmpty(); 887 } 888 889 /** 890 * @param value {@link #mode} (How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.). This is the underlying object with id, value and extensions. The accessor "getMode" gives direct access to the value 891 */ 892 public ListResource setModeElement(Enumeration<ListMode> value) { 893 this.mode = value; 894 return this; 895 } 896 897 /** 898 * @return How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted. 899 */ 900 public ListMode getMode() { 901 return this.mode == null ? null : this.mode.getValue(); 902 } 903 904 /** 905 * @param value How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted. 906 */ 907 public ListResource setMode(ListMode value) { 908 if (this.mode == null) 909 this.mode = new Enumeration<ListMode>(new ListModeEnumFactory()); 910 this.mode.setValue(value); 911 return this; 912 } 913 914 /** 915 * @return {@link #title} (A label for the list assigned by the author.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 916 */ 917 public StringType getTitleElement() { 918 if (this.title == null) 919 if (Configuration.errorOnAutoCreate()) 920 throw new Error("Attempt to auto-create List.title"); 921 else if (Configuration.doAutoCreate()) 922 this.title = new StringType(); // bb 923 return this.title; 924 } 925 926 public boolean hasTitleElement() { 927 return this.title != null && !this.title.isEmpty(); 928 } 929 930 public boolean hasTitle() { 931 return this.title != null && !this.title.isEmpty(); 932 } 933 934 /** 935 * @param value {@link #title} (A label for the list assigned by the author.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value 936 */ 937 public ListResource setTitleElement(StringType value) { 938 this.title = value; 939 return this; 940 } 941 942 /** 943 * @return A label for the list assigned by the author. 944 */ 945 public String getTitle() { 946 return this.title == null ? null : this.title.getValue(); 947 } 948 949 /** 950 * @param value A label for the list assigned by the author. 951 */ 952 public ListResource setTitle(String value) { 953 if (Utilities.noString(value)) 954 this.title = null; 955 else { 956 if (this.title == null) 957 this.title = new StringType(); 958 this.title.setValue(value); 959 } 960 return this; 961 } 962 963 /** 964 * @return {@link #code} (This code defines the purpose of the list - why it was created.) 965 */ 966 public CodeableConcept getCode() { 967 if (this.code == null) 968 if (Configuration.errorOnAutoCreate()) 969 throw new Error("Attempt to auto-create List.code"); 970 else if (Configuration.doAutoCreate()) 971 this.code = new CodeableConcept(); // cc 972 return this.code; 973 } 974 975 public boolean hasCode() { 976 return this.code != null && !this.code.isEmpty(); 977 } 978 979 /** 980 * @param value {@link #code} (This code defines the purpose of the list - why it was created.) 981 */ 982 public ListResource setCode(CodeableConcept value) { 983 this.code = value; 984 return this; 985 } 986 987 /** 988 * @return {@link #subject} (The common subject (or patient) of the resources that are in the list, if there is one.) 989 */ 990 public Reference getSubject() { 991 if (this.subject == null) 992 if (Configuration.errorOnAutoCreate()) 993 throw new Error("Attempt to auto-create List.subject"); 994 else if (Configuration.doAutoCreate()) 995 this.subject = new Reference(); // cc 996 return this.subject; 997 } 998 999 public boolean hasSubject() { 1000 return this.subject != null && !this.subject.isEmpty(); 1001 } 1002 1003 /** 1004 * @param value {@link #subject} (The common subject (or patient) of the resources that are in the list, if there is one.) 1005 */ 1006 public ListResource setSubject(Reference value) { 1007 this.subject = value; 1008 return this; 1009 } 1010 1011 /** 1012 * @return {@link #subject} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The common subject (or patient) of the resources that are in the list, if there is one.) 1013 */ 1014 public Resource getSubjectTarget() { 1015 return this.subjectTarget; 1016 } 1017 1018 /** 1019 * @param value {@link #subject} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The common subject (or patient) of the resources that are in the list, if there is one.) 1020 */ 1021 public ListResource setSubjectTarget(Resource value) { 1022 this.subjectTarget = value; 1023 return this; 1024 } 1025 1026 /** 1027 * @return {@link #encounter} (The encounter that is the context in which this list was created.) 1028 */ 1029 public Reference getEncounter() { 1030 if (this.encounter == null) 1031 if (Configuration.errorOnAutoCreate()) 1032 throw new Error("Attempt to auto-create List.encounter"); 1033 else if (Configuration.doAutoCreate()) 1034 this.encounter = new Reference(); // cc 1035 return this.encounter; 1036 } 1037 1038 public boolean hasEncounter() { 1039 return this.encounter != null && !this.encounter.isEmpty(); 1040 } 1041 1042 /** 1043 * @param value {@link #encounter} (The encounter that is the context in which this list was created.) 1044 */ 1045 public ListResource setEncounter(Reference value) { 1046 this.encounter = value; 1047 return this; 1048 } 1049 1050 /** 1051 * @return {@link #encounter} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The encounter that is the context in which this list was created.) 1052 */ 1053 public Encounter getEncounterTarget() { 1054 if (this.encounterTarget == null) 1055 if (Configuration.errorOnAutoCreate()) 1056 throw new Error("Attempt to auto-create List.encounter"); 1057 else if (Configuration.doAutoCreate()) 1058 this.encounterTarget = new Encounter(); // aa 1059 return this.encounterTarget; 1060 } 1061 1062 /** 1063 * @param value {@link #encounter} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The encounter that is the context in which this list was created.) 1064 */ 1065 public ListResource setEncounterTarget(Encounter value) { 1066 this.encounterTarget = value; 1067 return this; 1068 } 1069 1070 /** 1071 * @return {@link #date} (The date that the list was prepared.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1072 */ 1073 public DateTimeType getDateElement() { 1074 if (this.date == null) 1075 if (Configuration.errorOnAutoCreate()) 1076 throw new Error("Attempt to auto-create List.date"); 1077 else if (Configuration.doAutoCreate()) 1078 this.date = new DateTimeType(); // bb 1079 return this.date; 1080 } 1081 1082 public boolean hasDateElement() { 1083 return this.date != null && !this.date.isEmpty(); 1084 } 1085 1086 public boolean hasDate() { 1087 return this.date != null && !this.date.isEmpty(); 1088 } 1089 1090 /** 1091 * @param value {@link #date} (The date that the list was prepared.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value 1092 */ 1093 public ListResource setDateElement(DateTimeType value) { 1094 this.date = value; 1095 return this; 1096 } 1097 1098 /** 1099 * @return The date that the list was prepared. 1100 */ 1101 public Date getDate() { 1102 return this.date == null ? null : this.date.getValue(); 1103 } 1104 1105 /** 1106 * @param value The date that the list was prepared. 1107 */ 1108 public ListResource setDate(Date value) { 1109 if (value == null) 1110 this.date = null; 1111 else { 1112 if (this.date == null) 1113 this.date = new DateTimeType(); 1114 this.date.setValue(value); 1115 } 1116 return this; 1117 } 1118 1119 /** 1120 * @return {@link #source} (The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.) 1121 */ 1122 public Reference getSource() { 1123 if (this.source == null) 1124 if (Configuration.errorOnAutoCreate()) 1125 throw new Error("Attempt to auto-create List.source"); 1126 else if (Configuration.doAutoCreate()) 1127 this.source = new Reference(); // cc 1128 return this.source; 1129 } 1130 1131 public boolean hasSource() { 1132 return this.source != null && !this.source.isEmpty(); 1133 } 1134 1135 /** 1136 * @param value {@link #source} (The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.) 1137 */ 1138 public ListResource setSource(Reference value) { 1139 this.source = value; 1140 return this; 1141 } 1142 1143 /** 1144 * @return {@link #source} The actual object that is the target of the reference. The reference library doesn't populate this, but you can use it to hold the resource if you resolve it. (The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.) 1145 */ 1146 public Resource getSourceTarget() { 1147 return this.sourceTarget; 1148 } 1149 1150 /** 1151 * @param value {@link #source} The actual object that is the target of the reference. The reference library doesn't use these, but you can use it to hold the resource if you resolve it. (The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.) 1152 */ 1153 public ListResource setSourceTarget(Resource value) { 1154 this.sourceTarget = value; 1155 return this; 1156 } 1157 1158 /** 1159 * @return {@link #orderedBy} (What order applies to the items in the list.) 1160 */ 1161 public CodeableConcept getOrderedBy() { 1162 if (this.orderedBy == null) 1163 if (Configuration.errorOnAutoCreate()) 1164 throw new Error("Attempt to auto-create List.orderedBy"); 1165 else if (Configuration.doAutoCreate()) 1166 this.orderedBy = new CodeableConcept(); // cc 1167 return this.orderedBy; 1168 } 1169 1170 public boolean hasOrderedBy() { 1171 return this.orderedBy != null && !this.orderedBy.isEmpty(); 1172 } 1173 1174 /** 1175 * @param value {@link #orderedBy} (What order applies to the items in the list.) 1176 */ 1177 public ListResource setOrderedBy(CodeableConcept value) { 1178 this.orderedBy = value; 1179 return this; 1180 } 1181 1182 /** 1183 * @return {@link #note} (Comments that apply to the overall list.) 1184 */ 1185 public List<Annotation> getNote() { 1186 if (this.note == null) 1187 this.note = new ArrayList<Annotation>(); 1188 return this.note; 1189 } 1190 1191 /** 1192 * @return Returns a reference to <code>this</code> for easy method chaining 1193 */ 1194 public ListResource setNote(List<Annotation> theNote) { 1195 this.note = theNote; 1196 return this; 1197 } 1198 1199 public boolean hasNote() { 1200 if (this.note == null) 1201 return false; 1202 for (Annotation item : this.note) 1203 if (!item.isEmpty()) 1204 return true; 1205 return false; 1206 } 1207 1208 public Annotation addNote() { //3 1209 Annotation t = new Annotation(); 1210 if (this.note == null) 1211 this.note = new ArrayList<Annotation>(); 1212 this.note.add(t); 1213 return t; 1214 } 1215 1216 public ListResource addNote(Annotation t) { //3 1217 if (t == null) 1218 return this; 1219 if (this.note == null) 1220 this.note = new ArrayList<Annotation>(); 1221 this.note.add(t); 1222 return this; 1223 } 1224 1225 /** 1226 * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist 1227 */ 1228 public Annotation getNoteFirstRep() { 1229 if (getNote().isEmpty()) { 1230 addNote(); 1231 } 1232 return getNote().get(0); 1233 } 1234 1235 /** 1236 * @return {@link #entry} (Entries in this list.) 1237 */ 1238 public List<ListEntryComponent> getEntry() { 1239 if (this.entry == null) 1240 this.entry = new ArrayList<ListEntryComponent>(); 1241 return this.entry; 1242 } 1243 1244 /** 1245 * @return Returns a reference to <code>this</code> for easy method chaining 1246 */ 1247 public ListResource setEntry(List<ListEntryComponent> theEntry) { 1248 this.entry = theEntry; 1249 return this; 1250 } 1251 1252 public boolean hasEntry() { 1253 if (this.entry == null) 1254 return false; 1255 for (ListEntryComponent item : this.entry) 1256 if (!item.isEmpty()) 1257 return true; 1258 return false; 1259 } 1260 1261 public ListEntryComponent addEntry() { //3 1262 ListEntryComponent t = new ListEntryComponent(); 1263 if (this.entry == null) 1264 this.entry = new ArrayList<ListEntryComponent>(); 1265 this.entry.add(t); 1266 return t; 1267 } 1268 1269 public ListResource addEntry(ListEntryComponent t) { //3 1270 if (t == null) 1271 return this; 1272 if (this.entry == null) 1273 this.entry = new ArrayList<ListEntryComponent>(); 1274 this.entry.add(t); 1275 return this; 1276 } 1277 1278 /** 1279 * @return The first repetition of repeating field {@link #entry}, creating it if it does not already exist 1280 */ 1281 public ListEntryComponent getEntryFirstRep() { 1282 if (getEntry().isEmpty()) { 1283 addEntry(); 1284 } 1285 return getEntry().get(0); 1286 } 1287 1288 /** 1289 * @return {@link #emptyReason} (If the list is empty, why the list is empty.) 1290 */ 1291 public CodeableConcept getEmptyReason() { 1292 if (this.emptyReason == null) 1293 if (Configuration.errorOnAutoCreate()) 1294 throw new Error("Attempt to auto-create List.emptyReason"); 1295 else if (Configuration.doAutoCreate()) 1296 this.emptyReason = new CodeableConcept(); // cc 1297 return this.emptyReason; 1298 } 1299 1300 public boolean hasEmptyReason() { 1301 return this.emptyReason != null && !this.emptyReason.isEmpty(); 1302 } 1303 1304 /** 1305 * @param value {@link #emptyReason} (If the list is empty, why the list is empty.) 1306 */ 1307 public ListResource setEmptyReason(CodeableConcept value) { 1308 this.emptyReason = value; 1309 return this; 1310 } 1311 1312 protected void listChildren(List<Property> children) { 1313 super.listChildren(children); 1314 children.add(new Property("identifier", "Identifier", "Identifier for the List assigned for business purposes outside the context of FHIR.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1315 children.add(new Property("status", "code", "Indicates the current state of this list.", 0, 1, status)); 1316 children.add(new Property("mode", "code", "How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.", 0, 1, mode)); 1317 children.add(new Property("title", "string", "A label for the list assigned by the author.", 0, 1, title)); 1318 children.add(new Property("code", "CodeableConcept", "This code defines the purpose of the list - why it was created.", 0, 1, code)); 1319 children.add(new Property("subject", "Reference(Patient|Group|Device|Location)", "The common subject (or patient) of the resources that are in the list, if there is one.", 0, 1, subject)); 1320 children.add(new Property("encounter", "Reference(Encounter)", "The encounter that is the context in which this list was created.", 0, 1, encounter)); 1321 children.add(new Property("date", "dateTime", "The date that the list was prepared.", 0, 1, date)); 1322 children.add(new Property("source", "Reference(Practitioner|Patient|Device)", "The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.", 0, 1, source)); 1323 children.add(new Property("orderedBy", "CodeableConcept", "What order applies to the items in the list.", 0, 1, orderedBy)); 1324 children.add(new Property("note", "Annotation", "Comments that apply to the overall list.", 0, java.lang.Integer.MAX_VALUE, note)); 1325 children.add(new Property("entry", "", "Entries in this list.", 0, java.lang.Integer.MAX_VALUE, entry)); 1326 children.add(new Property("emptyReason", "CodeableConcept", "If the list is empty, why the list is empty.", 0, 1, emptyReason)); 1327 } 1328 1329 @Override 1330 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1331 switch (_hash) { 1332 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for the List assigned for business purposes outside the context of FHIR.", 0, java.lang.Integer.MAX_VALUE, identifier); 1333 case -892481550: /*status*/ return new Property("status", "code", "Indicates the current state of this list.", 0, 1, status); 1334 case 3357091: /*mode*/ return new Property("mode", "code", "How this list was prepared - whether it is a working list that is suitable for being maintained on an ongoing basis, or if it represents a snapshot of a list of items from another source, or whether it is a prepared list where items may be marked as added, modified or deleted.", 0, 1, mode); 1335 case 110371416: /*title*/ return new Property("title", "string", "A label for the list assigned by the author.", 0, 1, title); 1336 case 3059181: /*code*/ return new Property("code", "CodeableConcept", "This code defines the purpose of the list - why it was created.", 0, 1, code); 1337 case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group|Device|Location)", "The common subject (or patient) of the resources that are in the list, if there is one.", 0, 1, subject); 1338 case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The encounter that is the context in which this list was created.", 0, 1, encounter); 1339 case 3076014: /*date*/ return new Property("date", "dateTime", "The date that the list was prepared.", 0, 1, date); 1340 case -896505829: /*source*/ return new Property("source", "Reference(Practitioner|Patient|Device)", "The entity responsible for deciding what the contents of the list were. Where the list was created by a human, this is the same as the author of the list.", 0, 1, source); 1341 case -391079516: /*orderedBy*/ return new Property("orderedBy", "CodeableConcept", "What order applies to the items in the list.", 0, 1, orderedBy); 1342 case 3387378: /*note*/ return new Property("note", "Annotation", "Comments that apply to the overall list.", 0, java.lang.Integer.MAX_VALUE, note); 1343 case 96667762: /*entry*/ return new Property("entry", "", "Entries in this list.", 0, java.lang.Integer.MAX_VALUE, entry); 1344 case 1140135409: /*emptyReason*/ return new Property("emptyReason", "CodeableConcept", "If the list is empty, why the list is empty.", 0, 1, emptyReason); 1345 default: return super.getNamedProperty(_hash, _name, _checkValid); 1346 } 1347 1348 } 1349 1350 @Override 1351 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1352 switch (hash) { 1353 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1354 case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<ListStatus> 1355 case 3357091: /*mode*/ return this.mode == null ? new Base[0] : new Base[] {this.mode}; // Enumeration<ListMode> 1356 case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType 1357 case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept 1358 case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference 1359 case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference 1360 case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType 1361 case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // Reference 1362 case -391079516: /*orderedBy*/ return this.orderedBy == null ? new Base[0] : new Base[] {this.orderedBy}; // CodeableConcept 1363 case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation 1364 case 96667762: /*entry*/ return this.entry == null ? new Base[0] : this.entry.toArray(new Base[this.entry.size()]); // ListEntryComponent 1365 case 1140135409: /*emptyReason*/ return this.emptyReason == null ? new Base[0] : new Base[] {this.emptyReason}; // CodeableConcept 1366 default: return super.getProperty(hash, name, checkValid); 1367 } 1368 1369 } 1370 1371 @Override 1372 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1373 switch (hash) { 1374 case -1618432855: // identifier 1375 this.getIdentifier().add(castToIdentifier(value)); // Identifier 1376 return value; 1377 case -892481550: // status 1378 value = new ListStatusEnumFactory().fromType(castToCode(value)); 1379 this.status = (Enumeration) value; // Enumeration<ListStatus> 1380 return value; 1381 case 3357091: // mode 1382 value = new ListModeEnumFactory().fromType(castToCode(value)); 1383 this.mode = (Enumeration) value; // Enumeration<ListMode> 1384 return value; 1385 case 110371416: // title 1386 this.title = castToString(value); // StringType 1387 return value; 1388 case 3059181: // code 1389 this.code = castToCodeableConcept(value); // CodeableConcept 1390 return value; 1391 case -1867885268: // subject 1392 this.subject = castToReference(value); // Reference 1393 return value; 1394 case 1524132147: // encounter 1395 this.encounter = castToReference(value); // Reference 1396 return value; 1397 case 3076014: // date 1398 this.date = castToDateTime(value); // DateTimeType 1399 return value; 1400 case -896505829: // source 1401 this.source = castToReference(value); // Reference 1402 return value; 1403 case -391079516: // orderedBy 1404 this.orderedBy = castToCodeableConcept(value); // CodeableConcept 1405 return value; 1406 case 3387378: // note 1407 this.getNote().add(castToAnnotation(value)); // Annotation 1408 return value; 1409 case 96667762: // entry 1410 this.getEntry().add((ListEntryComponent) value); // ListEntryComponent 1411 return value; 1412 case 1140135409: // emptyReason 1413 this.emptyReason = castToCodeableConcept(value); // CodeableConcept 1414 return value; 1415 default: return super.setProperty(hash, name, value); 1416 } 1417 1418 } 1419 1420 @Override 1421 public Base setProperty(String name, Base value) throws FHIRException { 1422 if (name.equals("identifier")) { 1423 this.getIdentifier().add(castToIdentifier(value)); 1424 } else if (name.equals("status")) { 1425 value = new ListStatusEnumFactory().fromType(castToCode(value)); 1426 this.status = (Enumeration) value; // Enumeration<ListStatus> 1427 } else if (name.equals("mode")) { 1428 value = new ListModeEnumFactory().fromType(castToCode(value)); 1429 this.mode = (Enumeration) value; // Enumeration<ListMode> 1430 } else if (name.equals("title")) { 1431 this.title = castToString(value); // StringType 1432 } else if (name.equals("code")) { 1433 this.code = castToCodeableConcept(value); // CodeableConcept 1434 } else if (name.equals("subject")) { 1435 this.subject = castToReference(value); // Reference 1436 } else if (name.equals("encounter")) { 1437 this.encounter = castToReference(value); // Reference 1438 } else if (name.equals("date")) { 1439 this.date = castToDateTime(value); // DateTimeType 1440 } else if (name.equals("source")) { 1441 this.source = castToReference(value); // Reference 1442 } else if (name.equals("orderedBy")) { 1443 this.orderedBy = castToCodeableConcept(value); // CodeableConcept 1444 } else if (name.equals("note")) { 1445 this.getNote().add(castToAnnotation(value)); 1446 } else if (name.equals("entry")) { 1447 this.getEntry().add((ListEntryComponent) value); 1448 } else if (name.equals("emptyReason")) { 1449 this.emptyReason = castToCodeableConcept(value); // CodeableConcept 1450 } else 1451 return super.setProperty(name, value); 1452 return value; 1453 } 1454 1455 @Override 1456 public Base makeProperty(int hash, String name) throws FHIRException { 1457 switch (hash) { 1458 case -1618432855: return addIdentifier(); 1459 case -892481550: return getStatusElement(); 1460 case 3357091: return getModeElement(); 1461 case 110371416: return getTitleElement(); 1462 case 3059181: return getCode(); 1463 case -1867885268: return getSubject(); 1464 case 1524132147: return getEncounter(); 1465 case 3076014: return getDateElement(); 1466 case -896505829: return getSource(); 1467 case -391079516: return getOrderedBy(); 1468 case 3387378: return addNote(); 1469 case 96667762: return addEntry(); 1470 case 1140135409: return getEmptyReason(); 1471 default: return super.makeProperty(hash, name); 1472 } 1473 1474 } 1475 1476 @Override 1477 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1478 switch (hash) { 1479 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1480 case -892481550: /*status*/ return new String[] {"code"}; 1481 case 3357091: /*mode*/ return new String[] {"code"}; 1482 case 110371416: /*title*/ return new String[] {"string"}; 1483 case 3059181: /*code*/ return new String[] {"CodeableConcept"}; 1484 case -1867885268: /*subject*/ return new String[] {"Reference"}; 1485 case 1524132147: /*encounter*/ return new String[] {"Reference"}; 1486 case 3076014: /*date*/ return new String[] {"dateTime"}; 1487 case -896505829: /*source*/ return new String[] {"Reference"}; 1488 case -391079516: /*orderedBy*/ return new String[] {"CodeableConcept"}; 1489 case 3387378: /*note*/ return new String[] {"Annotation"}; 1490 case 96667762: /*entry*/ return new String[] {}; 1491 case 1140135409: /*emptyReason*/ return new String[] {"CodeableConcept"}; 1492 default: return super.getTypesForProperty(hash, name); 1493 } 1494 1495 } 1496 1497 @Override 1498 public Base addChild(String name) throws FHIRException { 1499 if (name.equals("identifier")) { 1500 return addIdentifier(); 1501 } 1502 else if (name.equals("status")) { 1503 throw new FHIRException("Cannot call addChild on a singleton property List.status"); 1504 } 1505 else if (name.equals("mode")) { 1506 throw new FHIRException("Cannot call addChild on a singleton property List.mode"); 1507 } 1508 else if (name.equals("title")) { 1509 throw new FHIRException("Cannot call addChild on a singleton property List.title"); 1510 } 1511 else if (name.equals("code")) { 1512 this.code = new CodeableConcept(); 1513 return this.code; 1514 } 1515 else if (name.equals("subject")) { 1516 this.subject = new Reference(); 1517 return this.subject; 1518 } 1519 else if (name.equals("encounter")) { 1520 this.encounter = new Reference(); 1521 return this.encounter; 1522 } 1523 else if (name.equals("date")) { 1524 throw new FHIRException("Cannot call addChild on a singleton property List.date"); 1525 } 1526 else if (name.equals("source")) { 1527 this.source = new Reference(); 1528 return this.source; 1529 } 1530 else if (name.equals("orderedBy")) { 1531 this.orderedBy = new CodeableConcept(); 1532 return this.orderedBy; 1533 } 1534 else if (name.equals("note")) { 1535 return addNote(); 1536 } 1537 else if (name.equals("entry")) { 1538 return addEntry(); 1539 } 1540 else if (name.equals("emptyReason")) { 1541 this.emptyReason = new CodeableConcept(); 1542 return this.emptyReason; 1543 } 1544 else 1545 return super.addChild(name); 1546 } 1547 1548 public String fhirType() { 1549 return "List"; 1550 1551 } 1552 1553 public ListResource copy() { 1554 ListResource dst = new ListResource(); 1555 copyValues(dst); 1556 if (identifier != null) { 1557 dst.identifier = new ArrayList<Identifier>(); 1558 for (Identifier i : identifier) 1559 dst.identifier.add(i.copy()); 1560 }; 1561 dst.status = status == null ? null : status.copy(); 1562 dst.mode = mode == null ? null : mode.copy(); 1563 dst.title = title == null ? null : title.copy(); 1564 dst.code = code == null ? null : code.copy(); 1565 dst.subject = subject == null ? null : subject.copy(); 1566 dst.encounter = encounter == null ? null : encounter.copy(); 1567 dst.date = date == null ? null : date.copy(); 1568 dst.source = source == null ? null : source.copy(); 1569 dst.orderedBy = orderedBy == null ? null : orderedBy.copy(); 1570 if (note != null) { 1571 dst.note = new ArrayList<Annotation>(); 1572 for (Annotation i : note) 1573 dst.note.add(i.copy()); 1574 }; 1575 if (entry != null) { 1576 dst.entry = new ArrayList<ListEntryComponent>(); 1577 for (ListEntryComponent i : entry) 1578 dst.entry.add(i.copy()); 1579 }; 1580 dst.emptyReason = emptyReason == null ? null : emptyReason.copy(); 1581 return dst; 1582 } 1583 1584 protected ListResource typedCopy() { 1585 return copy(); 1586 } 1587 1588 @Override 1589 public boolean equalsDeep(Base other_) { 1590 if (!super.equalsDeep(other_)) 1591 return false; 1592 if (!(other_ instanceof ListResource)) 1593 return false; 1594 ListResource o = (ListResource) other_; 1595 return compareDeep(identifier, o.identifier, true) && compareDeep(status, o.status, true) && compareDeep(mode, o.mode, true) 1596 && compareDeep(title, o.title, true) && compareDeep(code, o.code, true) && compareDeep(subject, o.subject, true) 1597 && compareDeep(encounter, o.encounter, true) && compareDeep(date, o.date, true) && compareDeep(source, o.source, true) 1598 && compareDeep(orderedBy, o.orderedBy, true) && compareDeep(note, o.note, true) && compareDeep(entry, o.entry, true) 1599 && compareDeep(emptyReason, o.emptyReason, true); 1600 } 1601 1602 @Override 1603 public boolean equalsShallow(Base other_) { 1604 if (!super.equalsShallow(other_)) 1605 return false; 1606 if (!(other_ instanceof ListResource)) 1607 return false; 1608 ListResource o = (ListResource) other_; 1609 return compareValues(status, o.status, true) && compareValues(mode, o.mode, true) && compareValues(title, o.title, true) 1610 && compareValues(date, o.date, true); 1611 } 1612 1613 public boolean isEmpty() { 1614 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, status, mode 1615 , title, code, subject, encounter, date, source, orderedBy, note, entry, emptyReason 1616 ); 1617 } 1618 1619 @Override 1620 public ResourceType getResourceType() { 1621 return ResourceType.List; 1622 } 1623 1624 /** 1625 * Search parameter: <b>date</b> 1626 * <p> 1627 * Description: <b>When the list was prepared</b><br> 1628 * Type: <b>date</b><br> 1629 * Path: <b>List.date</b><br> 1630 * </p> 1631 */ 1632 @SearchParamDefinition(name="date", path="List.date", description="When the list was prepared", type="date" ) 1633 public static final String SP_DATE = "date"; 1634 /** 1635 * <b>Fluent Client</b> search parameter constant for <b>date</b> 1636 * <p> 1637 * Description: <b>When the list was prepared</b><br> 1638 * Type: <b>date</b><br> 1639 * Path: <b>List.date</b><br> 1640 * </p> 1641 */ 1642 public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); 1643 1644 /** 1645 * Search parameter: <b>identifier</b> 1646 * <p> 1647 * Description: <b>Business identifier</b><br> 1648 * Type: <b>token</b><br> 1649 * Path: <b>List.identifier</b><br> 1650 * </p> 1651 */ 1652 @SearchParamDefinition(name="identifier", path="List.identifier", description="Business identifier", type="token" ) 1653 public static final String SP_IDENTIFIER = "identifier"; 1654 /** 1655 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 1656 * <p> 1657 * Description: <b>Business identifier</b><br> 1658 * Type: <b>token</b><br> 1659 * Path: <b>List.identifier</b><br> 1660 * </p> 1661 */ 1662 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 1663 1664 /** 1665 * Search parameter: <b>item</b> 1666 * <p> 1667 * Description: <b>Actual entry</b><br> 1668 * Type: <b>reference</b><br> 1669 * Path: <b>List.entry.item</b><br> 1670 * </p> 1671 */ 1672 @SearchParamDefinition(name="item", path="List.entry.item", description="Actual entry", type="reference" ) 1673 public static final String SP_ITEM = "item"; 1674 /** 1675 * <b>Fluent Client</b> search parameter constant for <b>item</b> 1676 * <p> 1677 * Description: <b>Actual entry</b><br> 1678 * Type: <b>reference</b><br> 1679 * Path: <b>List.entry.item</b><br> 1680 * </p> 1681 */ 1682 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ITEM = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ITEM); 1683 1684/** 1685 * Constant for fluent queries to be used to add include statements. Specifies 1686 * the path value of "<b>List:item</b>". 1687 */ 1688 public static final ca.uhn.fhir.model.api.Include INCLUDE_ITEM = new ca.uhn.fhir.model.api.Include("List:item").toLocked(); 1689 1690 /** 1691 * Search parameter: <b>empty-reason</b> 1692 * <p> 1693 * Description: <b>Why list is empty</b><br> 1694 * Type: <b>token</b><br> 1695 * Path: <b>List.emptyReason</b><br> 1696 * </p> 1697 */ 1698 @SearchParamDefinition(name="empty-reason", path="List.emptyReason", description="Why list is empty", type="token" ) 1699 public static final String SP_EMPTY_REASON = "empty-reason"; 1700 /** 1701 * <b>Fluent Client</b> search parameter constant for <b>empty-reason</b> 1702 * <p> 1703 * Description: <b>Why list is empty</b><br> 1704 * Type: <b>token</b><br> 1705 * Path: <b>List.emptyReason</b><br> 1706 * </p> 1707 */ 1708 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EMPTY_REASON = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EMPTY_REASON); 1709 1710 /** 1711 * Search parameter: <b>code</b> 1712 * <p> 1713 * Description: <b>What the purpose of this list is</b><br> 1714 * Type: <b>token</b><br> 1715 * Path: <b>List.code</b><br> 1716 * </p> 1717 */ 1718 @SearchParamDefinition(name="code", path="List.code", description="What the purpose of this list is", type="token" ) 1719 public static final String SP_CODE = "code"; 1720 /** 1721 * <b>Fluent Client</b> search parameter constant for <b>code</b> 1722 * <p> 1723 * Description: <b>What the purpose of this list is</b><br> 1724 * Type: <b>token</b><br> 1725 * Path: <b>List.code</b><br> 1726 * </p> 1727 */ 1728 public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); 1729 1730 /** 1731 * Search parameter: <b>notes</b> 1732 * <p> 1733 * Description: <b>The annotation - text content</b><br> 1734 * Type: <b>string</b><br> 1735 * Path: <b>List.note.text</b><br> 1736 * </p> 1737 */ 1738 @SearchParamDefinition(name="notes", path="List.note.text", description="The annotation - text content", type="string" ) 1739 public static final String SP_NOTES = "notes"; 1740 /** 1741 * <b>Fluent Client</b> search parameter constant for <b>notes</b> 1742 * <p> 1743 * Description: <b>The annotation - text content</b><br> 1744 * Type: <b>string</b><br> 1745 * Path: <b>List.note.text</b><br> 1746 * </p> 1747 */ 1748 public static final ca.uhn.fhir.rest.gclient.StringClientParam NOTES = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NOTES); 1749 1750 /** 1751 * Search parameter: <b>subject</b> 1752 * <p> 1753 * Description: <b>If all resources have the same subject</b><br> 1754 * Type: <b>reference</b><br> 1755 * Path: <b>List.subject</b><br> 1756 * </p> 1757 */ 1758 @SearchParamDefinition(name="subject", path="List.subject", description="If all resources have the same subject", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Device.class, Group.class, Location.class, Patient.class } ) 1759 public static final String SP_SUBJECT = "subject"; 1760 /** 1761 * <b>Fluent Client</b> search parameter constant for <b>subject</b> 1762 * <p> 1763 * Description: <b>If all resources have the same subject</b><br> 1764 * Type: <b>reference</b><br> 1765 * Path: <b>List.subject</b><br> 1766 * </p> 1767 */ 1768 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); 1769 1770/** 1771 * Constant for fluent queries to be used to add include statements. Specifies 1772 * the path value of "<b>List:subject</b>". 1773 */ 1774 public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("List:subject").toLocked(); 1775 1776 /** 1777 * Search parameter: <b>patient</b> 1778 * <p> 1779 * Description: <b>If all resources have the same subject</b><br> 1780 * Type: <b>reference</b><br> 1781 * Path: <b>List.subject</b><br> 1782 * </p> 1783 */ 1784 @SearchParamDefinition(name="patient", path="List.subject", description="If all resources have the same subject", type="reference", target={Patient.class } ) 1785 public static final String SP_PATIENT = "patient"; 1786 /** 1787 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1788 * <p> 1789 * Description: <b>If all resources have the same subject</b><br> 1790 * Type: <b>reference</b><br> 1791 * Path: <b>List.subject</b><br> 1792 * </p> 1793 */ 1794 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1795 1796/** 1797 * Constant for fluent queries to be used to add include statements. Specifies 1798 * the path value of "<b>List:patient</b>". 1799 */ 1800 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("List:patient").toLocked(); 1801 1802 /** 1803 * Search parameter: <b>source</b> 1804 * <p> 1805 * Description: <b>Who and/or what defined the list contents (aka Author)</b><br> 1806 * Type: <b>reference</b><br> 1807 * Path: <b>List.source</b><br> 1808 * </p> 1809 */ 1810 @SearchParamDefinition(name="source", path="List.source", description="Who and/or what defined the list contents (aka Author)", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Device.class, Patient.class, Practitioner.class } ) 1811 public static final String SP_SOURCE = "source"; 1812 /** 1813 * <b>Fluent Client</b> search parameter constant for <b>source</b> 1814 * <p> 1815 * Description: <b>Who and/or what defined the list contents (aka Author)</b><br> 1816 * Type: <b>reference</b><br> 1817 * Path: <b>List.source</b><br> 1818 * </p> 1819 */ 1820 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SOURCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SOURCE); 1821 1822/** 1823 * Constant for fluent queries to be used to add include statements. Specifies 1824 * the path value of "<b>List:source</b>". 1825 */ 1826 public static final ca.uhn.fhir.model.api.Include INCLUDE_SOURCE = new ca.uhn.fhir.model.api.Include("List:source").toLocked(); 1827 1828 /** 1829 * Search parameter: <b>encounter</b> 1830 * <p> 1831 * Description: <b>Context in which list created</b><br> 1832 * Type: <b>reference</b><br> 1833 * Path: <b>List.encounter</b><br> 1834 * </p> 1835 */ 1836 @SearchParamDefinition(name="encounter", path="List.encounter", description="Context in which list created", type="reference", target={Encounter.class } ) 1837 public static final String SP_ENCOUNTER = "encounter"; 1838 /** 1839 * <b>Fluent Client</b> search parameter constant for <b>encounter</b> 1840 * <p> 1841 * Description: <b>Context in which list created</b><br> 1842 * Type: <b>reference</b><br> 1843 * Path: <b>List.encounter</b><br> 1844 * </p> 1845 */ 1846 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER); 1847 1848/** 1849 * Constant for fluent queries to be used to add include statements. Specifies 1850 * the path value of "<b>List:encounter</b>". 1851 */ 1852 public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("List:encounter").toLocked(); 1853 1854 /** 1855 * Search parameter: <b>title</b> 1856 * <p> 1857 * Description: <b>Descriptive name for the list</b><br> 1858 * Type: <b>string</b><br> 1859 * Path: <b>List.title</b><br> 1860 * </p> 1861 */ 1862 @SearchParamDefinition(name="title", path="List.title", description="Descriptive name for the list", type="string" ) 1863 public static final String SP_TITLE = "title"; 1864 /** 1865 * <b>Fluent Client</b> search parameter constant for <b>title</b> 1866 * <p> 1867 * Description: <b>Descriptive name for the list</b><br> 1868 * Type: <b>string</b><br> 1869 * Path: <b>List.title</b><br> 1870 * </p> 1871 */ 1872 public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); 1873 1874 /** 1875 * Search parameter: <b>status</b> 1876 * <p> 1877 * Description: <b>current | retired | entered-in-error</b><br> 1878 * Type: <b>token</b><br> 1879 * Path: <b>List.status</b><br> 1880 * </p> 1881 */ 1882 @SearchParamDefinition(name="status", path="List.status", description="current | retired | entered-in-error", type="token" ) 1883 public static final String SP_STATUS = "status"; 1884 /** 1885 * <b>Fluent Client</b> search parameter constant for <b>status</b> 1886 * <p> 1887 * Description: <b>current | retired | entered-in-error</b><br> 1888 * Type: <b>token</b><br> 1889 * Path: <b>List.status</b><br> 1890 * </p> 1891 */ 1892 public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); 1893 1894 1895}