001package org.hl7.fhir.dstu3.model; 002 003/* 004 Copyright (c) 2011+, HL7, Inc. 005 All rights reserved. 006 007 Redistribution and use in source and binary forms, with or without modification, 008 are permitted provided that the following conditions are met: 009 010 * Redistributions of source code must retain the above copyright notice, this 011 list of conditions and the following disclaimer. 012 * Redistributions in binary form must reproduce the above copyright notice, 013 this list of conditions and the following disclaimer in the documentation 014 and/or other materials provided with the distribution. 015 * Neither the name of HL7 nor the names of its contributors may be used to 016 endorse or promote products derived from this software without specific 017 prior written permission. 018 019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 020 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 021 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 022 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 023 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 024 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 025 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 026 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 027 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 028 POSSIBILITY OF SUCH DAMAGE. 029 030*/ 031 032// Generated on Mon, Apr 17, 2017 17:38-0400 for FHIR v3.0.1 033 034import java.util.*; 035 036import org.hl7.fhir.utilities.Utilities; 037import org.hl7.fhir.dstu3.model.Enumerations.*; 038import ca.uhn.fhir.model.api.annotation.ResourceDef; 039import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 040import ca.uhn.fhir.model.api.annotation.Child; 041import ca.uhn.fhir.model.api.annotation.ChildOrder; 042import ca.uhn.fhir.model.api.annotation.Description; 043import ca.uhn.fhir.model.api.annotation.Block; 044import org.hl7.fhir.instance.model.api.*; 045import org.hl7.fhir.exceptions.FHIRException; 046/** 047 * Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process. 048 */ 049@ResourceDef(name="RelatedPerson", profile="http://hl7.org/fhir/Profile/RelatedPerson") 050public class RelatedPerson extends DomainResource { 051 052 /** 053 * Identifier for a person within a particular scope. 054 */ 055 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 056 @Description(shortDefinition="A human identifier for this person", formalDefinition="Identifier for a person within a particular scope." ) 057 protected List<Identifier> identifier; 058 059 /** 060 * Whether this related person record is in active use. 061 */ 062 @Child(name = "active", type = {BooleanType.class}, order=1, min=0, max=1, modifier=true, summary=true) 063 @Description(shortDefinition="Whether this related person's record is in active use", formalDefinition="Whether this related person record is in active use." ) 064 protected BooleanType active; 065 066 /** 067 * The patient this person is related to. 068 */ 069 @Child(name = "patient", type = {Patient.class}, order=2, min=1, max=1, modifier=false, summary=true) 070 @Description(shortDefinition="The patient this person is related to", formalDefinition="The patient this person is related to." ) 071 protected Reference patient; 072 073 /** 074 * The actual object that is the target of the reference (The patient this person is related to.) 075 */ 076 protected Patient patientTarget; 077 078 /** 079 * The nature of the relationship between a patient and the related person. 080 */ 081 @Child(name = "relationship", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) 082 @Description(shortDefinition="The nature of the relationship", formalDefinition="The nature of the relationship between a patient and the related person." ) 083 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/relatedperson-relationshiptype") 084 protected CodeableConcept relationship; 085 086 /** 087 * A name associated with the person. 088 */ 089 @Child(name = "name", type = {HumanName.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 090 @Description(shortDefinition="A name associated with the person", formalDefinition="A name associated with the person." ) 091 protected List<HumanName> name; 092 093 /** 094 * A contact detail for the person, e.g. a telephone number or an email address. 095 */ 096 @Child(name = "telecom", type = {ContactPoint.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 097 @Description(shortDefinition="A contact detail for the person", formalDefinition="A contact detail for the person, e.g. a telephone number or an email address." ) 098 protected List<ContactPoint> telecom; 099 100 /** 101 * Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 102 */ 103 @Child(name = "gender", type = {CodeType.class}, order=6, min=0, max=1, modifier=false, summary=true) 104 @Description(shortDefinition="male | female | other | unknown", formalDefinition="Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes." ) 105 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/administrative-gender") 106 protected Enumeration<AdministrativeGender> gender; 107 108 /** 109 * The date on which the related person was born. 110 */ 111 @Child(name = "birthDate", type = {DateType.class}, order=7, min=0, max=1, modifier=false, summary=true) 112 @Description(shortDefinition="The date on which the related person was born", formalDefinition="The date on which the related person was born." ) 113 protected DateType birthDate; 114 115 /** 116 * Address where the related person can be contacted or visited. 117 */ 118 @Child(name = "address", type = {Address.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 119 @Description(shortDefinition="Address where the related person can be contacted or visited", formalDefinition="Address where the related person can be contacted or visited." ) 120 protected List<Address> address; 121 122 /** 123 * Image of the person. 124 */ 125 @Child(name = "photo", type = {Attachment.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 126 @Description(shortDefinition="Image of the person", formalDefinition="Image of the person." ) 127 protected List<Attachment> photo; 128 129 /** 130 * The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown. 131 */ 132 @Child(name = "period", type = {Period.class}, order=10, min=0, max=1, modifier=false, summary=false) 133 @Description(shortDefinition="Period of time that this relationship is considered valid", formalDefinition="The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown." ) 134 protected Period period; 135 136 private static final long serialVersionUID = 1633785157L; 137 138 /** 139 * Constructor 140 */ 141 public RelatedPerson() { 142 super(); 143 } 144 145 /** 146 * Constructor 147 */ 148 public RelatedPerson(Reference patient) { 149 super(); 150 this.patient = patient; 151 } 152 153 /** 154 * @return {@link #identifier} (Identifier for a person within a particular scope.) 155 */ 156 public List<Identifier> getIdentifier() { 157 if (this.identifier == null) 158 this.identifier = new ArrayList<Identifier>(); 159 return this.identifier; 160 } 161 162 /** 163 * @return Returns a reference to <code>this</code> for easy method chaining 164 */ 165 public RelatedPerson setIdentifier(List<Identifier> theIdentifier) { 166 this.identifier = theIdentifier; 167 return this; 168 } 169 170 public boolean hasIdentifier() { 171 if (this.identifier == null) 172 return false; 173 for (Identifier item : this.identifier) 174 if (!item.isEmpty()) 175 return true; 176 return false; 177 } 178 179 public Identifier addIdentifier() { //3 180 Identifier t = new Identifier(); 181 if (this.identifier == null) 182 this.identifier = new ArrayList<Identifier>(); 183 this.identifier.add(t); 184 return t; 185 } 186 187 public RelatedPerson addIdentifier(Identifier t) { //3 188 if (t == null) 189 return this; 190 if (this.identifier == null) 191 this.identifier = new ArrayList<Identifier>(); 192 this.identifier.add(t); 193 return this; 194 } 195 196 /** 197 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist 198 */ 199 public Identifier getIdentifierFirstRep() { 200 if (getIdentifier().isEmpty()) { 201 addIdentifier(); 202 } 203 return getIdentifier().get(0); 204 } 205 206 /** 207 * @return {@link #active} (Whether this related person record is in active use.). This is the underlying object with id, value and extensions. The accessor "getActive" gives direct access to the value 208 */ 209 public BooleanType getActiveElement() { 210 if (this.active == null) 211 if (Configuration.errorOnAutoCreate()) 212 throw new Error("Attempt to auto-create RelatedPerson.active"); 213 else if (Configuration.doAutoCreate()) 214 this.active = new BooleanType(); // bb 215 return this.active; 216 } 217 218 public boolean hasActiveElement() { 219 return this.active != null && !this.active.isEmpty(); 220 } 221 222 public boolean hasActive() { 223 return this.active != null && !this.active.isEmpty(); 224 } 225 226 /** 227 * @param value {@link #active} (Whether this related person record is in active use.). This is the underlying object with id, value and extensions. The accessor "getActive" gives direct access to the value 228 */ 229 public RelatedPerson setActiveElement(BooleanType value) { 230 this.active = value; 231 return this; 232 } 233 234 /** 235 * @return Whether this related person record is in active use. 236 */ 237 public boolean getActive() { 238 return this.active == null || this.active.isEmpty() ? false : this.active.getValue(); 239 } 240 241 /** 242 * @param value Whether this related person record is in active use. 243 */ 244 public RelatedPerson setActive(boolean value) { 245 if (this.active == null) 246 this.active = new BooleanType(); 247 this.active.setValue(value); 248 return this; 249 } 250 251 /** 252 * @return {@link #patient} (The patient this person is related to.) 253 */ 254 public Reference getPatient() { 255 if (this.patient == null) 256 if (Configuration.errorOnAutoCreate()) 257 throw new Error("Attempt to auto-create RelatedPerson.patient"); 258 else if (Configuration.doAutoCreate()) 259 this.patient = new Reference(); // cc 260 return this.patient; 261 } 262 263 public boolean hasPatient() { 264 return this.patient != null && !this.patient.isEmpty(); 265 } 266 267 /** 268 * @param value {@link #patient} (The patient this person is related to.) 269 */ 270 public RelatedPerson setPatient(Reference value) { 271 this.patient = value; 272 return this; 273 } 274 275 /** 276 * @return {@link #patient} 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 patient this person is related to.) 277 */ 278 public Patient getPatientTarget() { 279 if (this.patientTarget == null) 280 if (Configuration.errorOnAutoCreate()) 281 throw new Error("Attempt to auto-create RelatedPerson.patient"); 282 else if (Configuration.doAutoCreate()) 283 this.patientTarget = new Patient(); // aa 284 return this.patientTarget; 285 } 286 287 /** 288 * @param value {@link #patient} 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 patient this person is related to.) 289 */ 290 public RelatedPerson setPatientTarget(Patient value) { 291 this.patientTarget = value; 292 return this; 293 } 294 295 /** 296 * @return {@link #relationship} (The nature of the relationship between a patient and the related person.) 297 */ 298 public CodeableConcept getRelationship() { 299 if (this.relationship == null) 300 if (Configuration.errorOnAutoCreate()) 301 throw new Error("Attempt to auto-create RelatedPerson.relationship"); 302 else if (Configuration.doAutoCreate()) 303 this.relationship = new CodeableConcept(); // cc 304 return this.relationship; 305 } 306 307 public boolean hasRelationship() { 308 return this.relationship != null && !this.relationship.isEmpty(); 309 } 310 311 /** 312 * @param value {@link #relationship} (The nature of the relationship between a patient and the related person.) 313 */ 314 public RelatedPerson setRelationship(CodeableConcept value) { 315 this.relationship = value; 316 return this; 317 } 318 319 /** 320 * @return {@link #name} (A name associated with the person.) 321 */ 322 public List<HumanName> getName() { 323 if (this.name == null) 324 this.name = new ArrayList<HumanName>(); 325 return this.name; 326 } 327 328 /** 329 * @return Returns a reference to <code>this</code> for easy method chaining 330 */ 331 public RelatedPerson setName(List<HumanName> theName) { 332 this.name = theName; 333 return this; 334 } 335 336 public boolean hasName() { 337 if (this.name == null) 338 return false; 339 for (HumanName item : this.name) 340 if (!item.isEmpty()) 341 return true; 342 return false; 343 } 344 345 public HumanName addName() { //3 346 HumanName t = new HumanName(); 347 if (this.name == null) 348 this.name = new ArrayList<HumanName>(); 349 this.name.add(t); 350 return t; 351 } 352 353 public RelatedPerson addName(HumanName t) { //3 354 if (t == null) 355 return this; 356 if (this.name == null) 357 this.name = new ArrayList<HumanName>(); 358 this.name.add(t); 359 return this; 360 } 361 362 /** 363 * @return The first repetition of repeating field {@link #name}, creating it if it does not already exist 364 */ 365 public HumanName getNameFirstRep() { 366 if (getName().isEmpty()) { 367 addName(); 368 } 369 return getName().get(0); 370 } 371 372 /** 373 * @return {@link #telecom} (A contact detail for the person, e.g. a telephone number or an email address.) 374 */ 375 public List<ContactPoint> getTelecom() { 376 if (this.telecom == null) 377 this.telecom = new ArrayList<ContactPoint>(); 378 return this.telecom; 379 } 380 381 /** 382 * @return Returns a reference to <code>this</code> for easy method chaining 383 */ 384 public RelatedPerson setTelecom(List<ContactPoint> theTelecom) { 385 this.telecom = theTelecom; 386 return this; 387 } 388 389 public boolean hasTelecom() { 390 if (this.telecom == null) 391 return false; 392 for (ContactPoint item : this.telecom) 393 if (!item.isEmpty()) 394 return true; 395 return false; 396 } 397 398 public ContactPoint addTelecom() { //3 399 ContactPoint t = new ContactPoint(); 400 if (this.telecom == null) 401 this.telecom = new ArrayList<ContactPoint>(); 402 this.telecom.add(t); 403 return t; 404 } 405 406 public RelatedPerson addTelecom(ContactPoint t) { //3 407 if (t == null) 408 return this; 409 if (this.telecom == null) 410 this.telecom = new ArrayList<ContactPoint>(); 411 this.telecom.add(t); 412 return this; 413 } 414 415 /** 416 * @return The first repetition of repeating field {@link #telecom}, creating it if it does not already exist 417 */ 418 public ContactPoint getTelecomFirstRep() { 419 if (getTelecom().isEmpty()) { 420 addTelecom(); 421 } 422 return getTelecom().get(0); 423 } 424 425 /** 426 * @return {@link #gender} (Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes.). This is the underlying object with id, value and extensions. The accessor "getGender" gives direct access to the value 427 */ 428 public Enumeration<AdministrativeGender> getGenderElement() { 429 if (this.gender == null) 430 if (Configuration.errorOnAutoCreate()) 431 throw new Error("Attempt to auto-create RelatedPerson.gender"); 432 else if (Configuration.doAutoCreate()) 433 this.gender = new Enumeration<AdministrativeGender>(new AdministrativeGenderEnumFactory()); // bb 434 return this.gender; 435 } 436 437 public boolean hasGenderElement() { 438 return this.gender != null && !this.gender.isEmpty(); 439 } 440 441 public boolean hasGender() { 442 return this.gender != null && !this.gender.isEmpty(); 443 } 444 445 /** 446 * @param value {@link #gender} (Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes.). This is the underlying object with id, value and extensions. The accessor "getGender" gives direct access to the value 447 */ 448 public RelatedPerson setGenderElement(Enumeration<AdministrativeGender> value) { 449 this.gender = value; 450 return this; 451 } 452 453 /** 454 * @return Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 455 */ 456 public AdministrativeGender getGender() { 457 return this.gender == null ? null : this.gender.getValue(); 458 } 459 460 /** 461 * @param value Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes. 462 */ 463 public RelatedPerson setGender(AdministrativeGender value) { 464 if (value == null) 465 this.gender = null; 466 else { 467 if (this.gender == null) 468 this.gender = new Enumeration<AdministrativeGender>(new AdministrativeGenderEnumFactory()); 469 this.gender.setValue(value); 470 } 471 return this; 472 } 473 474 /** 475 * @return {@link #birthDate} (The date on which the related person was born.). This is the underlying object with id, value and extensions. The accessor "getBirthDate" gives direct access to the value 476 */ 477 public DateType getBirthDateElement() { 478 if (this.birthDate == null) 479 if (Configuration.errorOnAutoCreate()) 480 throw new Error("Attempt to auto-create RelatedPerson.birthDate"); 481 else if (Configuration.doAutoCreate()) 482 this.birthDate = new DateType(); // bb 483 return this.birthDate; 484 } 485 486 public boolean hasBirthDateElement() { 487 return this.birthDate != null && !this.birthDate.isEmpty(); 488 } 489 490 public boolean hasBirthDate() { 491 return this.birthDate != null && !this.birthDate.isEmpty(); 492 } 493 494 /** 495 * @param value {@link #birthDate} (The date on which the related person was born.). This is the underlying object with id, value and extensions. The accessor "getBirthDate" gives direct access to the value 496 */ 497 public RelatedPerson setBirthDateElement(DateType value) { 498 this.birthDate = value; 499 return this; 500 } 501 502 /** 503 * @return The date on which the related person was born. 504 */ 505 public Date getBirthDate() { 506 return this.birthDate == null ? null : this.birthDate.getValue(); 507 } 508 509 /** 510 * @param value The date on which the related person was born. 511 */ 512 public RelatedPerson setBirthDate(Date value) { 513 if (value == null) 514 this.birthDate = null; 515 else { 516 if (this.birthDate == null) 517 this.birthDate = new DateType(); 518 this.birthDate.setValue(value); 519 } 520 return this; 521 } 522 523 /** 524 * @return {@link #address} (Address where the related person can be contacted or visited.) 525 */ 526 public List<Address> getAddress() { 527 if (this.address == null) 528 this.address = new ArrayList<Address>(); 529 return this.address; 530 } 531 532 /** 533 * @return Returns a reference to <code>this</code> for easy method chaining 534 */ 535 public RelatedPerson setAddress(List<Address> theAddress) { 536 this.address = theAddress; 537 return this; 538 } 539 540 public boolean hasAddress() { 541 if (this.address == null) 542 return false; 543 for (Address item : this.address) 544 if (!item.isEmpty()) 545 return true; 546 return false; 547 } 548 549 public Address addAddress() { //3 550 Address t = new Address(); 551 if (this.address == null) 552 this.address = new ArrayList<Address>(); 553 this.address.add(t); 554 return t; 555 } 556 557 public RelatedPerson addAddress(Address t) { //3 558 if (t == null) 559 return this; 560 if (this.address == null) 561 this.address = new ArrayList<Address>(); 562 this.address.add(t); 563 return this; 564 } 565 566 /** 567 * @return The first repetition of repeating field {@link #address}, creating it if it does not already exist 568 */ 569 public Address getAddressFirstRep() { 570 if (getAddress().isEmpty()) { 571 addAddress(); 572 } 573 return getAddress().get(0); 574 } 575 576 /** 577 * @return {@link #photo} (Image of the person.) 578 */ 579 public List<Attachment> getPhoto() { 580 if (this.photo == null) 581 this.photo = new ArrayList<Attachment>(); 582 return this.photo; 583 } 584 585 /** 586 * @return Returns a reference to <code>this</code> for easy method chaining 587 */ 588 public RelatedPerson setPhoto(List<Attachment> thePhoto) { 589 this.photo = thePhoto; 590 return this; 591 } 592 593 public boolean hasPhoto() { 594 if (this.photo == null) 595 return false; 596 for (Attachment item : this.photo) 597 if (!item.isEmpty()) 598 return true; 599 return false; 600 } 601 602 public Attachment addPhoto() { //3 603 Attachment t = new Attachment(); 604 if (this.photo == null) 605 this.photo = new ArrayList<Attachment>(); 606 this.photo.add(t); 607 return t; 608 } 609 610 public RelatedPerson addPhoto(Attachment t) { //3 611 if (t == null) 612 return this; 613 if (this.photo == null) 614 this.photo = new ArrayList<Attachment>(); 615 this.photo.add(t); 616 return this; 617 } 618 619 /** 620 * @return The first repetition of repeating field {@link #photo}, creating it if it does not already exist 621 */ 622 public Attachment getPhotoFirstRep() { 623 if (getPhoto().isEmpty()) { 624 addPhoto(); 625 } 626 return getPhoto().get(0); 627 } 628 629 /** 630 * @return {@link #period} (The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown.) 631 */ 632 public Period getPeriod() { 633 if (this.period == null) 634 if (Configuration.errorOnAutoCreate()) 635 throw new Error("Attempt to auto-create RelatedPerson.period"); 636 else if (Configuration.doAutoCreate()) 637 this.period = new Period(); // cc 638 return this.period; 639 } 640 641 public boolean hasPeriod() { 642 return this.period != null && !this.period.isEmpty(); 643 } 644 645 /** 646 * @param value {@link #period} (The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown.) 647 */ 648 public RelatedPerson setPeriod(Period value) { 649 this.period = value; 650 return this; 651 } 652 653 protected void listChildren(List<Property> childrenList) { 654 super.listChildren(childrenList); 655 childrenList.add(new Property("identifier", "Identifier", "Identifier for a person within a particular scope.", 0, java.lang.Integer.MAX_VALUE, identifier)); 656 childrenList.add(new Property("active", "boolean", "Whether this related person record is in active use.", 0, java.lang.Integer.MAX_VALUE, active)); 657 childrenList.add(new Property("patient", "Reference(Patient)", "The patient this person is related to.", 0, java.lang.Integer.MAX_VALUE, patient)); 658 childrenList.add(new Property("relationship", "CodeableConcept", "The nature of the relationship between a patient and the related person.", 0, java.lang.Integer.MAX_VALUE, relationship)); 659 childrenList.add(new Property("name", "HumanName", "A name associated with the person.", 0, java.lang.Integer.MAX_VALUE, name)); 660 childrenList.add(new Property("telecom", "ContactPoint", "A contact detail for the person, e.g. a telephone number or an email address.", 0, java.lang.Integer.MAX_VALUE, telecom)); 661 childrenList.add(new Property("gender", "code", "Administrative Gender - the gender that the person is considered to have for administration and record keeping purposes.", 0, java.lang.Integer.MAX_VALUE, gender)); 662 childrenList.add(new Property("birthDate", "date", "The date on which the related person was born.", 0, java.lang.Integer.MAX_VALUE, birthDate)); 663 childrenList.add(new Property("address", "Address", "Address where the related person can be contacted or visited.", 0, java.lang.Integer.MAX_VALUE, address)); 664 childrenList.add(new Property("photo", "Attachment", "Image of the person.", 0, java.lang.Integer.MAX_VALUE, photo)); 665 childrenList.add(new Property("period", "Period", "The period of time that this relationship is considered to be valid. If there are no dates defined, then the interval is unknown.", 0, java.lang.Integer.MAX_VALUE, period)); 666 } 667 668 @Override 669 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 670 switch (hash) { 671 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 672 case -1422950650: /*active*/ return this.active == null ? new Base[0] : new Base[] {this.active}; // BooleanType 673 case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference 674 case -261851592: /*relationship*/ return this.relationship == null ? new Base[0] : new Base[] {this.relationship}; // CodeableConcept 675 case 3373707: /*name*/ return this.name == null ? new Base[0] : this.name.toArray(new Base[this.name.size()]); // HumanName 676 case -1429363305: /*telecom*/ return this.telecom == null ? new Base[0] : this.telecom.toArray(new Base[this.telecom.size()]); // ContactPoint 677 case -1249512767: /*gender*/ return this.gender == null ? new Base[0] : new Base[] {this.gender}; // Enumeration<AdministrativeGender> 678 case -1210031859: /*birthDate*/ return this.birthDate == null ? new Base[0] : new Base[] {this.birthDate}; // DateType 679 case -1147692044: /*address*/ return this.address == null ? new Base[0] : this.address.toArray(new Base[this.address.size()]); // Address 680 case 106642994: /*photo*/ return this.photo == null ? new Base[0] : this.photo.toArray(new Base[this.photo.size()]); // Attachment 681 case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period 682 default: return super.getProperty(hash, name, checkValid); 683 } 684 685 } 686 687 @Override 688 public Base setProperty(int hash, String name, Base value) throws FHIRException { 689 switch (hash) { 690 case -1618432855: // identifier 691 this.getIdentifier().add(castToIdentifier(value)); // Identifier 692 return value; 693 case -1422950650: // active 694 this.active = castToBoolean(value); // BooleanType 695 return value; 696 case -791418107: // patient 697 this.patient = castToReference(value); // Reference 698 return value; 699 case -261851592: // relationship 700 this.relationship = castToCodeableConcept(value); // CodeableConcept 701 return value; 702 case 3373707: // name 703 this.getName().add(castToHumanName(value)); // HumanName 704 return value; 705 case -1429363305: // telecom 706 this.getTelecom().add(castToContactPoint(value)); // ContactPoint 707 return value; 708 case -1249512767: // gender 709 value = new AdministrativeGenderEnumFactory().fromType(castToCode(value)); 710 this.gender = (Enumeration) value; // Enumeration<AdministrativeGender> 711 return value; 712 case -1210031859: // birthDate 713 this.birthDate = castToDate(value); // DateType 714 return value; 715 case -1147692044: // address 716 this.getAddress().add(castToAddress(value)); // Address 717 return value; 718 case 106642994: // photo 719 this.getPhoto().add(castToAttachment(value)); // Attachment 720 return value; 721 case -991726143: // period 722 this.period = castToPeriod(value); // Period 723 return value; 724 default: return super.setProperty(hash, name, value); 725 } 726 727 } 728 729 @Override 730 public Base setProperty(String name, Base value) throws FHIRException { 731 if (name.equals("identifier")) { 732 this.getIdentifier().add(castToIdentifier(value)); 733 } else if (name.equals("active")) { 734 this.active = castToBoolean(value); // BooleanType 735 } else if (name.equals("patient")) { 736 this.patient = castToReference(value); // Reference 737 } else if (name.equals("relationship")) { 738 this.relationship = castToCodeableConcept(value); // CodeableConcept 739 } else if (name.equals("name")) { 740 this.getName().add(castToHumanName(value)); 741 } else if (name.equals("telecom")) { 742 this.getTelecom().add(castToContactPoint(value)); 743 } else if (name.equals("gender")) { 744 value = new AdministrativeGenderEnumFactory().fromType(castToCode(value)); 745 this.gender = (Enumeration) value; // Enumeration<AdministrativeGender> 746 } else if (name.equals("birthDate")) { 747 this.birthDate = castToDate(value); // DateType 748 } else if (name.equals("address")) { 749 this.getAddress().add(castToAddress(value)); 750 } else if (name.equals("photo")) { 751 this.getPhoto().add(castToAttachment(value)); 752 } else if (name.equals("period")) { 753 this.period = castToPeriod(value); // Period 754 } else 755 return super.setProperty(name, value); 756 return value; 757 } 758 759 @Override 760 public Base makeProperty(int hash, String name) throws FHIRException { 761 switch (hash) { 762 case -1618432855: return addIdentifier(); 763 case -1422950650: return getActiveElement(); 764 case -791418107: return getPatient(); 765 case -261851592: return getRelationship(); 766 case 3373707: return addName(); 767 case -1429363305: return addTelecom(); 768 case -1249512767: return getGenderElement(); 769 case -1210031859: return getBirthDateElement(); 770 case -1147692044: return addAddress(); 771 case 106642994: return addPhoto(); 772 case -991726143: return getPeriod(); 773 default: return super.makeProperty(hash, name); 774 } 775 776 } 777 778 @Override 779 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 780 switch (hash) { 781 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 782 case -1422950650: /*active*/ return new String[] {"boolean"}; 783 case -791418107: /*patient*/ return new String[] {"Reference"}; 784 case -261851592: /*relationship*/ return new String[] {"CodeableConcept"}; 785 case 3373707: /*name*/ return new String[] {"HumanName"}; 786 case -1429363305: /*telecom*/ return new String[] {"ContactPoint"}; 787 case -1249512767: /*gender*/ return new String[] {"code"}; 788 case -1210031859: /*birthDate*/ return new String[] {"date"}; 789 case -1147692044: /*address*/ return new String[] {"Address"}; 790 case 106642994: /*photo*/ return new String[] {"Attachment"}; 791 case -991726143: /*period*/ return new String[] {"Period"}; 792 default: return super.getTypesForProperty(hash, name); 793 } 794 795 } 796 797 @Override 798 public Base addChild(String name) throws FHIRException { 799 if (name.equals("identifier")) { 800 return addIdentifier(); 801 } 802 else if (name.equals("active")) { 803 throw new FHIRException("Cannot call addChild on a primitive type RelatedPerson.active"); 804 } 805 else if (name.equals("patient")) { 806 this.patient = new Reference(); 807 return this.patient; 808 } 809 else if (name.equals("relationship")) { 810 this.relationship = new CodeableConcept(); 811 return this.relationship; 812 } 813 else if (name.equals("name")) { 814 return addName(); 815 } 816 else if (name.equals("telecom")) { 817 return addTelecom(); 818 } 819 else if (name.equals("gender")) { 820 throw new FHIRException("Cannot call addChild on a primitive type RelatedPerson.gender"); 821 } 822 else if (name.equals("birthDate")) { 823 throw new FHIRException("Cannot call addChild on a primitive type RelatedPerson.birthDate"); 824 } 825 else if (name.equals("address")) { 826 return addAddress(); 827 } 828 else if (name.equals("photo")) { 829 return addPhoto(); 830 } 831 else if (name.equals("period")) { 832 this.period = new Period(); 833 return this.period; 834 } 835 else 836 return super.addChild(name); 837 } 838 839 public String fhirType() { 840 return "RelatedPerson"; 841 842 } 843 844 public RelatedPerson copy() { 845 RelatedPerson dst = new RelatedPerson(); 846 copyValues(dst); 847 if (identifier != null) { 848 dst.identifier = new ArrayList<Identifier>(); 849 for (Identifier i : identifier) 850 dst.identifier.add(i.copy()); 851 }; 852 dst.active = active == null ? null : active.copy(); 853 dst.patient = patient == null ? null : patient.copy(); 854 dst.relationship = relationship == null ? null : relationship.copy(); 855 if (name != null) { 856 dst.name = new ArrayList<HumanName>(); 857 for (HumanName i : name) 858 dst.name.add(i.copy()); 859 }; 860 if (telecom != null) { 861 dst.telecom = new ArrayList<ContactPoint>(); 862 for (ContactPoint i : telecom) 863 dst.telecom.add(i.copy()); 864 }; 865 dst.gender = gender == null ? null : gender.copy(); 866 dst.birthDate = birthDate == null ? null : birthDate.copy(); 867 if (address != null) { 868 dst.address = new ArrayList<Address>(); 869 for (Address i : address) 870 dst.address.add(i.copy()); 871 }; 872 if (photo != null) { 873 dst.photo = new ArrayList<Attachment>(); 874 for (Attachment i : photo) 875 dst.photo.add(i.copy()); 876 }; 877 dst.period = period == null ? null : period.copy(); 878 return dst; 879 } 880 881 protected RelatedPerson typedCopy() { 882 return copy(); 883 } 884 885 @Override 886 public boolean equalsDeep(Base other) { 887 if (!super.equalsDeep(other)) 888 return false; 889 if (!(other instanceof RelatedPerson)) 890 return false; 891 RelatedPerson o = (RelatedPerson) other; 892 return compareDeep(identifier, o.identifier, true) && compareDeep(active, o.active, true) && compareDeep(patient, o.patient, true) 893 && compareDeep(relationship, o.relationship, true) && compareDeep(name, o.name, true) && compareDeep(telecom, o.telecom, true) 894 && compareDeep(gender, o.gender, true) && compareDeep(birthDate, o.birthDate, true) && compareDeep(address, o.address, true) 895 && compareDeep(photo, o.photo, true) && compareDeep(period, o.period, true); 896 } 897 898 @Override 899 public boolean equalsShallow(Base other) { 900 if (!super.equalsShallow(other)) 901 return false; 902 if (!(other instanceof RelatedPerson)) 903 return false; 904 RelatedPerson o = (RelatedPerson) other; 905 return compareValues(active, o.active, true) && compareValues(gender, o.gender, true) && compareValues(birthDate, o.birthDate, true) 906 ; 907 } 908 909 public boolean isEmpty() { 910 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, active, patient 911 , relationship, name, telecom, gender, birthDate, address, photo, period); 912 } 913 914 @Override 915 public ResourceType getResourceType() { 916 return ResourceType.RelatedPerson; 917 } 918 919 /** 920 * Search parameter: <b>identifier</b> 921 * <p> 922 * Description: <b>An Identifier of the RelatedPerson</b><br> 923 * Type: <b>token</b><br> 924 * Path: <b>RelatedPerson.identifier</b><br> 925 * </p> 926 */ 927 @SearchParamDefinition(name="identifier", path="RelatedPerson.identifier", description="An Identifier of the RelatedPerson", type="token" ) 928 public static final String SP_IDENTIFIER = "identifier"; 929 /** 930 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 931 * <p> 932 * Description: <b>An Identifier of the RelatedPerson</b><br> 933 * Type: <b>token</b><br> 934 * Path: <b>RelatedPerson.identifier</b><br> 935 * </p> 936 */ 937 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 938 939 /** 940 * Search parameter: <b>address</b> 941 * <p> 942 * Description: <b>A server defined search that may match any of the string fields in the Address, including line, city, state, country, postalCode, and/or text</b><br> 943 * Type: <b>string</b><br> 944 * Path: <b>RelatedPerson.address</b><br> 945 * </p> 946 */ 947 @SearchParamDefinition(name="address", path="RelatedPerson.address", description="A server defined search that may match any of the string fields in the Address, including line, city, state, country, postalCode, and/or text", type="string" ) 948 public static final String SP_ADDRESS = "address"; 949 /** 950 * <b>Fluent Client</b> search parameter constant for <b>address</b> 951 * <p> 952 * Description: <b>A server defined search that may match any of the string fields in the Address, including line, city, state, country, postalCode, and/or text</b><br> 953 * Type: <b>string</b><br> 954 * Path: <b>RelatedPerson.address</b><br> 955 * </p> 956 */ 957 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS); 958 959 /** 960 * Search parameter: <b>birthdate</b> 961 * <p> 962 * Description: <b>The Related Person's date of birth</b><br> 963 * Type: <b>date</b><br> 964 * Path: <b>RelatedPerson.birthDate</b><br> 965 * </p> 966 */ 967 @SearchParamDefinition(name="birthdate", path="RelatedPerson.birthDate", description="The Related Person's date of birth", type="date" ) 968 public static final String SP_BIRTHDATE = "birthdate"; 969 /** 970 * <b>Fluent Client</b> search parameter constant for <b>birthdate</b> 971 * <p> 972 * Description: <b>The Related Person's date of birth</b><br> 973 * Type: <b>date</b><br> 974 * Path: <b>RelatedPerson.birthDate</b><br> 975 * </p> 976 */ 977 public static final ca.uhn.fhir.rest.gclient.DateClientParam BIRTHDATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_BIRTHDATE); 978 979 /** 980 * Search parameter: <b>address-state</b> 981 * <p> 982 * Description: <b>A state specified in an address</b><br> 983 * Type: <b>string</b><br> 984 * Path: <b>RelatedPerson.address.state</b><br> 985 * </p> 986 */ 987 @SearchParamDefinition(name="address-state", path="RelatedPerson.address.state", description="A state specified in an address", type="string" ) 988 public static final String SP_ADDRESS_STATE = "address-state"; 989 /** 990 * <b>Fluent Client</b> search parameter constant for <b>address-state</b> 991 * <p> 992 * Description: <b>A state specified in an address</b><br> 993 * Type: <b>string</b><br> 994 * Path: <b>RelatedPerson.address.state</b><br> 995 * </p> 996 */ 997 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_STATE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_STATE); 998 999 /** 1000 * Search parameter: <b>gender</b> 1001 * <p> 1002 * Description: <b>Gender of the related person</b><br> 1003 * Type: <b>token</b><br> 1004 * Path: <b>RelatedPerson.gender</b><br> 1005 * </p> 1006 */ 1007 @SearchParamDefinition(name="gender", path="RelatedPerson.gender", description="Gender of the related person", type="token" ) 1008 public static final String SP_GENDER = "gender"; 1009 /** 1010 * <b>Fluent Client</b> search parameter constant for <b>gender</b> 1011 * <p> 1012 * Description: <b>Gender of the related person</b><br> 1013 * Type: <b>token</b><br> 1014 * Path: <b>RelatedPerson.gender</b><br> 1015 * </p> 1016 */ 1017 public static final ca.uhn.fhir.rest.gclient.TokenClientParam GENDER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_GENDER); 1018 1019 /** 1020 * Search parameter: <b>active</b> 1021 * <p> 1022 * Description: <b>Indicates if the related person record is active</b><br> 1023 * Type: <b>token</b><br> 1024 * Path: <b>RelatedPerson.active</b><br> 1025 * </p> 1026 */ 1027 @SearchParamDefinition(name="active", path="RelatedPerson.active", description="Indicates if the related person record is active", type="token" ) 1028 public static final String SP_ACTIVE = "active"; 1029 /** 1030 * <b>Fluent Client</b> search parameter constant for <b>active</b> 1031 * <p> 1032 * Description: <b>Indicates if the related person record is active</b><br> 1033 * Type: <b>token</b><br> 1034 * Path: <b>RelatedPerson.active</b><br> 1035 * </p> 1036 */ 1037 public static final ca.uhn.fhir.rest.gclient.TokenClientParam ACTIVE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ACTIVE); 1038 1039 /** 1040 * Search parameter: <b>address-postalcode</b> 1041 * <p> 1042 * Description: <b>A postal code specified in an address</b><br> 1043 * Type: <b>string</b><br> 1044 * Path: <b>RelatedPerson.address.postalCode</b><br> 1045 * </p> 1046 */ 1047 @SearchParamDefinition(name="address-postalcode", path="RelatedPerson.address.postalCode", description="A postal code specified in an address", type="string" ) 1048 public static final String SP_ADDRESS_POSTALCODE = "address-postalcode"; 1049 /** 1050 * <b>Fluent Client</b> search parameter constant for <b>address-postalcode</b> 1051 * <p> 1052 * Description: <b>A postal code specified in an address</b><br> 1053 * Type: <b>string</b><br> 1054 * Path: <b>RelatedPerson.address.postalCode</b><br> 1055 * </p> 1056 */ 1057 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_POSTALCODE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_POSTALCODE); 1058 1059 /** 1060 * Search parameter: <b>address-country</b> 1061 * <p> 1062 * Description: <b>A country specified in an address</b><br> 1063 * Type: <b>string</b><br> 1064 * Path: <b>RelatedPerson.address.country</b><br> 1065 * </p> 1066 */ 1067 @SearchParamDefinition(name="address-country", path="RelatedPerson.address.country", description="A country specified in an address", type="string" ) 1068 public static final String SP_ADDRESS_COUNTRY = "address-country"; 1069 /** 1070 * <b>Fluent Client</b> search parameter constant for <b>address-country</b> 1071 * <p> 1072 * Description: <b>A country specified in an address</b><br> 1073 * Type: <b>string</b><br> 1074 * Path: <b>RelatedPerson.address.country</b><br> 1075 * </p> 1076 */ 1077 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_COUNTRY = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_COUNTRY); 1078 1079 /** 1080 * Search parameter: <b>phonetic</b> 1081 * <p> 1082 * Description: <b>A portion of name using some kind of phonetic matching algorithm</b><br> 1083 * Type: <b>string</b><br> 1084 * Path: <b>RelatedPerson.name</b><br> 1085 * </p> 1086 */ 1087 @SearchParamDefinition(name="phonetic", path="RelatedPerson.name", description="A portion of name using some kind of phonetic matching algorithm", type="string" ) 1088 public static final String SP_PHONETIC = "phonetic"; 1089 /** 1090 * <b>Fluent Client</b> search parameter constant for <b>phonetic</b> 1091 * <p> 1092 * Description: <b>A portion of name using some kind of phonetic matching algorithm</b><br> 1093 * Type: <b>string</b><br> 1094 * Path: <b>RelatedPerson.name</b><br> 1095 * </p> 1096 */ 1097 public static final ca.uhn.fhir.rest.gclient.StringClientParam PHONETIC = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PHONETIC); 1098 1099 /** 1100 * Search parameter: <b>phone</b> 1101 * <p> 1102 * Description: <b>A value in a phone contact</b><br> 1103 * Type: <b>token</b><br> 1104 * Path: <b>RelatedPerson.telecom(system=phone)</b><br> 1105 * </p> 1106 */ 1107 @SearchParamDefinition(name="phone", path="RelatedPerson.telecom.where(system='phone')", description="A value in a phone contact", type="token" ) 1108 public static final String SP_PHONE = "phone"; 1109 /** 1110 * <b>Fluent Client</b> search parameter constant for <b>phone</b> 1111 * <p> 1112 * Description: <b>A value in a phone contact</b><br> 1113 * Type: <b>token</b><br> 1114 * Path: <b>RelatedPerson.telecom(system=phone)</b><br> 1115 * </p> 1116 */ 1117 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PHONE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PHONE); 1118 1119 /** 1120 * Search parameter: <b>patient</b> 1121 * <p> 1122 * Description: <b>The patient this related person is related to</b><br> 1123 * Type: <b>reference</b><br> 1124 * Path: <b>RelatedPerson.patient</b><br> 1125 * </p> 1126 */ 1127 @SearchParamDefinition(name="patient", path="RelatedPerson.patient", description="The patient this related person is related to", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Patient") }, target={Patient.class } ) 1128 public static final String SP_PATIENT = "patient"; 1129 /** 1130 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 1131 * <p> 1132 * Description: <b>The patient this related person is related to</b><br> 1133 * Type: <b>reference</b><br> 1134 * Path: <b>RelatedPerson.patient</b><br> 1135 * </p> 1136 */ 1137 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 1138 1139/** 1140 * Constant for fluent queries to be used to add include statements. Specifies 1141 * the path value of "<b>RelatedPerson:patient</b>". 1142 */ 1143 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("RelatedPerson:patient").toLocked(); 1144 1145 /** 1146 * Search parameter: <b>name</b> 1147 * <p> 1148 * Description: <b>A server defined search that may match any of the string fields in the HumanName, including family, give, prefix, suffix, suffix, and/or text</b><br> 1149 * Type: <b>string</b><br> 1150 * Path: <b>RelatedPerson.name</b><br> 1151 * </p> 1152 */ 1153 @SearchParamDefinition(name="name", path="RelatedPerson.name", description="A server defined search that may match any of the string fields in the HumanName, including family, give, prefix, suffix, suffix, and/or text", type="string" ) 1154 public static final String SP_NAME = "name"; 1155 /** 1156 * <b>Fluent Client</b> search parameter constant for <b>name</b> 1157 * <p> 1158 * Description: <b>A server defined search that may match any of the string fields in the HumanName, including family, give, prefix, suffix, suffix, and/or text</b><br> 1159 * Type: <b>string</b><br> 1160 * Path: <b>RelatedPerson.name</b><br> 1161 * </p> 1162 */ 1163 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 1164 1165 /** 1166 * Search parameter: <b>address-use</b> 1167 * <p> 1168 * Description: <b>A use code specified in an address</b><br> 1169 * Type: <b>token</b><br> 1170 * Path: <b>RelatedPerson.address.use</b><br> 1171 * </p> 1172 */ 1173 @SearchParamDefinition(name="address-use", path="RelatedPerson.address.use", description="A use code specified in an address", type="token" ) 1174 public static final String SP_ADDRESS_USE = "address-use"; 1175 /** 1176 * <b>Fluent Client</b> search parameter constant for <b>address-use</b> 1177 * <p> 1178 * Description: <b>A use code specified in an address</b><br> 1179 * Type: <b>token</b><br> 1180 * Path: <b>RelatedPerson.address.use</b><br> 1181 * </p> 1182 */ 1183 public static final ca.uhn.fhir.rest.gclient.TokenClientParam ADDRESS_USE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ADDRESS_USE); 1184 1185 /** 1186 * Search parameter: <b>telecom</b> 1187 * <p> 1188 * Description: <b>The value in any kind of contact</b><br> 1189 * Type: <b>token</b><br> 1190 * Path: <b>RelatedPerson.telecom</b><br> 1191 * </p> 1192 */ 1193 @SearchParamDefinition(name="telecom", path="RelatedPerson.telecom", description="The value in any kind of contact", type="token" ) 1194 public static final String SP_TELECOM = "telecom"; 1195 /** 1196 * <b>Fluent Client</b> search parameter constant for <b>telecom</b> 1197 * <p> 1198 * Description: <b>The value in any kind of contact</b><br> 1199 * Type: <b>token</b><br> 1200 * Path: <b>RelatedPerson.telecom</b><br> 1201 * </p> 1202 */ 1203 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TELECOM = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TELECOM); 1204 1205 /** 1206 * Search parameter: <b>address-city</b> 1207 * <p> 1208 * Description: <b>A city specified in an address</b><br> 1209 * Type: <b>string</b><br> 1210 * Path: <b>RelatedPerson.address.city</b><br> 1211 * </p> 1212 */ 1213 @SearchParamDefinition(name="address-city", path="RelatedPerson.address.city", description="A city specified in an address", type="string" ) 1214 public static final String SP_ADDRESS_CITY = "address-city"; 1215 /** 1216 * <b>Fluent Client</b> search parameter constant for <b>address-city</b> 1217 * <p> 1218 * Description: <b>A city specified in an address</b><br> 1219 * Type: <b>string</b><br> 1220 * Path: <b>RelatedPerson.address.city</b><br> 1221 * </p> 1222 */ 1223 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_CITY = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_CITY); 1224 1225 /** 1226 * Search parameter: <b>email</b> 1227 * <p> 1228 * Description: <b>A value in an email contact</b><br> 1229 * Type: <b>token</b><br> 1230 * Path: <b>RelatedPerson.telecom(system=email)</b><br> 1231 * </p> 1232 */ 1233 @SearchParamDefinition(name="email", path="RelatedPerson.telecom.where(system='email')", description="A value in an email contact", type="token" ) 1234 public static final String SP_EMAIL = "email"; 1235 /** 1236 * <b>Fluent Client</b> search parameter constant for <b>email</b> 1237 * <p> 1238 * Description: <b>A value in an email contact</b><br> 1239 * Type: <b>token</b><br> 1240 * Path: <b>RelatedPerson.telecom(system=email)</b><br> 1241 * </p> 1242 */ 1243 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EMAIL = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EMAIL); 1244 1245 1246} 1247