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 java.math.*;
038import org.hl7.fhir.utilities.Utilities;
039import org.hl7.fhir.r5.model.Enumerations.*;
040import org.hl7.fhir.instance.model.api.IBaseBackboneElement;
041import org.hl7.fhir.exceptions.FHIRException;
042import org.hl7.fhir.instance.model.api.ICompositeType;
043import ca.uhn.fhir.model.api.annotation.ResourceDef;
044import ca.uhn.fhir.model.api.annotation.SearchParamDefinition;
045import org.hl7.fhir.instance.model.api.IBaseBackboneElement;
046import ca.uhn.fhir.model.api.annotation.Child;
047import ca.uhn.fhir.model.api.annotation.ChildOrder;
048import ca.uhn.fhir.model.api.annotation.Description;
049import ca.uhn.fhir.model.api.annotation.Block;
050
051/**
052 * An assessment of the likely outcome(s) for a patient or other subject as well as the likelihood of each outcome.
053 */
054@ResourceDef(name="RiskAssessment", profile="http://hl7.org/fhir/StructureDefinition/RiskAssessment")
055public class RiskAssessment extends DomainResource {
056
057    @Block()
058    public static class RiskAssessmentPredictionComponent extends BackboneElement implements IBaseBackboneElement {
059        /**
060         * One of the potential outcomes for the patient (e.g. remission, death,  a particular condition).
061         */
062        @Child(name = "outcome", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false)
063        @Description(shortDefinition="Possible outcome for the subject", formalDefinition="One of the potential outcomes for the patient (e.g. remission, death,  a particular condition)." )
064        protected CodeableConcept outcome;
065
066        /**
067         * Indicates how likely the outcome is (in the specified timeframe).
068         */
069        @Child(name = "probability", type = {DecimalType.class, Range.class}, order=2, min=0, max=1, modifier=false, summary=false)
070        @Description(shortDefinition="Likelihood of specified outcome", formalDefinition="Indicates how likely the outcome is (in the specified timeframe)." )
071        protected DataType probability;
072
073        /**
074         * Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high).
075         */
076        @Child(name = "qualitativeRisk", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=false)
077        @Description(shortDefinition="Likelihood of specified outcome as a qualitative value", formalDefinition="Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high)." )
078        @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/risk-probability")
079        protected CodeableConcept qualitativeRisk;
080
081        /**
082         * Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).
083         */
084        @Child(name = "relativeRisk", type = {DecimalType.class}, order=4, min=0, max=1, modifier=false, summary=false)
085        @Description(shortDefinition="Relative likelihood", formalDefinition="Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.)." )
086        protected DecimalType relativeRisk;
087
088        /**
089         * Indicates the period of time or age range of the subject to which the specified probability applies.
090         */
091        @Child(name = "when", type = {Period.class, Range.class}, order=5, min=0, max=1, modifier=false, summary=false)
092        @Description(shortDefinition="Timeframe or age range", formalDefinition="Indicates the period of time or age range of the subject to which the specified probability applies." )
093        protected DataType when;
094
095        /**
096         * Additional information explaining the basis for the prediction.
097         */
098        @Child(name = "rationale", type = {StringType.class}, order=6, min=0, max=1, modifier=false, summary=false)
099        @Description(shortDefinition="Explanation of prediction", formalDefinition="Additional information explaining the basis for the prediction." )
100        protected StringType rationale;
101
102        private static final long serialVersionUID = -1559504257L;
103
104    /**
105     * Constructor
106     */
107      public RiskAssessmentPredictionComponent() {
108        super();
109      }
110
111        /**
112         * @return {@link #outcome} (One of the potential outcomes for the patient (e.g. remission, death,  a particular condition).)
113         */
114        public CodeableConcept getOutcome() { 
115          if (this.outcome == null)
116            if (Configuration.errorOnAutoCreate())
117              throw new Error("Attempt to auto-create RiskAssessmentPredictionComponent.outcome");
118            else if (Configuration.doAutoCreate())
119              this.outcome = new CodeableConcept(); // cc
120          return this.outcome;
121        }
122
123        public boolean hasOutcome() { 
124          return this.outcome != null && !this.outcome.isEmpty();
125        }
126
127        /**
128         * @param value {@link #outcome} (One of the potential outcomes for the patient (e.g. remission, death,  a particular condition).)
129         */
130        public RiskAssessmentPredictionComponent setOutcome(CodeableConcept value) { 
131          this.outcome = value;
132          return this;
133        }
134
135        /**
136         * @return {@link #probability} (Indicates how likely the outcome is (in the specified timeframe).)
137         */
138        public DataType getProbability() { 
139          return this.probability;
140        }
141
142        /**
143         * @return {@link #probability} (Indicates how likely the outcome is (in the specified timeframe).)
144         */
145        public DecimalType getProbabilityDecimalType() throws FHIRException { 
146          if (this.probability == null)
147            this.probability = new DecimalType();
148          if (!(this.probability instanceof DecimalType))
149            throw new FHIRException("Type mismatch: the type DecimalType was expected, but "+this.probability.getClass().getName()+" was encountered");
150          return (DecimalType) this.probability;
151        }
152
153        public boolean hasProbabilityDecimalType() { 
154          return this != null && this.probability instanceof DecimalType;
155        }
156
157        /**
158         * @return {@link #probability} (Indicates how likely the outcome is (in the specified timeframe).)
159         */
160        public Range getProbabilityRange() throws FHIRException { 
161          if (this.probability == null)
162            this.probability = new Range();
163          if (!(this.probability instanceof Range))
164            throw new FHIRException("Type mismatch: the type Range was expected, but "+this.probability.getClass().getName()+" was encountered");
165          return (Range) this.probability;
166        }
167
168        public boolean hasProbabilityRange() { 
169          return this != null && this.probability instanceof Range;
170        }
171
172        public boolean hasProbability() { 
173          return this.probability != null && !this.probability.isEmpty();
174        }
175
176        /**
177         * @param value {@link #probability} (Indicates how likely the outcome is (in the specified timeframe).)
178         */
179        public RiskAssessmentPredictionComponent setProbability(DataType value) { 
180          if (value != null && !(value instanceof DecimalType || value instanceof Range))
181            throw new FHIRException("Not the right type for RiskAssessment.prediction.probability[x]: "+value.fhirType());
182          this.probability = value;
183          return this;
184        }
185
186        /**
187         * @return {@link #qualitativeRisk} (Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high).)
188         */
189        public CodeableConcept getQualitativeRisk() { 
190          if (this.qualitativeRisk == null)
191            if (Configuration.errorOnAutoCreate())
192              throw new Error("Attempt to auto-create RiskAssessmentPredictionComponent.qualitativeRisk");
193            else if (Configuration.doAutoCreate())
194              this.qualitativeRisk = new CodeableConcept(); // cc
195          return this.qualitativeRisk;
196        }
197
198        public boolean hasQualitativeRisk() { 
199          return this.qualitativeRisk != null && !this.qualitativeRisk.isEmpty();
200        }
201
202        /**
203         * @param value {@link #qualitativeRisk} (Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high).)
204         */
205        public RiskAssessmentPredictionComponent setQualitativeRisk(CodeableConcept value) { 
206          this.qualitativeRisk = value;
207          return this;
208        }
209
210        /**
211         * @return {@link #relativeRisk} (Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).). This is the underlying object with id, value and extensions. The accessor "getRelativeRisk" gives direct access to the value
212         */
213        public DecimalType getRelativeRiskElement() { 
214          if (this.relativeRisk == null)
215            if (Configuration.errorOnAutoCreate())
216              throw new Error("Attempt to auto-create RiskAssessmentPredictionComponent.relativeRisk");
217            else if (Configuration.doAutoCreate())
218              this.relativeRisk = new DecimalType(); // bb
219          return this.relativeRisk;
220        }
221
222        public boolean hasRelativeRiskElement() { 
223          return this.relativeRisk != null && !this.relativeRisk.isEmpty();
224        }
225
226        public boolean hasRelativeRisk() { 
227          return this.relativeRisk != null && !this.relativeRisk.isEmpty();
228        }
229
230        /**
231         * @param value {@link #relativeRisk} (Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).). This is the underlying object with id, value and extensions. The accessor "getRelativeRisk" gives direct access to the value
232         */
233        public RiskAssessmentPredictionComponent setRelativeRiskElement(DecimalType value) { 
234          this.relativeRisk = value;
235          return this;
236        }
237
238        /**
239         * @return Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).
240         */
241        public BigDecimal getRelativeRisk() { 
242          return this.relativeRisk == null ? null : this.relativeRisk.getValue();
243        }
244
245        /**
246         * @param value Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).
247         */
248        public RiskAssessmentPredictionComponent setRelativeRisk(BigDecimal value) { 
249          if (value == null)
250            this.relativeRisk = null;
251          else {
252            if (this.relativeRisk == null)
253              this.relativeRisk = new DecimalType();
254            this.relativeRisk.setValue(value);
255          }
256          return this;
257        }
258
259        /**
260         * @param value Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).
261         */
262        public RiskAssessmentPredictionComponent setRelativeRisk(long value) { 
263              this.relativeRisk = new DecimalType();
264            this.relativeRisk.setValue(value);
265          return this;
266        }
267
268        /**
269         * @param value Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).
270         */
271        public RiskAssessmentPredictionComponent setRelativeRisk(double value) { 
272              this.relativeRisk = new DecimalType();
273            this.relativeRisk.setValue(value);
274          return this;
275        }
276
277        /**
278         * @return {@link #when} (Indicates the period of time or age range of the subject to which the specified probability applies.)
279         */
280        public DataType getWhen() { 
281          return this.when;
282        }
283
284        /**
285         * @return {@link #when} (Indicates the period of time or age range of the subject to which the specified probability applies.)
286         */
287        public Period getWhenPeriod() throws FHIRException { 
288          if (this.when == null)
289            this.when = new Period();
290          if (!(this.when instanceof Period))
291            throw new FHIRException("Type mismatch: the type Period was expected, but "+this.when.getClass().getName()+" was encountered");
292          return (Period) this.when;
293        }
294
295        public boolean hasWhenPeriod() { 
296          return this != null && this.when instanceof Period;
297        }
298
299        /**
300         * @return {@link #when} (Indicates the period of time or age range of the subject to which the specified probability applies.)
301         */
302        public Range getWhenRange() throws FHIRException { 
303          if (this.when == null)
304            this.when = new Range();
305          if (!(this.when instanceof Range))
306            throw new FHIRException("Type mismatch: the type Range was expected, but "+this.when.getClass().getName()+" was encountered");
307          return (Range) this.when;
308        }
309
310        public boolean hasWhenRange() { 
311          return this != null && this.when instanceof Range;
312        }
313
314        public boolean hasWhen() { 
315          return this.when != null && !this.when.isEmpty();
316        }
317
318        /**
319         * @param value {@link #when} (Indicates the period of time or age range of the subject to which the specified probability applies.)
320         */
321        public RiskAssessmentPredictionComponent setWhen(DataType value) { 
322          if (value != null && !(value instanceof Period || value instanceof Range))
323            throw new FHIRException("Not the right type for RiskAssessment.prediction.when[x]: "+value.fhirType());
324          this.when = value;
325          return this;
326        }
327
328        /**
329         * @return {@link #rationale} (Additional information explaining the basis for the prediction.). This is the underlying object with id, value and extensions. The accessor "getRationale" gives direct access to the value
330         */
331        public StringType getRationaleElement() { 
332          if (this.rationale == null)
333            if (Configuration.errorOnAutoCreate())
334              throw new Error("Attempt to auto-create RiskAssessmentPredictionComponent.rationale");
335            else if (Configuration.doAutoCreate())
336              this.rationale = new StringType(); // bb
337          return this.rationale;
338        }
339
340        public boolean hasRationaleElement() { 
341          return this.rationale != null && !this.rationale.isEmpty();
342        }
343
344        public boolean hasRationale() { 
345          return this.rationale != null && !this.rationale.isEmpty();
346        }
347
348        /**
349         * @param value {@link #rationale} (Additional information explaining the basis for the prediction.). This is the underlying object with id, value and extensions. The accessor "getRationale" gives direct access to the value
350         */
351        public RiskAssessmentPredictionComponent setRationaleElement(StringType value) { 
352          this.rationale = value;
353          return this;
354        }
355
356        /**
357         * @return Additional information explaining the basis for the prediction.
358         */
359        public String getRationale() { 
360          return this.rationale == null ? null : this.rationale.getValue();
361        }
362
363        /**
364         * @param value Additional information explaining the basis for the prediction.
365         */
366        public RiskAssessmentPredictionComponent setRationale(String value) { 
367          if (Utilities.noString(value))
368            this.rationale = null;
369          else {
370            if (this.rationale == null)
371              this.rationale = new StringType();
372            this.rationale.setValue(value);
373          }
374          return this;
375        }
376
377        protected void listChildren(List<Property> children) {
378          super.listChildren(children);
379          children.add(new Property("outcome", "CodeableConcept", "One of the potential outcomes for the patient (e.g. remission, death,  a particular condition).", 0, 1, outcome));
380          children.add(new Property("probability[x]", "decimal|Range", "Indicates how likely the outcome is (in the specified timeframe).", 0, 1, probability));
381          children.add(new Property("qualitativeRisk", "CodeableConcept", "Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high).", 0, 1, qualitativeRisk));
382          children.add(new Property("relativeRisk", "decimal", "Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).", 0, 1, relativeRisk));
383          children.add(new Property("when[x]", "Period|Range", "Indicates the period of time or age range of the subject to which the specified probability applies.", 0, 1, when));
384          children.add(new Property("rationale", "string", "Additional information explaining the basis for the prediction.", 0, 1, rationale));
385        }
386
387        @Override
388        public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException {
389          switch (_hash) {
390          case -1106507950: /*outcome*/  return new Property("outcome", "CodeableConcept", "One of the potential outcomes for the patient (e.g. remission, death,  a particular condition).", 0, 1, outcome);
391          case 1430185003: /*probability[x]*/  return new Property("probability[x]", "decimal|Range", "Indicates how likely the outcome is (in the specified timeframe).", 0, 1, probability);
392          case -1290561483: /*probability*/  return new Property("probability[x]", "decimal|Range", "Indicates how likely the outcome is (in the specified timeframe).", 0, 1, probability);
393          case 888495452: /*probabilityDecimal*/  return new Property("probability[x]", "decimal", "Indicates how likely the outcome is (in the specified timeframe).", 0, 1, probability);
394          case 9275912: /*probabilityRange*/  return new Property("probability[x]", "Range", "Indicates how likely the outcome is (in the specified timeframe).", 0, 1, probability);
395          case 123308730: /*qualitativeRisk*/  return new Property("qualitativeRisk", "CodeableConcept", "Indicates how likely the outcome is (in the specified timeframe), expressed as a qualitative value (e.g. low, medium, or high).", 0, 1, qualitativeRisk);
396          case -70741061: /*relativeRisk*/  return new Property("relativeRisk", "decimal", "Indicates the risk for this particular subject (with their specific characteristics) divided by the risk of the population in general.  (Numbers greater than 1 = higher risk than the population, numbers less than 1 = lower risk.).", 0, 1, relativeRisk);
397          case 1312831238: /*when[x]*/  return new Property("when[x]", "Period|Range", "Indicates the period of time or age range of the subject to which the specified probability applies.", 0, 1, when);
398          case 3648314: /*when*/  return new Property("when[x]", "Period|Range", "Indicates the period of time or age range of the subject to which the specified probability applies.", 0, 1, when);
399          case 251476379: /*whenPeriod*/  return new Property("when[x]", "Period", "Indicates the period of time or age range of the subject to which the specified probability applies.", 0, 1, when);
400          case -1098542557: /*whenRange*/  return new Property("when[x]", "Range", "Indicates the period of time or age range of the subject to which the specified probability applies.", 0, 1, when);
401          case 345689335: /*rationale*/  return new Property("rationale", "string", "Additional information explaining the basis for the prediction.", 0, 1, rationale);
402          default: return super.getNamedProperty(_hash, _name, _checkValid);
403          }
404
405        }
406
407      @Override
408      public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException {
409        switch (hash) {
410        case -1106507950: /*outcome*/ return this.outcome == null ? new Base[0] : new Base[] {this.outcome}; // CodeableConcept
411        case -1290561483: /*probability*/ return this.probability == null ? new Base[0] : new Base[] {this.probability}; // DataType
412        case 123308730: /*qualitativeRisk*/ return this.qualitativeRisk == null ? new Base[0] : new Base[] {this.qualitativeRisk}; // CodeableConcept
413        case -70741061: /*relativeRisk*/ return this.relativeRisk == null ? new Base[0] : new Base[] {this.relativeRisk}; // DecimalType
414        case 3648314: /*when*/ return this.when == null ? new Base[0] : new Base[] {this.when}; // DataType
415        case 345689335: /*rationale*/ return this.rationale == null ? new Base[0] : new Base[] {this.rationale}; // StringType
416        default: return super.getProperty(hash, name, checkValid);
417        }
418
419      }
420
421      @Override
422      public Base setProperty(int hash, String name, Base value) throws FHIRException {
423        switch (hash) {
424        case -1106507950: // outcome
425          this.outcome = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
426          return value;
427        case -1290561483: // probability
428          this.probability = TypeConvertor.castToType(value); // DataType
429          return value;
430        case 123308730: // qualitativeRisk
431          this.qualitativeRisk = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
432          return value;
433        case -70741061: // relativeRisk
434          this.relativeRisk = TypeConvertor.castToDecimal(value); // DecimalType
435          return value;
436        case 3648314: // when
437          this.when = TypeConvertor.castToType(value); // DataType
438          return value;
439        case 345689335: // rationale
440          this.rationale = TypeConvertor.castToString(value); // StringType
441          return value;
442        default: return super.setProperty(hash, name, value);
443        }
444
445      }
446
447      @Override
448      public Base setProperty(String name, Base value) throws FHIRException {
449        if (name.equals("outcome")) {
450          this.outcome = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
451        } else if (name.equals("probability[x]")) {
452          this.probability = TypeConvertor.castToType(value); // DataType
453        } else if (name.equals("qualitativeRisk")) {
454          this.qualitativeRisk = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
455        } else if (name.equals("relativeRisk")) {
456          this.relativeRisk = TypeConvertor.castToDecimal(value); // DecimalType
457        } else if (name.equals("when[x]")) {
458          this.when = TypeConvertor.castToType(value); // DataType
459        } else if (name.equals("rationale")) {
460          this.rationale = TypeConvertor.castToString(value); // StringType
461        } else
462          return super.setProperty(name, value);
463        return value;
464      }
465
466      @Override
467      public Base makeProperty(int hash, String name) throws FHIRException {
468        switch (hash) {
469        case -1106507950:  return getOutcome();
470        case 1430185003:  return getProbability();
471        case -1290561483:  return getProbability();
472        case 123308730:  return getQualitativeRisk();
473        case -70741061:  return getRelativeRiskElement();
474        case 1312831238:  return getWhen();
475        case 3648314:  return getWhen();
476        case 345689335:  return getRationaleElement();
477        default: return super.makeProperty(hash, name);
478        }
479
480      }
481
482      @Override
483      public String[] getTypesForProperty(int hash, String name) throws FHIRException {
484        switch (hash) {
485        case -1106507950: /*outcome*/ return new String[] {"CodeableConcept"};
486        case -1290561483: /*probability*/ return new String[] {"decimal", "Range"};
487        case 123308730: /*qualitativeRisk*/ return new String[] {"CodeableConcept"};
488        case -70741061: /*relativeRisk*/ return new String[] {"decimal"};
489        case 3648314: /*when*/ return new String[] {"Period", "Range"};
490        case 345689335: /*rationale*/ return new String[] {"string"};
491        default: return super.getTypesForProperty(hash, name);
492        }
493
494      }
495
496      @Override
497      public Base addChild(String name) throws FHIRException {
498        if (name.equals("outcome")) {
499          this.outcome = new CodeableConcept();
500          return this.outcome;
501        }
502        else if (name.equals("probabilityDecimal")) {
503          this.probability = new DecimalType();
504          return this.probability;
505        }
506        else if (name.equals("probabilityRange")) {
507          this.probability = new Range();
508          return this.probability;
509        }
510        else if (name.equals("qualitativeRisk")) {
511          this.qualitativeRisk = new CodeableConcept();
512          return this.qualitativeRisk;
513        }
514        else if (name.equals("relativeRisk")) {
515          throw new FHIRException("Cannot call addChild on a singleton property RiskAssessment.prediction.relativeRisk");
516        }
517        else if (name.equals("whenPeriod")) {
518          this.when = new Period();
519          return this.when;
520        }
521        else if (name.equals("whenRange")) {
522          this.when = new Range();
523          return this.when;
524        }
525        else if (name.equals("rationale")) {
526          throw new FHIRException("Cannot call addChild on a singleton property RiskAssessment.prediction.rationale");
527        }
528        else
529          return super.addChild(name);
530      }
531
532      public RiskAssessmentPredictionComponent copy() {
533        RiskAssessmentPredictionComponent dst = new RiskAssessmentPredictionComponent();
534        copyValues(dst);
535        return dst;
536      }
537
538      public void copyValues(RiskAssessmentPredictionComponent dst) {
539        super.copyValues(dst);
540        dst.outcome = outcome == null ? null : outcome.copy();
541        dst.probability = probability == null ? null : probability.copy();
542        dst.qualitativeRisk = qualitativeRisk == null ? null : qualitativeRisk.copy();
543        dst.relativeRisk = relativeRisk == null ? null : relativeRisk.copy();
544        dst.when = when == null ? null : when.copy();
545        dst.rationale = rationale == null ? null : rationale.copy();
546      }
547
548      @Override
549      public boolean equalsDeep(Base other_) {
550        if (!super.equalsDeep(other_))
551          return false;
552        if (!(other_ instanceof RiskAssessmentPredictionComponent))
553          return false;
554        RiskAssessmentPredictionComponent o = (RiskAssessmentPredictionComponent) other_;
555        return compareDeep(outcome, o.outcome, true) && compareDeep(probability, o.probability, true) && compareDeep(qualitativeRisk, o.qualitativeRisk, true)
556           && compareDeep(relativeRisk, o.relativeRisk, true) && compareDeep(when, o.when, true) && compareDeep(rationale, o.rationale, true)
557          ;
558      }
559
560      @Override
561      public boolean equalsShallow(Base other_) {
562        if (!super.equalsShallow(other_))
563          return false;
564        if (!(other_ instanceof RiskAssessmentPredictionComponent))
565          return false;
566        RiskAssessmentPredictionComponent o = (RiskAssessmentPredictionComponent) other_;
567        return compareValues(relativeRisk, o.relativeRisk, true) && compareValues(rationale, o.rationale, true)
568          ;
569      }
570
571      public boolean isEmpty() {
572        return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(outcome, probability, qualitativeRisk
573          , relativeRisk, when, rationale);
574      }
575
576  public String fhirType() {
577    return "RiskAssessment.prediction";
578
579  }
580
581  }
582
583    /**
584     * Business identifier assigned to the risk assessment.
585     */
586    @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true)
587    @Description(shortDefinition="Unique identifier for the assessment", formalDefinition="Business identifier assigned to the risk assessment." )
588    protected List<Identifier> identifier;
589
590    /**
591     * A reference to the request that is fulfilled by this risk assessment.
592     */
593    @Child(name = "basedOn", type = {Reference.class}, order=1, min=0, max=1, modifier=false, summary=false)
594    @Description(shortDefinition="Request fulfilled by this assessment", formalDefinition="A reference to the request that is fulfilled by this risk assessment." )
595    protected Reference basedOn;
596
597    /**
598     * A reference to a resource that this risk assessment is part of, such as a Procedure.
599     */
600    @Child(name = "parent", type = {Reference.class}, order=2, min=0, max=1, modifier=false, summary=false)
601    @Description(shortDefinition="Part of this occurrence", formalDefinition="A reference to a resource that this risk assessment is part of, such as a Procedure." )
602    protected Reference parent;
603
604    /**
605     * The status of the RiskAssessment, using the same statuses as an Observation.
606     */
607    @Child(name = "status", type = {CodeType.class}, order=3, min=1, max=1, modifier=false, summary=true)
608    @Description(shortDefinition="registered | preliminary | final | amended +", formalDefinition="The status of the RiskAssessment, using the same statuses as an Observation." )
609    @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/observation-status")
610    protected Enumeration<ObservationStatus> status;
611
612    /**
613     * The algorithm, process or mechanism used to evaluate the risk.
614     */
615    @Child(name = "method", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=true)
616    @Description(shortDefinition="Evaluation mechanism", formalDefinition="The algorithm, process or mechanism used to evaluate the risk." )
617    protected CodeableConcept method;
618
619    /**
620     * The type of the risk assessment performed.
621     */
622    @Child(name = "code", type = {CodeableConcept.class}, order=5, min=0, max=1, modifier=false, summary=true)
623    @Description(shortDefinition="Type of assessment", formalDefinition="The type of the risk assessment performed." )
624    protected CodeableConcept code;
625
626    /**
627     * The patient or group the risk assessment applies to.
628     */
629    @Child(name = "subject", type = {Patient.class, Group.class}, order=6, min=1, max=1, modifier=false, summary=true)
630    @Description(shortDefinition="Who/what does assessment apply to?", formalDefinition="The patient or group the risk assessment applies to." )
631    protected Reference subject;
632
633    /**
634     * The encounter where the assessment was performed.
635     */
636    @Child(name = "encounter", type = {Encounter.class}, order=7, min=0, max=1, modifier=false, summary=true)
637    @Description(shortDefinition="Where was assessment performed?", formalDefinition="The encounter where the assessment was performed." )
638    protected Reference encounter;
639
640    /**
641     * The date (and possibly time) the risk assessment was performed.
642     */
643    @Child(name = "occurrence", type = {DateTimeType.class, Period.class}, order=8, min=0, max=1, modifier=false, summary=true)
644    @Description(shortDefinition="When was assessment made?", formalDefinition="The date (and possibly time) the risk assessment was performed." )
645    protected DataType occurrence;
646
647    /**
648     * For assessments or prognosis specific to a particular condition, indicates the condition being assessed.
649     */
650    @Child(name = "condition", type = {Condition.class}, order=9, min=0, max=1, modifier=false, summary=true)
651    @Description(shortDefinition="Condition assessed", formalDefinition="For assessments or prognosis specific to a particular condition, indicates the condition being assessed." )
652    protected Reference condition;
653
654    /**
655     * The provider, patient, related person, or software application that performed the assessment.
656     */
657    @Child(name = "performer", type = {Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class, Device.class}, order=10, min=0, max=1, modifier=false, summary=true)
658    @Description(shortDefinition="Who did assessment?", formalDefinition="The provider, patient, related person, or software application that performed the assessment." )
659    protected Reference performer;
660
661    /**
662     * The reason the risk assessment was performed.
663     */
664    @Child(name = "reason", type = {CodeableReference.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false)
665    @Description(shortDefinition="Why the assessment was necessary?", formalDefinition="The reason the risk assessment was performed." )
666    protected List<CodeableReference> reason;
667
668    /**
669     * Indicates the source data considered as part of the assessment (for example, FamilyHistory, Observations, Procedures, Conditions, etc.).
670     */
671    @Child(name = "basis", type = {Reference.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false)
672    @Description(shortDefinition="Information used in assessment", formalDefinition="Indicates the source data considered as part of the assessment (for example, FamilyHistory, Observations, Procedures, Conditions, etc.)." )
673    protected List<Reference> basis;
674
675    /**
676     * Describes the expected outcome for the subject.
677     */
678    @Child(name = "prediction", type = {}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false)
679    @Description(shortDefinition="Outcome predicted", formalDefinition="Describes the expected outcome for the subject." )
680    protected List<RiskAssessmentPredictionComponent> prediction;
681
682    /**
683     * A description of the steps that might be taken to reduce the identified risk(s).
684     */
685    @Child(name = "mitigation", type = {StringType.class}, order=14, min=0, max=1, modifier=false, summary=false)
686    @Description(shortDefinition="How to reduce risk", formalDefinition="A description of the steps that might be taken to reduce the identified risk(s)." )
687    protected StringType mitigation;
688
689    /**
690     * Additional comments about the risk assessment.
691     */
692    @Child(name = "note", type = {Annotation.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false)
693    @Description(shortDefinition="Comments on the risk assessment", formalDefinition="Additional comments about the risk assessment." )
694    protected List<Annotation> note;
695
696    private static final long serialVersionUID = 1076114228L;
697
698  /**
699   * Constructor
700   */
701    public RiskAssessment() {
702      super();
703    }
704
705  /**
706   * Constructor
707   */
708    public RiskAssessment(ObservationStatus status, Reference subject) {
709      super();
710      this.setStatus(status);
711      this.setSubject(subject);
712    }
713
714    /**
715     * @return {@link #identifier} (Business identifier assigned to the risk assessment.)
716     */
717    public List<Identifier> getIdentifier() { 
718      if (this.identifier == null)
719        this.identifier = new ArrayList<Identifier>();
720      return this.identifier;
721    }
722
723    /**
724     * @return Returns a reference to <code>this</code> for easy method chaining
725     */
726    public RiskAssessment setIdentifier(List<Identifier> theIdentifier) { 
727      this.identifier = theIdentifier;
728      return this;
729    }
730
731    public boolean hasIdentifier() { 
732      if (this.identifier == null)
733        return false;
734      for (Identifier item : this.identifier)
735        if (!item.isEmpty())
736          return true;
737      return false;
738    }
739
740    public Identifier addIdentifier() { //3
741      Identifier t = new Identifier();
742      if (this.identifier == null)
743        this.identifier = new ArrayList<Identifier>();
744      this.identifier.add(t);
745      return t;
746    }
747
748    public RiskAssessment addIdentifier(Identifier t) { //3
749      if (t == null)
750        return this;
751      if (this.identifier == null)
752        this.identifier = new ArrayList<Identifier>();
753      this.identifier.add(t);
754      return this;
755    }
756
757    /**
758     * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3}
759     */
760    public Identifier getIdentifierFirstRep() { 
761      if (getIdentifier().isEmpty()) {
762        addIdentifier();
763      }
764      return getIdentifier().get(0);
765    }
766
767    /**
768     * @return {@link #basedOn} (A reference to the request that is fulfilled by this risk assessment.)
769     */
770    public Reference getBasedOn() { 
771      if (this.basedOn == null)
772        if (Configuration.errorOnAutoCreate())
773          throw new Error("Attempt to auto-create RiskAssessment.basedOn");
774        else if (Configuration.doAutoCreate())
775          this.basedOn = new Reference(); // cc
776      return this.basedOn;
777    }
778
779    public boolean hasBasedOn() { 
780      return this.basedOn != null && !this.basedOn.isEmpty();
781    }
782
783    /**
784     * @param value {@link #basedOn} (A reference to the request that is fulfilled by this risk assessment.)
785     */
786    public RiskAssessment setBasedOn(Reference value) { 
787      this.basedOn = value;
788      return this;
789    }
790
791    /**
792     * @return {@link #parent} (A reference to a resource that this risk assessment is part of, such as a Procedure.)
793     */
794    public Reference getParent() { 
795      if (this.parent == null)
796        if (Configuration.errorOnAutoCreate())
797          throw new Error("Attempt to auto-create RiskAssessment.parent");
798        else if (Configuration.doAutoCreate())
799          this.parent = new Reference(); // cc
800      return this.parent;
801    }
802
803    public boolean hasParent() { 
804      return this.parent != null && !this.parent.isEmpty();
805    }
806
807    /**
808     * @param value {@link #parent} (A reference to a resource that this risk assessment is part of, such as a Procedure.)
809     */
810    public RiskAssessment setParent(Reference value) { 
811      this.parent = value;
812      return this;
813    }
814
815    /**
816     * @return {@link #status} (The status of the RiskAssessment, using the same statuses as an Observation.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value
817     */
818    public Enumeration<ObservationStatus> getStatusElement() { 
819      if (this.status == null)
820        if (Configuration.errorOnAutoCreate())
821          throw new Error("Attempt to auto-create RiskAssessment.status");
822        else if (Configuration.doAutoCreate())
823          this.status = new Enumeration<ObservationStatus>(new ObservationStatusEnumFactory()); // bb
824      return this.status;
825    }
826
827    public boolean hasStatusElement() { 
828      return this.status != null && !this.status.isEmpty();
829    }
830
831    public boolean hasStatus() { 
832      return this.status != null && !this.status.isEmpty();
833    }
834
835    /**
836     * @param value {@link #status} (The status of the RiskAssessment, using the same statuses as an Observation.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value
837     */
838    public RiskAssessment setStatusElement(Enumeration<ObservationStatus> value) { 
839      this.status = value;
840      return this;
841    }
842
843    /**
844     * @return The status of the RiskAssessment, using the same statuses as an Observation.
845     */
846    public ObservationStatus getStatus() { 
847      return this.status == null ? null : this.status.getValue();
848    }
849
850    /**
851     * @param value The status of the RiskAssessment, using the same statuses as an Observation.
852     */
853    public RiskAssessment setStatus(ObservationStatus value) { 
854        if (this.status == null)
855          this.status = new Enumeration<ObservationStatus>(new ObservationStatusEnumFactory());
856        this.status.setValue(value);
857      return this;
858    }
859
860    /**
861     * @return {@link #method} (The algorithm, process or mechanism used to evaluate the risk.)
862     */
863    public CodeableConcept getMethod() { 
864      if (this.method == null)
865        if (Configuration.errorOnAutoCreate())
866          throw new Error("Attempt to auto-create RiskAssessment.method");
867        else if (Configuration.doAutoCreate())
868          this.method = new CodeableConcept(); // cc
869      return this.method;
870    }
871
872    public boolean hasMethod() { 
873      return this.method != null && !this.method.isEmpty();
874    }
875
876    /**
877     * @param value {@link #method} (The algorithm, process or mechanism used to evaluate the risk.)
878     */
879    public RiskAssessment setMethod(CodeableConcept value) { 
880      this.method = value;
881      return this;
882    }
883
884    /**
885     * @return {@link #code} (The type of the risk assessment performed.)
886     */
887    public CodeableConcept getCode() { 
888      if (this.code == null)
889        if (Configuration.errorOnAutoCreate())
890          throw new Error("Attempt to auto-create RiskAssessment.code");
891        else if (Configuration.doAutoCreate())
892          this.code = new CodeableConcept(); // cc
893      return this.code;
894    }
895
896    public boolean hasCode() { 
897      return this.code != null && !this.code.isEmpty();
898    }
899
900    /**
901     * @param value {@link #code} (The type of the risk assessment performed.)
902     */
903    public RiskAssessment setCode(CodeableConcept value) { 
904      this.code = value;
905      return this;
906    }
907
908    /**
909     * @return {@link #subject} (The patient or group the risk assessment applies to.)
910     */
911    public Reference getSubject() { 
912      if (this.subject == null)
913        if (Configuration.errorOnAutoCreate())
914          throw new Error("Attempt to auto-create RiskAssessment.subject");
915        else if (Configuration.doAutoCreate())
916          this.subject = new Reference(); // cc
917      return this.subject;
918    }
919
920    public boolean hasSubject() { 
921      return this.subject != null && !this.subject.isEmpty();
922    }
923
924    /**
925     * @param value {@link #subject} (The patient or group the risk assessment applies to.)
926     */
927    public RiskAssessment setSubject(Reference value) { 
928      this.subject = value;
929      return this;
930    }
931
932    /**
933     * @return {@link #encounter} (The encounter where the assessment was performed.)
934     */
935    public Reference getEncounter() { 
936      if (this.encounter == null)
937        if (Configuration.errorOnAutoCreate())
938          throw new Error("Attempt to auto-create RiskAssessment.encounter");
939        else if (Configuration.doAutoCreate())
940          this.encounter = new Reference(); // cc
941      return this.encounter;
942    }
943
944    public boolean hasEncounter() { 
945      return this.encounter != null && !this.encounter.isEmpty();
946    }
947
948    /**
949     * @param value {@link #encounter} (The encounter where the assessment was performed.)
950     */
951    public RiskAssessment setEncounter(Reference value) { 
952      this.encounter = value;
953      return this;
954    }
955
956    /**
957     * @return {@link #occurrence} (The date (and possibly time) the risk assessment was performed.)
958     */
959    public DataType getOccurrence() { 
960      return this.occurrence;
961    }
962
963    /**
964     * @return {@link #occurrence} (The date (and possibly time) the risk assessment was performed.)
965     */
966    public DateTimeType getOccurrenceDateTimeType() throws FHIRException { 
967      if (this.occurrence == null)
968        this.occurrence = new DateTimeType();
969      if (!(this.occurrence instanceof DateTimeType))
970        throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.occurrence.getClass().getName()+" was encountered");
971      return (DateTimeType) this.occurrence;
972    }
973
974    public boolean hasOccurrenceDateTimeType() { 
975      return this != null && this.occurrence instanceof DateTimeType;
976    }
977
978    /**
979     * @return {@link #occurrence} (The date (and possibly time) the risk assessment was performed.)
980     */
981    public Period getOccurrencePeriod() throws FHIRException { 
982      if (this.occurrence == null)
983        this.occurrence = new Period();
984      if (!(this.occurrence instanceof Period))
985        throw new FHIRException("Type mismatch: the type Period was expected, but "+this.occurrence.getClass().getName()+" was encountered");
986      return (Period) this.occurrence;
987    }
988
989    public boolean hasOccurrencePeriod() { 
990      return this != null && this.occurrence instanceof Period;
991    }
992
993    public boolean hasOccurrence() { 
994      return this.occurrence != null && !this.occurrence.isEmpty();
995    }
996
997    /**
998     * @param value {@link #occurrence} (The date (and possibly time) the risk assessment was performed.)
999     */
1000    public RiskAssessment setOccurrence(DataType value) { 
1001      if (value != null && !(value instanceof DateTimeType || value instanceof Period))
1002        throw new FHIRException("Not the right type for RiskAssessment.occurrence[x]: "+value.fhirType());
1003      this.occurrence = value;
1004      return this;
1005    }
1006
1007    /**
1008     * @return {@link #condition} (For assessments or prognosis specific to a particular condition, indicates the condition being assessed.)
1009     */
1010    public Reference getCondition() { 
1011      if (this.condition == null)
1012        if (Configuration.errorOnAutoCreate())
1013          throw new Error("Attempt to auto-create RiskAssessment.condition");
1014        else if (Configuration.doAutoCreate())
1015          this.condition = new Reference(); // cc
1016      return this.condition;
1017    }
1018
1019    public boolean hasCondition() { 
1020      return this.condition != null && !this.condition.isEmpty();
1021    }
1022
1023    /**
1024     * @param value {@link #condition} (For assessments or prognosis specific to a particular condition, indicates the condition being assessed.)
1025     */
1026    public RiskAssessment setCondition(Reference value) { 
1027      this.condition = value;
1028      return this;
1029    }
1030
1031    /**
1032     * @return {@link #performer} (The provider, patient, related person, or software application that performed the assessment.)
1033     */
1034    public Reference getPerformer() { 
1035      if (this.performer == null)
1036        if (Configuration.errorOnAutoCreate())
1037          throw new Error("Attempt to auto-create RiskAssessment.performer");
1038        else if (Configuration.doAutoCreate())
1039          this.performer = new Reference(); // cc
1040      return this.performer;
1041    }
1042
1043    public boolean hasPerformer() { 
1044      return this.performer != null && !this.performer.isEmpty();
1045    }
1046
1047    /**
1048     * @param value {@link #performer} (The provider, patient, related person, or software application that performed the assessment.)
1049     */
1050    public RiskAssessment setPerformer(Reference value) { 
1051      this.performer = value;
1052      return this;
1053    }
1054
1055    /**
1056     * @return {@link #reason} (The reason the risk assessment was performed.)
1057     */
1058    public List<CodeableReference> getReason() { 
1059      if (this.reason == null)
1060        this.reason = new ArrayList<CodeableReference>();
1061      return this.reason;
1062    }
1063
1064    /**
1065     * @return Returns a reference to <code>this</code> for easy method chaining
1066     */
1067    public RiskAssessment setReason(List<CodeableReference> theReason) { 
1068      this.reason = theReason;
1069      return this;
1070    }
1071
1072    public boolean hasReason() { 
1073      if (this.reason == null)
1074        return false;
1075      for (CodeableReference item : this.reason)
1076        if (!item.isEmpty())
1077          return true;
1078      return false;
1079    }
1080
1081    public CodeableReference addReason() { //3
1082      CodeableReference t = new CodeableReference();
1083      if (this.reason == null)
1084        this.reason = new ArrayList<CodeableReference>();
1085      this.reason.add(t);
1086      return t;
1087    }
1088
1089    public RiskAssessment addReason(CodeableReference t) { //3
1090      if (t == null)
1091        return this;
1092      if (this.reason == null)
1093        this.reason = new ArrayList<CodeableReference>();
1094      this.reason.add(t);
1095      return this;
1096    }
1097
1098    /**
1099     * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3}
1100     */
1101    public CodeableReference getReasonFirstRep() { 
1102      if (getReason().isEmpty()) {
1103        addReason();
1104      }
1105      return getReason().get(0);
1106    }
1107
1108    /**
1109     * @return {@link #basis} (Indicates the source data considered as part of the assessment (for example, FamilyHistory, Observations, Procedures, Conditions, etc.).)
1110     */
1111    public List<Reference> getBasis() { 
1112      if (this.basis == null)
1113        this.basis = new ArrayList<Reference>();
1114      return this.basis;
1115    }
1116
1117    /**
1118     * @return Returns a reference to <code>this</code> for easy method chaining
1119     */
1120    public RiskAssessment setBasis(List<Reference> theBasis) { 
1121      this.basis = theBasis;
1122      return this;
1123    }
1124
1125    public boolean hasBasis() { 
1126      if (this.basis == null)
1127        return false;
1128      for (Reference item : this.basis)
1129        if (!item.isEmpty())
1130          return true;
1131      return false;
1132    }
1133
1134    public Reference addBasis() { //3
1135      Reference t = new Reference();
1136      if (this.basis == null)
1137        this.basis = new ArrayList<Reference>();
1138      this.basis.add(t);
1139      return t;
1140    }
1141
1142    public RiskAssessment addBasis(Reference t) { //3
1143      if (t == null)
1144        return this;
1145      if (this.basis == null)
1146        this.basis = new ArrayList<Reference>();
1147      this.basis.add(t);
1148      return this;
1149    }
1150
1151    /**
1152     * @return The first repetition of repeating field {@link #basis}, creating it if it does not already exist {3}
1153     */
1154    public Reference getBasisFirstRep() { 
1155      if (getBasis().isEmpty()) {
1156        addBasis();
1157      }
1158      return getBasis().get(0);
1159    }
1160
1161    /**
1162     * @return {@link #prediction} (Describes the expected outcome for the subject.)
1163     */
1164    public List<RiskAssessmentPredictionComponent> getPrediction() { 
1165      if (this.prediction == null)
1166        this.prediction = new ArrayList<RiskAssessmentPredictionComponent>();
1167      return this.prediction;
1168    }
1169
1170    /**
1171     * @return Returns a reference to <code>this</code> for easy method chaining
1172     */
1173    public RiskAssessment setPrediction(List<RiskAssessmentPredictionComponent> thePrediction) { 
1174      this.prediction = thePrediction;
1175      return this;
1176    }
1177
1178    public boolean hasPrediction() { 
1179      if (this.prediction == null)
1180        return false;
1181      for (RiskAssessmentPredictionComponent item : this.prediction)
1182        if (!item.isEmpty())
1183          return true;
1184      return false;
1185    }
1186
1187    public RiskAssessmentPredictionComponent addPrediction() { //3
1188      RiskAssessmentPredictionComponent t = new RiskAssessmentPredictionComponent();
1189      if (this.prediction == null)
1190        this.prediction = new ArrayList<RiskAssessmentPredictionComponent>();
1191      this.prediction.add(t);
1192      return t;
1193    }
1194
1195    public RiskAssessment addPrediction(RiskAssessmentPredictionComponent t) { //3
1196      if (t == null)
1197        return this;
1198      if (this.prediction == null)
1199        this.prediction = new ArrayList<RiskAssessmentPredictionComponent>();
1200      this.prediction.add(t);
1201      return this;
1202    }
1203
1204    /**
1205     * @return The first repetition of repeating field {@link #prediction}, creating it if it does not already exist {3}
1206     */
1207    public RiskAssessmentPredictionComponent getPredictionFirstRep() { 
1208      if (getPrediction().isEmpty()) {
1209        addPrediction();
1210      }
1211      return getPrediction().get(0);
1212    }
1213
1214    /**
1215     * @return {@link #mitigation} (A description of the steps that might be taken to reduce the identified risk(s).). This is the underlying object with id, value and extensions. The accessor "getMitigation" gives direct access to the value
1216     */
1217    public StringType getMitigationElement() { 
1218      if (this.mitigation == null)
1219        if (Configuration.errorOnAutoCreate())
1220          throw new Error("Attempt to auto-create RiskAssessment.mitigation");
1221        else if (Configuration.doAutoCreate())
1222          this.mitigation = new StringType(); // bb
1223      return this.mitigation;
1224    }
1225
1226    public boolean hasMitigationElement() { 
1227      return this.mitigation != null && !this.mitigation.isEmpty();
1228    }
1229
1230    public boolean hasMitigation() { 
1231      return this.mitigation != null && !this.mitigation.isEmpty();
1232    }
1233
1234    /**
1235     * @param value {@link #mitigation} (A description of the steps that might be taken to reduce the identified risk(s).). This is the underlying object with id, value and extensions. The accessor "getMitigation" gives direct access to the value
1236     */
1237    public RiskAssessment setMitigationElement(StringType value) { 
1238      this.mitigation = value;
1239      return this;
1240    }
1241
1242    /**
1243     * @return A description of the steps that might be taken to reduce the identified risk(s).
1244     */
1245    public String getMitigation() { 
1246      return this.mitigation == null ? null : this.mitigation.getValue();
1247    }
1248
1249    /**
1250     * @param value A description of the steps that might be taken to reduce the identified risk(s).
1251     */
1252    public RiskAssessment setMitigation(String value) { 
1253      if (Utilities.noString(value))
1254        this.mitigation = null;
1255      else {
1256        if (this.mitigation == null)
1257          this.mitigation = new StringType();
1258        this.mitigation.setValue(value);
1259      }
1260      return this;
1261    }
1262
1263    /**
1264     * @return {@link #note} (Additional comments about the risk assessment.)
1265     */
1266    public List<Annotation> getNote() { 
1267      if (this.note == null)
1268        this.note = new ArrayList<Annotation>();
1269      return this.note;
1270    }
1271
1272    /**
1273     * @return Returns a reference to <code>this</code> for easy method chaining
1274     */
1275    public RiskAssessment setNote(List<Annotation> theNote) { 
1276      this.note = theNote;
1277      return this;
1278    }
1279
1280    public boolean hasNote() { 
1281      if (this.note == null)
1282        return false;
1283      for (Annotation item : this.note)
1284        if (!item.isEmpty())
1285          return true;
1286      return false;
1287    }
1288
1289    public Annotation addNote() { //3
1290      Annotation t = new Annotation();
1291      if (this.note == null)
1292        this.note = new ArrayList<Annotation>();
1293      this.note.add(t);
1294      return t;
1295    }
1296
1297    public RiskAssessment addNote(Annotation t) { //3
1298      if (t == null)
1299        return this;
1300      if (this.note == null)
1301        this.note = new ArrayList<Annotation>();
1302      this.note.add(t);
1303      return this;
1304    }
1305
1306    /**
1307     * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3}
1308     */
1309    public Annotation getNoteFirstRep() { 
1310      if (getNote().isEmpty()) {
1311        addNote();
1312      }
1313      return getNote().get(0);
1314    }
1315
1316      protected void listChildren(List<Property> children) {
1317        super.listChildren(children);
1318        children.add(new Property("identifier", "Identifier", "Business identifier assigned to the risk assessment.", 0, java.lang.Integer.MAX_VALUE, identifier));
1319        children.add(new Property("basedOn", "Reference(Any)", "A reference to the request that is fulfilled by this risk assessment.", 0, 1, basedOn));
1320        children.add(new Property("parent", "Reference(Any)", "A reference to a resource that this risk assessment is part of, such as a Procedure.", 0, 1, parent));
1321        children.add(new Property("status", "code", "The status of the RiskAssessment, using the same statuses as an Observation.", 0, 1, status));
1322        children.add(new Property("method", "CodeableConcept", "The algorithm, process or mechanism used to evaluate the risk.", 0, 1, method));
1323        children.add(new Property("code", "CodeableConcept", "The type of the risk assessment performed.", 0, 1, code));
1324        children.add(new Property("subject", "Reference(Patient|Group)", "The patient or group the risk assessment applies to.", 0, 1, subject));
1325        children.add(new Property("encounter", "Reference(Encounter)", "The encounter where the assessment was performed.", 0, 1, encounter));
1326        children.add(new Property("occurrence[x]", "dateTime|Period", "The date (and possibly time) the risk assessment was performed.", 0, 1, occurrence));
1327        children.add(new Property("condition", "Reference(Condition)", "For assessments or prognosis specific to a particular condition, indicates the condition being assessed.", 0, 1, condition));
1328        children.add(new Property("performer", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Device)", "The provider, patient, related person, or software application that performed the assessment.", 0, 1, performer));
1329        children.add(new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference)", "The reason the risk assessment was performed.", 0, java.lang.Integer.MAX_VALUE, reason));
1330        children.add(new Property("basis", "Reference(Any)", "Indicates the source data considered as part of the assessment (for example, FamilyHistory, Observations, Procedures, Conditions, etc.).", 0, java.lang.Integer.MAX_VALUE, basis));
1331        children.add(new Property("prediction", "", "Describes the expected outcome for the subject.", 0, java.lang.Integer.MAX_VALUE, prediction));
1332        children.add(new Property("mitigation", "string", "A description of the steps that might be taken to reduce the identified risk(s).", 0, 1, mitigation));
1333        children.add(new Property("note", "Annotation", "Additional comments about the risk assessment.", 0, java.lang.Integer.MAX_VALUE, note));
1334      }
1335
1336      @Override
1337      public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException {
1338        switch (_hash) {
1339        case -1618432855: /*identifier*/  return new Property("identifier", "Identifier", "Business identifier assigned to the risk assessment.", 0, java.lang.Integer.MAX_VALUE, identifier);
1340        case -332612366: /*basedOn*/  return new Property("basedOn", "Reference(Any)", "A reference to the request that is fulfilled by this risk assessment.", 0, 1, basedOn);
1341        case -995424086: /*parent*/  return new Property("parent", "Reference(Any)", "A reference to a resource that this risk assessment is part of, such as a Procedure.", 0, 1, parent);
1342        case -892481550: /*status*/  return new Property("status", "code", "The status of the RiskAssessment, using the same statuses as an Observation.", 0, 1, status);
1343        case -1077554975: /*method*/  return new Property("method", "CodeableConcept", "The algorithm, process or mechanism used to evaluate the risk.", 0, 1, method);
1344        case 3059181: /*code*/  return new Property("code", "CodeableConcept", "The type of the risk assessment performed.", 0, 1, code);
1345        case -1867885268: /*subject*/  return new Property("subject", "Reference(Patient|Group)", "The patient or group the risk assessment applies to.", 0, 1, subject);
1346        case 1524132147: /*encounter*/  return new Property("encounter", "Reference(Encounter)", "The encounter where the assessment was performed.", 0, 1, encounter);
1347        case -2022646513: /*occurrence[x]*/  return new Property("occurrence[x]", "dateTime|Period", "The date (and possibly time) the risk assessment was performed.", 0, 1, occurrence);
1348        case 1687874001: /*occurrence*/  return new Property("occurrence[x]", "dateTime|Period", "The date (and possibly time) the risk assessment was performed.", 0, 1, occurrence);
1349        case -298443636: /*occurrenceDateTime*/  return new Property("occurrence[x]", "dateTime", "The date (and possibly time) the risk assessment was performed.", 0, 1, occurrence);
1350        case 1397156594: /*occurrencePeriod*/  return new Property("occurrence[x]", "Period", "The date (and possibly time) the risk assessment was performed.", 0, 1, occurrence);
1351        case -861311717: /*condition*/  return new Property("condition", "Reference(Condition)", "For assessments or prognosis specific to a particular condition, indicates the condition being assessed.", 0, 1, condition);
1352        case 481140686: /*performer*/  return new Property("performer", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Device)", "The provider, patient, related person, or software application that performed the assessment.", 0, 1, performer);
1353        case -934964668: /*reason*/  return new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference)", "The reason the risk assessment was performed.", 0, java.lang.Integer.MAX_VALUE, reason);
1354        case 93508670: /*basis*/  return new Property("basis", "Reference(Any)", "Indicates the source data considered as part of the assessment (for example, FamilyHistory, Observations, Procedures, Conditions, etc.).", 0, java.lang.Integer.MAX_VALUE, basis);
1355        case 1161234575: /*prediction*/  return new Property("prediction", "", "Describes the expected outcome for the subject.", 0, java.lang.Integer.MAX_VALUE, prediction);
1356        case 1293793087: /*mitigation*/  return new Property("mitigation", "string", "A description of the steps that might be taken to reduce the identified risk(s).", 0, 1, mitigation);
1357        case 3387378: /*note*/  return new Property("note", "Annotation", "Additional comments about the risk assessment.", 0, java.lang.Integer.MAX_VALUE, note);
1358        default: return super.getNamedProperty(_hash, _name, _checkValid);
1359        }
1360
1361      }
1362
1363      @Override
1364      public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException {
1365        switch (hash) {
1366        case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier
1367        case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : new Base[] {this.basedOn}; // Reference
1368        case -995424086: /*parent*/ return this.parent == null ? new Base[0] : new Base[] {this.parent}; // Reference
1369        case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration<ObservationStatus>
1370        case -1077554975: /*method*/ return this.method == null ? new Base[0] : new Base[] {this.method}; // CodeableConcept
1371        case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept
1372        case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference
1373        case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference
1374        case 1687874001: /*occurrence*/ return this.occurrence == null ? new Base[0] : new Base[] {this.occurrence}; // DataType
1375        case -861311717: /*condition*/ return this.condition == null ? new Base[0] : new Base[] {this.condition}; // Reference
1376        case 481140686: /*performer*/ return this.performer == null ? new Base[0] : new Base[] {this.performer}; // Reference
1377        case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableReference
1378        case 93508670: /*basis*/ return this.basis == null ? new Base[0] : this.basis.toArray(new Base[this.basis.size()]); // Reference
1379        case 1161234575: /*prediction*/ return this.prediction == null ? new Base[0] : this.prediction.toArray(new Base[this.prediction.size()]); // RiskAssessmentPredictionComponent
1380        case 1293793087: /*mitigation*/ return this.mitigation == null ? new Base[0] : new Base[] {this.mitigation}; // StringType
1381        case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation
1382        default: return super.getProperty(hash, name, checkValid);
1383        }
1384
1385      }
1386
1387      @Override
1388      public Base setProperty(int hash, String name, Base value) throws FHIRException {
1389        switch (hash) {
1390        case -1618432855: // identifier
1391          this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier
1392          return value;
1393        case -332612366: // basedOn
1394          this.basedOn = TypeConvertor.castToReference(value); // Reference
1395          return value;
1396        case -995424086: // parent
1397          this.parent = TypeConvertor.castToReference(value); // Reference
1398          return value;
1399        case -892481550: // status
1400          value = new ObservationStatusEnumFactory().fromType(TypeConvertor.castToCode(value));
1401          this.status = (Enumeration) value; // Enumeration<ObservationStatus>
1402          return value;
1403        case -1077554975: // method
1404          this.method = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
1405          return value;
1406        case 3059181: // code
1407          this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
1408          return value;
1409        case -1867885268: // subject
1410          this.subject = TypeConvertor.castToReference(value); // Reference
1411          return value;
1412        case 1524132147: // encounter
1413          this.encounter = TypeConvertor.castToReference(value); // Reference
1414          return value;
1415        case 1687874001: // occurrence
1416          this.occurrence = TypeConvertor.castToType(value); // DataType
1417          return value;
1418        case -861311717: // condition
1419          this.condition = TypeConvertor.castToReference(value); // Reference
1420          return value;
1421        case 481140686: // performer
1422          this.performer = TypeConvertor.castToReference(value); // Reference
1423          return value;
1424        case -934964668: // reason
1425          this.getReason().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference
1426          return value;
1427        case 93508670: // basis
1428          this.getBasis().add(TypeConvertor.castToReference(value)); // Reference
1429          return value;
1430        case 1161234575: // prediction
1431          this.getPrediction().add((RiskAssessmentPredictionComponent) value); // RiskAssessmentPredictionComponent
1432          return value;
1433        case 1293793087: // mitigation
1434          this.mitigation = TypeConvertor.castToString(value); // StringType
1435          return value;
1436        case 3387378: // note
1437          this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation
1438          return value;
1439        default: return super.setProperty(hash, name, value);
1440        }
1441
1442      }
1443
1444      @Override
1445      public Base setProperty(String name, Base value) throws FHIRException {
1446        if (name.equals("identifier")) {
1447          this.getIdentifier().add(TypeConvertor.castToIdentifier(value));
1448        } else if (name.equals("basedOn")) {
1449          this.basedOn = TypeConvertor.castToReference(value); // Reference
1450        } else if (name.equals("parent")) {
1451          this.parent = TypeConvertor.castToReference(value); // Reference
1452        } else if (name.equals("status")) {
1453          value = new ObservationStatusEnumFactory().fromType(TypeConvertor.castToCode(value));
1454          this.status = (Enumeration) value; // Enumeration<ObservationStatus>
1455        } else if (name.equals("method")) {
1456          this.method = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
1457        } else if (name.equals("code")) {
1458          this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept
1459        } else if (name.equals("subject")) {
1460          this.subject = TypeConvertor.castToReference(value); // Reference
1461        } else if (name.equals("encounter")) {
1462          this.encounter = TypeConvertor.castToReference(value); // Reference
1463        } else if (name.equals("occurrence[x]")) {
1464          this.occurrence = TypeConvertor.castToType(value); // DataType
1465        } else if (name.equals("condition")) {
1466          this.condition = TypeConvertor.castToReference(value); // Reference
1467        } else if (name.equals("performer")) {
1468          this.performer = TypeConvertor.castToReference(value); // Reference
1469        } else if (name.equals("reason")) {
1470          this.getReason().add(TypeConvertor.castToCodeableReference(value));
1471        } else if (name.equals("basis")) {
1472          this.getBasis().add(TypeConvertor.castToReference(value));
1473        } else if (name.equals("prediction")) {
1474          this.getPrediction().add((RiskAssessmentPredictionComponent) value);
1475        } else if (name.equals("mitigation")) {
1476          this.mitigation = TypeConvertor.castToString(value); // StringType
1477        } else if (name.equals("note")) {
1478          this.getNote().add(TypeConvertor.castToAnnotation(value));
1479        } else
1480          return super.setProperty(name, value);
1481        return value;
1482      }
1483
1484      @Override
1485      public Base makeProperty(int hash, String name) throws FHIRException {
1486        switch (hash) {
1487        case -1618432855:  return addIdentifier(); 
1488        case -332612366:  return getBasedOn();
1489        case -995424086:  return getParent();
1490        case -892481550:  return getStatusElement();
1491        case -1077554975:  return getMethod();
1492        case 3059181:  return getCode();
1493        case -1867885268:  return getSubject();
1494        case 1524132147:  return getEncounter();
1495        case -2022646513:  return getOccurrence();
1496        case 1687874001:  return getOccurrence();
1497        case -861311717:  return getCondition();
1498        case 481140686:  return getPerformer();
1499        case -934964668:  return addReason(); 
1500        case 93508670:  return addBasis(); 
1501        case 1161234575:  return addPrediction(); 
1502        case 1293793087:  return getMitigationElement();
1503        case 3387378:  return addNote(); 
1504        default: return super.makeProperty(hash, name);
1505        }
1506
1507      }
1508
1509      @Override
1510      public String[] getTypesForProperty(int hash, String name) throws FHIRException {
1511        switch (hash) {
1512        case -1618432855: /*identifier*/ return new String[] {"Identifier"};
1513        case -332612366: /*basedOn*/ return new String[] {"Reference"};
1514        case -995424086: /*parent*/ return new String[] {"Reference"};
1515        case -892481550: /*status*/ return new String[] {"code"};
1516        case -1077554975: /*method*/ return new String[] {"CodeableConcept"};
1517        case 3059181: /*code*/ return new String[] {"CodeableConcept"};
1518        case -1867885268: /*subject*/ return new String[] {"Reference"};
1519        case 1524132147: /*encounter*/ return new String[] {"Reference"};
1520        case 1687874001: /*occurrence*/ return new String[] {"dateTime", "Period"};
1521        case -861311717: /*condition*/ return new String[] {"Reference"};
1522        case 481140686: /*performer*/ return new String[] {"Reference"};
1523        case -934964668: /*reason*/ return new String[] {"CodeableReference"};
1524        case 93508670: /*basis*/ return new String[] {"Reference"};
1525        case 1161234575: /*prediction*/ return new String[] {};
1526        case 1293793087: /*mitigation*/ return new String[] {"string"};
1527        case 3387378: /*note*/ return new String[] {"Annotation"};
1528        default: return super.getTypesForProperty(hash, name);
1529        }
1530
1531      }
1532
1533      @Override
1534      public Base addChild(String name) throws FHIRException {
1535        if (name.equals("identifier")) {
1536          return addIdentifier();
1537        }
1538        else if (name.equals("basedOn")) {
1539          this.basedOn = new Reference();
1540          return this.basedOn;
1541        }
1542        else if (name.equals("parent")) {
1543          this.parent = new Reference();
1544          return this.parent;
1545        }
1546        else if (name.equals("status")) {
1547          throw new FHIRException("Cannot call addChild on a singleton property RiskAssessment.status");
1548        }
1549        else if (name.equals("method")) {
1550          this.method = new CodeableConcept();
1551          return this.method;
1552        }
1553        else if (name.equals("code")) {
1554          this.code = new CodeableConcept();
1555          return this.code;
1556        }
1557        else if (name.equals("subject")) {
1558          this.subject = new Reference();
1559          return this.subject;
1560        }
1561        else if (name.equals("encounter")) {
1562          this.encounter = new Reference();
1563          return this.encounter;
1564        }
1565        else if (name.equals("occurrenceDateTime")) {
1566          this.occurrence = new DateTimeType();
1567          return this.occurrence;
1568        }
1569        else if (name.equals("occurrencePeriod")) {
1570          this.occurrence = new Period();
1571          return this.occurrence;
1572        }
1573        else if (name.equals("condition")) {
1574          this.condition = new Reference();
1575          return this.condition;
1576        }
1577        else if (name.equals("performer")) {
1578          this.performer = new Reference();
1579          return this.performer;
1580        }
1581        else if (name.equals("reason")) {
1582          return addReason();
1583        }
1584        else if (name.equals("basis")) {
1585          return addBasis();
1586        }
1587        else if (name.equals("prediction")) {
1588          return addPrediction();
1589        }
1590        else if (name.equals("mitigation")) {
1591          throw new FHIRException("Cannot call addChild on a singleton property RiskAssessment.mitigation");
1592        }
1593        else if (name.equals("note")) {
1594          return addNote();
1595        }
1596        else
1597          return super.addChild(name);
1598      }
1599
1600  public String fhirType() {
1601    return "RiskAssessment";
1602
1603  }
1604
1605      public RiskAssessment copy() {
1606        RiskAssessment dst = new RiskAssessment();
1607        copyValues(dst);
1608        return dst;
1609      }
1610
1611      public void copyValues(RiskAssessment dst) {
1612        super.copyValues(dst);
1613        if (identifier != null) {
1614          dst.identifier = new ArrayList<Identifier>();
1615          for (Identifier i : identifier)
1616            dst.identifier.add(i.copy());
1617        };
1618        dst.basedOn = basedOn == null ? null : basedOn.copy();
1619        dst.parent = parent == null ? null : parent.copy();
1620        dst.status = status == null ? null : status.copy();
1621        dst.method = method == null ? null : method.copy();
1622        dst.code = code == null ? null : code.copy();
1623        dst.subject = subject == null ? null : subject.copy();
1624        dst.encounter = encounter == null ? null : encounter.copy();
1625        dst.occurrence = occurrence == null ? null : occurrence.copy();
1626        dst.condition = condition == null ? null : condition.copy();
1627        dst.performer = performer == null ? null : performer.copy();
1628        if (reason != null) {
1629          dst.reason = new ArrayList<CodeableReference>();
1630          for (CodeableReference i : reason)
1631            dst.reason.add(i.copy());
1632        };
1633        if (basis != null) {
1634          dst.basis = new ArrayList<Reference>();
1635          for (Reference i : basis)
1636            dst.basis.add(i.copy());
1637        };
1638        if (prediction != null) {
1639          dst.prediction = new ArrayList<RiskAssessmentPredictionComponent>();
1640          for (RiskAssessmentPredictionComponent i : prediction)
1641            dst.prediction.add(i.copy());
1642        };
1643        dst.mitigation = mitigation == null ? null : mitigation.copy();
1644        if (note != null) {
1645          dst.note = new ArrayList<Annotation>();
1646          for (Annotation i : note)
1647            dst.note.add(i.copy());
1648        };
1649      }
1650
1651      protected RiskAssessment typedCopy() {
1652        return copy();
1653      }
1654
1655      @Override
1656      public boolean equalsDeep(Base other_) {
1657        if (!super.equalsDeep(other_))
1658          return false;
1659        if (!(other_ instanceof RiskAssessment))
1660          return false;
1661        RiskAssessment o = (RiskAssessment) other_;
1662        return compareDeep(identifier, o.identifier, true) && compareDeep(basedOn, o.basedOn, true) && compareDeep(parent, o.parent, true)
1663           && compareDeep(status, o.status, true) && compareDeep(method, o.method, true) && compareDeep(code, o.code, true)
1664           && compareDeep(subject, o.subject, true) && compareDeep(encounter, o.encounter, true) && compareDeep(occurrence, o.occurrence, true)
1665           && compareDeep(condition, o.condition, true) && compareDeep(performer, o.performer, true) && compareDeep(reason, o.reason, true)
1666           && compareDeep(basis, o.basis, true) && compareDeep(prediction, o.prediction, true) && compareDeep(mitigation, o.mitigation, true)
1667           && compareDeep(note, o.note, true);
1668      }
1669
1670      @Override
1671      public boolean equalsShallow(Base other_) {
1672        if (!super.equalsShallow(other_))
1673          return false;
1674        if (!(other_ instanceof RiskAssessment))
1675          return false;
1676        RiskAssessment o = (RiskAssessment) other_;
1677        return compareValues(status, o.status, true) && compareValues(mitigation, o.mitigation, true);
1678      }
1679
1680      public boolean isEmpty() {
1681        return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, basedOn, parent
1682          , status, method, code, subject, encounter, occurrence, condition, performer
1683          , reason, basis, prediction, mitigation, note);
1684      }
1685
1686  @Override
1687  public ResourceType getResourceType() {
1688    return ResourceType.RiskAssessment;
1689   }
1690
1691 /**
1692   * Search parameter: <b>condition</b>
1693   * <p>
1694   * Description: <b>Condition assessed</b><br>
1695   * Type: <b>reference</b><br>
1696   * Path: <b>RiskAssessment.condition</b><br>
1697   * </p>
1698   */
1699  @SearchParamDefinition(name="condition", path="RiskAssessment.condition", description="Condition assessed", type="reference", target={Condition.class } )
1700  public static final String SP_CONDITION = "condition";
1701 /**
1702   * <b>Fluent Client</b> search parameter constant for <b>condition</b>
1703   * <p>
1704   * Description: <b>Condition assessed</b><br>
1705   * Type: <b>reference</b><br>
1706   * Path: <b>RiskAssessment.condition</b><br>
1707   * </p>
1708   */
1709  public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam CONDITION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_CONDITION);
1710
1711/**
1712   * Constant for fluent queries to be used to add include statements. Specifies
1713   * the path value of "<b>RiskAssessment:condition</b>".
1714   */
1715  public static final ca.uhn.fhir.model.api.Include INCLUDE_CONDITION = new ca.uhn.fhir.model.api.Include("RiskAssessment:condition").toLocked();
1716
1717 /**
1718   * Search parameter: <b>method</b>
1719   * <p>
1720   * Description: <b>Evaluation mechanism</b><br>
1721   * Type: <b>token</b><br>
1722   * Path: <b>RiskAssessment.method</b><br>
1723   * </p>
1724   */
1725  @SearchParamDefinition(name="method", path="RiskAssessment.method", description="Evaluation mechanism", type="token" )
1726  public static final String SP_METHOD = "method";
1727 /**
1728   * <b>Fluent Client</b> search parameter constant for <b>method</b>
1729   * <p>
1730   * Description: <b>Evaluation mechanism</b><br>
1731   * Type: <b>token</b><br>
1732   * Path: <b>RiskAssessment.method</b><br>
1733   * </p>
1734   */
1735  public static final ca.uhn.fhir.rest.gclient.TokenClientParam METHOD = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_METHOD);
1736
1737 /**
1738   * Search parameter: <b>performer</b>
1739   * <p>
1740   * Description: <b>Who did assessment?</b><br>
1741   * Type: <b>reference</b><br>
1742   * Path: <b>RiskAssessment.performer</b><br>
1743   * </p>
1744   */
1745  @SearchParamDefinition(name="performer", path="RiskAssessment.performer", description="Who did assessment?", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Device.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } )
1746  public static final String SP_PERFORMER = "performer";
1747 /**
1748   * <b>Fluent Client</b> search parameter constant for <b>performer</b>
1749   * <p>
1750   * Description: <b>Who did assessment?</b><br>
1751   * Type: <b>reference</b><br>
1752   * Path: <b>RiskAssessment.performer</b><br>
1753   * </p>
1754   */
1755  public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PERFORMER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PERFORMER);
1756
1757/**
1758   * Constant for fluent queries to be used to add include statements. Specifies
1759   * the path value of "<b>RiskAssessment:performer</b>".
1760   */
1761  public static final ca.uhn.fhir.model.api.Include INCLUDE_PERFORMER = new ca.uhn.fhir.model.api.Include("RiskAssessment:performer").toLocked();
1762
1763 /**
1764   * Search parameter: <b>probability</b>
1765   * <p>
1766   * Description: <b>Likelihood of specified outcome</b><br>
1767   * Type: <b>number</b><br>
1768   * Path: <b>RiskAssessment.prediction.probability.ofType(decimal)</b><br>
1769   * </p>
1770   */
1771  @SearchParamDefinition(name="probability", path="RiskAssessment.prediction.probability.ofType(decimal)", description="Likelihood of specified outcome", type="number" )
1772  public static final String SP_PROBABILITY = "probability";
1773 /**
1774   * <b>Fluent Client</b> search parameter constant for <b>probability</b>
1775   * <p>
1776   * Description: <b>Likelihood of specified outcome</b><br>
1777   * Type: <b>number</b><br>
1778   * Path: <b>RiskAssessment.prediction.probability.ofType(decimal)</b><br>
1779   * </p>
1780   */
1781  public static final ca.uhn.fhir.rest.gclient.NumberClientParam PROBABILITY = new ca.uhn.fhir.rest.gclient.NumberClientParam(SP_PROBABILITY);
1782
1783 /**
1784   * Search parameter: <b>risk</b>
1785   * <p>
1786   * Description: <b>Likelihood of specified outcome as a qualitative value</b><br>
1787   * Type: <b>token</b><br>
1788   * Path: <b>RiskAssessment.prediction.qualitativeRisk</b><br>
1789   * </p>
1790   */
1791  @SearchParamDefinition(name="risk", path="RiskAssessment.prediction.qualitativeRisk", description="Likelihood of specified outcome as a qualitative value", type="token" )
1792  public static final String SP_RISK = "risk";
1793 /**
1794   * <b>Fluent Client</b> search parameter constant for <b>risk</b>
1795   * <p>
1796   * Description: <b>Likelihood of specified outcome as a qualitative value</b><br>
1797   * Type: <b>token</b><br>
1798   * Path: <b>RiskAssessment.prediction.qualitativeRisk</b><br>
1799   * </p>
1800   */
1801  public static final ca.uhn.fhir.rest.gclient.TokenClientParam RISK = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_RISK);
1802
1803 /**
1804   * Search parameter: <b>subject</b>
1805   * <p>
1806   * Description: <b>Who/what does assessment apply to?</b><br>
1807   * Type: <b>reference</b><br>
1808   * Path: <b>RiskAssessment.subject</b><br>
1809   * </p>
1810   */
1811  @SearchParamDefinition(name="subject", path="RiskAssessment.subject", description="Who/what does assessment apply to?", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } )
1812  public static final String SP_SUBJECT = "subject";
1813 /**
1814   * <b>Fluent Client</b> search parameter constant for <b>subject</b>
1815   * <p>
1816   * Description: <b>Who/what does assessment apply to?</b><br>
1817   * Type: <b>reference</b><br>
1818   * Path: <b>RiskAssessment.subject</b><br>
1819   * </p>
1820   */
1821  public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT);
1822
1823/**
1824   * Constant for fluent queries to be used to add include statements. Specifies
1825   * the path value of "<b>RiskAssessment:subject</b>".
1826   */
1827  public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("RiskAssessment:subject").toLocked();
1828
1829 /**
1830   * Search parameter: <b>date</b>
1831   * <p>
1832   * Description: <b>Multiple Resources: 
1833
1834* [AdverseEvent](adverseevent.html): When the event occurred
1835* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded
1836* [Appointment](appointment.html): Appointment date/time.
1837* [AuditEvent](auditevent.html): Time when the event was recorded
1838* [CarePlan](careplan.html): Time period plan covers
1839* [CareTeam](careteam.html): A date within the coverage time period.
1840* [ClinicalImpression](clinicalimpression.html): When the assessment was documented
1841* [Composition](composition.html): Composition editing time
1842* [Consent](consent.html): When consent was agreed to
1843* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report
1844* [DocumentReference](documentreference.html): When this document reference was created
1845* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted
1846* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period
1847* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated
1848* [Flag](flag.html): Time period when flag is active
1849* [Immunization](immunization.html): Vaccination  (non)-Administration Date
1850* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated
1851* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created
1852* [Invoice](invoice.html): Invoice date / posting date
1853* [List](list.html): When the list was prepared
1854* [MeasureReport](measurereport.html): The date of the measure report
1855* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication
1856* [Observation](observation.html): Clinically relevant time/time-period for observation
1857* [Procedure](procedure.html): When the procedure occurred or is occurring
1858* [ResearchSubject](researchsubject.html): Start and end of participation
1859* [RiskAssessment](riskassessment.html): When was assessment made?
1860* [SupplyRequest](supplyrequest.html): When the request was made
1861</b><br>
1862   * Type: <b>date</b><br>
1863   * Path: <b>AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn</b><br>
1864   * </p>
1865   */
1866  @SearchParamDefinition(name="date", path="AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AdverseEvent](adverseevent.html): When the event occurred\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [Appointment](appointment.html): Appointment date/time.\r\n* [AuditEvent](auditevent.html): Time when the event was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [DocumentReference](documentreference.html): When this document reference was created\r\n* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination  (non)-Administration Date\r\n* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated\r\n* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created\r\n* [Invoice](invoice.html): Invoice date / posting date\r\n* [List](list.html): When the list was prepared\r\n* [MeasureReport](measurereport.html): The date of the measure report\r\n* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication\r\n* [Observation](observation.html): Clinically relevant time/time-period for observation\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [ResearchSubject](researchsubject.html): Start and end of participation\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" )
1867  public static final String SP_DATE = "date";
1868 /**
1869   * <b>Fluent Client</b> search parameter constant for <b>date</b>
1870   * <p>
1871   * Description: <b>Multiple Resources: 
1872
1873* [AdverseEvent](adverseevent.html): When the event occurred
1874* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded
1875* [Appointment](appointment.html): Appointment date/time.
1876* [AuditEvent](auditevent.html): Time when the event was recorded
1877* [CarePlan](careplan.html): Time period plan covers
1878* [CareTeam](careteam.html): A date within the coverage time period.
1879* [ClinicalImpression](clinicalimpression.html): When the assessment was documented
1880* [Composition](composition.html): Composition editing time
1881* [Consent](consent.html): When consent was agreed to
1882* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report
1883* [DocumentReference](documentreference.html): When this document reference was created
1884* [Encounter](encounter.html): A date within the actualPeriod the Encounter lasted
1885* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period
1886* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated
1887* [Flag](flag.html): Time period when flag is active
1888* [Immunization](immunization.html): Vaccination  (non)-Administration Date
1889* [ImmunizationEvaluation](immunizationevaluation.html): Date the evaluation was generated
1890* [ImmunizationRecommendation](immunizationrecommendation.html): Date recommendation(s) created
1891* [Invoice](invoice.html): Invoice date / posting date
1892* [List](list.html): When the list was prepared
1893* [MeasureReport](measurereport.html): The date of the measure report
1894* [NutritionIntake](nutritionintake.html): Date when patient was taking (or not taking) the medication
1895* [Observation](observation.html): Clinically relevant time/time-period for observation
1896* [Procedure](procedure.html): When the procedure occurred or is occurring
1897* [ResearchSubject](researchsubject.html): Start and end of participation
1898* [RiskAssessment](riskassessment.html): When was assessment made?
1899* [SupplyRequest](supplyrequest.html): When the request was made
1900</b><br>
1901   * Type: <b>date</b><br>
1902   * Path: <b>AdverseEvent.occurrence.ofType(dateTime) | AdverseEvent.occurrence.ofType(Period) | AdverseEvent.occurrence.ofType(Timing) | AllergyIntolerance.recordedDate | (start | requestedPeriod.start).first() | AuditEvent.recorded | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.date | DiagnosticReport.effective.ofType(dateTime) | DiagnosticReport.effective.ofType(Period) | DocumentReference.date | Encounter.actualPeriod | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence.ofType(dateTime)) | ImmunizationEvaluation.date | ImmunizationRecommendation.date | Invoice.date | List.date | MeasureReport.date | NutritionIntake.occurrence.ofType(dateTime) | NutritionIntake.occurrence.ofType(Period) | Observation.effective.ofType(dateTime) | Observation.effective.ofType(Period) | Observation.effective.ofType(Timing) | Observation.effective.ofType(instant) | Procedure.occurrence.ofType(dateTime) | Procedure.occurrence.ofType(Period) | Procedure.occurrence.ofType(Timing) | ResearchSubject.period | (RiskAssessment.occurrence.ofType(dateTime)) | SupplyRequest.authoredOn</b><br>
1903   * </p>
1904   */
1905  public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE);
1906
1907 /**
1908   * Search parameter: <b>encounter</b>
1909   * <p>
1910   * Description: <b>Multiple Resources: 
1911
1912* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent
1913* [CarePlan](careplan.html): The Encounter during which this CarePlan was created
1914* [ChargeItem](chargeitem.html): Encounter associated with event
1915* [Claim](claim.html): Encounters associated with a billed line item
1916* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created
1917* [Communication](communication.html): The Encounter during which this Communication was created
1918* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created
1919* [Composition](composition.html): Context of the Composition
1920* [Condition](condition.html): The Encounter during which this Condition was created
1921* [DeviceRequest](devicerequest.html): Encounter during which request was created
1922* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made
1923* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values
1924* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item
1925* [Flag](flag.html): Alert relevant during encounter
1926* [ImagingStudy](imagingstudy.html): The context of the study
1927* [List](list.html): Context in which list created
1928* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter
1929* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter
1930* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter
1931* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier
1932* [Observation](observation.html): Encounter related to the observation
1933* [Procedure](procedure.html): The Encounter during which this Procedure was created
1934* [Provenance](provenance.html): Encounter related to the Provenance
1935* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response
1936* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to
1937* [RiskAssessment](riskassessment.html): Where was assessment performed?
1938* [ServiceRequest](servicerequest.html): An encounter in which this request is made
1939* [Task](task.html): Search by encounter
1940* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier
1941</b><br>
1942   * Type: <b>reference</b><br>
1943   * Path: <b>AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter</b><br>
1944   * </p>
1945   */
1946  @SearchParamDefinition(name="encounter", path="AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter", description="Multiple Resources: \r\n\r\n* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent\r\n* [CarePlan](careplan.html): The Encounter during which this CarePlan was created\r\n* [ChargeItem](chargeitem.html): Encounter associated with event\r\n* [Claim](claim.html): Encounters associated with a billed line item\r\n* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created\r\n* [Communication](communication.html): The Encounter during which this Communication was created\r\n* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created\r\n* [Composition](composition.html): Context of the Composition\r\n* [Condition](condition.html): The Encounter during which this Condition was created\r\n* [DeviceRequest](devicerequest.html): Encounter during which request was created\r\n* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made\r\n* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values\r\n* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item\r\n* [Flag](flag.html): Alert relevant during encounter\r\n* [ImagingStudy](imagingstudy.html): The context of the study\r\n* [List](list.html): Context in which list created\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter\r\n* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter\r\n* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter\r\n* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier\r\n* [Observation](observation.html): Encounter related to the observation\r\n* [Procedure](procedure.html): The Encounter during which this Procedure was created\r\n* [Provenance](provenance.html): Encounter related to the Provenance\r\n* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response\r\n* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to\r\n* [RiskAssessment](riskassessment.html): Where was assessment performed?\r\n* [ServiceRequest](servicerequest.html): An encounter in which this request is made\r\n* [Task](task.html): Search by encounter\r\n* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier\r\n", type="reference", target={Encounter.class } )
1947  public static final String SP_ENCOUNTER = "encounter";
1948 /**
1949   * <b>Fluent Client</b> search parameter constant for <b>encounter</b>
1950   * <p>
1951   * Description: <b>Multiple Resources: 
1952
1953* [AuditEvent](auditevent.html): Encounter related to the activity recorded in the AuditEvent
1954* [CarePlan](careplan.html): The Encounter during which this CarePlan was created
1955* [ChargeItem](chargeitem.html): Encounter associated with event
1956* [Claim](claim.html): Encounters associated with a billed line item
1957* [ClinicalImpression](clinicalimpression.html): The Encounter during which this ClinicalImpression was created
1958* [Communication](communication.html): The Encounter during which this Communication was created
1959* [CommunicationRequest](communicationrequest.html): The Encounter during which this CommunicationRequest was created
1960* [Composition](composition.html): Context of the Composition
1961* [Condition](condition.html): The Encounter during which this Condition was created
1962* [DeviceRequest](devicerequest.html): Encounter during which request was created
1963* [DiagnosticReport](diagnosticreport.html): The Encounter when the order was made
1964* [EncounterHistory](encounterhistory.html): The Encounter associated with this set of history values
1965* [ExplanationOfBenefit](explanationofbenefit.html): Encounters associated with a billed line item
1966* [Flag](flag.html): Alert relevant during encounter
1967* [ImagingStudy](imagingstudy.html): The context of the study
1968* [List](list.html): Context in which list created
1969* [MedicationDispense](medicationdispense.html): Returns dispenses with a specific encounter
1970* [MedicationStatement](medicationstatement.html): Returns statements for a specific encounter
1971* [NutritionIntake](nutritionintake.html): Returns statements for a specific encounter
1972* [NutritionOrder](nutritionorder.html): Return nutrition orders with this encounter identifier
1973* [Observation](observation.html): Encounter related to the observation
1974* [Procedure](procedure.html): The Encounter during which this Procedure was created
1975* [Provenance](provenance.html): Encounter related to the Provenance
1976* [QuestionnaireResponse](questionnaireresponse.html): Encounter associated with the questionnaire response
1977* [RequestOrchestration](requestorchestration.html): The encounter the request orchestration applies to
1978* [RiskAssessment](riskassessment.html): Where was assessment performed?
1979* [ServiceRequest](servicerequest.html): An encounter in which this request is made
1980* [Task](task.html): Search by encounter
1981* [VisionPrescription](visionprescription.html): Return prescriptions with this encounter identifier
1982</b><br>
1983   * Type: <b>reference</b><br>
1984   * Path: <b>AuditEvent.encounter | CarePlan.encounter | ChargeItem.encounter | Claim.item.encounter | ClinicalImpression.encounter | Communication.encounter | CommunicationRequest.encounter | Composition.encounter | Condition.encounter | DeviceRequest.encounter | DiagnosticReport.encounter | EncounterHistory.encounter | ExplanationOfBenefit.item.encounter | Flag.encounter | ImagingStudy.encounter | List.encounter | MedicationDispense.encounter | MedicationStatement.encounter | NutritionIntake.encounter | NutritionOrder.encounter | Observation.encounter | Procedure.encounter | Provenance.encounter | QuestionnaireResponse.encounter | RequestOrchestration.encounter | RiskAssessment.encounter | ServiceRequest.encounter | Task.encounter | VisionPrescription.encounter</b><br>
1985   * </p>
1986   */
1987  public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam ENCOUNTER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_ENCOUNTER);
1988
1989/**
1990   * Constant for fluent queries to be used to add include statements. Specifies
1991   * the path value of "<b>RiskAssessment:encounter</b>".
1992   */
1993  public static final ca.uhn.fhir.model.api.Include INCLUDE_ENCOUNTER = new ca.uhn.fhir.model.api.Include("RiskAssessment:encounter").toLocked();
1994
1995 /**
1996   * Search parameter: <b>identifier</b>
1997   * <p>
1998   * Description: <b>Multiple Resources: 
1999
2000* [Account](account.html): Account number
2001* [AdverseEvent](adverseevent.html): Business identifier for the event
2002* [AllergyIntolerance](allergyintolerance.html): External ids for this item
2003* [Appointment](appointment.html): An Identifier of the Appointment
2004* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response
2005* [Basic](basic.html): Business identifier
2006* [BodyStructure](bodystructure.html): Bodystructure identifier
2007* [CarePlan](careplan.html): External Ids for this plan
2008* [CareTeam](careteam.html): External Ids for this team
2009* [ChargeItem](chargeitem.html): Business Identifier for item
2010* [Claim](claim.html): The primary identifier of the financial resource
2011* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse
2012* [ClinicalImpression](clinicalimpression.html): Business identifier
2013* [Communication](communication.html): Unique identifier
2014* [CommunicationRequest](communicationrequest.html): Unique identifier
2015* [Composition](composition.html): Version-independent identifier for the Composition
2016* [Condition](condition.html): A unique identifier of the condition record
2017* [Consent](consent.html): Identifier for this record (external references)
2018* [Contract](contract.html): The identity of the contract
2019* [Coverage](coverage.html): The primary identifier of the insured and the coverage
2020* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility
2021* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier
2022* [DetectedIssue](detectedissue.html): Unique id for the detected issue
2023* [DeviceRequest](devicerequest.html): Business identifier for request/order
2024* [DeviceUsage](deviceusage.html): Search by identifier
2025* [DiagnosticReport](diagnosticreport.html): An identifier for the report
2026* [DocumentReference](documentreference.html): Identifier of the attachment binary
2027* [Encounter](encounter.html): Identifier(s) by which this encounter is known
2028* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment
2029* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare
2030* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit
2031* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier
2032* [Flag](flag.html): Business identifier
2033* [Goal](goal.html): External Ids for this goal
2034* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response
2035* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection
2036* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID
2037* [Immunization](immunization.html): Business identifier
2038* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation
2039* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier
2040* [Invoice](invoice.html): Business Identifier for item
2041* [List](list.html): Business identifier
2042* [MeasureReport](measurereport.html): External identifier of the measure report to be returned
2043* [Medication](medication.html): Returns medications with this external identifier
2044* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier
2045* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier
2046* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier
2047* [MedicationStatement](medicationstatement.html): Return statements with this external identifier
2048* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence
2049* [NutritionIntake](nutritionintake.html): Return statements with this external identifier
2050* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier
2051* [Observation](observation.html): The unique id for a particular observation
2052* [Person](person.html): A person Identifier
2053* [Procedure](procedure.html): A unique identifier for a procedure
2054* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response
2055* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson
2056* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration
2057* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study
2058* [RiskAssessment](riskassessment.html): Unique identifier for the assessment
2059* [ServiceRequest](servicerequest.html): Identifiers assigned to this order
2060* [Specimen](specimen.html): The unique identifier associated with the specimen
2061* [SupplyDelivery](supplydelivery.html): External identifier
2062* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest
2063* [Task](task.html): Search for a task instance by its business identifier
2064* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier
2065</b><br>
2066   * Type: <b>token</b><br>
2067   * 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>
2068   * </p>
2069   */
2070  @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" )
2071  public static final String SP_IDENTIFIER = "identifier";
2072 /**
2073   * <b>Fluent Client</b> search parameter constant for <b>identifier</b>
2074   * <p>
2075   * Description: <b>Multiple Resources: 
2076
2077* [Account](account.html): Account number
2078* [AdverseEvent](adverseevent.html): Business identifier for the event
2079* [AllergyIntolerance](allergyintolerance.html): External ids for this item
2080* [Appointment](appointment.html): An Identifier of the Appointment
2081* [AppointmentResponse](appointmentresponse.html): An Identifier in this appointment response
2082* [Basic](basic.html): Business identifier
2083* [BodyStructure](bodystructure.html): Bodystructure identifier
2084* [CarePlan](careplan.html): External Ids for this plan
2085* [CareTeam](careteam.html): External Ids for this team
2086* [ChargeItem](chargeitem.html): Business Identifier for item
2087* [Claim](claim.html): The primary identifier of the financial resource
2088* [ClaimResponse](claimresponse.html): The identity of the ClaimResponse
2089* [ClinicalImpression](clinicalimpression.html): Business identifier
2090* [Communication](communication.html): Unique identifier
2091* [CommunicationRequest](communicationrequest.html): Unique identifier
2092* [Composition](composition.html): Version-independent identifier for the Composition
2093* [Condition](condition.html): A unique identifier of the condition record
2094* [Consent](consent.html): Identifier for this record (external references)
2095* [Contract](contract.html): The identity of the contract
2096* [Coverage](coverage.html): The primary identifier of the insured and the coverage
2097* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The business identifier of the Eligibility
2098* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The business identifier
2099* [DetectedIssue](detectedissue.html): Unique id for the detected issue
2100* [DeviceRequest](devicerequest.html): Business identifier for request/order
2101* [DeviceUsage](deviceusage.html): Search by identifier
2102* [DiagnosticReport](diagnosticreport.html): An identifier for the report
2103* [DocumentReference](documentreference.html): Identifier of the attachment binary
2104* [Encounter](encounter.html): Identifier(s) by which this encounter is known
2105* [EnrollmentRequest](enrollmentrequest.html): The business identifier of the Enrollment
2106* [EpisodeOfCare](episodeofcare.html): Business Identifier(s) relevant for this EpisodeOfCare
2107* [ExplanationOfBenefit](explanationofbenefit.html): The business identifier of the Explanation of Benefit
2108* [FamilyMemberHistory](familymemberhistory.html): A search by a record identifier
2109* [Flag](flag.html): Business identifier
2110* [Goal](goal.html): External Ids for this goal
2111* [GuidanceResponse](guidanceresponse.html): The identifier of the guidance response
2112* [ImagingSelection](imagingselection.html): Identifiers for the imaging selection
2113* [ImagingStudy](imagingstudy.html): Identifiers for the Study, such as DICOM Study Instance UID
2114* [Immunization](immunization.html): Business identifier
2115* [ImmunizationEvaluation](immunizationevaluation.html): ID of the evaluation
2116* [ImmunizationRecommendation](immunizationrecommendation.html): Business identifier
2117* [Invoice](invoice.html): Business Identifier for item
2118* [List](list.html): Business identifier
2119* [MeasureReport](measurereport.html): External identifier of the measure report to be returned
2120* [Medication](medication.html): Returns medications with this external identifier
2121* [MedicationAdministration](medicationadministration.html): Return administrations with this external identifier
2122* [MedicationDispense](medicationdispense.html): Returns dispenses with this external identifier
2123* [MedicationRequest](medicationrequest.html): Return prescriptions with this external identifier
2124* [MedicationStatement](medicationstatement.html): Return statements with this external identifier
2125* [MolecularSequence](molecularsequence.html): The unique identity for a particular sequence
2126* [NutritionIntake](nutritionintake.html): Return statements with this external identifier
2127* [NutritionOrder](nutritionorder.html): Return nutrition orders with this external identifier
2128* [Observation](observation.html): The unique id for a particular observation
2129* [Person](person.html): A person Identifier
2130* [Procedure](procedure.html): A unique identifier for a procedure
2131* [QuestionnaireResponse](questionnaireresponse.html): The unique identifier for the questionnaire response
2132* [RelatedPerson](relatedperson.html): An Identifier of the RelatedPerson
2133* [RequestOrchestration](requestorchestration.html): External identifiers for the request orchestration
2134* [ResearchSubject](researchsubject.html): Business Identifier for research subject in a study
2135* [RiskAssessment](riskassessment.html): Unique identifier for the assessment
2136* [ServiceRequest](servicerequest.html): Identifiers assigned to this order
2137* [Specimen](specimen.html): The unique identifier associated with the specimen
2138* [SupplyDelivery](supplydelivery.html): External identifier
2139* [SupplyRequest](supplyrequest.html): Business Identifier for SupplyRequest
2140* [Task](task.html): Search for a task instance by its business identifier
2141* [VisionPrescription](visionprescription.html): Return prescriptions with this external identifier
2142</b><br>
2143   * Type: <b>token</b><br>
2144   * 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>
2145   * </p>
2146   */
2147  public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER);
2148
2149 /**
2150   * Search parameter: <b>patient</b>
2151   * <p>
2152   * Description: <b>Multiple Resources: 
2153
2154* [Account](account.html): The entity that caused the expenses
2155* [AdverseEvent](adverseevent.html): Subject impacted by event
2156* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for
2157* [Appointment](appointment.html): One of the individuals of the appointment is this patient
2158* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient
2159* [AuditEvent](auditevent.html): Where the activity involved patient data
2160* [Basic](basic.html): Identifies the focus of this resource
2161* [BodyStructure](bodystructure.html): Who this is about
2162* [CarePlan](careplan.html): Who the care plan is for
2163* [CareTeam](careteam.html): Who care team is for
2164* [ChargeItem](chargeitem.html): Individual service was done for/to
2165* [Claim](claim.html): Patient receiving the products or services
2166* [ClaimResponse](claimresponse.html): The subject of care
2167* [ClinicalImpression](clinicalimpression.html): Patient assessed
2168* [Communication](communication.html): Focus of message
2169* [CommunicationRequest](communicationrequest.html): Focus of message
2170* [Composition](composition.html): Who and/or what the composition is about
2171* [Condition](condition.html): Who has the condition?
2172* [Consent](consent.html): Who the consent applies to
2173* [Contract](contract.html): The identity of the subject of the contract (if a patient)
2174* [Coverage](coverage.html): Retrieve coverages for a patient
2175* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient
2176* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient
2177* [DetectedIssue](detectedissue.html): Associated patient
2178* [DeviceRequest](devicerequest.html): Individual the service is ordered for
2179* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device
2180* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient
2181* [DocumentReference](documentreference.html): Who/what is the subject of the document
2182* [Encounter](encounter.html): The patient present at the encounter
2183* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled
2184* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care
2185* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient
2186* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for
2187* [Flag](flag.html): The identity of a subject to list flags for
2188* [Goal](goal.html): Who this goal is intended for
2189* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results
2190* [ImagingSelection](imagingselection.html): Who the study is about
2191* [ImagingStudy](imagingstudy.html): Who the study is about
2192* [Immunization](immunization.html): The patient for the vaccination record
2193* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated
2194* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for
2195* [Invoice](invoice.html): Recipient(s) of goods and services
2196* [List](list.html): If all resources have the same subject
2197* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for
2198* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations  for
2199* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses  for
2200* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient
2201* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient.
2202* [MolecularSequence](molecularsequence.html): The subject that the sequence is about
2203* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient.
2204* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement
2205* [Observation](observation.html): The subject that the observation is about (if patient)
2206* [Person](person.html): The Person links to this Patient
2207* [Procedure](procedure.html): Search by subject - a patient
2208* [Provenance](provenance.html): Where the activity involved patient data
2209* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response
2210* [RelatedPerson](relatedperson.html): The patient this related person is related to
2211* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations
2212* [ResearchSubject](researchsubject.html): Who or what is part of study
2213* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?
2214* [ServiceRequest](servicerequest.html): Search by subject - a patient
2215* [Specimen](specimen.html): The patient the specimen comes from
2216* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied
2217* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined
2218* [Task](task.html): Search by patient
2219* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
2220</b><br>
2221   * Type: <b>reference</b><br>
2222   * 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>
2223   * </p>
2224   */
2225  @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", target={Patient.class } )
2226  public static final String SP_PATIENT = "patient";
2227 /**
2228   * <b>Fluent Client</b> search parameter constant for <b>patient</b>
2229   * <p>
2230   * Description: <b>Multiple Resources: 
2231
2232* [Account](account.html): The entity that caused the expenses
2233* [AdverseEvent](adverseevent.html): Subject impacted by event
2234* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for
2235* [Appointment](appointment.html): One of the individuals of the appointment is this patient
2236* [AppointmentResponse](appointmentresponse.html): This Response is for this Patient
2237* [AuditEvent](auditevent.html): Where the activity involved patient data
2238* [Basic](basic.html): Identifies the focus of this resource
2239* [BodyStructure](bodystructure.html): Who this is about
2240* [CarePlan](careplan.html): Who the care plan is for
2241* [CareTeam](careteam.html): Who care team is for
2242* [ChargeItem](chargeitem.html): Individual service was done for/to
2243* [Claim](claim.html): Patient receiving the products or services
2244* [ClaimResponse](claimresponse.html): The subject of care
2245* [ClinicalImpression](clinicalimpression.html): Patient assessed
2246* [Communication](communication.html): Focus of message
2247* [CommunicationRequest](communicationrequest.html): Focus of message
2248* [Composition](composition.html): Who and/or what the composition is about
2249* [Condition](condition.html): Who has the condition?
2250* [Consent](consent.html): Who the consent applies to
2251* [Contract](contract.html): The identity of the subject of the contract (if a patient)
2252* [Coverage](coverage.html): Retrieve coverages for a patient
2253* [CoverageEligibilityRequest](coverageeligibilityrequest.html): The reference to the patient
2254* [CoverageEligibilityResponse](coverageeligibilityresponse.html): The reference to the patient
2255* [DetectedIssue](detectedissue.html): Associated patient
2256* [DeviceRequest](devicerequest.html): Individual the service is ordered for
2257* [DeviceUsage](deviceusage.html): Search by patient who used / uses the device
2258* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient
2259* [DocumentReference](documentreference.html): Who/what is the subject of the document
2260* [Encounter](encounter.html): The patient present at the encounter
2261* [EnrollmentRequest](enrollmentrequest.html): The party to be enrolled
2262* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care
2263* [ExplanationOfBenefit](explanationofbenefit.html): The reference to the patient
2264* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for
2265* [Flag](flag.html): The identity of a subject to list flags for
2266* [Goal](goal.html): Who this goal is intended for
2267* [GuidanceResponse](guidanceresponse.html): The identity of a patient to search for guidance response results
2268* [ImagingSelection](imagingselection.html): Who the study is about
2269* [ImagingStudy](imagingstudy.html): Who the study is about
2270* [Immunization](immunization.html): The patient for the vaccination record
2271* [ImmunizationEvaluation](immunizationevaluation.html): The patient being evaluated
2272* [ImmunizationRecommendation](immunizationrecommendation.html): Who this profile is for
2273* [Invoice](invoice.html): Recipient(s) of goods and services
2274* [List](list.html): If all resources have the same subject
2275* [MeasureReport](measurereport.html): The identity of a patient to search for individual measure report results for
2276* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations  for
2277* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses  for
2278* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient
2279* [MedicationStatement](medicationstatement.html): Returns statements for a specific patient.
2280* [MolecularSequence](molecularsequence.html): The subject that the sequence is about
2281* [NutritionIntake](nutritionintake.html): Returns statements for a specific patient.
2282* [NutritionOrder](nutritionorder.html): The identity of the individual or set of individuals who requires the diet, formula or nutritional supplement
2283* [Observation](observation.html): The subject that the observation is about (if patient)
2284* [Person](person.html): The Person links to this Patient
2285* [Procedure](procedure.html): Search by subject - a patient
2286* [Provenance](provenance.html): Where the activity involved patient data
2287* [QuestionnaireResponse](questionnaireresponse.html): The patient that is the subject of the questionnaire response
2288* [RelatedPerson](relatedperson.html): The patient this related person is related to
2289* [RequestOrchestration](requestorchestration.html): The identity of a patient to search for request orchestrations
2290* [ResearchSubject](researchsubject.html): Who or what is part of study
2291* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?
2292* [ServiceRequest](servicerequest.html): Search by subject - a patient
2293* [Specimen](specimen.html): The patient the specimen comes from
2294* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied
2295* [SupplyRequest](supplyrequest.html): The patient or subject for whom the supply is destined
2296* [Task](task.html): Search by patient
2297* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
2298</b><br>
2299   * Type: <b>reference</b><br>
2300   * 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>
2301   * </p>
2302   */
2303  public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT);
2304
2305/**
2306   * Constant for fluent queries to be used to add include statements. Specifies
2307   * the path value of "<b>RiskAssessment:patient</b>".
2308   */
2309  public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("RiskAssessment:patient").toLocked();
2310
2311
2312}
2313