001package org.hl7.fhir.r5.model; 002 003 004/* 005 Copyright (c) 2011+, HL7, Inc. 006 All rights reserved. 007 008 Redistribution and use in source and binary forms, with or without modification, \ 009 are permitted provided that the following conditions are met: 010 011 * Redistributions of source code must retain the above copyright notice, this \ 012 list of conditions and the following disclaimer. 013 * Redistributions in binary form must reproduce the above copyright notice, \ 014 this list of conditions and the following disclaimer in the documentation \ 015 and/or other materials provided with the distribution. 016 * Neither the name of HL7 nor the names of its contributors may be used to 017 endorse or promote products derived from this software without specific 018 prior written permission. 019 020 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ 021 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ 022 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ 023 IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ 024 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ 025 NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ 026 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ 027 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ 028 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ 029 POSSIBILITY OF SUCH DAMAGE. 030 */ 031 032// Generated on Thu, Mar 23, 2023 19:59+1100 for FHIR v5.0.0 033 034import java.util.ArrayList; 035import java.util.Date; 036import java.util.List; 037import org.hl7.fhir.utilities.Utilities; 038import org.hl7.fhir.r5.model.Enumerations.*; 039import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 040import org.hl7.fhir.exceptions.FHIRException; 041import org.hl7.fhir.instance.model.api.ICompositeType; 042import ca.uhn.fhir.model.api.annotation.ResourceDef; 043import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; 044import org.hl7.fhir.instance.model.api.IBaseBackboneElement; 045import ca.uhn.fhir.model.api.annotation.Child; 046import ca.uhn.fhir.model.api.annotation.ChildOrder; 047import ca.uhn.fhir.model.api.annotation.Description; 048import ca.uhn.fhir.model.api.annotation.Block; 049 050/** 051 * Demographics and administrative information about a person independent of a specific health-related context. 052 */ 053@ResourceDef(name="Person", profile="http://hl7.org/fhir/StructureDefinition/Person") 054public class Person extends DomainResource { 055 056 public enum IdentityAssuranceLevel { 057 /** 058 * Little or no confidence in the asserted identity's accuracy. 059 */ 060 LEVEL1, 061 /** 062 * Some confidence in the asserted identity's accuracy. 063 */ 064 LEVEL2, 065 /** 066 * High confidence in the asserted identity's accuracy. 067 */ 068 LEVEL3, 069 /** 070 * Very high confidence in the asserted identity's accuracy. 071 */ 072 LEVEL4, 073 /** 074 * added to help the parsers with the generic types 075 */ 076 NULL; 077 public static IdentityAssuranceLevel fromCode(String codeString) throws FHIRException { 078 if (codeString == null || "".equals(codeString)) 079 return null; 080 if ("level1".equals(codeString)) 081 return LEVEL1; 082 if ("level2".equals(codeString)) 083 return LEVEL2; 084 if ("level3".equals(codeString)) 085 return LEVEL3; 086 if ("level4".equals(codeString)) 087 return LEVEL4; 088 if (Configuration.isAcceptInvalidEnums()) 089 return null; 090 else 091 throw new FHIRException("Unknown IdentityAssuranceLevel code '"+codeString+"'"); 092 } 093 public String toCode() { 094 switch (this) { 095 case LEVEL1: return "level1"; 096 case LEVEL2: return "level2"; 097 case LEVEL3: return "level3"; 098 case LEVEL4: return "level4"; 099 case NULL: return null; 100 default: return "?"; 101 } 102 } 103 public String getSystem() { 104 switch (this) { 105 case LEVEL1: return "http://hl7.org/fhir/identity-assuranceLevel"; 106 case LEVEL2: return "http://hl7.org/fhir/identity-assuranceLevel"; 107 case LEVEL3: return "http://hl7.org/fhir/identity-assuranceLevel"; 108 case LEVEL4: return "http://hl7.org/fhir/identity-assuranceLevel"; 109 case NULL: return null; 110 default: return "?"; 111 } 112 } 113 public String getDefinition() { 114 switch (this) { 115 case LEVEL1: return "Little or no confidence in the asserted identity's accuracy."; 116 case LEVEL2: return "Some confidence in the asserted identity's accuracy."; 117 case LEVEL3: return "High confidence in the asserted identity's accuracy."; 118 case LEVEL4: return "Very high confidence in the asserted identity's accuracy."; 119 case NULL: return null; 120 default: return "?"; 121 } 122 } 123 public String getDisplay() { 124 switch (this) { 125 case LEVEL1: return "Level 1"; 126 case LEVEL2: return "Level 2"; 127 case LEVEL3: return "Level 3"; 128 case LEVEL4: return "Level 4"; 129 case NULL: return null; 130 default: return "?"; 131 } 132 } 133 } 134 135 public static class IdentityAssuranceLevelEnumFactory implements EnumFactory<IdentityAssuranceLevel> { 136 public IdentityAssuranceLevel fromCode(String codeString) throws IllegalArgumentException { 137 if (codeString == null || "".equals(codeString)) 138 if (codeString == null || "".equals(codeString)) 139 return null; 140 if ("level1".equals(codeString)) 141 return IdentityAssuranceLevel.LEVEL1; 142 if ("level2".equals(codeString)) 143 return IdentityAssuranceLevel.LEVEL2; 144 if ("level3".equals(codeString)) 145 return IdentityAssuranceLevel.LEVEL3; 146 if ("level4".equals(codeString)) 147 return IdentityAssuranceLevel.LEVEL4; 148 throw new IllegalArgumentException("Unknown IdentityAssuranceLevel code '"+codeString+"'"); 149 } 150 public Enumeration<IdentityAssuranceLevel> fromType(PrimitiveType<?> code) throws FHIRException { 151 if (code == null) 152 return null; 153 if (code.isEmpty()) 154 return new Enumeration<IdentityAssuranceLevel>(this, IdentityAssuranceLevel.NULL, code); 155 String codeString = ((PrimitiveType) code).asStringValue(); 156 if (codeString == null || "".equals(codeString)) 157 return new Enumeration<IdentityAssuranceLevel>(this, IdentityAssuranceLevel.NULL, code); 158 if ("level1".equals(codeString)) 159 return new Enumeration<IdentityAssuranceLevel>(this, IdentityAssuranceLevel.LEVEL1, code); 160 if ("level2".equals(codeString)) 161 return new Enumeration<IdentityAssuranceLevel>(this, IdentityAssuranceLevel.LEVEL2, code); 162 if ("level3".equals(codeString)) 163 return new Enumeration<IdentityAssuranceLevel>(this, IdentityAssuranceLevel.LEVEL3, code); 164 if ("level4".equals(codeString)) 165 return new Enumeration<IdentityAssuranceLevel>(this, IdentityAssuranceLevel.LEVEL4, code); 166 throw new FHIRException("Unknown IdentityAssuranceLevel code '"+codeString+"'"); 167 } 168 public String toCode(IdentityAssuranceLevel code) { 169 if (code == IdentityAssuranceLevel.LEVEL1) 170 return "level1"; 171 if (code == IdentityAssuranceLevel.LEVEL2) 172 return "level2"; 173 if (code == IdentityAssuranceLevel.LEVEL3) 174 return "level3"; 175 if (code == IdentityAssuranceLevel.LEVEL4) 176 return "level4"; 177 return "?"; 178 } 179 public String toSystem(IdentityAssuranceLevel code) { 180 return code.getSystem(); 181 } 182 } 183 184 @Block() 185 public static class PersonCommunicationComponent extends BackboneElement implements IBaseBackboneElement { 186 /** 187 * The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-AU" for Australian English. 188 */ 189 @Child(name = "language", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) 190 @Description(shortDefinition="The language which can be used to communicate with the person about his or her health", formalDefinition="The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. \"en\" for English, or \"en-US\" for American English versus \"en-AU\" for Australian English." ) 191 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/all-languages") 192 protected CodeableConcept language; 193 194 /** 195 * Indicates whether or not the person prefers this language (over other languages he masters up a certain level). 196 */ 197 @Child(name = "preferred", type = {BooleanType.class}, order=2, min=0, max=1, modifier=false, summary=false) 198 @Description(shortDefinition="Language preference indicator", formalDefinition="Indicates whether or not the person prefers this language (over other languages he masters up a certain level)." ) 199 protected BooleanType preferred; 200 201 private static final long serialVersionUID = 633792918L; 202 203 /** 204 * Constructor 205 */ 206 public PersonCommunicationComponent() { 207 super(); 208 } 209 210 /** 211 * Constructor 212 */ 213 public PersonCommunicationComponent(CodeableConcept language) { 214 super(); 215 this.setLanguage(language); 216 } 217 218 /** 219 * @return {@link #language} (The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-AU" for Australian English.) 220 */ 221 public CodeableConcept getLanguage() { 222 if (this.language == null) 223 if (Configuration.errorOnAutoCreate()) 224 throw new Error("Attempt to auto-create PersonCommunicationComponent.language"); 225 else if (Configuration.doAutoCreate()) 226 this.language = new CodeableConcept(); // cc 227 return this.language; 228 } 229 230 public boolean hasLanguage() { 231 return this.language != null && !this.language.isEmpty(); 232 } 233 234 /** 235 * @param value {@link #language} (The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. "en" for English, or "en-US" for American English versus "en-AU" for Australian English.) 236 */ 237 public PersonCommunicationComponent setLanguage(CodeableConcept value) { 238 this.language = value; 239 return this; 240 } 241 242 /** 243 * @return {@link #preferred} (Indicates whether or not the person prefers this language (over other languages he masters up a certain level).). This is the underlying object with id, value and extensions. The accessor "getPreferred" gives direct access to the value 244 */ 245 public BooleanType getPreferredElement() { 246 if (this.preferred == null) 247 if (Configuration.errorOnAutoCreate()) 248 throw new Error("Attempt to auto-create PersonCommunicationComponent.preferred"); 249 else if (Configuration.doAutoCreate()) 250 this.preferred = new BooleanType(); // bb 251 return this.preferred; 252 } 253 254 public boolean hasPreferredElement() { 255 return this.preferred != null && !this.preferred.isEmpty(); 256 } 257 258 public boolean hasPreferred() { 259 return this.preferred != null && !this.preferred.isEmpty(); 260 } 261 262 /** 263 * @param value {@link #preferred} (Indicates whether or not the person prefers this language (over other languages he masters up a certain level).). This is the underlying object with id, value and extensions. The accessor "getPreferred" gives direct access to the value 264 */ 265 public PersonCommunicationComponent setPreferredElement(BooleanType value) { 266 this.preferred = value; 267 return this; 268 } 269 270 /** 271 * @return Indicates whether or not the person prefers this language (over other languages he masters up a certain level). 272 */ 273 public boolean getPreferred() { 274 return this.preferred == null || this.preferred.isEmpty() ? false : this.preferred.getValue(); 275 } 276 277 /** 278 * @param value Indicates whether or not the person prefers this language (over other languages he masters up a certain level). 279 */ 280 public PersonCommunicationComponent setPreferred(boolean value) { 281 if (this.preferred == null) 282 this.preferred = new BooleanType(); 283 this.preferred.setValue(value); 284 return this; 285 } 286 287 protected void listChildren(List<Property> children) { 288 super.listChildren(children); 289 children.add(new Property("language", "CodeableConcept", "The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. \"en\" for English, or \"en-US\" for American English versus \"en-AU\" for Australian English.", 0, 1, language)); 290 children.add(new Property("preferred", "boolean", "Indicates whether or not the person prefers this language (over other languages he masters up a certain level).", 0, 1, preferred)); 291 } 292 293 @Override 294 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 295 switch (_hash) { 296 case -1613589672: /*language*/ return new Property("language", "CodeableConcept", "The ISO-639-1 alpha 2 code in lower case for the language, optionally followed by a hyphen and the ISO-3166-1 alpha 2 code for the region in upper case; e.g. \"en\" for English, or \"en-US\" for American English versus \"en-AU\" for Australian English.", 0, 1, language); 297 case -1294005119: /*preferred*/ return new Property("preferred", "boolean", "Indicates whether or not the person prefers this language (over other languages he masters up a certain level).", 0, 1, preferred); 298 default: return super.getNamedProperty(_hash, _name, _checkValid); 299 } 300 301 } 302 303 @Override 304 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 305 switch (hash) { 306 case -1613589672: /*language*/ return this.language == null ? new Base[0] : new Base[] {this.language}; // CodeableConcept 307 case -1294005119: /*preferred*/ return this.preferred == null ? new Base[0] : new Base[] {this.preferred}; // BooleanType 308 default: return super.getProperty(hash, name, checkValid); 309 } 310 311 } 312 313 @Override 314 public Base setProperty(int hash, String name, Base value) throws FHIRException { 315 switch (hash) { 316 case -1613589672: // language 317 this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 318 return value; 319 case -1294005119: // preferred 320 this.preferred = TypeConvertor.castToBoolean(value); // BooleanType 321 return value; 322 default: return super.setProperty(hash, name, value); 323 } 324 325 } 326 327 @Override 328 public Base setProperty(String name, Base value) throws FHIRException { 329 if (name.equals("language")) { 330 this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 331 } else if (name.equals("preferred")) { 332 this.preferred = TypeConvertor.castToBoolean(value); // BooleanType 333 } else 334 return super.setProperty(name, value); 335 return value; 336 } 337 338 @Override 339 public void removeChild(String name, Base value) throws FHIRException { 340 if (name.equals("language")) { 341 this.language = null; 342 } else if (name.equals("preferred")) { 343 this.preferred = null; 344 } else 345 super.removeChild(name, value); 346 347 } 348 349 @Override 350 public Base makeProperty(int hash, String name) throws FHIRException { 351 switch (hash) { 352 case -1613589672: return getLanguage(); 353 case -1294005119: return getPreferredElement(); 354 default: return super.makeProperty(hash, name); 355 } 356 357 } 358 359 @Override 360 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 361 switch (hash) { 362 case -1613589672: /*language*/ return new String[] {"CodeableConcept"}; 363 case -1294005119: /*preferred*/ return new String[] {"boolean"}; 364 default: return super.getTypesForProperty(hash, name); 365 } 366 367 } 368 369 @Override 370 public Base addChild(String name) throws FHIRException { 371 if (name.equals("language")) { 372 this.language = new CodeableConcept(); 373 return this.language; 374 } 375 else if (name.equals("preferred")) { 376 throw new FHIRException("Cannot call addChild on a singleton property Person.communication.preferred"); 377 } 378 else 379 return super.addChild(name); 380 } 381 382 public PersonCommunicationComponent copy() { 383 PersonCommunicationComponent dst = new PersonCommunicationComponent(); 384 copyValues(dst); 385 return dst; 386 } 387 388 public void copyValues(PersonCommunicationComponent dst) { 389 super.copyValues(dst); 390 dst.language = language == null ? null : language.copy(); 391 dst.preferred = preferred == null ? null : preferred.copy(); 392 } 393 394 @Override 395 public boolean equalsDeep(Base other_) { 396 if (!super.equalsDeep(other_)) 397 return false; 398 if (!(other_ instanceof PersonCommunicationComponent)) 399 return false; 400 PersonCommunicationComponent o = (PersonCommunicationComponent) other_; 401 return compareDeep(language, o.language, true) && compareDeep(preferred, o.preferred, true); 402 } 403 404 @Override 405 public boolean equalsShallow(Base other_) { 406 if (!super.equalsShallow(other_)) 407 return false; 408 if (!(other_ instanceof PersonCommunicationComponent)) 409 return false; 410 PersonCommunicationComponent o = (PersonCommunicationComponent) other_; 411 return compareValues(preferred, o.preferred, true); 412 } 413 414 public boolean isEmpty() { 415 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(language, preferred); 416 } 417 418 public String fhirType() { 419 return "Person.communication"; 420 421 } 422 423 } 424 425 @Block() 426 public static class PersonLinkComponent extends BackboneElement implements IBaseBackboneElement { 427 /** 428 * The resource to which this actual person is associated. 429 */ 430 @Child(name = "target", type = {Patient.class, Practitioner.class, RelatedPerson.class, Person.class}, order=1, min=1, max=1, modifier=false, summary=false) 431 @Description(shortDefinition="The resource to which this actual person is associated", formalDefinition="The resource to which this actual person is associated." ) 432 protected Reference target; 433 434 /** 435 * Level of assurance that this link is associated with the target resource. 436 */ 437 @Child(name = "assurance", type = {CodeType.class}, order=2, min=0, max=1, modifier=false, summary=false) 438 @Description(shortDefinition="level1 | level2 | level3 | level4", formalDefinition="Level of assurance that this link is associated with the target resource." ) 439 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/identity-assuranceLevel") 440 protected Enumeration<IdentityAssuranceLevel> assurance; 441 442 private static final long serialVersionUID = -1393523223L; 443 444 /** 445 * Constructor 446 */ 447 public PersonLinkComponent() { 448 super(); 449 } 450 451 /** 452 * Constructor 453 */ 454 public PersonLinkComponent(Reference target) { 455 super(); 456 this.setTarget(target); 457 } 458 459 /** 460 * @return {@link #target} (The resource to which this actual person is associated.) 461 */ 462 public Reference getTarget() { 463 if (this.target == null) 464 if (Configuration.errorOnAutoCreate()) 465 throw new Error("Attempt to auto-create PersonLinkComponent.target"); 466 else if (Configuration.doAutoCreate()) 467 this.target = new Reference(); // cc 468 return this.target; 469 } 470 471 public boolean hasTarget() { 472 return this.target != null && !this.target.isEmpty(); 473 } 474 475 /** 476 * @param value {@link #target} (The resource to which this actual person is associated.) 477 */ 478 public PersonLinkComponent setTarget(Reference value) { 479 this.target = value; 480 return this; 481 } 482 483 /** 484 * @return {@link #assurance} (Level of assurance that this link is associated with the target resource.). This is the underlying object with id, value and extensions. The accessor "getAssurance" gives direct access to the value 485 */ 486 public Enumeration<IdentityAssuranceLevel> getAssuranceElement() { 487 if (this.assurance == null) 488 if (Configuration.errorOnAutoCreate()) 489 throw new Error("Attempt to auto-create PersonLinkComponent.assurance"); 490 else if (Configuration.doAutoCreate()) 491 this.assurance = new Enumeration<IdentityAssuranceLevel>(new IdentityAssuranceLevelEnumFactory()); // bb 492 return this.assurance; 493 } 494 495 public boolean hasAssuranceElement() { 496 return this.assurance != null && !this.assurance.isEmpty(); 497 } 498 499 public boolean hasAssurance() { 500 return this.assurance != null && !this.assurance.isEmpty(); 501 } 502 503 /** 504 * @param value {@link #assurance} (Level of assurance that this link is associated with the target resource.). This is the underlying object with id, value and extensions. The accessor "getAssurance" gives direct access to the value 505 */ 506 public PersonLinkComponent setAssuranceElement(Enumeration<IdentityAssuranceLevel> value) { 507 this.assurance = value; 508 return this; 509 } 510 511 /** 512 * @return Level of assurance that this link is associated with the target resource. 513 */ 514 public IdentityAssuranceLevel getAssurance() { 515 return this.assurance == null ? null : this.assurance.getValue(); 516 } 517 518 /** 519 * @param value Level of assurance that this link is associated with the target resource. 520 */ 521 public PersonLinkComponent setAssurance(IdentityAssuranceLevel value) { 522 if (value == null) 523 this.assurance = null; 524 else { 525 if (this.assurance == null) 526 this.assurance = new Enumeration<IdentityAssuranceLevel>(new IdentityAssuranceLevelEnumFactory()); 527 this.assurance.setValue(value); 528 } 529 return this; 530 } 531 532 protected void listChildren(List<Property> children) { 533 super.listChildren(children); 534 children.add(new Property("target", "Reference(Patient|Practitioner|RelatedPerson|Person)", "The resource to which this actual person is associated.", 0, 1, target)); 535 children.add(new Property("assurance", "code", "Level of assurance that this link is associated with the target resource.", 0, 1, assurance)); 536 } 537 538 @Override 539 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 540 switch (_hash) { 541 case -880905839: /*target*/ return new Property("target", "Reference(Patient|Practitioner|RelatedPerson|Person)", "The resource to which this actual person is associated.", 0, 1, target); 542 case 1771900717: /*assurance*/ return new Property("assurance", "code", "Level of assurance that this link is associated with the target resource.", 0, 1, assurance); 543 default: return super.getNamedProperty(_hash, _name, _checkValid); 544 } 545 546 } 547 548 @Override 549 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 550 switch (hash) { 551 case -880905839: /*target*/ return this.target == null ? new Base[0] : new Base[] {this.target}; // Reference 552 case 1771900717: /*assurance*/ return this.assurance == null ? new Base[0] : new Base[] {this.assurance}; // Enumeration<IdentityAssuranceLevel> 553 default: return super.getProperty(hash, name, checkValid); 554 } 555 556 } 557 558 @Override 559 public Base setProperty(int hash, String name, Base value) throws FHIRException { 560 switch (hash) { 561 case -880905839: // target 562 this.target = TypeConvertor.castToReference(value); // Reference 563 return value; 564 case 1771900717: // assurance 565 value = new IdentityAssuranceLevelEnumFactory().fromType(TypeConvertor.castToCode(value)); 566 this.assurance = (Enumeration) value; // Enumeration<IdentityAssuranceLevel> 567 return value; 568 default: return super.setProperty(hash, name, value); 569 } 570 571 } 572 573 @Override 574 public Base setProperty(String name, Base value) throws FHIRException { 575 if (name.equals("target")) { 576 this.target = TypeConvertor.castToReference(value); // Reference 577 } else if (name.equals("assurance")) { 578 value = new IdentityAssuranceLevelEnumFactory().fromType(TypeConvertor.castToCode(value)); 579 this.assurance = (Enumeration) value; // Enumeration<IdentityAssuranceLevel> 580 } else 581 return super.setProperty(name, value); 582 return value; 583 } 584 585 @Override 586 public void removeChild(String name, Base value) throws FHIRException { 587 if (name.equals("target")) { 588 this.target = null; 589 } else if (name.equals("assurance")) { 590 value = new IdentityAssuranceLevelEnumFactory().fromType(TypeConvertor.castToCode(value)); 591 this.assurance = (Enumeration) value; // Enumeration<IdentityAssuranceLevel> 592 } else 593 super.removeChild(name, value); 594 595 } 596 597 @Override 598 public Base makeProperty(int hash, String name) throws FHIRException { 599 switch (hash) { 600 case -880905839: return getTarget(); 601 case 1771900717: return getAssuranceElement(); 602 default: return super.makeProperty(hash, name); 603 } 604 605 } 606 607 @Override 608 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 609 switch (hash) { 610 case -880905839: /*target*/ return new String[] {"Reference"}; 611 case 1771900717: /*assurance*/ return new String[] {"code"}; 612 default: return super.getTypesForProperty(hash, name); 613 } 614 615 } 616 617 @Override 618 public Base addChild(String name) throws FHIRException { 619 if (name.equals("target")) { 620 this.target = new Reference(); 621 return this.target; 622 } 623 else if (name.equals("assurance")) { 624 throw new FHIRException("Cannot call addChild on a singleton property Person.link.assurance"); 625 } 626 else 627 return super.addChild(name); 628 } 629 630 public PersonLinkComponent copy() { 631 PersonLinkComponent dst = new PersonLinkComponent(); 632 copyValues(dst); 633 return dst; 634 } 635 636 public void copyValues(PersonLinkComponent dst) { 637 super.copyValues(dst); 638 dst.target = target == null ? null : target.copy(); 639 dst.assurance = assurance == null ? null : assurance.copy(); 640 } 641 642 @Override 643 public boolean equalsDeep(Base other_) { 644 if (!super.equalsDeep(other_)) 645 return false; 646 if (!(other_ instanceof PersonLinkComponent)) 647 return false; 648 PersonLinkComponent o = (PersonLinkComponent) other_; 649 return compareDeep(target, o.target, true) && compareDeep(assurance, o.assurance, true); 650 } 651 652 @Override 653 public boolean equalsShallow(Base other_) { 654 if (!super.equalsShallow(other_)) 655 return false; 656 if (!(other_ instanceof PersonLinkComponent)) 657 return false; 658 PersonLinkComponent o = (PersonLinkComponent) other_; 659 return compareValues(assurance, o.assurance, true); 660 } 661 662 public boolean isEmpty() { 663 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(target, assurance); 664 } 665 666 public String fhirType() { 667 return "Person.link"; 668 669 } 670 671 } 672 673 /** 674 * Identifier for a person within a particular scope. 675 */ 676 @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 677 @Description(shortDefinition="A human identifier for this person", formalDefinition="Identifier for a person within a particular scope." ) 678 protected List<Identifier> identifier; 679 680 /** 681 * Whether this person's record is in active use. 682 */ 683 @Child(name = "active", type = {BooleanType.class}, order=1, min=0, max=1, modifier=true, summary=true) 684 @Description(shortDefinition="This person's record is in active use", formalDefinition="Whether this person's record is in active use." ) 685 protected BooleanType active; 686 687 /** 688 * A name associated with the person. 689 */ 690 @Child(name = "name", type = {HumanName.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 691 @Description(shortDefinition="A name associated with the person", formalDefinition="A name associated with the person." ) 692 protected List<HumanName> name; 693 694 /** 695 * A contact detail for the person, e.g. a telephone number or an email address. 696 */ 697 @Child(name = "telecom", type = {ContactPoint.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 698 @Description(shortDefinition="A contact detail for the person", formalDefinition="A contact detail for the person, e.g. a telephone number or an email address." ) 699 protected List<ContactPoint> telecom; 700 701 /** 702 * Administrative Gender. 703 */ 704 @Child(name = "gender", type = {CodeType.class}, order=4, min=0, max=1, modifier=false, summary=true) 705 @Description(shortDefinition="male | female | other | unknown", formalDefinition="Administrative Gender." ) 706 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/administrative-gender") 707 protected Enumeration<AdministrativeGender> gender; 708 709 /** 710 * The birth date for the person. 711 */ 712 @Child(name = "birthDate", type = {DateType.class}, order=5, min=0, max=1, modifier=false, summary=true) 713 @Description(shortDefinition="The date on which the person was born", formalDefinition="The birth date for the person." ) 714 protected DateType birthDate; 715 716 /** 717 * Indicates if the individual is deceased or not. 718 */ 719 @Child(name = "deceased", type = {BooleanType.class, DateTimeType.class}, order=6, min=0, max=1, modifier=false, summary=true) 720 @Description(shortDefinition="Indicates if the individual is deceased or not", formalDefinition="Indicates if the individual is deceased or not." ) 721 protected DataType deceased; 722 723 /** 724 * One or more addresses for the person. 725 */ 726 @Child(name = "address", type = {Address.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) 727 @Description(shortDefinition="One or more addresses for the person", formalDefinition="One or more addresses for the person." ) 728 protected List<Address> address; 729 730 /** 731 * This field contains a person's most recent marital (civil) status. 732 */ 733 @Child(name = "maritalStatus", type = {CodeableConcept.class}, order=8, min=0, max=1, modifier=false, summary=false) 734 @Description(shortDefinition="Marital (civil) status of a person", formalDefinition="This field contains a person's most recent marital (civil) status." ) 735 @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/marital-status") 736 protected CodeableConcept maritalStatus; 737 738 /** 739 * An image that can be displayed as a thumbnail of the person to enhance the identification of the individual. 740 */ 741 @Child(name = "photo", type = {Attachment.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 742 @Description(shortDefinition="Image of the person", formalDefinition="An image that can be displayed as a thumbnail of the person to enhance the identification of the individual." ) 743 protected List<Attachment> photo; 744 745 /** 746 * A language which may be used to communicate with the person about his or her health. 747 */ 748 @Child(name = "communication", type = {}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 749 @Description(shortDefinition="A language which may be used to communicate with the person about his or her health", formalDefinition="A language which may be used to communicate with the person about his or her health." ) 750 protected List<PersonCommunicationComponent> communication; 751 752 /** 753 * The organization that is the custodian of the person record. 754 */ 755 @Child(name = "managingOrganization", type = {Organization.class}, order=11, min=0, max=1, modifier=false, summary=true) 756 @Description(shortDefinition="The organization that is the custodian of the person record", formalDefinition="The organization that is the custodian of the person record." ) 757 protected Reference managingOrganization; 758 759 /** 760 * Link to a resource that concerns the same actual person. 761 */ 762 @Child(name = "link", type = {}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) 763 @Description(shortDefinition="Link to a resource that concerns the same actual person", formalDefinition="Link to a resource that concerns the same actual person." ) 764 protected List<PersonLinkComponent> link; 765 766 private static final long serialVersionUID = -1871612358L; 767 768 /** 769 * Constructor 770 */ 771 public Person() { 772 super(); 773 } 774 775 /** 776 * @return {@link #identifier} (Identifier for a person within a particular scope.) 777 */ 778 public List<Identifier> getIdentifier() { 779 if (this.identifier == null) 780 this.identifier = new ArrayList<Identifier>(); 781 return this.identifier; 782 } 783 784 /** 785 * @return Returns a reference to <code>this</code> for easy method chaining 786 */ 787 public Person setIdentifier(List<Identifier> theIdentifier) { 788 this.identifier = theIdentifier; 789 return this; 790 } 791 792 public boolean hasIdentifier() { 793 if (this.identifier == null) 794 return false; 795 for (Identifier item : this.identifier) 796 if (!item.isEmpty()) 797 return true; 798 return false; 799 } 800 801 public Identifier addIdentifier() { //3 802 Identifier t = new Identifier(); 803 if (this.identifier == null) 804 this.identifier = new ArrayList<Identifier>(); 805 this.identifier.add(t); 806 return t; 807 } 808 809 public Person addIdentifier(Identifier t) { //3 810 if (t == null) 811 return this; 812 if (this.identifier == null) 813 this.identifier = new ArrayList<Identifier>(); 814 this.identifier.add(t); 815 return this; 816 } 817 818 /** 819 * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} 820 */ 821 public Identifier getIdentifierFirstRep() { 822 if (getIdentifier().isEmpty()) { 823 addIdentifier(); 824 } 825 return getIdentifier().get(0); 826 } 827 828 /** 829 * @return {@link #active} (Whether this person's record is in active use.). This is the underlying object with id, value and extensions. The accessor "getActive" gives direct access to the value 830 */ 831 public BooleanType getActiveElement() { 832 if (this.active == null) 833 if (Configuration.errorOnAutoCreate()) 834 throw new Error("Attempt to auto-create Person.active"); 835 else if (Configuration.doAutoCreate()) 836 this.active = new BooleanType(); // bb 837 return this.active; 838 } 839 840 public boolean hasActiveElement() { 841 return this.active != null && !this.active.isEmpty(); 842 } 843 844 public boolean hasActive() { 845 return this.active != null && !this.active.isEmpty(); 846 } 847 848 /** 849 * @param value {@link #active} (Whether this person's record is in active use.). This is the underlying object with id, value and extensions. The accessor "getActive" gives direct access to the value 850 */ 851 public Person setActiveElement(BooleanType value) { 852 this.active = value; 853 return this; 854 } 855 856 /** 857 * @return Whether this person's record is in active use. 858 */ 859 public boolean getActive() { 860 return this.active == null || this.active.isEmpty() ? false : this.active.getValue(); 861 } 862 863 /** 864 * @param value Whether this person's record is in active use. 865 */ 866 public Person setActive(boolean value) { 867 if (this.active == null) 868 this.active = new BooleanType(); 869 this.active.setValue(value); 870 return this; 871 } 872 873 /** 874 * @return {@link #name} (A name associated with the person.) 875 */ 876 public List<HumanName> getName() { 877 if (this.name == null) 878 this.name = new ArrayList<HumanName>(); 879 return this.name; 880 } 881 882 /** 883 * @return Returns a reference to <code>this</code> for easy method chaining 884 */ 885 public Person setName(List<HumanName> theName) { 886 this.name = theName; 887 return this; 888 } 889 890 public boolean hasName() { 891 if (this.name == null) 892 return false; 893 for (HumanName item : this.name) 894 if (!item.isEmpty()) 895 return true; 896 return false; 897 } 898 899 public HumanName addName() { //3 900 HumanName t = new HumanName(); 901 if (this.name == null) 902 this.name = new ArrayList<HumanName>(); 903 this.name.add(t); 904 return t; 905 } 906 907 public Person addName(HumanName t) { //3 908 if (t == null) 909 return this; 910 if (this.name == null) 911 this.name = new ArrayList<HumanName>(); 912 this.name.add(t); 913 return this; 914 } 915 916 /** 917 * @return The first repetition of repeating field {@link #name}, creating it if it does not already exist {3} 918 */ 919 public HumanName getNameFirstRep() { 920 if (getName().isEmpty()) { 921 addName(); 922 } 923 return getName().get(0); 924 } 925 926 /** 927 * @return {@link #telecom} (A contact detail for the person, e.g. a telephone number or an email address.) 928 */ 929 public List<ContactPoint> getTelecom() { 930 if (this.telecom == null) 931 this.telecom = new ArrayList<ContactPoint>(); 932 return this.telecom; 933 } 934 935 /** 936 * @return Returns a reference to <code>this</code> for easy method chaining 937 */ 938 public Person setTelecom(List<ContactPoint> theTelecom) { 939 this.telecom = theTelecom; 940 return this; 941 } 942 943 public boolean hasTelecom() { 944 if (this.telecom == null) 945 return false; 946 for (ContactPoint item : this.telecom) 947 if (!item.isEmpty()) 948 return true; 949 return false; 950 } 951 952 public ContactPoint addTelecom() { //3 953 ContactPoint t = new ContactPoint(); 954 if (this.telecom == null) 955 this.telecom = new ArrayList<ContactPoint>(); 956 this.telecom.add(t); 957 return t; 958 } 959 960 public Person addTelecom(ContactPoint t) { //3 961 if (t == null) 962 return this; 963 if (this.telecom == null) 964 this.telecom = new ArrayList<ContactPoint>(); 965 this.telecom.add(t); 966 return this; 967 } 968 969 /** 970 * @return The first repetition of repeating field {@link #telecom}, creating it if it does not already exist {3} 971 */ 972 public ContactPoint getTelecomFirstRep() { 973 if (getTelecom().isEmpty()) { 974 addTelecom(); 975 } 976 return getTelecom().get(0); 977 } 978 979 /** 980 * @return {@link #gender} (Administrative Gender.). This is the underlying object with id, value and extensions. The accessor "getGender" gives direct access to the value 981 */ 982 public Enumeration<AdministrativeGender> getGenderElement() { 983 if (this.gender == null) 984 if (Configuration.errorOnAutoCreate()) 985 throw new Error("Attempt to auto-create Person.gender"); 986 else if (Configuration.doAutoCreate()) 987 this.gender = new Enumeration<AdministrativeGender>(new AdministrativeGenderEnumFactory()); // bb 988 return this.gender; 989 } 990 991 public boolean hasGenderElement() { 992 return this.gender != null && !this.gender.isEmpty(); 993 } 994 995 public boolean hasGender() { 996 return this.gender != null && !this.gender.isEmpty(); 997 } 998 999 /** 1000 * @param value {@link #gender} (Administrative Gender.). This is the underlying object with id, value and extensions. The accessor "getGender" gives direct access to the value 1001 */ 1002 public Person setGenderElement(Enumeration<AdministrativeGender> value) { 1003 this.gender = value; 1004 return this; 1005 } 1006 1007 /** 1008 * @return Administrative Gender. 1009 */ 1010 public AdministrativeGender getGender() { 1011 return this.gender == null ? null : this.gender.getValue(); 1012 } 1013 1014 /** 1015 * @param value Administrative Gender. 1016 */ 1017 public Person setGender(AdministrativeGender value) { 1018 if (value == null) 1019 this.gender = null; 1020 else { 1021 if (this.gender == null) 1022 this.gender = new Enumeration<AdministrativeGender>(new AdministrativeGenderEnumFactory()); 1023 this.gender.setValue(value); 1024 } 1025 return this; 1026 } 1027 1028 /** 1029 * @return {@link #birthDate} (The birth date for the person.). This is the underlying object with id, value and extensions. The accessor "getBirthDate" gives direct access to the value 1030 */ 1031 public DateType getBirthDateElement() { 1032 if (this.birthDate == null) 1033 if (Configuration.errorOnAutoCreate()) 1034 throw new Error("Attempt to auto-create Person.birthDate"); 1035 else if (Configuration.doAutoCreate()) 1036 this.birthDate = new DateType(); // bb 1037 return this.birthDate; 1038 } 1039 1040 public boolean hasBirthDateElement() { 1041 return this.birthDate != null && !this.birthDate.isEmpty(); 1042 } 1043 1044 public boolean hasBirthDate() { 1045 return this.birthDate != null && !this.birthDate.isEmpty(); 1046 } 1047 1048 /** 1049 * @param value {@link #birthDate} (The birth date for the person.). This is the underlying object with id, value and extensions. The accessor "getBirthDate" gives direct access to the value 1050 */ 1051 public Person setBirthDateElement(DateType value) { 1052 this.birthDate = value; 1053 return this; 1054 } 1055 1056 /** 1057 * @return The birth date for the person. 1058 */ 1059 public Date getBirthDate() { 1060 return this.birthDate == null ? null : this.birthDate.getValue(); 1061 } 1062 1063 /** 1064 * @param value The birth date for the person. 1065 */ 1066 public Person setBirthDate(Date value) { 1067 if (value == null) 1068 this.birthDate = null; 1069 else { 1070 if (this.birthDate == null) 1071 this.birthDate = new DateType(); 1072 this.birthDate.setValue(value); 1073 } 1074 return this; 1075 } 1076 1077 /** 1078 * @return {@link #deceased} (Indicates if the individual is deceased or not.) 1079 */ 1080 public DataType getDeceased() { 1081 return this.deceased; 1082 } 1083 1084 /** 1085 * @return {@link #deceased} (Indicates if the individual is deceased or not.) 1086 */ 1087 public BooleanType getDeceasedBooleanType() throws FHIRException { 1088 if (this.deceased == null) 1089 this.deceased = new BooleanType(); 1090 if (!(this.deceased instanceof BooleanType)) 1091 throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.deceased.getClass().getName()+" was encountered"); 1092 return (BooleanType) this.deceased; 1093 } 1094 1095 public boolean hasDeceasedBooleanType() { 1096 return this != null && this.deceased instanceof BooleanType; 1097 } 1098 1099 /** 1100 * @return {@link #deceased} (Indicates if the individual is deceased or not.) 1101 */ 1102 public DateTimeType getDeceasedDateTimeType() throws FHIRException { 1103 if (this.deceased == null) 1104 this.deceased = new DateTimeType(); 1105 if (!(this.deceased instanceof DateTimeType)) 1106 throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.deceased.getClass().getName()+" was encountered"); 1107 return (DateTimeType) this.deceased; 1108 } 1109 1110 public boolean hasDeceasedDateTimeType() { 1111 return this != null && this.deceased instanceof DateTimeType; 1112 } 1113 1114 public boolean hasDeceased() { 1115 return this.deceased != null && !this.deceased.isEmpty(); 1116 } 1117 1118 /** 1119 * @param value {@link #deceased} (Indicates if the individual is deceased or not.) 1120 */ 1121 public Person setDeceased(DataType value) { 1122 if (value != null && !(value instanceof BooleanType || value instanceof DateTimeType)) 1123 throw new FHIRException("Not the right type for Person.deceased[x]: "+value.fhirType()); 1124 this.deceased = value; 1125 return this; 1126 } 1127 1128 /** 1129 * @return {@link #address} (One or more addresses for the person.) 1130 */ 1131 public List<Address> getAddress() { 1132 if (this.address == null) 1133 this.address = new ArrayList<Address>(); 1134 return this.address; 1135 } 1136 1137 /** 1138 * @return Returns a reference to <code>this</code> for easy method chaining 1139 */ 1140 public Person setAddress(List<Address> theAddress) { 1141 this.address = theAddress; 1142 return this; 1143 } 1144 1145 public boolean hasAddress() { 1146 if (this.address == null) 1147 return false; 1148 for (Address item : this.address) 1149 if (!item.isEmpty()) 1150 return true; 1151 return false; 1152 } 1153 1154 public Address addAddress() { //3 1155 Address t = new Address(); 1156 if (this.address == null) 1157 this.address = new ArrayList<Address>(); 1158 this.address.add(t); 1159 return t; 1160 } 1161 1162 public Person addAddress(Address t) { //3 1163 if (t == null) 1164 return this; 1165 if (this.address == null) 1166 this.address = new ArrayList<Address>(); 1167 this.address.add(t); 1168 return this; 1169 } 1170 1171 /** 1172 * @return The first repetition of repeating field {@link #address}, creating it if it does not already exist {3} 1173 */ 1174 public Address getAddressFirstRep() { 1175 if (getAddress().isEmpty()) { 1176 addAddress(); 1177 } 1178 return getAddress().get(0); 1179 } 1180 1181 /** 1182 * @return {@link #maritalStatus} (This field contains a person's most recent marital (civil) status.) 1183 */ 1184 public CodeableConcept getMaritalStatus() { 1185 if (this.maritalStatus == null) 1186 if (Configuration.errorOnAutoCreate()) 1187 throw new Error("Attempt to auto-create Person.maritalStatus"); 1188 else if (Configuration.doAutoCreate()) 1189 this.maritalStatus = new CodeableConcept(); // cc 1190 return this.maritalStatus; 1191 } 1192 1193 public boolean hasMaritalStatus() { 1194 return this.maritalStatus != null && !this.maritalStatus.isEmpty(); 1195 } 1196 1197 /** 1198 * @param value {@link #maritalStatus} (This field contains a person's most recent marital (civil) status.) 1199 */ 1200 public Person setMaritalStatus(CodeableConcept value) { 1201 this.maritalStatus = value; 1202 return this; 1203 } 1204 1205 /** 1206 * @return {@link #photo} (An image that can be displayed as a thumbnail of the person to enhance the identification of the individual.) 1207 */ 1208 public List<Attachment> getPhoto() { 1209 if (this.photo == null) 1210 this.photo = new ArrayList<Attachment>(); 1211 return this.photo; 1212 } 1213 1214 /** 1215 * @return Returns a reference to <code>this</code> for easy method chaining 1216 */ 1217 public Person setPhoto(List<Attachment> thePhoto) { 1218 this.photo = thePhoto; 1219 return this; 1220 } 1221 1222 public boolean hasPhoto() { 1223 if (this.photo == null) 1224 return false; 1225 for (Attachment item : this.photo) 1226 if (!item.isEmpty()) 1227 return true; 1228 return false; 1229 } 1230 1231 public Attachment addPhoto() { //3 1232 Attachment t = new Attachment(); 1233 if (this.photo == null) 1234 this.photo = new ArrayList<Attachment>(); 1235 this.photo.add(t); 1236 return t; 1237 } 1238 1239 public Person addPhoto(Attachment t) { //3 1240 if (t == null) 1241 return this; 1242 if (this.photo == null) 1243 this.photo = new ArrayList<Attachment>(); 1244 this.photo.add(t); 1245 return this; 1246 } 1247 1248 /** 1249 * @return The first repetition of repeating field {@link #photo}, creating it if it does not already exist {3} 1250 */ 1251 public Attachment getPhotoFirstRep() { 1252 if (getPhoto().isEmpty()) { 1253 addPhoto(); 1254 } 1255 return getPhoto().get(0); 1256 } 1257 1258 /** 1259 * @return {@link #communication} (A language which may be used to communicate with the person about his or her health.) 1260 */ 1261 public List<PersonCommunicationComponent> getCommunication() { 1262 if (this.communication == null) 1263 this.communication = new ArrayList<PersonCommunicationComponent>(); 1264 return this.communication; 1265 } 1266 1267 /** 1268 * @return Returns a reference to <code>this</code> for easy method chaining 1269 */ 1270 public Person setCommunication(List<PersonCommunicationComponent> theCommunication) { 1271 this.communication = theCommunication; 1272 return this; 1273 } 1274 1275 public boolean hasCommunication() { 1276 if (this.communication == null) 1277 return false; 1278 for (PersonCommunicationComponent item : this.communication) 1279 if (!item.isEmpty()) 1280 return true; 1281 return false; 1282 } 1283 1284 public PersonCommunicationComponent addCommunication() { //3 1285 PersonCommunicationComponent t = new PersonCommunicationComponent(); 1286 if (this.communication == null) 1287 this.communication = new ArrayList<PersonCommunicationComponent>(); 1288 this.communication.add(t); 1289 return t; 1290 } 1291 1292 public Person addCommunication(PersonCommunicationComponent t) { //3 1293 if (t == null) 1294 return this; 1295 if (this.communication == null) 1296 this.communication = new ArrayList<PersonCommunicationComponent>(); 1297 this.communication.add(t); 1298 return this; 1299 } 1300 1301 /** 1302 * @return The first repetition of repeating field {@link #communication}, creating it if it does not already exist {3} 1303 */ 1304 public PersonCommunicationComponent getCommunicationFirstRep() { 1305 if (getCommunication().isEmpty()) { 1306 addCommunication(); 1307 } 1308 return getCommunication().get(0); 1309 } 1310 1311 /** 1312 * @return {@link #managingOrganization} (The organization that is the custodian of the person record.) 1313 */ 1314 public Reference getManagingOrganization() { 1315 if (this.managingOrganization == null) 1316 if (Configuration.errorOnAutoCreate()) 1317 throw new Error("Attempt to auto-create Person.managingOrganization"); 1318 else if (Configuration.doAutoCreate()) 1319 this.managingOrganization = new Reference(); // cc 1320 return this.managingOrganization; 1321 } 1322 1323 public boolean hasManagingOrganization() { 1324 return this.managingOrganization != null && !this.managingOrganization.isEmpty(); 1325 } 1326 1327 /** 1328 * @param value {@link #managingOrganization} (The organization that is the custodian of the person record.) 1329 */ 1330 public Person setManagingOrganization(Reference value) { 1331 this.managingOrganization = value; 1332 return this; 1333 } 1334 1335 /** 1336 * @return {@link #link} (Link to a resource that concerns the same actual person.) 1337 */ 1338 public List<PersonLinkComponent> getLink() { 1339 if (this.link == null) 1340 this.link = new ArrayList<PersonLinkComponent>(); 1341 return this.link; 1342 } 1343 1344 /** 1345 * @return Returns a reference to <code>this</code> for easy method chaining 1346 */ 1347 public Person setLink(List<PersonLinkComponent> theLink) { 1348 this.link = theLink; 1349 return this; 1350 } 1351 1352 public boolean hasLink() { 1353 if (this.link == null) 1354 return false; 1355 for (PersonLinkComponent item : this.link) 1356 if (!item.isEmpty()) 1357 return true; 1358 return false; 1359 } 1360 1361 public PersonLinkComponent addLink() { //3 1362 PersonLinkComponent t = new PersonLinkComponent(); 1363 if (this.link == null) 1364 this.link = new ArrayList<PersonLinkComponent>(); 1365 this.link.add(t); 1366 return t; 1367 } 1368 1369 public Person addLink(PersonLinkComponent t) { //3 1370 if (t == null) 1371 return this; 1372 if (this.link == null) 1373 this.link = new ArrayList<PersonLinkComponent>(); 1374 this.link.add(t); 1375 return this; 1376 } 1377 1378 /** 1379 * @return The first repetition of repeating field {@link #link}, creating it if it does not already exist {3} 1380 */ 1381 public PersonLinkComponent getLinkFirstRep() { 1382 if (getLink().isEmpty()) { 1383 addLink(); 1384 } 1385 return getLink().get(0); 1386 } 1387 1388 protected void listChildren(List<Property> children) { 1389 super.listChildren(children); 1390 children.add(new Property("identifier", "Identifier", "Identifier for a person within a particular scope.", 0, java.lang.Integer.MAX_VALUE, identifier)); 1391 children.add(new Property("active", "boolean", "Whether this person's record is in active use.", 0, 1, active)); 1392 children.add(new Property("name", "HumanName", "A name associated with the person.", 0, java.lang.Integer.MAX_VALUE, name)); 1393 children.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)); 1394 children.add(new Property("gender", "code", "Administrative Gender.", 0, 1, gender)); 1395 children.add(new Property("birthDate", "date", "The birth date for the person.", 0, 1, birthDate)); 1396 children.add(new Property("deceased[x]", "boolean|dateTime", "Indicates if the individual is deceased or not.", 0, 1, deceased)); 1397 children.add(new Property("address", "Address", "One or more addresses for the person.", 0, java.lang.Integer.MAX_VALUE, address)); 1398 children.add(new Property("maritalStatus", "CodeableConcept", "This field contains a person's most recent marital (civil) status.", 0, 1, maritalStatus)); 1399 children.add(new Property("photo", "Attachment", "An image that can be displayed as a thumbnail of the person to enhance the identification of the individual.", 0, java.lang.Integer.MAX_VALUE, photo)); 1400 children.add(new Property("communication", "", "A language which may be used to communicate with the person about his or her health.", 0, java.lang.Integer.MAX_VALUE, communication)); 1401 children.add(new Property("managingOrganization", "Reference(Organization)", "The organization that is the custodian of the person record.", 0, 1, managingOrganization)); 1402 children.add(new Property("link", "", "Link to a resource that concerns the same actual person.", 0, java.lang.Integer.MAX_VALUE, link)); 1403 } 1404 1405 @Override 1406 public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { 1407 switch (_hash) { 1408 case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for a person within a particular scope.", 0, java.lang.Integer.MAX_VALUE, identifier); 1409 case -1422950650: /*active*/ return new Property("active", "boolean", "Whether this person's record is in active use.", 0, 1, active); 1410 case 3373707: /*name*/ return new Property("name", "HumanName", "A name associated with the person.", 0, java.lang.Integer.MAX_VALUE, name); 1411 case -1429363305: /*telecom*/ return 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); 1412 case -1249512767: /*gender*/ return new Property("gender", "code", "Administrative Gender.", 0, 1, gender); 1413 case -1210031859: /*birthDate*/ return new Property("birthDate", "date", "The birth date for the person.", 0, 1, birthDate); 1414 case -1311442804: /*deceased[x]*/ return new Property("deceased[x]", "boolean|dateTime", "Indicates if the individual is deceased or not.", 0, 1, deceased); 1415 case 561497972: /*deceased*/ return new Property("deceased[x]", "boolean|dateTime", "Indicates if the individual is deceased or not.", 0, 1, deceased); 1416 case 497463828: /*deceasedBoolean*/ return new Property("deceased[x]", "boolean", "Indicates if the individual is deceased or not.", 0, 1, deceased); 1417 case -1971804369: /*deceasedDateTime*/ return new Property("deceased[x]", "dateTime", "Indicates if the individual is deceased or not.", 0, 1, deceased); 1418 case -1147692044: /*address*/ return new Property("address", "Address", "One or more addresses for the person.", 0, java.lang.Integer.MAX_VALUE, address); 1419 case 1756919302: /*maritalStatus*/ return new Property("maritalStatus", "CodeableConcept", "This field contains a person's most recent marital (civil) status.", 0, 1, maritalStatus); 1420 case 106642994: /*photo*/ return new Property("photo", "Attachment", "An image that can be displayed as a thumbnail of the person to enhance the identification of the individual.", 0, java.lang.Integer.MAX_VALUE, photo); 1421 case -1035284522: /*communication*/ return new Property("communication", "", "A language which may be used to communicate with the person about his or her health.", 0, java.lang.Integer.MAX_VALUE, communication); 1422 case -2058947787: /*managingOrganization*/ return new Property("managingOrganization", "Reference(Organization)", "The organization that is the custodian of the person record.", 0, 1, managingOrganization); 1423 case 3321850: /*link*/ return new Property("link", "", "Link to a resource that concerns the same actual person.", 0, java.lang.Integer.MAX_VALUE, link); 1424 default: return super.getNamedProperty(_hash, _name, _checkValid); 1425 } 1426 1427 } 1428 1429 @Override 1430 public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { 1431 switch (hash) { 1432 case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier 1433 case -1422950650: /*active*/ return this.active == null ? new Base[0] : new Base[] {this.active}; // BooleanType 1434 case 3373707: /*name*/ return this.name == null ? new Base[0] : this.name.toArray(new Base[this.name.size()]); // HumanName 1435 case -1429363305: /*telecom*/ return this.telecom == null ? new Base[0] : this.telecom.toArray(new Base[this.telecom.size()]); // ContactPoint 1436 case -1249512767: /*gender*/ return this.gender == null ? new Base[0] : new Base[] {this.gender}; // Enumeration<AdministrativeGender> 1437 case -1210031859: /*birthDate*/ return this.birthDate == null ? new Base[0] : new Base[] {this.birthDate}; // DateType 1438 case 561497972: /*deceased*/ return this.deceased == null ? new Base[0] : new Base[] {this.deceased}; // DataType 1439 case -1147692044: /*address*/ return this.address == null ? new Base[0] : this.address.toArray(new Base[this.address.size()]); // Address 1440 case 1756919302: /*maritalStatus*/ return this.maritalStatus == null ? new Base[0] : new Base[] {this.maritalStatus}; // CodeableConcept 1441 case 106642994: /*photo*/ return this.photo == null ? new Base[0] : this.photo.toArray(new Base[this.photo.size()]); // Attachment 1442 case -1035284522: /*communication*/ return this.communication == null ? new Base[0] : this.communication.toArray(new Base[this.communication.size()]); // PersonCommunicationComponent 1443 case -2058947787: /*managingOrganization*/ return this.managingOrganization == null ? new Base[0] : new Base[] {this.managingOrganization}; // Reference 1444 case 3321850: /*link*/ return this.link == null ? new Base[0] : this.link.toArray(new Base[this.link.size()]); // PersonLinkComponent 1445 default: return super.getProperty(hash, name, checkValid); 1446 } 1447 1448 } 1449 1450 @Override 1451 public Base setProperty(int hash, String name, Base value) throws FHIRException { 1452 switch (hash) { 1453 case -1618432855: // identifier 1454 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier 1455 return value; 1456 case -1422950650: // active 1457 this.active = TypeConvertor.castToBoolean(value); // BooleanType 1458 return value; 1459 case 3373707: // name 1460 this.getName().add(TypeConvertor.castToHumanName(value)); // HumanName 1461 return value; 1462 case -1429363305: // telecom 1463 this.getTelecom().add(TypeConvertor.castToContactPoint(value)); // ContactPoint 1464 return value; 1465 case -1249512767: // gender 1466 value = new AdministrativeGenderEnumFactory().fromType(TypeConvertor.castToCode(value)); 1467 this.gender = (Enumeration) value; // Enumeration<AdministrativeGender> 1468 return value; 1469 case -1210031859: // birthDate 1470 this.birthDate = TypeConvertor.castToDate(value); // DateType 1471 return value; 1472 case 561497972: // deceased 1473 this.deceased = TypeConvertor.castToType(value); // DataType 1474 return value; 1475 case -1147692044: // address 1476 this.getAddress().add(TypeConvertor.castToAddress(value)); // Address 1477 return value; 1478 case 1756919302: // maritalStatus 1479 this.maritalStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1480 return value; 1481 case 106642994: // photo 1482 this.getPhoto().add(TypeConvertor.castToAttachment(value)); // Attachment 1483 return value; 1484 case -1035284522: // communication 1485 this.getCommunication().add((PersonCommunicationComponent) value); // PersonCommunicationComponent 1486 return value; 1487 case -2058947787: // managingOrganization 1488 this.managingOrganization = TypeConvertor.castToReference(value); // Reference 1489 return value; 1490 case 3321850: // link 1491 this.getLink().add((PersonLinkComponent) value); // PersonLinkComponent 1492 return value; 1493 default: return super.setProperty(hash, name, value); 1494 } 1495 1496 } 1497 1498 @Override 1499 public Base setProperty(String name, Base value) throws FHIRException { 1500 if (name.equals("identifier")) { 1501 this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); 1502 } else if (name.equals("active")) { 1503 this.active = TypeConvertor.castToBoolean(value); // BooleanType 1504 } else if (name.equals("name")) { 1505 this.getName().add(TypeConvertor.castToHumanName(value)); 1506 } else if (name.equals("telecom")) { 1507 this.getTelecom().add(TypeConvertor.castToContactPoint(value)); 1508 } else if (name.equals("gender")) { 1509 value = new AdministrativeGenderEnumFactory().fromType(TypeConvertor.castToCode(value)); 1510 this.gender = (Enumeration) value; // Enumeration<AdministrativeGender> 1511 } else if (name.equals("birthDate")) { 1512 this.birthDate = TypeConvertor.castToDate(value); // DateType 1513 } else if (name.equals("deceased[x]")) { 1514 this.deceased = TypeConvertor.castToType(value); // DataType 1515 } else if (name.equals("address")) { 1516 this.getAddress().add(TypeConvertor.castToAddress(value)); 1517 } else if (name.equals("maritalStatus")) { 1518 this.maritalStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept 1519 } else if (name.equals("photo")) { 1520 this.getPhoto().add(TypeConvertor.castToAttachment(value)); 1521 } else if (name.equals("communication")) { 1522 this.getCommunication().add((PersonCommunicationComponent) value); 1523 } else if (name.equals("managingOrganization")) { 1524 this.managingOrganization = TypeConvertor.castToReference(value); // Reference 1525 } else if (name.equals("link")) { 1526 this.getLink().add((PersonLinkComponent) value); 1527 } else 1528 return super.setProperty(name, value); 1529 return value; 1530 } 1531 1532 @Override 1533 public void removeChild(String name, Base value) throws FHIRException { 1534 if (name.equals("identifier")) { 1535 this.getIdentifier().remove(value); 1536 } else if (name.equals("active")) { 1537 this.active = null; 1538 } else if (name.equals("name")) { 1539 this.getName().remove(value); 1540 } else if (name.equals("telecom")) { 1541 this.getTelecom().remove(value); 1542 } else if (name.equals("gender")) { 1543 value = new AdministrativeGenderEnumFactory().fromType(TypeConvertor.castToCode(value)); 1544 this.gender = (Enumeration) value; // Enumeration<AdministrativeGender> 1545 } else if (name.equals("birthDate")) { 1546 this.birthDate = null; 1547 } else if (name.equals("deceased[x]")) { 1548 this.deceased = null; 1549 } else if (name.equals("address")) { 1550 this.getAddress().remove(value); 1551 } else if (name.equals("maritalStatus")) { 1552 this.maritalStatus = null; 1553 } else if (name.equals("photo")) { 1554 this.getPhoto().remove(value); 1555 } else if (name.equals("communication")) { 1556 this.getCommunication().remove((PersonCommunicationComponent) value); 1557 } else if (name.equals("managingOrganization")) { 1558 this.managingOrganization = null; 1559 } else if (name.equals("link")) { 1560 this.getLink().remove((PersonLinkComponent) value); 1561 } else 1562 super.removeChild(name, value); 1563 1564 } 1565 1566 @Override 1567 public Base makeProperty(int hash, String name) throws FHIRException { 1568 switch (hash) { 1569 case -1618432855: return addIdentifier(); 1570 case -1422950650: return getActiveElement(); 1571 case 3373707: return addName(); 1572 case -1429363305: return addTelecom(); 1573 case -1249512767: return getGenderElement(); 1574 case -1210031859: return getBirthDateElement(); 1575 case -1311442804: return getDeceased(); 1576 case 561497972: return getDeceased(); 1577 case -1147692044: return addAddress(); 1578 case 1756919302: return getMaritalStatus(); 1579 case 106642994: return addPhoto(); 1580 case -1035284522: return addCommunication(); 1581 case -2058947787: return getManagingOrganization(); 1582 case 3321850: return addLink(); 1583 default: return super.makeProperty(hash, name); 1584 } 1585 1586 } 1587 1588 @Override 1589 public String[] getTypesForProperty(int hash, String name) throws FHIRException { 1590 switch (hash) { 1591 case -1618432855: /*identifier*/ return new String[] {"Identifier"}; 1592 case -1422950650: /*active*/ return new String[] {"boolean"}; 1593 case 3373707: /*name*/ return new String[] {"HumanName"}; 1594 case -1429363305: /*telecom*/ return new String[] {"ContactPoint"}; 1595 case -1249512767: /*gender*/ return new String[] {"code"}; 1596 case -1210031859: /*birthDate*/ return new String[] {"date"}; 1597 case 561497972: /*deceased*/ return new String[] {"boolean", "dateTime"}; 1598 case -1147692044: /*address*/ return new String[] {"Address"}; 1599 case 1756919302: /*maritalStatus*/ return new String[] {"CodeableConcept"}; 1600 case 106642994: /*photo*/ return new String[] {"Attachment"}; 1601 case -1035284522: /*communication*/ return new String[] {}; 1602 case -2058947787: /*managingOrganization*/ return new String[] {"Reference"}; 1603 case 3321850: /*link*/ return new String[] {}; 1604 default: return super.getTypesForProperty(hash, name); 1605 } 1606 1607 } 1608 1609 @Override 1610 public Base addChild(String name) throws FHIRException { 1611 if (name.equals("identifier")) { 1612 return addIdentifier(); 1613 } 1614 else if (name.equals("active")) { 1615 throw new FHIRException("Cannot call addChild on a singleton property Person.active"); 1616 } 1617 else if (name.equals("name")) { 1618 return addName(); 1619 } 1620 else if (name.equals("telecom")) { 1621 return addTelecom(); 1622 } 1623 else if (name.equals("gender")) { 1624 throw new FHIRException("Cannot call addChild on a singleton property Person.gender"); 1625 } 1626 else if (name.equals("birthDate")) { 1627 throw new FHIRException("Cannot call addChild on a singleton property Person.birthDate"); 1628 } 1629 else if (name.equals("deceasedBoolean")) { 1630 this.deceased = new BooleanType(); 1631 return this.deceased; 1632 } 1633 else if (name.equals("deceasedDateTime")) { 1634 this.deceased = new DateTimeType(); 1635 return this.deceased; 1636 } 1637 else if (name.equals("address")) { 1638 return addAddress(); 1639 } 1640 else if (name.equals("maritalStatus")) { 1641 this.maritalStatus = new CodeableConcept(); 1642 return this.maritalStatus; 1643 } 1644 else if (name.equals("photo")) { 1645 return addPhoto(); 1646 } 1647 else if (name.equals("communication")) { 1648 return addCommunication(); 1649 } 1650 else if (name.equals("managingOrganization")) { 1651 this.managingOrganization = new Reference(); 1652 return this.managingOrganization; 1653 } 1654 else if (name.equals("link")) { 1655 return addLink(); 1656 } 1657 else 1658 return super.addChild(name); 1659 } 1660 1661 public String fhirType() { 1662 return "Person"; 1663 1664 } 1665 1666 public Person copy() { 1667 Person dst = new Person(); 1668 copyValues(dst); 1669 return dst; 1670 } 1671 1672 public void copyValues(Person dst) { 1673 super.copyValues(dst); 1674 if (identifier != null) { 1675 dst.identifier = new ArrayList<Identifier>(); 1676 for (Identifier i : identifier) 1677 dst.identifier.add(i.copy()); 1678 }; 1679 dst.active = active == null ? null : active.copy(); 1680 if (name != null) { 1681 dst.name = new ArrayList<HumanName>(); 1682 for (HumanName i : name) 1683 dst.name.add(i.copy()); 1684 }; 1685 if (telecom != null) { 1686 dst.telecom = new ArrayList<ContactPoint>(); 1687 for (ContactPoint i : telecom) 1688 dst.telecom.add(i.copy()); 1689 }; 1690 dst.gender = gender == null ? null : gender.copy(); 1691 dst.birthDate = birthDate == null ? null : birthDate.copy(); 1692 dst.deceased = deceased == null ? null : deceased.copy(); 1693 if (address != null) { 1694 dst.address = new ArrayList<Address>(); 1695 for (Address i : address) 1696 dst.address.add(i.copy()); 1697 }; 1698 dst.maritalStatus = maritalStatus == null ? null : maritalStatus.copy(); 1699 if (photo != null) { 1700 dst.photo = new ArrayList<Attachment>(); 1701 for (Attachment i : photo) 1702 dst.photo.add(i.copy()); 1703 }; 1704 if (communication != null) { 1705 dst.communication = new ArrayList<PersonCommunicationComponent>(); 1706 for (PersonCommunicationComponent i : communication) 1707 dst.communication.add(i.copy()); 1708 }; 1709 dst.managingOrganization = managingOrganization == null ? null : managingOrganization.copy(); 1710 if (link != null) { 1711 dst.link = new ArrayList<PersonLinkComponent>(); 1712 for (PersonLinkComponent i : link) 1713 dst.link.add(i.copy()); 1714 }; 1715 } 1716 1717 protected Person typedCopy() { 1718 return copy(); 1719 } 1720 1721 @Override 1722 public boolean equalsDeep(Base other_) { 1723 if (!super.equalsDeep(other_)) 1724 return false; 1725 if (!(other_ instanceof Person)) 1726 return false; 1727 Person o = (Person) other_; 1728 return compareDeep(identifier, o.identifier, true) && compareDeep(active, o.active, true) && compareDeep(name, o.name, true) 1729 && compareDeep(telecom, o.telecom, true) && compareDeep(gender, o.gender, true) && compareDeep(birthDate, o.birthDate, true) 1730 && compareDeep(deceased, o.deceased, true) && compareDeep(address, o.address, true) && compareDeep(maritalStatus, o.maritalStatus, true) 1731 && compareDeep(photo, o.photo, true) && compareDeep(communication, o.communication, true) && compareDeep(managingOrganization, o.managingOrganization, true) 1732 && compareDeep(link, o.link, true); 1733 } 1734 1735 @Override 1736 public boolean equalsShallow(Base other_) { 1737 if (!super.equalsShallow(other_)) 1738 return false; 1739 if (!(other_ instanceof Person)) 1740 return false; 1741 Person o = (Person) other_; 1742 return compareValues(active, o.active, true) && compareValues(gender, o.gender, true) && compareValues(birthDate, o.birthDate, true) 1743 ; 1744 } 1745 1746 public boolean isEmpty() { 1747 return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, active, name 1748 , telecom, gender, birthDate, deceased, address, maritalStatus, photo, communication 1749 , managingOrganization, link); 1750 } 1751 1752 @Override 1753 public ResourceType getResourceType() { 1754 return ResourceType.Person; 1755 } 1756 1757 /** 1758 * Search parameter: <b>death-date</b> 1759 * <p> 1760 * Description: <b>The date of death has been provided and satisfies this search value</b><br> 1761 * Type: <b>date</b><br> 1762 * Path: <b>(Person.deceased.ofType(dateTime))</b><br> 1763 * </p> 1764 */ 1765 @SearchParamDefinition(name="death-date", path="(Person.deceased.ofType(dateTime))", description="The date of death has been provided and satisfies this search value", type="date" ) 1766 public static final String SP_DEATH_DATE = "death-date"; 1767 /** 1768 * <b>Fluent Client</b> search parameter constant for <b>death-date</b> 1769 * <p> 1770 * Description: <b>The date of death has been provided and satisfies this search value</b><br> 1771 * Type: <b>date</b><br> 1772 * Path: <b>(Person.deceased.ofType(dateTime))</b><br> 1773 * </p> 1774 */ 1775 public static final ca.uhn.fhir.rest.gclient.DateClientParam DEATH_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DEATH_DATE); 1776 1777 /** 1778 * Search parameter: <b>deceased</b> 1779 * <p> 1780 * Description: <b>This person has been marked as deceased, or has a death date entered</b><br> 1781 * Type: <b>token</b><br> 1782 * Path: <b>Person.deceased.exists() and Person.deceased != false</b><br> 1783 * </p> 1784 */ 1785 @SearchParamDefinition(name="deceased", path="Person.deceased.exists() and Person.deceased != false", description="This person has been marked as deceased, or has a death date entered", type="token" ) 1786 public static final String SP_DECEASED = "deceased"; 1787 /** 1788 * <b>Fluent Client</b> search parameter constant for <b>deceased</b> 1789 * <p> 1790 * Description: <b>This person has been marked as deceased, or has a death date entered</b><br> 1791 * Type: <b>token</b><br> 1792 * Path: <b>Person.deceased.exists() and Person.deceased != false</b><br> 1793 * </p> 1794 */ 1795 public static final ca.uhn.fhir.rest.gclient.TokenClientParam DECEASED = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_DECEASED); 1796 1797 /** 1798 * Search parameter: <b>family</b> 1799 * <p> 1800 * Description: <b>A portion of the family name of the person</b><br> 1801 * Type: <b>string</b><br> 1802 * Path: <b>Person.name.family</b><br> 1803 * </p> 1804 */ 1805 @SearchParamDefinition(name="family", path="Person.name.family", description="A portion of the family name of the person", type="string" ) 1806 public static final String SP_FAMILY = "family"; 1807 /** 1808 * <b>Fluent Client</b> search parameter constant for <b>family</b> 1809 * <p> 1810 * Description: <b>A portion of the family name of the person</b><br> 1811 * Type: <b>string</b><br> 1812 * Path: <b>Person.name.family</b><br> 1813 * </p> 1814 */ 1815 public static final ca.uhn.fhir.rest.gclient.StringClientParam FAMILY = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_FAMILY); 1816 1817 /** 1818 * Search parameter: <b>given</b> 1819 * <p> 1820 * Description: <b>A portion of the given name of the person</b><br> 1821 * Type: <b>string</b><br> 1822 * Path: <b>Person.name.given</b><br> 1823 * </p> 1824 */ 1825 @SearchParamDefinition(name="given", path="Person.name.given", description="A portion of the given name of the person", type="string" ) 1826 public static final String SP_GIVEN = "given"; 1827 /** 1828 * <b>Fluent Client</b> search parameter constant for <b>given</b> 1829 * <p> 1830 * Description: <b>A portion of the given name of the person</b><br> 1831 * Type: <b>string</b><br> 1832 * Path: <b>Person.name.given</b><br> 1833 * </p> 1834 */ 1835 public static final ca.uhn.fhir.rest.gclient.StringClientParam GIVEN = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_GIVEN); 1836 1837 /** 1838 * Search parameter: <b>link</b> 1839 * <p> 1840 * Description: <b>Any link has this Patient, Person, RelatedPerson or Practitioner reference</b><br> 1841 * Type: <b>reference</b><br> 1842 * Path: <b>Person.link.target</b><br> 1843 * </p> 1844 */ 1845 @SearchParamDefinition(name="link", path="Person.link.target", description="Any link has this Patient, Person, RelatedPerson or Practitioner reference", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for RelatedPerson") }, target={Patient.class, Person.class, Practitioner.class, RelatedPerson.class } ) 1846 public static final String SP_LINK = "link"; 1847 /** 1848 * <b>Fluent Client</b> search parameter constant for <b>link</b> 1849 * <p> 1850 * Description: <b>Any link has this Patient, Person, RelatedPerson or Practitioner reference</b><br> 1851 * Type: <b>reference</b><br> 1852 * Path: <b>Person.link.target</b><br> 1853 * </p> 1854 */ 1855 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam LINK = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_LINK); 1856 1857/** 1858 * Constant for fluent queries to be used to add include statements. Specifies 1859 * the path value of "<b>Person:link</b>". 1860 */ 1861 public static final ca.uhn.fhir.model.api.Include INCLUDE_LINK = new ca.uhn.fhir.model.api.Include("Person:link").toLocked(); 1862 1863 /** 1864 * Search parameter: <b>name</b> 1865 * <p> 1866 * 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> 1867 * Type: <b>string</b><br> 1868 * Path: <b>Person.name</b><br> 1869 * </p> 1870 */ 1871 @SearchParamDefinition(name="name", path="Person.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" ) 1872 public static final String SP_NAME = "name"; 1873 /** 1874 * <b>Fluent Client</b> search parameter constant for <b>name</b> 1875 * <p> 1876 * 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> 1877 * Type: <b>string</b><br> 1878 * Path: <b>Person.name</b><br> 1879 * </p> 1880 */ 1881 public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); 1882 1883 /** 1884 * Search parameter: <b>organization</b> 1885 * <p> 1886 * Description: <b>The organization at which this person record is being managed</b><br> 1887 * Type: <b>reference</b><br> 1888 * Path: <b>Person.managingOrganization</b><br> 1889 * </p> 1890 */ 1891 @SearchParamDefinition(name="organization", path="Person.managingOrganization", description="The organization at which this person record is being managed", type="reference", target={Organization.class } ) 1892 public static final String SP_ORGANIZATION = "organization"; 1893 /** 1894 * <b>Fluent Client</b> search parameter constant for <b>organization</b> 1895 * <p> 1896 * Description: <b>The organization at which this person record is being managed</b><br> 1897 * Type: <b>reference</b><br> 1898 * Path: <b>Person.managingOrganization</b><br> 1899 * </p> 1900 */ 1901 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ORGANIZATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ORGANIZATION); 1902 1903/** 1904 * Constant for fluent queries to be used to add include statements. Specifies 1905 * the path value of "<b>Person:organization</b>". 1906 */ 1907 public static final ca.uhn.fhir.model.api.Include INCLUDE_ORGANIZATION = new ca.uhn.fhir.model.api.Include("Person:organization").toLocked(); 1908 1909 /** 1910 * Search parameter: <b>practitioner</b> 1911 * <p> 1912 * Description: <b>The Person links to this Practitioner</b><br> 1913 * Type: <b>reference</b><br> 1914 * Path: <b>Person.link.target.where(resolve() is Practitioner)</b><br> 1915 * </p> 1916 */ 1917 @SearchParamDefinition(name="practitioner", path="Person.link.target.where(resolve() is Practitioner)", description="The Person links to this Practitioner", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Practitioner.class } ) 1918 public static final String SP_PRACTITIONER = "practitioner"; 1919 /** 1920 * <b>Fluent Client</b> search parameter constant for <b>practitioner</b> 1921 * <p> 1922 * Description: <b>The Person links to this Practitioner</b><br> 1923 * Type: <b>reference</b><br> 1924 * Path: <b>Person.link.target.where(resolve() is Practitioner)</b><br> 1925 * </p> 1926 */ 1927 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PRACTITIONER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PRACTITIONER); 1928 1929/** 1930 * Constant for fluent queries to be used to add include statements. Specifies 1931 * the path value of "<b>Person:practitioner</b>". 1932 */ 1933 public static final ca.uhn.fhir.model.api.Include INCLUDE_PRACTITIONER = new ca.uhn.fhir.model.api.Include("Person:practitioner").toLocked(); 1934 1935 /** 1936 * Search parameter: <b>relatedperson</b> 1937 * <p> 1938 * Description: <b>The Person links to this RelatedPerson</b><br> 1939 * Type: <b>reference</b><br> 1940 * Path: <b>Person.link.target.where(resolve() is RelatedPerson)</b><br> 1941 * </p> 1942 */ 1943 @SearchParamDefinition(name="relatedperson", path="Person.link.target.where(resolve() is RelatedPerson)", description="The Person links to this RelatedPerson", type="reference", target={RelatedPerson.class } ) 1944 public static final String SP_RELATEDPERSON = "relatedperson"; 1945 /** 1946 * <b>Fluent Client</b> search parameter constant for <b>relatedperson</b> 1947 * <p> 1948 * Description: <b>The Person links to this RelatedPerson</b><br> 1949 * Type: <b>reference</b><br> 1950 * Path: <b>Person.link.target.where(resolve() is RelatedPerson)</b><br> 1951 * </p> 1952 */ 1953 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam RELATEDPERSON = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_RELATEDPERSON); 1954 1955/** 1956 * Constant for fluent queries to be used to add include statements. Specifies 1957 * the path value of "<b>Person:relatedperson</b>". 1958 */ 1959 public static final ca.uhn.fhir.model.api.Include INCLUDE_RELATEDPERSON = new ca.uhn.fhir.model.api.Include("Person:relatedperson").toLocked(); 1960 1961 /** 1962 * Search parameter: <b>identifier</b> 1963 * <p> 1964 * Description: <b>Multiple Resources: 1965 1966* [Account](account.html): Account number 1967* [AdverseEvent](adverseevent.html): Business identifier for the event 1968* [AllergyIntolerance](allergyintolerance.html): External ids for this item 1969* [Appointment](appointment.html): An Identifier of the Appointment 1970* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 1971* [Basic](basic.html): Business identifier 1972* [BodyStructure](bodystructure.html): Bodystructure identifier 1973* [CarePlan](careplan.html): External Ids for this plan 1974* [CareTeam](careteam.html): External Ids for this team 1975* [ChargeItem](chargeitem.html): Business Identifier for item 1976* [Claim](claim.html): The primary identifier of the financial resource 1977* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 1978* [ClinicalImpression](clinicalimpression.html): Business identifier 1979* [Communication](communication.html): Unique identifier 1980* [CommunicationRequest](communicationrequest.html): Unique identifier 1981* [Composition](composition.html): Version-independent identifier for the Composition 1982* [Condition](condition.html): A unique identifier of the condition record 1983* [Consent](consent.html): Identifier for this record (external references) 1984* [Contract](contract.html): The identity of the contract 1985* [Coverage](coverage.html): The primary identifier of the insured and the coverage 1986* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 1987* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 1988* [DetectedIssue](detectedissue.html): Unique id for the detected issue 1989* [DeviceRequest](devicerequest.html): Business identifier for request/order 1990* [DeviceUsage](deviceusage.html): Search by identifier 1991* [DiagnosticReport](diagnosticreport.html): An identifier for the report 1992* [DocumentReference](documentreference.html): Identifier of the attachment binary 1993* [Encounter](encounter.html): Identifier(s) by which this encounter is known 1994* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 1995* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 1996* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 1997* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 1998* [Flag](flag.html): Business identifier 1999* [Goal](goal.html): External Ids for this goal 2000* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 2001* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 2002* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2003* [Immunization](immunization.html): Business identifier 2004* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 2005* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 2006* [Invoice](invoice.html): Business Identifier for item 2007* [List](list.html): Business identifier 2008* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 2009* [Medication](medication.html): Returns medications with this external identifier 2010* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2011* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2012* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2013* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 2014* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 2015* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 2016* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2017* [Observation](observation.html): The unique id for a particular observation 2018* [Person](person.html): A person Identifier 2019* [Procedure](procedure.html): A unique identifier for a procedure 2020* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 2021* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 2022* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 2023* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 2024* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2025* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2026* [Specimen](specimen.html): The unique identifier associated with the specimen 2027* [SupplyDelivery](supplydelivery.html): External identifier 2028* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2029* [Task](task.html): Search for a task instance by its business identifier 2030* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2031</b><br> 2032 * Type: <b>token</b><br> 2033 * Path: <b>Account.identifier | AdverseEvent.identifier | AllergyIntolerance.identifier | Appointment.identifier | AppointmentResponse.identifier | Basic.identifier | BodyStructure.identifier | CarePlan.identifier | CareTeam.identifier | ChargeItem.identifier | Claim.identifier | ClaimResponse.identifier | ClinicalImpression.identifier | Communication.identifier | CommunicationRequest.identifier | Composition.identifier | Condition.identifier | Consent.identifier | Contract.identifier | Coverage.identifier | CoverageEligibilityRequest.identifier | CoverageEligibilityResponse.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DeviceUsage.identifier | DiagnosticReport.identifier | DocumentReference.identifier | Encounter.identifier | EnrollmentRequest.identifier | EpisodeOfCare.identifier | ExplanationOfBenefit.identifier | FamilyMemberHistory.identifier | Flag.identifier | Goal.identifier | GuidanceResponse.identifier | ImagingSelection.identifier | ImagingStudy.identifier | Immunization.identifier | ImmunizationEvaluation.identifier | ImmunizationRecommendation.identifier | Invoice.identifier | List.identifier | MeasureReport.identifier | Medication.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | MolecularSequence.identifier | NutritionIntake.identifier | NutritionOrder.identifier | Observation.identifier | Person.identifier | Procedure.identifier | QuestionnaireResponse.identifier | RelatedPerson.identifier | RequestOrchestration.identifier | ResearchSubject.identifier | RiskAssessment.identifier | ServiceRequest.identifier | Specimen.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | Task.identifier | VisionPrescription.identifier</b><br> 2034 * </p> 2035 */ 2036 @SearchParamDefinition(name="identifier", path="Account.identifier | AdverseEvent.identifier | AllergyIntolerance.identifier | Appointment.identifier | AppointmentResponse.identifier | Basic.identifier | BodyStructure.identifier | CarePlan.identifier | CareTeam.identifier | ChargeItem.identifier | Claim.identifier | ClaimResponse.identifier | ClinicalImpression.identifier | Communication.identifier | CommunicationRequest.identifier | Composition.identifier | Condition.identifier | Consent.identifier | Contract.identifier | Coverage.identifier | CoverageEligibilityRequest.identifier | CoverageEligibilityResponse.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DeviceUsage.identifier | DiagnosticReport.identifier | DocumentReference.identifier | Encounter.identifier | EnrollmentRequest.identifier | EpisodeOfCare.identifier | ExplanationOfBenefit.identifier | FamilyMemberHistory.identifier | Flag.identifier | Goal.identifier | GuidanceResponse.identifier | ImagingSelection.identifier | ImagingStudy.identifier | Immunization.identifier | ImmunizationEvaluation.identifier | ImmunizationRecommendation.identifier | Invoice.identifier | List.identifier | MeasureReport.identifier | Medication.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | MolecularSequence.identifier | NutritionIntake.identifier | NutritionOrder.identifier | Observation.identifier | Person.identifier | Procedure.identifier | QuestionnaireResponse.identifier | RelatedPerson.identifier | RequestOrchestration.identifier | ResearchSubject.identifier | RiskAssessment.identifier | ServiceRequest.identifier | Specimen.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | Task.identifier | VisionPrescription.identifier", description="Multiple Resources: \r\n\r\n* [Account](account.html): Account number\r\n* [AdverseEvent](adverseevent.html): Business identifier for the event\r\n* [AllergyIntolerance](allergyintolerance.html): External ids for this item\r\n* [Appointment](appointment.html): An Identifier of the Appointment\r\n* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response\r\n* [Basic](basic.html): Business identifier\r\n* [BodyStructure](bodystructure.html): Bodystructure identifier\r\n* [CarePlan](careplan.html): External Ids for this plan\r\n* [CareTeam](careteam.html): External Ids for this team\r\n* [ChargeItem](chargeitem.html): Business Identifier for item\r\n* [Claim](claim.html): The primary identifier of the financial resource\r\n* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse\r\n* [ClinicalImpression](clinicalimpression.html): Business identifier\r\n* [Communication](communication.html): Unique identifier\r\n* [CommunicationRequest](communicationrequest.html): Unique identifier\r\n* [Composition](composition.html): Version-independent identifier for the Composition\r\n* [Condition](condition.html): A unique identifier of the condition record\r\n* [Consent](consent.html): Identifier for this record (external references)\r\n* [Contract](contract.html): The identity of the contract\r\n* [Coverage](coverage.html): The primary identifier of the insured and the coverage\r\n* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility\r\n* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier\r\n* [DetectedIssue](detectedissue.html): Unique id for the detected issue\r\n* [DeviceRequest](devicerequest.html): Business identifier for request/order\r\n* [DeviceUsage](deviceusage.html): Search by identifier\r\n* [DiagnosticReport](diagnosticreport.html): An identifier for the report\r\n* [DocumentReference](documentreference.html): Identifier of the attachment binary\r\n* [Encounter](encounter.html): Identifier(s) by which this encounter is known\r\n* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment\r\n* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare\r\n* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier\r\n* [Flag](flag.html): Business identifier\r\n* [Goal](goal.html): External Ids for this goal\r\n* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response\r\n* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection\r\n* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID\r\n* [Immunization](immunization.html): Business identifier\r\n* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier\r\n* [Invoice](invoice.html): Business Identifier for item\r\n* [List](list.html): Business identifier\r\n* [MeasureReport](measurereport.html): External identifier of the measure report to be returned\r\n* [Medication](medication.html): Returns medications with this external identifier\r\n* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier\r\n* [MedicationStatement](medicationstatement.html): Return statements with this external identifier\r\n* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence\r\n* [NutritionIntake](nutritionintake.html): Return statements with this external identifier\r\n* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier\r\n* [Observation](observation.html): The unique id for a particular observation\r\n* [Person](person.html): A person Identifier\r\n* [Procedure](procedure.html): A unique identifier for a procedure\r\n* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response\r\n* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson\r\n* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration\r\n* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study\r\n* [RiskAssessment](riskassessment.html): Unique identifier for the assessment\r\n* [ServiceRequest](servicerequest.html): Identifiers assigned to this order\r\n* [Specimen](specimen.html): The unique identifier associated with the specimen\r\n* [SupplyDelivery](supplydelivery.html): External identifier\r\n* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest\r\n* [Task](task.html): Search for a task instance by its business identifier\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier\r\n", type="token" ) 2037 public static final String SP_IDENTIFIER = "identifier"; 2038 /** 2039 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 2040 * <p> 2041 * Description: <b>Multiple Resources: 2042 2043* [Account](account.html): Account number 2044* [AdverseEvent](adverseevent.html): Business identifier for the event 2045* [AllergyIntolerance](allergyintolerance.html): External ids for this item 2046* [Appointment](appointment.html): An Identifier of the Appointment 2047* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response 2048* [Basic](basic.html): Business identifier 2049* [BodyStructure](bodystructure.html): Bodystructure identifier 2050* [CarePlan](careplan.html): External Ids for this plan 2051* [CareTeam](careteam.html): External Ids for this team 2052* [ChargeItem](chargeitem.html): Business Identifier for item 2053* [Claim](claim.html): The primary identifier of the financial resource 2054* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse 2055* [ClinicalImpression](clinicalimpression.html): Business identifier 2056* [Communication](communication.html): Unique identifier 2057* [CommunicationRequest](communicationrequest.html): Unique identifier 2058* [Composition](composition.html): Version-independent identifier for the Composition 2059* [Condition](condition.html): A unique identifier of the condition record 2060* [Consent](consent.html): Identifier for this record (external references) 2061* [Contract](contract.html): The identity of the contract 2062* [Coverage](coverage.html): The primary identifier of the insured and the coverage 2063* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility 2064* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier 2065* [DetectedIssue](detectedissue.html): Unique id for the detected issue 2066* [DeviceRequest](devicerequest.html): Business identifier for request/order 2067* [DeviceUsage](deviceusage.html): Search by identifier 2068* [DiagnosticReport](diagnosticreport.html): An identifier for the report 2069* [DocumentReference](documentreference.html): Identifier of the attachment binary 2070* [Encounter](encounter.html): Identifier(s) by which this encounter is known 2071* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment 2072* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare 2073* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit 2074* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier 2075* [Flag](flag.html): Business identifier 2076* [Goal](goal.html): External Ids for this goal 2077* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response 2078* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection 2079* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID 2080* [Immunization](immunization.html): Business identifier 2081* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation 2082* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier 2083* [Invoice](invoice.html): Business Identifier for item 2084* [List](list.html): Business identifier 2085* [MeasureReport](measurereport.html): External identifier of the measure report to be returned 2086* [Medication](medication.html): Returns medications with this external identifier 2087* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier 2088* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier 2089* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier 2090* [MedicationStatement](medicationstatement.html): Return statements with this external identifier 2091* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence 2092* [NutritionIntake](nutritionintake.html): Return statements with this external identifier 2093* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier 2094* [Observation](observation.html): The unique id for a particular observation 2095* [Person](person.html): A person Identifier 2096* [Procedure](procedure.html): A unique identifier for a procedure 2097* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response 2098* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson 2099* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration 2100* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study 2101* [RiskAssessment](riskassessment.html): Unique identifier for the assessment 2102* [ServiceRequest](servicerequest.html): Identifiers assigned to this order 2103* [Specimen](specimen.html): The unique identifier associated with the specimen 2104* [SupplyDelivery](supplydelivery.html): External identifier 2105* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest 2106* [Task](task.html): Search for a task instance by its business identifier 2107* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier 2108</b><br> 2109 * Type: <b>token</b><br> 2110 * Path: <b>Account.identifier | AdverseEvent.identifier | AllergyIntolerance.identifier | Appointment.identifier | AppointmentResponse.identifier | Basic.identifier | BodyStructure.identifier | CarePlan.identifier | CareTeam.identifier | ChargeItem.identifier | Claim.identifier | ClaimResponse.identifier | ClinicalImpression.identifier | Communication.identifier | CommunicationRequest.identifier | Composition.identifier | Condition.identifier | Consent.identifier | Contract.identifier | Coverage.identifier | CoverageEligibilityRequest.identifier | CoverageEligibilityResponse.identifier | DetectedIssue.identifier | DeviceRequest.identifier | DeviceUsage.identifier | DiagnosticReport.identifier | DocumentReference.identifier | Encounter.identifier | EnrollmentRequest.identifier | EpisodeOfCare.identifier | ExplanationOfBenefit.identifier | FamilyMemberHistory.identifier | Flag.identifier | Goal.identifier | GuidanceResponse.identifier | ImagingSelection.identifier | ImagingStudy.identifier | Immunization.identifier | ImmunizationEvaluation.identifier | ImmunizationRecommendation.identifier | Invoice.identifier | List.identifier | MeasureReport.identifier | Medication.identifier | MedicationAdministration.identifier | MedicationDispense.identifier | MedicationRequest.identifier | MedicationStatement.identifier | MolecularSequence.identifier | NutritionIntake.identifier | NutritionOrder.identifier | Observation.identifier | Person.identifier | Procedure.identifier | QuestionnaireResponse.identifier | RelatedPerson.identifier | RequestOrchestration.identifier | ResearchSubject.identifier | RiskAssessment.identifier | ServiceRequest.identifier | Specimen.identifier | SupplyDelivery.identifier | SupplyRequest.identifier | Task.identifier | VisionPrescription.identifier</b><br> 2111 * </p> 2112 */ 2113 public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); 2114 2115 /** 2116 * Search parameter: <b>patient</b> 2117 * <p> 2118 * Description: <b>Multiple Resources: 2119 2120* [Account](account.html): The entity that caused the expenses 2121* [AdverseEvent](adverseevent.html): Subject impacted by event 2122* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 2123* [Appointment](appointment.html): One of the individuals of the appointment is this patient 2124* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 2125* [AuditEvent](auditevent.html): Where the activity involved patient data 2126* [Basic](basic.html): Identifies the focus of this resource 2127* [BodyStructure](bodystructure.html): Who this is about 2128* [CarePlan](careplan.html): Who the care plan is for 2129* [CareTeam](careteam.html): Who care team is for 2130* [ChargeItem](chargeitem.html): Individual service was done for/to 2131* [Claim](claim.html): Patient receiving the products or services 2132* [ClaimResponse](claimresponse.html): The subject of care 2133* [ClinicalImpression](clinicalimpression.html): Patient assessed 2134* [Communication](communication.html): Focus of message 2135* [CommunicationRequest](communicationrequest.html): Focus of message 2136* [Composition](composition.html): Who and/or what the composition is about 2137* [Condition](condition.html): Who has the condition? 2138* [Consent](consent.html): Who the consent applies to 2139* [Contract](contract.html): The identity of the subject of the contract (if a patient) 2140* [Coverage](coverage.html): Retrieve coverages for a patient 2141* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 2142* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 2143* [DetectedIssue](detectedissue.html): Associated patient 2144* [DeviceRequest](devicerequest.html): Individual the service is ordered for 2145* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 2146* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 2147* [DocumentReference](documentreference.html): Who/what is the subject of the document 2148* [Encounter](encounter.html): The patient present at the encounter 2149* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 2150* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 2151* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 2152* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 2153* [Flag](flag.html): The identity of a subject to list flags for 2154* [Goal](goal.html): Who this goal is intended for 2155* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 2156* [ImagingSelection](imagingselection.html): Who the study is about 2157* [ImagingStudy](imagingstudy.html): Who the study is about 2158* [Immunization](immunization.html): The patient for the vaccination record 2159* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 2160* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 2161* [Invoice](invoice.html): Recipient(s) of goods and services 2162* [List](list.html): If all resources have the same subject 2163* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 2164* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 2165* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 2166* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 2167* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 2168* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 2169* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 2170* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 2171* [Observation](observation.html): The subject that the observation is about (if patient) 2172* [Person](person.html): The Person links to this Patient 2173* [Procedure](procedure.html): Search by subject - a patient 2174* [Provenance](provenance.html): Where the activity involved patient data 2175* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 2176* [RelatedPerson](relatedperson.html): The patient this related person is related to 2177* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 2178* [ResearchSubject](researchsubject.html): Who or what is part of study 2179* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 2180* [ServiceRequest](servicerequest.html): Search by subject - a patient 2181* [Specimen](specimen.html): The patient the specimen comes from 2182* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 2183* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 2184* [Task](task.html): Search by patient 2185* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 2186</b><br> 2187 * Type: <b>reference</b><br> 2188 * Path: <b>Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient</b><br> 2189 * </p> 2190 */ 2191 @SearchParamDefinition(name="patient", path="Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [Account](account.html): The entity that caused the expenses\r\n* [AdverseEvent](adverseevent.html): Subject impacted by event\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [Appointment](appointment.html): One of the individuals of the appointment is this patient\r\n* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient\r\n* [AuditEvent](auditevent.html): Where the activity involved patient data\r\n* [Basic](basic.html): Identifies the focus of this resource\r\n* [BodyStructure](bodystructure.html): Who this is about\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ChargeItem](chargeitem.html): Individual service was done for/to\r\n* [Claim](claim.html): Patient receiving the products or services\r\n* [ClaimResponse](claimresponse.html): The subject of care\r\n* [ClinicalImpression](clinicalimpression.html): Patient assessed\r\n* [Communication](communication.html): Focus of message\r\n* [CommunicationRequest](communicationrequest.html): Focus of message\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [Contract](contract.html): The identity of the subject of the contract (if a patient)\r\n* [Coverage](coverage.html): Retrieve coverages for a patient\r\n* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient\r\n* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient present at the encounter\r\n* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results\r\n* [ImagingSelection](imagingselection.html): Who the study is about\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for\r\n* [Invoice](invoice.html): Recipient(s) of goods and services\r\n* [List](list.html): If all resources have the same subject\r\n* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient.\r\n* [MolecularSequence](molecularsequence.html): The subject that the sequence is about\r\n* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Person](person.html): The Person links to this Patient\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [Provenance](provenance.html): Where the activity involved patient data\r\n* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response\r\n* [RelatedPerson](relatedperson.html): The patient this related person is related to\r\n* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations\r\n* [ResearchSubject](researchsubject.html): Who or what is part of study\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [Specimen](specimen.html): The patient the specimen comes from\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined\r\n* [Task](task.html): Search by patient\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Patient.class } ) 2192 public static final String SP_PATIENT = "patient"; 2193 /** 2194 * <b>Fluent Client</b> search parameter constant for <b>patient</b> 2195 * <p> 2196 * Description: <b>Multiple Resources: 2197 2198* [Account](account.html): The entity that caused the expenses 2199* [AdverseEvent](adverseevent.html): Subject impacted by event 2200* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for 2201* [Appointment](appointment.html): One of the individuals of the appointment is this patient 2202* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient 2203* [AuditEvent](auditevent.html): Where the activity involved patient data 2204* [Basic](basic.html): Identifies the focus of this resource 2205* [BodyStructure](bodystructure.html): Who this is about 2206* [CarePlan](careplan.html): Who the care plan is for 2207* [CareTeam](careteam.html): Who care team is for 2208* [ChargeItem](chargeitem.html): Individual service was done for/to 2209* [Claim](claim.html): Patient receiving the products or services 2210* [ClaimResponse](claimresponse.html): The subject of care 2211* [ClinicalImpression](clinicalimpression.html): Patient assessed 2212* [Communication](communication.html): Focus of message 2213* [CommunicationRequest](communicationrequest.html): Focus of message 2214* [Composition](composition.html): Who and/or what the composition is about 2215* [Condition](condition.html): Who has the condition? 2216* [Consent](consent.html): Who the consent applies to 2217* [Contract](contract.html): The identity of the subject of the contract (if a patient) 2218* [Coverage](coverage.html): Retrieve coverages for a patient 2219* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient 2220* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient 2221* [DetectedIssue](detectedissue.html): Associated patient 2222* [DeviceRequest](devicerequest.html): Individual the service is ordered for 2223* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device 2224* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient 2225* [DocumentReference](documentreference.html): Who/what is the subject of the document 2226* [Encounter](encounter.html): The patient present at the encounter 2227* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled 2228* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care 2229* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient 2230* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for 2231* [Flag](flag.html): The identity of a subject to list flags for 2232* [Goal](goal.html): Who this goal is intended for 2233* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results 2234* [ImagingSelection](imagingselection.html): Who the study is about 2235* [ImagingStudy](imagingstudy.html): Who the study is about 2236* [Immunization](immunization.html): The patient for the vaccination record 2237* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated 2238* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for 2239* [Invoice](invoice.html): Recipient(s) of goods and services 2240* [List](list.html): If all resources have the same subject 2241* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for 2242* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for 2243* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for 2244* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient 2245* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient. 2246* [MolecularSequence](molecularsequence.html): The subject that the sequence is about 2247* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient. 2248* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement 2249* [Observation](observation.html): The subject that the observation is about (if patient) 2250* [Person](person.html): The Person links to this Patient 2251* [Procedure](procedure.html): Search by subject - a patient 2252* [Provenance](provenance.html): Where the activity involved patient data 2253* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response 2254* [RelatedPerson](relatedperson.html): The patient this related person is related to 2255* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations 2256* [ResearchSubject](researchsubject.html): Who or what is part of study 2257* [RiskAssessment](riskassessment.html): Who/what does assessment apply to? 2258* [ServiceRequest](servicerequest.html): Search by subject - a patient 2259* [Specimen](specimen.html): The patient the specimen comes from 2260* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied 2261* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined 2262* [Task](task.html): Search by patient 2263* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for 2264</b><br> 2265 * Type: <b>reference</b><br> 2266 * Path: <b>Account.subject.where(resolve() is Patient) | AdverseEvent.subject.where(resolve() is Patient) | AllergyIntolerance.patient | Appointment.participant.actor.where(resolve() is Patient) | Appointment.subject.where(resolve() is Patient) | AppointmentResponse.actor.where(resolve() is Patient) | AuditEvent.patient | Basic.subject.where(resolve() is Patient) | BodyStructure.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ChargeItem.subject.where(resolve() is Patient) | Claim.patient | ClaimResponse.patient | ClinicalImpression.subject.where(resolve() is Patient) | Communication.subject.where(resolve() is Patient) | CommunicationRequest.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | Contract.subject.where(resolve() is Patient) | Coverage.beneficiary | CoverageEligibilityRequest.patient | CoverageEligibilityResponse.patient | DetectedIssue.subject.where(resolve() is Patient) | DeviceRequest.subject.where(resolve() is Patient) | DeviceUsage.patient | DiagnosticReport.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EnrollmentRequest.candidate | EpisodeOfCare.patient | ExplanationOfBenefit.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | GuidanceResponse.subject.where(resolve() is Patient) | ImagingSelection.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | ImmunizationEvaluation.patient | ImmunizationRecommendation.patient | Invoice.subject.where(resolve() is Patient) | List.subject.where(resolve() is Patient) | MeasureReport.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationStatement.subject.where(resolve() is Patient) | MolecularSequence.subject.where(resolve() is Patient) | NutritionIntake.subject.where(resolve() is Patient) | NutritionOrder.subject.where(resolve() is Patient) | Observation.subject.where(resolve() is Patient) | Person.link.target.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | Provenance.patient | QuestionnaireResponse.subject.where(resolve() is Patient) | RelatedPerson.patient | RequestOrchestration.subject.where(resolve() is Patient) | ResearchSubject.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | Specimen.subject.where(resolve() is Patient) | SupplyDelivery.patient | SupplyRequest.deliverFor | Task.for.where(resolve() is Patient) | VisionPrescription.patient</b><br> 2267 * </p> 2268 */ 2269 public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); 2270 2271/** 2272 * Constant for fluent queries to be used to add include statements. Specifies 2273 * the path value of "<b>Person:patient</b>". 2274 */ 2275 public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Person:patient").toLocked(); 2276 2277 /** 2278 * Search parameter: <b>address-city</b> 2279 * <p> 2280 * Description: <b>Multiple Resources: 2281 2282* [Patient](patient.html): A city specified in an address 2283* [Person](person.html): A city specified in an address 2284* [Practitioner](practitioner.html): A city specified in an address 2285* [RelatedPerson](relatedperson.html): A city specified in an address 2286</b><br> 2287 * Type: <b>string</b><br> 2288 * Path: <b>Patient.address.city | Person.address.city | Practitioner.address.city | RelatedPerson.address.city</b><br> 2289 * </p> 2290 */ 2291 @SearchParamDefinition(name="address-city", path="Patient.address.city | Person.address.city | Practitioner.address.city | RelatedPerson.address.city", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A city specified in an address\r\n* [Person](person.html): A city specified in an address\r\n* [Practitioner](practitioner.html): A city specified in an address\r\n* [RelatedPerson](relatedperson.html): A city specified in an address\r\n", type="string" ) 2292 public static final String SP_ADDRESS_CITY = "address-city"; 2293 /** 2294 * <b>Fluent Client</b> search parameter constant for <b>address-city</b> 2295 * <p> 2296 * Description: <b>Multiple Resources: 2297 2298* [Patient](patient.html): A city specified in an address 2299* [Person](person.html): A city specified in an address 2300* [Practitioner](practitioner.html): A city specified in an address 2301* [RelatedPerson](relatedperson.html): A city specified in an address 2302</b><br> 2303 * Type: <b>string</b><br> 2304 * Path: <b>Patient.address.city | Person.address.city | Practitioner.address.city | RelatedPerson.address.city</b><br> 2305 * </p> 2306 */ 2307 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_CITY = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_CITY); 2308 2309 /** 2310 * Search parameter: <b>address-country</b> 2311 * <p> 2312 * Description: <b>Multiple Resources: 2313 2314* [Patient](patient.html): A country specified in an address 2315* [Person](person.html): A country specified in an address 2316* [Practitioner](practitioner.html): A country specified in an address 2317* [RelatedPerson](relatedperson.html): A country specified in an address 2318</b><br> 2319 * Type: <b>string</b><br> 2320 * Path: <b>Patient.address.country | Person.address.country | Practitioner.address.country | RelatedPerson.address.country</b><br> 2321 * </p> 2322 */ 2323 @SearchParamDefinition(name="address-country", path="Patient.address.country | Person.address.country | Practitioner.address.country | RelatedPerson.address.country", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A country specified in an address\r\n* [Person](person.html): A country specified in an address\r\n* [Practitioner](practitioner.html): A country specified in an address\r\n* [RelatedPerson](relatedperson.html): A country specified in an address\r\n", type="string" ) 2324 public static final String SP_ADDRESS_COUNTRY = "address-country"; 2325 /** 2326 * <b>Fluent Client</b> search parameter constant for <b>address-country</b> 2327 * <p> 2328 * Description: <b>Multiple Resources: 2329 2330* [Patient](patient.html): A country specified in an address 2331* [Person](person.html): A country specified in an address 2332* [Practitioner](practitioner.html): A country specified in an address 2333* [RelatedPerson](relatedperson.html): A country specified in an address 2334</b><br> 2335 * Type: <b>string</b><br> 2336 * Path: <b>Patient.address.country | Person.address.country | Practitioner.address.country | RelatedPerson.address.country</b><br> 2337 * </p> 2338 */ 2339 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_COUNTRY = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_COUNTRY); 2340 2341 /** 2342 * Search parameter: <b>address-postalcode</b> 2343 * <p> 2344 * Description: <b>Multiple Resources: 2345 2346* [Patient](patient.html): A postalCode specified in an address 2347* [Person](person.html): A postal code specified in an address 2348* [Practitioner](practitioner.html): A postalCode specified in an address 2349* [RelatedPerson](relatedperson.html): A postal code specified in an address 2350</b><br> 2351 * Type: <b>string</b><br> 2352 * Path: <b>Patient.address.postalCode | Person.address.postalCode | Practitioner.address.postalCode | RelatedPerson.address.postalCode</b><br> 2353 * </p> 2354 */ 2355 @SearchParamDefinition(name="address-postalcode", path="Patient.address.postalCode | Person.address.postalCode | Practitioner.address.postalCode | RelatedPerson.address.postalCode", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A postalCode specified in an address\r\n* [Person](person.html): A postal code specified in an address\r\n* [Practitioner](practitioner.html): A postalCode specified in an address\r\n* [RelatedPerson](relatedperson.html): A postal code specified in an address\r\n", type="string" ) 2356 public static final String SP_ADDRESS_POSTALCODE = "address-postalcode"; 2357 /** 2358 * <b>Fluent Client</b> search parameter constant for <b>address-postalcode</b> 2359 * <p> 2360 * Description: <b>Multiple Resources: 2361 2362* [Patient](patient.html): A postalCode specified in an address 2363* [Person](person.html): A postal code specified in an address 2364* [Practitioner](practitioner.html): A postalCode specified in an address 2365* [RelatedPerson](relatedperson.html): A postal code specified in an address 2366</b><br> 2367 * Type: <b>string</b><br> 2368 * Path: <b>Patient.address.postalCode | Person.address.postalCode | Practitioner.address.postalCode | RelatedPerson.address.postalCode</b><br> 2369 * </p> 2370 */ 2371 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_POSTALCODE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_POSTALCODE); 2372 2373 /** 2374 * Search parameter: <b>address-state</b> 2375 * <p> 2376 * Description: <b>Multiple Resources: 2377 2378* [Patient](patient.html): A state specified in an address 2379* [Person](person.html): A state specified in an address 2380* [Practitioner](practitioner.html): A state specified in an address 2381* [RelatedPerson](relatedperson.html): A state specified in an address 2382</b><br> 2383 * Type: <b>string</b><br> 2384 * Path: <b>Patient.address.state | Person.address.state | Practitioner.address.state | RelatedPerson.address.state</b><br> 2385 * </p> 2386 */ 2387 @SearchParamDefinition(name="address-state", path="Patient.address.state | Person.address.state | Practitioner.address.state | RelatedPerson.address.state", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A state specified in an address\r\n* [Person](person.html): A state specified in an address\r\n* [Practitioner](practitioner.html): A state specified in an address\r\n* [RelatedPerson](relatedperson.html): A state specified in an address\r\n", type="string" ) 2388 public static final String SP_ADDRESS_STATE = "address-state"; 2389 /** 2390 * <b>Fluent Client</b> search parameter constant for <b>address-state</b> 2391 * <p> 2392 * Description: <b>Multiple Resources: 2393 2394* [Patient](patient.html): A state specified in an address 2395* [Person](person.html): A state specified in an address 2396* [Practitioner](practitioner.html): A state specified in an address 2397* [RelatedPerson](relatedperson.html): A state specified in an address 2398</b><br> 2399 * Type: <b>string</b><br> 2400 * Path: <b>Patient.address.state | Person.address.state | Practitioner.address.state | RelatedPerson.address.state</b><br> 2401 * </p> 2402 */ 2403 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS_STATE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS_STATE); 2404 2405 /** 2406 * Search parameter: <b>address-use</b> 2407 * <p> 2408 * Description: <b>Multiple Resources: 2409 2410* [Patient](patient.html): A use code specified in an address 2411* [Person](person.html): A use code specified in an address 2412* [Practitioner](practitioner.html): A use code specified in an address 2413* [RelatedPerson](relatedperson.html): A use code specified in an address 2414</b><br> 2415 * Type: <b>token</b><br> 2416 * Path: <b>Patient.address.use | Person.address.use | Practitioner.address.use | RelatedPerson.address.use</b><br> 2417 * </p> 2418 */ 2419 @SearchParamDefinition(name="address-use", path="Patient.address.use | Person.address.use | Practitioner.address.use | RelatedPerson.address.use", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A use code specified in an address\r\n* [Person](person.html): A use code specified in an address\r\n* [Practitioner](practitioner.html): A use code specified in an address\r\n* [RelatedPerson](relatedperson.html): A use code specified in an address\r\n", type="token" ) 2420 public static final String SP_ADDRESS_USE = "address-use"; 2421 /** 2422 * <b>Fluent Client</b> search parameter constant for <b>address-use</b> 2423 * <p> 2424 * Description: <b>Multiple Resources: 2425 2426* [Patient](patient.html): A use code specified in an address 2427* [Person](person.html): A use code specified in an address 2428* [Practitioner](practitioner.html): A use code specified in an address 2429* [RelatedPerson](relatedperson.html): A use code specified in an address 2430</b><br> 2431 * Type: <b>token</b><br> 2432 * Path: <b>Patient.address.use | Person.address.use | Practitioner.address.use | RelatedPerson.address.use</b><br> 2433 * </p> 2434 */ 2435 public static final ca.uhn.fhir.rest.gclient.TokenClientParam ADDRESS_USE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ADDRESS_USE); 2436 2437 /** 2438 * Search parameter: <b>address</b> 2439 * <p> 2440 * Description: <b>Multiple Resources: 2441 2442* [Patient](patient.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2443* [Person](person.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2444* [Practitioner](practitioner.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2445* [RelatedPerson](relatedperson.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2446</b><br> 2447 * Type: <b>string</b><br> 2448 * Path: <b>Patient.address | Person.address | Practitioner.address | RelatedPerson.address</b><br> 2449 * </p> 2450 */ 2451 @SearchParamDefinition(name="address", path="Patient.address | Person.address | Practitioner.address | RelatedPerson.address", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text\r\n* [Person](person.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text\r\n* [Practitioner](practitioner.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text\r\n* [RelatedPerson](relatedperson.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text\r\n", type="string" ) 2452 public static final String SP_ADDRESS = "address"; 2453 /** 2454 * <b>Fluent Client</b> search parameter constant for <b>address</b> 2455 * <p> 2456 * Description: <b>Multiple Resources: 2457 2458* [Patient](patient.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2459* [Person](person.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2460* [Practitioner](practitioner.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2461* [RelatedPerson](relatedperson.html): A server defined search that may match any of the string fields in the Address, including line, city, district, state, country, postalCode, and/or text 2462</b><br> 2463 * Type: <b>string</b><br> 2464 * Path: <b>Patient.address | Person.address | Practitioner.address | RelatedPerson.address</b><br> 2465 * </p> 2466 */ 2467 public static final ca.uhn.fhir.rest.gclient.StringClientParam ADDRESS = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ADDRESS); 2468 2469 /** 2470 * Search parameter: <b>birthdate</b> 2471 * <p> 2472 * Description: <b>Multiple Resources: 2473 2474* [Patient](patient.html): The patient's date of birth 2475* [Person](person.html): The person's date of birth 2476* [RelatedPerson](relatedperson.html): The Related Person's date of birth 2477</b><br> 2478 * Type: <b>date</b><br> 2479 * Path: <b>Patient.birthDate | Person.birthDate | RelatedPerson.birthDate</b><br> 2480 * </p> 2481 */ 2482 @SearchParamDefinition(name="birthdate", path="Patient.birthDate | Person.birthDate | RelatedPerson.birthDate", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): The patient's date of birth\r\n* [Person](person.html): The person's date of birth\r\n* [RelatedPerson](relatedperson.html): The Related Person's date of birth\r\n", type="date" ) 2483 public static final String SP_BIRTHDATE = "birthdate"; 2484 /** 2485 * <b>Fluent Client</b> search parameter constant for <b>birthdate</b> 2486 * <p> 2487 * Description: <b>Multiple Resources: 2488 2489* [Patient](patient.html): The patient's date of birth 2490* [Person](person.html): The person's date of birth 2491* [RelatedPerson](relatedperson.html): The Related Person's date of birth 2492</b><br> 2493 * Type: <b>date</b><br> 2494 * Path: <b>Patient.birthDate | Person.birthDate | RelatedPerson.birthDate</b><br> 2495 * </p> 2496 */ 2497 public static final ca.uhn.fhir.rest.gclient.DateClientParam BIRTHDATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_BIRTHDATE); 2498 2499 /** 2500 * Search parameter: <b>email</b> 2501 * <p> 2502 * Description: <b>Multiple Resources: 2503 2504* [Patient](patient.html): A value in an email contact 2505* [Person](person.html): A value in an email contact 2506* [Practitioner](practitioner.html): A value in an email contact 2507* [PractitionerRole](practitionerrole.html): A value in an email contact 2508* [RelatedPerson](relatedperson.html): A value in an email contact 2509</b><br> 2510 * Type: <b>token</b><br> 2511 * Path: <b>Patient.telecom.where(system='email') | Person.telecom.where(system='email') | Practitioner.telecom.where(system='email') | PractitionerRole.contact.telecom.where(system='email') | RelatedPerson.telecom.where(system='email')</b><br> 2512 * </p> 2513 */ 2514 @SearchParamDefinition(name="email", path="Patient.telecom.where(system='email') | Person.telecom.where(system='email') | Practitioner.telecom.where(system='email') | PractitionerRole.contact.telecom.where(system='email') | RelatedPerson.telecom.where(system='email')", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A value in an email contact\r\n* [Person](person.html): A value in an email contact\r\n* [Practitioner](practitioner.html): A value in an email contact\r\n* [PractitionerRole](practitionerrole.html): A value in an email contact\r\n* [RelatedPerson](relatedperson.html): A value in an email contact\r\n", type="token" ) 2515 public static final String SP_EMAIL = "email"; 2516 /** 2517 * <b>Fluent Client</b> search parameter constant for <b>email</b> 2518 * <p> 2519 * Description: <b>Multiple Resources: 2520 2521* [Patient](patient.html): A value in an email contact 2522* [Person](person.html): A value in an email contact 2523* [Practitioner](practitioner.html): A value in an email contact 2524* [PractitionerRole](practitionerrole.html): A value in an email contact 2525* [RelatedPerson](relatedperson.html): A value in an email contact 2526</b><br> 2527 * Type: <b>token</b><br> 2528 * Path: <b>Patient.telecom.where(system='email') | Person.telecom.where(system='email') | Practitioner.telecom.where(system='email') | PractitionerRole.contact.telecom.where(system='email') | RelatedPerson.telecom.where(system='email')</b><br> 2529 * </p> 2530 */ 2531 public static final ca.uhn.fhir.rest.gclient.TokenClientParam EMAIL = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_EMAIL); 2532 2533 /** 2534 * Search parameter: <b>gender</b> 2535 * <p> 2536 * Description: <b>Multiple Resources: 2537 2538* [Patient](patient.html): Gender of the patient 2539* [Person](person.html): The gender of the person 2540* [Practitioner](practitioner.html): Gender of the practitioner 2541* [RelatedPerson](relatedperson.html): Gender of the related person 2542</b><br> 2543 * Type: <b>token</b><br> 2544 * Path: <b>Patient.gender | Person.gender | Practitioner.gender | RelatedPerson.gender</b><br> 2545 * </p> 2546 */ 2547 @SearchParamDefinition(name="gender", path="Patient.gender | Person.gender | Practitioner.gender | RelatedPerson.gender", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): Gender of the patient\r\n* [Person](person.html): The gender of the person\r\n* [Practitioner](practitioner.html): Gender of the practitioner\r\n* [RelatedPerson](relatedperson.html): Gender of the related person\r\n", type="token" ) 2548 public static final String SP_GENDER = "gender"; 2549 /** 2550 * <b>Fluent Client</b> search parameter constant for <b>gender</b> 2551 * <p> 2552 * Description: <b>Multiple Resources: 2553 2554* [Patient](patient.html): Gender of the patient 2555* [Person](person.html): The gender of the person 2556* [Practitioner](practitioner.html): Gender of the practitioner 2557* [RelatedPerson](relatedperson.html): Gender of the related person 2558</b><br> 2559 * Type: <b>token</b><br> 2560 * Path: <b>Patient.gender | Person.gender | Practitioner.gender | RelatedPerson.gender</b><br> 2561 * </p> 2562 */ 2563 public static final ca.uhn.fhir.rest.gclient.TokenClientParam GENDER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_GENDER); 2564 2565 /** 2566 * Search parameter: <b>phone</b> 2567 * <p> 2568 * Description: <b>Multiple Resources: 2569 2570* [Patient](patient.html): A value in a phone contact 2571* [Person](person.html): A value in a phone contact 2572* [Practitioner](practitioner.html): A value in a phone contact 2573* [PractitionerRole](practitionerrole.html): A value in a phone contact 2574* [RelatedPerson](relatedperson.html): A value in a phone contact 2575</b><br> 2576 * Type: <b>token</b><br> 2577 * Path: <b>Patient.telecom.where(system='phone') | Person.telecom.where(system='phone') | Practitioner.telecom.where(system='phone') | PractitionerRole.contact.telecom.where(system='phone') | RelatedPerson.telecom.where(system='phone')</b><br> 2578 * </p> 2579 */ 2580 @SearchParamDefinition(name="phone", path="Patient.telecom.where(system='phone') | Person.telecom.where(system='phone') | Practitioner.telecom.where(system='phone') | PractitionerRole.contact.telecom.where(system='phone') | RelatedPerson.telecom.where(system='phone')", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A value in a phone contact\r\n* [Person](person.html): A value in a phone contact\r\n* [Practitioner](practitioner.html): A value in a phone contact\r\n* [PractitionerRole](practitionerrole.html): A value in a phone contact\r\n* [RelatedPerson](relatedperson.html): A value in a phone contact\r\n", type="token" ) 2581 public static final String SP_PHONE = "phone"; 2582 /** 2583 * <b>Fluent Client</b> search parameter constant for <b>phone</b> 2584 * <p> 2585 * Description: <b>Multiple Resources: 2586 2587* [Patient](patient.html): A value in a phone contact 2588* [Person](person.html): A value in a phone contact 2589* [Practitioner](practitioner.html): A value in a phone contact 2590* [PractitionerRole](practitionerrole.html): A value in a phone contact 2591* [RelatedPerson](relatedperson.html): A value in a phone contact 2592</b><br> 2593 * Type: <b>token</b><br> 2594 * Path: <b>Patient.telecom.where(system='phone') | Person.telecom.where(system='phone') | Practitioner.telecom.where(system='phone') | PractitionerRole.contact.telecom.where(system='phone') | RelatedPerson.telecom.where(system='phone')</b><br> 2595 * </p> 2596 */ 2597 public static final ca.uhn.fhir.rest.gclient.TokenClientParam PHONE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PHONE); 2598 2599 /** 2600 * Search parameter: <b>phonetic</b> 2601 * <p> 2602 * Description: <b>Multiple Resources: 2603 2604* [Patient](patient.html): A portion of either family or given name using some kind of phonetic matching algorithm 2605* [Person](person.html): A portion of name using some kind of phonetic matching algorithm 2606* [Practitioner](practitioner.html): A portion of either family or given name using some kind of phonetic matching algorithm 2607* [RelatedPerson](relatedperson.html): A portion of name using some kind of phonetic matching algorithm 2608</b><br> 2609 * Type: <b>string</b><br> 2610 * Path: <b>Patient.name | Person.name | Practitioner.name | RelatedPerson.name</b><br> 2611 * </p> 2612 */ 2613 @SearchParamDefinition(name="phonetic", path="Patient.name | Person.name | Practitioner.name | RelatedPerson.name", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): A portion of either family or given name using some kind of phonetic matching algorithm\r\n* [Person](person.html): A portion of name using some kind of phonetic matching algorithm\r\n* [Practitioner](practitioner.html): A portion of either family or given name using some kind of phonetic matching algorithm\r\n* [RelatedPerson](relatedperson.html): A portion of name using some kind of phonetic matching algorithm\r\n", type="string" ) 2614 public static final String SP_PHONETIC = "phonetic"; 2615 /** 2616 * <b>Fluent Client</b> search parameter constant for <b>phonetic</b> 2617 * <p> 2618 * Description: <b>Multiple Resources: 2619 2620* [Patient](patient.html): A portion of either family or given name using some kind of phonetic matching algorithm 2621* [Person](person.html): A portion of name using some kind of phonetic matching algorithm 2622* [Practitioner](practitioner.html): A portion of either family or given name using some kind of phonetic matching algorithm 2623* [RelatedPerson](relatedperson.html): A portion of name using some kind of phonetic matching algorithm 2624</b><br> 2625 * Type: <b>string</b><br> 2626 * Path: <b>Patient.name | Person.name | Practitioner.name | RelatedPerson.name</b><br> 2627 * </p> 2628 */ 2629 public static final ca.uhn.fhir.rest.gclient.StringClientParam PHONETIC = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_PHONETIC); 2630 2631 /** 2632 * Search parameter: <b>telecom</b> 2633 * <p> 2634 * Description: <b>Multiple Resources: 2635 2636* [Patient](patient.html): The value in any kind of telecom details of the patient 2637* [Person](person.html): The value in any kind of contact 2638* [Practitioner](practitioner.html): The value in any kind of contact 2639* [PractitionerRole](practitionerrole.html): The value in any kind of contact 2640* [RelatedPerson](relatedperson.html): The value in any kind of contact 2641</b><br> 2642 * Type: <b>token</b><br> 2643 * Path: <b>Patient.telecom | Person.telecom | Practitioner.telecom | PractitionerRole.contact.telecom | RelatedPerson.telecom</b><br> 2644 * </p> 2645 */ 2646 @SearchParamDefinition(name="telecom", path="Patient.telecom | Person.telecom | Practitioner.telecom | PractitionerRole.contact.telecom | RelatedPerson.telecom", description="Multiple Resources: \r\n\r\n* [Patient](patient.html): The value in any kind of telecom details of the patient\r\n* [Person](person.html): The value in any kind of contact\r\n* [Practitioner](practitioner.html): The value in any kind of contact\r\n* [PractitionerRole](practitionerrole.html): The value in any kind of contact\r\n* [RelatedPerson](relatedperson.html): The value in any kind of contact\r\n", type="token" ) 2647 public static final String SP_TELECOM = "telecom"; 2648 /** 2649 * <b>Fluent Client</b> search parameter constant for <b>telecom</b> 2650 * <p> 2651 * Description: <b>Multiple Resources: 2652 2653* [Patient](patient.html): The value in any kind of telecom details of the patient 2654* [Person](person.html): The value in any kind of contact 2655* [Practitioner](practitioner.html): The value in any kind of contact 2656* [PractitionerRole](practitionerrole.html): The value in any kind of contact 2657* [RelatedPerson](relatedperson.html): The value in any kind of contact 2658</b><br> 2659 * Type: <b>token</b><br> 2660 * Path: <b>Patient.telecom | Person.telecom | Practitioner.telecom | PractitionerRole.contact.telecom | RelatedPerson.telecom</b><br> 2661 * </p> 2662 */ 2663 public static final ca.uhn.fhir.rest.gclient.TokenClientParam TELECOM = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TELECOM); 2664 2665 2666} 2667