001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017package ca.uhn.fhir.model.dstu2.resource; 018 019import java.math.BigDecimal; 020import java.net.URI; 021import java.util.*; 022import ca.uhn.fhir.model.api.*; 023import ca.uhn.fhir.model.api.annotation.*; 024import ca.uhn.fhir.rest.gclient.*; 025 026import ca.uhn.fhir.model.dstu2.valueset.AccountStatusEnum; 027import ca.uhn.fhir.model.dstu2.valueset.ActionListEnum; 028import ca.uhn.fhir.model.dstu2.composite.AddressDt; 029import ca.uhn.fhir.model.dstu2.valueset.AdjudicationCodesEnum; 030import ca.uhn.fhir.model.dstu2.valueset.AdjudicationErrorCodesEnum; 031import ca.uhn.fhir.model.dstu2.valueset.AdjustmentReasonCodesEnum; 032import ca.uhn.fhir.model.dstu2.valueset.AdministrativeGenderEnum; 033import ca.uhn.fhir.model.dstu2.valueset.AdmitSourceEnum; 034import ca.uhn.fhir.model.dstu2.resource.AllergyIntolerance; 035import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCategoryEnum; 036import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCertaintyEnum; 037import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceCriticalityEnum; 038import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceSeverityEnum; 039import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceStatusEnum; 040import ca.uhn.fhir.model.dstu2.valueset.AllergyIntoleranceTypeEnum; 041import ca.uhn.fhir.model.dstu2.composite.AnnotationDt; 042import ca.uhn.fhir.model.dstu2.valueset.AnswerFormatEnum; 043import ca.uhn.fhir.model.dstu2.resource.Appointment; 044import ca.uhn.fhir.model.dstu2.valueset.AppointmentStatusEnum; 045import ca.uhn.fhir.model.dstu2.valueset.AssertionDirectionTypeEnum; 046import ca.uhn.fhir.model.dstu2.valueset.AssertionOperatorTypeEnum; 047import ca.uhn.fhir.model.dstu2.valueset.AssertionResponseTypesEnum; 048import ca.uhn.fhir.model.dstu2.composite.AttachmentDt; 049import ca.uhn.fhir.model.dstu2.valueset.AuditEventActionEnum; 050import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectLifecycleEnum; 051import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectRoleEnum; 052import ca.uhn.fhir.model.dstu2.valueset.AuditEventObjectTypeEnum; 053import ca.uhn.fhir.model.dstu2.valueset.AuditEventOutcomeEnum; 054import ca.uhn.fhir.model.dstu2.valueset.AuditEventParticipantNetworkTypeEnum; 055import ca.uhn.fhir.model.dstu2.valueset.AuditEventSourceTypeEnum; 056import ca.uhn.fhir.model.dstu2.valueset.BindingStrengthEnum; 057import ca.uhn.fhir.model.dstu2.resource.BodySite; 058import ca.uhn.fhir.model.dstu2.valueset.BundleTypeEnum; 059import ca.uhn.fhir.model.dstu2.resource.CarePlan; 060import ca.uhn.fhir.model.dstu2.valueset.CarePlanActivityStatusEnum; 061import ca.uhn.fhir.model.dstu2.valueset.CarePlanRelationshipEnum; 062import ca.uhn.fhir.model.dstu2.valueset.CarePlanStatusEnum; 063import ca.uhn.fhir.model.dstu2.resource.Claim; 064import ca.uhn.fhir.model.dstu2.resource.ClaimResponse; 065import ca.uhn.fhir.model.dstu2.valueset.ClaimTypeEnum; 066import ca.uhn.fhir.model.dstu2.resource.ClinicalImpression; 067import ca.uhn.fhir.model.dstu2.valueset.ClinicalImpressionStatusEnum; 068import ca.uhn.fhir.model.dstu2.composite.CodeableConceptDt; 069import ca.uhn.fhir.model.dstu2.composite.CodingDt; 070import ca.uhn.fhir.model.dstu2.resource.CommunicationRequest; 071import ca.uhn.fhir.model.dstu2.valueset.CommunicationRequestStatusEnum; 072import ca.uhn.fhir.model.dstu2.valueset.CommunicationStatusEnum; 073import ca.uhn.fhir.model.dstu2.resource.Composition; 074import ca.uhn.fhir.model.dstu2.valueset.CompositionAttestationModeEnum; 075import ca.uhn.fhir.model.dstu2.valueset.CompositionStatusEnum; 076import ca.uhn.fhir.model.dstu2.valueset.ConceptMapEquivalenceEnum; 077import ca.uhn.fhir.model.dstu2.resource.Condition; 078import ca.uhn.fhir.model.dstu2.valueset.ConditionCategoryCodesEnum; 079import ca.uhn.fhir.model.dstu2.valueset.ConditionClinicalStatusCodesEnum; 080import ca.uhn.fhir.model.dstu2.valueset.ConditionVerificationStatusEnum; 081import ca.uhn.fhir.model.dstu2.valueset.ConditionalDeleteStatusEnum; 082import ca.uhn.fhir.model.dstu2.resource.Conformance; 083import ca.uhn.fhir.model.dstu2.valueset.ConformanceEventModeEnum; 084import ca.uhn.fhir.model.dstu2.valueset.ConformanceResourceStatusEnum; 085import ca.uhn.fhir.model.dstu2.valueset.ConformanceStatementKindEnum; 086import ca.uhn.fhir.model.dstu2.composite.ContactPointDt; 087import ca.uhn.fhir.model.dstu2.valueset.ContentTypeEnum; 088import ca.uhn.fhir.model.dstu2.resource.Contract; 089import ca.uhn.fhir.model.dstu2.resource.Coverage; 090import ca.uhn.fhir.model.dstu2.valueset.DataElementStringencyEnum; 091import ca.uhn.fhir.model.dstu2.valueset.DaysOfWeekEnum; 092import ca.uhn.fhir.model.dstu2.valueset.DetectedIssueSeverityEnum; 093import ca.uhn.fhir.model.dstu2.resource.Device; 094import ca.uhn.fhir.model.dstu2.resource.DeviceComponent; 095import ca.uhn.fhir.model.dstu2.resource.DeviceMetric; 096import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationStateEnum; 097import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCalibrationTypeEnum; 098import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricCategoryEnum; 099import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricColorEnum; 100import ca.uhn.fhir.model.dstu2.valueset.DeviceMetricOperationalStatusEnum; 101import ca.uhn.fhir.model.dstu2.valueset.DeviceStatusEnum; 102import ca.uhn.fhir.model.dstu2.resource.DeviceUseRequest; 103import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestPriorityEnum; 104import ca.uhn.fhir.model.dstu2.valueset.DeviceUseRequestStatusEnum; 105import ca.uhn.fhir.model.dstu2.resource.DiagnosticOrder; 106import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderPriorityEnum; 107import ca.uhn.fhir.model.dstu2.valueset.DiagnosticOrderStatusEnum; 108import ca.uhn.fhir.model.dstu2.resource.DiagnosticReport; 109import ca.uhn.fhir.model.dstu2.valueset.DiagnosticReportStatusEnum; 110import ca.uhn.fhir.model.dstu2.valueset.DigitalMediaTypeEnum; 111import ca.uhn.fhir.model.dstu2.valueset.DocumentModeEnum; 112import ca.uhn.fhir.model.dstu2.resource.DocumentReference; 113import ca.uhn.fhir.model.dstu2.valueset.DocumentReferenceStatusEnum; 114import ca.uhn.fhir.model.dstu2.valueset.DocumentRelationshipTypeEnum; 115import ca.uhn.fhir.model.dstu2.composite.ElementDefinitionDt; 116import ca.uhn.fhir.model.dstu2.resource.EligibilityRequest; 117import ca.uhn.fhir.model.dstu2.resource.Encounter; 118import ca.uhn.fhir.model.dstu2.valueset.EncounterClassEnum; 119import ca.uhn.fhir.model.dstu2.valueset.EncounterLocationStatusEnum; 120import ca.uhn.fhir.model.dstu2.valueset.EncounterStateEnum; 121import ca.uhn.fhir.model.dstu2.resource.EnrollmentRequest; 122import ca.uhn.fhir.model.dstu2.resource.EpisodeOfCare; 123import ca.uhn.fhir.model.dstu2.valueset.EpisodeOfCareStatusEnum; 124import ca.uhn.fhir.model.dstu2.valueset.ExtensionContextEnum; 125import ca.uhn.fhir.model.dstu2.valueset.FamilyHistoryStatusEnum; 126import ca.uhn.fhir.model.dstu2.resource.FamilyMemberHistory; 127import ca.uhn.fhir.model.dstu2.valueset.FilterOperatorEnum; 128import ca.uhn.fhir.model.dstu2.valueset.FlagStatusEnum; 129import ca.uhn.fhir.model.dstu2.resource.Goal; 130import ca.uhn.fhir.model.dstu2.valueset.GoalPriorityEnum; 131import ca.uhn.fhir.model.dstu2.valueset.GoalStatusEnum; 132import ca.uhn.fhir.model.dstu2.resource.Group; 133import ca.uhn.fhir.model.dstu2.valueset.GroupTypeEnum; 134import ca.uhn.fhir.model.dstu2.valueset.GuideDependencyTypeEnum; 135import ca.uhn.fhir.model.dstu2.valueset.GuidePageKindEnum; 136import ca.uhn.fhir.model.dstu2.valueset.GuideResourcePurposeEnum; 137import ca.uhn.fhir.model.dstu2.valueset.HTTPVerbEnum; 138import ca.uhn.fhir.model.dstu2.resource.HealthcareService; 139import ca.uhn.fhir.model.dstu2.composite.HumanNameDt; 140import ca.uhn.fhir.model.dstu2.composite.IdentifierDt; 141import ca.uhn.fhir.model.dstu2.valueset.IdentifierTypeCodesEnum; 142import ca.uhn.fhir.model.dstu2.valueset.IdentityAssuranceLevelEnum; 143import ca.uhn.fhir.model.dstu2.resource.ImagingObjectSelection; 144import ca.uhn.fhir.model.dstu2.resource.ImagingStudy; 145import ca.uhn.fhir.model.dstu2.resource.Immunization; 146import ca.uhn.fhir.model.dstu2.valueset.InstanceAvailabilityEnum; 147import ca.uhn.fhir.model.dstu2.valueset.IssueSeverityEnum; 148import ca.uhn.fhir.model.dstu2.valueset.IssueTypeEnum; 149import ca.uhn.fhir.model.dstu2.valueset.KOStitleEnum; 150import ca.uhn.fhir.model.dstu2.valueset.LinkTypeEnum; 151import ca.uhn.fhir.model.dstu2.valueset.ListModeEnum; 152import ca.uhn.fhir.model.dstu2.valueset.ListOrderCodesEnum; 153import ca.uhn.fhir.model.dstu2.valueset.ListStatusEnum; 154import ca.uhn.fhir.model.dstu2.resource.Location; 155import ca.uhn.fhir.model.dstu2.valueset.LocationModeEnum; 156import ca.uhn.fhir.model.dstu2.valueset.LocationStatusEnum; 157import ca.uhn.fhir.model.dstu2.valueset.LocationTypeEnum; 158import ca.uhn.fhir.model.dstu2.valueset.MaritalStatusCodesEnum; 159import ca.uhn.fhir.model.dstu2.valueset.MeasmntPrincipleEnum; 160import ca.uhn.fhir.model.dstu2.resource.Media; 161import ca.uhn.fhir.model.dstu2.resource.Medication; 162import ca.uhn.fhir.model.dstu2.valueset.MedicationAdministrationStatusEnum; 163import ca.uhn.fhir.model.dstu2.valueset.MedicationDispenseStatusEnum; 164import ca.uhn.fhir.model.dstu2.resource.MedicationOrder; 165import ca.uhn.fhir.model.dstu2.valueset.MedicationOrderStatusEnum; 166import ca.uhn.fhir.model.dstu2.resource.MedicationStatement; 167import ca.uhn.fhir.model.dstu2.valueset.MedicationStatementStatusEnum; 168import ca.uhn.fhir.model.dstu2.valueset.MessageEventEnum; 169import ca.uhn.fhir.model.dstu2.valueset.MessageSignificanceCategoryEnum; 170import ca.uhn.fhir.model.dstu2.valueset.MessageTransportEnum; 171import ca.uhn.fhir.model.dstu2.resource.NamingSystem; 172import ca.uhn.fhir.model.dstu2.valueset.NamingSystemIdentifierTypeEnum; 173import ca.uhn.fhir.model.dstu2.valueset.NamingSystemTypeEnum; 174import ca.uhn.fhir.model.dstu2.valueset.NoteTypeEnum; 175import ca.uhn.fhir.model.dstu2.resource.NutritionOrder; 176import ca.uhn.fhir.model.dstu2.valueset.NutritionOrderStatusEnum; 177import ca.uhn.fhir.model.dstu2.resource.Observation; 178import ca.uhn.fhir.model.dstu2.valueset.ObservationRelationshipTypeEnum; 179import ca.uhn.fhir.model.dstu2.valueset.ObservationStatusEnum; 180import ca.uhn.fhir.model.dstu2.resource.OperationDefinition; 181import ca.uhn.fhir.model.dstu2.valueset.OperationKindEnum; 182import ca.uhn.fhir.model.dstu2.resource.OperationOutcome; 183import ca.uhn.fhir.model.dstu2.valueset.OperationParameterUseEnum; 184import ca.uhn.fhir.model.dstu2.resource.Order; 185import ca.uhn.fhir.model.dstu2.valueset.OrderStatusEnum; 186import ca.uhn.fhir.model.dstu2.resource.Organization; 187import ca.uhn.fhir.model.dstu2.valueset.ParticipantRequiredEnum; 188import ca.uhn.fhir.model.dstu2.valueset.ParticipantStatusEnum; 189import ca.uhn.fhir.model.dstu2.valueset.ParticipantTypeEnum; 190import ca.uhn.fhir.model.dstu2.valueset.ParticipationStatusEnum; 191import ca.uhn.fhir.model.dstu2.resource.Patient; 192import ca.uhn.fhir.model.dstu2.valueset.PayeeTypeCodesEnum; 193import ca.uhn.fhir.model.dstu2.composite.PeriodDt; 194import ca.uhn.fhir.model.dstu2.resource.Person; 195import ca.uhn.fhir.model.dstu2.resource.Practitioner; 196import ca.uhn.fhir.model.dstu2.resource.Procedure; 197import ca.uhn.fhir.model.dstu2.resource.ProcedureRequest; 198import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestPriorityEnum; 199import ca.uhn.fhir.model.dstu2.valueset.ProcedureRequestStatusEnum; 200import ca.uhn.fhir.model.dstu2.valueset.ProcedureStatusEnum; 201import ca.uhn.fhir.model.dstu2.resource.ProcessRequest; 202import ca.uhn.fhir.model.dstu2.valueset.ProvenanceEntityRoleEnum; 203import ca.uhn.fhir.model.dstu2.composite.QuantityDt; 204import ca.uhn.fhir.model.dstu2.resource.Questionnaire; 205import ca.uhn.fhir.model.dstu2.resource.QuestionnaireResponse; 206import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireResponseStatusEnum; 207import ca.uhn.fhir.model.dstu2.valueset.QuestionnaireStatusEnum; 208import ca.uhn.fhir.model.dstu2.composite.RangeDt; 209import ca.uhn.fhir.model.dstu2.composite.RatioDt; 210import ca.uhn.fhir.model.dstu2.valueset.ReferralMethodEnum; 211import ca.uhn.fhir.model.dstu2.resource.ReferralRequest; 212import ca.uhn.fhir.model.dstu2.valueset.ReferralStatusEnum; 213import ca.uhn.fhir.model.dstu2.resource.RelatedPerson; 214import ca.uhn.fhir.model.dstu2.valueset.RemittanceOutcomeEnum; 215import ca.uhn.fhir.model.dstu2.valueset.ResourceTypeEnum; 216import ca.uhn.fhir.model.dstu2.valueset.ResourceVersionPolicyEnum; 217import ca.uhn.fhir.model.dstu2.valueset.ResponseTypeEnum; 218import ca.uhn.fhir.model.dstu2.valueset.RestfulConformanceModeEnum; 219import ca.uhn.fhir.model.dstu2.valueset.RestfulSecurityServiceEnum; 220import ca.uhn.fhir.model.dstu2.resource.RiskAssessment; 221import ca.uhn.fhir.model.dstu2.valueset.RulesetCodesEnum; 222import ca.uhn.fhir.model.dstu2.composite.SampledDataDt; 223import ca.uhn.fhir.model.dstu2.resource.Schedule; 224import ca.uhn.fhir.model.dstu2.valueset.SearchEntryModeEnum; 225import ca.uhn.fhir.model.dstu2.valueset.SearchModifierCodeEnum; 226import ca.uhn.fhir.model.dstu2.valueset.SearchParamTypeEnum; 227import ca.uhn.fhir.model.dstu2.valueset.ServiceProvisionConditionsEnum; 228import ca.uhn.fhir.model.dstu2.composite.SignatureDt; 229import ca.uhn.fhir.model.dstu2.resource.Slot; 230import ca.uhn.fhir.model.dstu2.valueset.SlotStatusEnum; 231import ca.uhn.fhir.model.dstu2.resource.Specimen; 232import ca.uhn.fhir.model.dstu2.valueset.SpecimenStatusEnum; 233import ca.uhn.fhir.model.dstu2.resource.StructureDefinition; 234import ca.uhn.fhir.model.dstu2.valueset.StructureDefinitionKindEnum; 235import ca.uhn.fhir.model.dstu2.valueset.SubscriptionChannelTypeEnum; 236import ca.uhn.fhir.model.dstu2.valueset.SubscriptionStatusEnum; 237import ca.uhn.fhir.model.dstu2.resource.Substance; 238import ca.uhn.fhir.model.dstu2.valueset.SubstanceCategoryCodesEnum; 239import ca.uhn.fhir.model.dstu2.valueset.SupplyDeliveryStatusEnum; 240import ca.uhn.fhir.model.dstu2.resource.SupplyRequest; 241import ca.uhn.fhir.model.dstu2.valueset.SupplyRequestStatusEnum; 242import ca.uhn.fhir.model.dstu2.valueset.SystemRestfulInteractionEnum; 243import ca.uhn.fhir.model.api.TemporalPrecisionEnum; 244import ca.uhn.fhir.model.dstu2.composite.TimingDt; 245import ca.uhn.fhir.model.dstu2.valueset.TransactionModeEnum; 246import ca.uhn.fhir.model.dstu2.valueset.TypeRestfulInteractionEnum; 247import ca.uhn.fhir.model.dstu2.valueset.UnknownContentCodeEnum; 248import ca.uhn.fhir.model.dstu2.valueset.UseEnum; 249import ca.uhn.fhir.model.dstu2.resource.ValueSet; 250import ca.uhn.fhir.model.dstu2.valueset.VisionBaseEnum; 251import ca.uhn.fhir.model.dstu2.valueset.VisionEyesEnum; 252import ca.uhn.fhir.model.dstu2.resource.VisionPrescription; 253import ca.uhn.fhir.model.dstu2.valueset.XPathUsageTypeEnum; 254import ca.uhn.fhir.model.api.IResource; 255import ca.uhn.fhir.model.dstu2.composite.AgeDt; 256import ca.uhn.fhir.model.dstu2.composite.BoundCodeableConceptDt; 257import ca.uhn.fhir.model.dstu2.composite.DurationDt; 258import ca.uhn.fhir.model.dstu2.composite.MoneyDt; 259import ca.uhn.fhir.model.dstu2.composite.NarrativeDt; 260import ca.uhn.fhir.model.dstu2.composite.ResourceReferenceDt; 261import ca.uhn.fhir.model.dstu2.composite.SimpleQuantityDt; 262import ca.uhn.fhir.model.primitive.Base64BinaryDt; 263import ca.uhn.fhir.model.primitive.BooleanDt; 264import ca.uhn.fhir.model.primitive.BoundCodeDt; 265import ca.uhn.fhir.model.primitive.CodeDt; 266import ca.uhn.fhir.model.primitive.DateDt; 267import ca.uhn.fhir.model.primitive.DateTimeDt; 268import ca.uhn.fhir.model.primitive.DecimalDt; 269import ca.uhn.fhir.model.primitive.IdDt; 270import ca.uhn.fhir.model.primitive.InstantDt; 271import ca.uhn.fhir.model.primitive.IntegerDt; 272import ca.uhn.fhir.model.primitive.OidDt; 273import ca.uhn.fhir.model.primitive.PositiveIntDt; 274import ca.uhn.fhir.model.primitive.StringDt; 275import ca.uhn.fhir.model.primitive.TimeDt; 276import ca.uhn.fhir.model.primitive.UnsignedIntDt; 277import ca.uhn.fhir.model.primitive.UriDt; 278 279 280/** 281 * HAPI/FHIR <b>OperationDefinition</b> Resource 282 * (conformance.behavior) 283 * 284 * <p> 285 * <b>Definition:</b> 286 * A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction). 287 * </p> 288 * 289 * <p> 290 * <b>Requirements:</b> 291 * 292 * </p> 293 * 294 * <p> 295 * <b>Profile Definition:</b> 296 * <a href="http://hl7.org/fhir/profiles/OperationDefinition">http://hl7.org/fhir/profiles/OperationDefinition</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="OperationDefinition", profile="http://hl7.org/fhir/profiles/OperationDefinition", id="operationdefinition") 301public class OperationDefinition extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource { 303 304 /** 305 * Search parameter constant for <b>url</b> 306 * <p> 307 * Description: <b></b><br> 308 * Type: <b>uri</b><br> 309 * Path: <b>OperationDefinition.url</b><br> 310 * </p> 311 */ 312 @SearchParamDefinition(name="url", path="OperationDefinition.url", description="", type="uri" ) 313 public static final String SP_URL = "url"; 314 315 /** 316 * <b>Fluent Client</b> search parameter constant for <b>url</b> 317 * <p> 318 * Description: <b></b><br> 319 * Type: <b>uri</b><br> 320 * Path: <b>OperationDefinition.url</b><br> 321 * </p> 322 */ 323 public static final UriClientParam URL = new UriClientParam(SP_URL); 324 325 /** 326 * Search parameter constant for <b>version</b> 327 * <p> 328 * Description: <b></b><br> 329 * Type: <b>token</b><br> 330 * Path: <b>OperationDefinition.version</b><br> 331 * </p> 332 */ 333 @SearchParamDefinition(name="version", path="OperationDefinition.version", description="", type="token" ) 334 public static final String SP_VERSION = "version"; 335 336 /** 337 * <b>Fluent Client</b> search parameter constant for <b>version</b> 338 * <p> 339 * Description: <b></b><br> 340 * Type: <b>token</b><br> 341 * Path: <b>OperationDefinition.version</b><br> 342 * </p> 343 */ 344 public static final TokenClientParam VERSION = new TokenClientParam(SP_VERSION); 345 346 /** 347 * Search parameter constant for <b>name</b> 348 * <p> 349 * Description: <b></b><br> 350 * Type: <b>string</b><br> 351 * Path: <b>OperationDefinition.name</b><br> 352 * </p> 353 */ 354 @SearchParamDefinition(name="name", path="OperationDefinition.name", description="", type="string" ) 355 public static final String SP_NAME = "name"; 356 357 /** 358 * <b>Fluent Client</b> search parameter constant for <b>name</b> 359 * <p> 360 * Description: <b></b><br> 361 * Type: <b>string</b><br> 362 * Path: <b>OperationDefinition.name</b><br> 363 * </p> 364 */ 365 public static final StringClientParam NAME = new StringClientParam(SP_NAME); 366 367 /** 368 * Search parameter constant for <b>publisher</b> 369 * <p> 370 * Description: <b></b><br> 371 * Type: <b>string</b><br> 372 * Path: <b>OperationDefinition.publisher</b><br> 373 * </p> 374 */ 375 @SearchParamDefinition(name="publisher", path="OperationDefinition.publisher", description="", type="string" ) 376 public static final String SP_PUBLISHER = "publisher"; 377 378 /** 379 * <b>Fluent Client</b> search parameter constant for <b>publisher</b> 380 * <p> 381 * Description: <b></b><br> 382 * Type: <b>string</b><br> 383 * Path: <b>OperationDefinition.publisher</b><br> 384 * </p> 385 */ 386 public static final StringClientParam PUBLISHER = new StringClientParam(SP_PUBLISHER); 387 388 /** 389 * Search parameter constant for <b>code</b> 390 * <p> 391 * Description: <b></b><br> 392 * Type: <b>token</b><br> 393 * Path: <b>OperationDefinition.code</b><br> 394 * </p> 395 */ 396 @SearchParamDefinition(name="code", path="OperationDefinition.code", description="", type="token" ) 397 public static final String SP_CODE = "code"; 398 399 /** 400 * <b>Fluent Client</b> search parameter constant for <b>code</b> 401 * <p> 402 * Description: <b></b><br> 403 * Type: <b>token</b><br> 404 * Path: <b>OperationDefinition.code</b><br> 405 * </p> 406 */ 407 public static final TokenClientParam CODE = new TokenClientParam(SP_CODE); 408 409 /** 410 * Search parameter constant for <b>status</b> 411 * <p> 412 * Description: <b></b><br> 413 * Type: <b>token</b><br> 414 * Path: <b>OperationDefinition.status</b><br> 415 * </p> 416 */ 417 @SearchParamDefinition(name="status", path="OperationDefinition.status", description="", type="token" ) 418 public static final String SP_STATUS = "status"; 419 420 /** 421 * <b>Fluent Client</b> search parameter constant for <b>status</b> 422 * <p> 423 * Description: <b></b><br> 424 * Type: <b>token</b><br> 425 * Path: <b>OperationDefinition.status</b><br> 426 * </p> 427 */ 428 public static final TokenClientParam STATUS = new TokenClientParam(SP_STATUS); 429 430 /** 431 * Search parameter constant for <b>date</b> 432 * <p> 433 * Description: <b></b><br> 434 * Type: <b>date</b><br> 435 * Path: <b>OperationDefinition.date</b><br> 436 * </p> 437 */ 438 @SearchParamDefinition(name="date", path="OperationDefinition.date", description="", type="date" ) 439 public static final String SP_DATE = "date"; 440 441 /** 442 * <b>Fluent Client</b> search parameter constant for <b>date</b> 443 * <p> 444 * Description: <b></b><br> 445 * Type: <b>date</b><br> 446 * Path: <b>OperationDefinition.date</b><br> 447 * </p> 448 */ 449 public static final DateClientParam DATE = new DateClientParam(SP_DATE); 450 451 /** 452 * Search parameter constant for <b>kind</b> 453 * <p> 454 * Description: <b></b><br> 455 * Type: <b>token</b><br> 456 * Path: <b>OperationDefinition.kind</b><br> 457 * </p> 458 */ 459 @SearchParamDefinition(name="kind", path="OperationDefinition.kind", description="", type="token" ) 460 public static final String SP_KIND = "kind"; 461 462 /** 463 * <b>Fluent Client</b> search parameter constant for <b>kind</b> 464 * <p> 465 * Description: <b></b><br> 466 * Type: <b>token</b><br> 467 * Path: <b>OperationDefinition.kind</b><br> 468 * </p> 469 */ 470 public static final TokenClientParam KIND = new TokenClientParam(SP_KIND); 471 472 /** 473 * Search parameter constant for <b>base</b> 474 * <p> 475 * Description: <b></b><br> 476 * Type: <b>reference</b><br> 477 * Path: <b>OperationDefinition.base</b><br> 478 * </p> 479 */ 480 @SearchParamDefinition(name="base", path="OperationDefinition.base", description="", type="reference" ) 481 public static final String SP_BASE = "base"; 482 483 /** 484 * <b>Fluent Client</b> search parameter constant for <b>base</b> 485 * <p> 486 * Description: <b></b><br> 487 * Type: <b>reference</b><br> 488 * Path: <b>OperationDefinition.base</b><br> 489 * </p> 490 */ 491 public static final ReferenceClientParam BASE = new ReferenceClientParam(SP_BASE); 492 493 /** 494 * Search parameter constant for <b>system</b> 495 * <p> 496 * Description: <b></b><br> 497 * Type: <b>token</b><br> 498 * Path: <b>OperationDefinition.system</b><br> 499 * </p> 500 */ 501 @SearchParamDefinition(name="system", path="OperationDefinition.system", description="", type="token" ) 502 public static final String SP_SYSTEM = "system"; 503 504 /** 505 * <b>Fluent Client</b> search parameter constant for <b>system</b> 506 * <p> 507 * Description: <b></b><br> 508 * Type: <b>token</b><br> 509 * Path: <b>OperationDefinition.system</b><br> 510 * </p> 511 */ 512 public static final TokenClientParam SYSTEM = new TokenClientParam(SP_SYSTEM); 513 514 /** 515 * Search parameter constant for <b>type</b> 516 * <p> 517 * Description: <b></b><br> 518 * Type: <b>token</b><br> 519 * Path: <b>OperationDefinition.type</b><br> 520 * </p> 521 */ 522 @SearchParamDefinition(name="type", path="OperationDefinition.type", description="", type="token" ) 523 public static final String SP_TYPE = "type"; 524 525 /** 526 * <b>Fluent Client</b> search parameter constant for <b>type</b> 527 * <p> 528 * Description: <b></b><br> 529 * Type: <b>token</b><br> 530 * Path: <b>OperationDefinition.type</b><br> 531 * </p> 532 */ 533 public static final TokenClientParam TYPE = new TokenClientParam(SP_TYPE); 534 535 /** 536 * Search parameter constant for <b>instance</b> 537 * <p> 538 * Description: <b></b><br> 539 * Type: <b>token</b><br> 540 * Path: <b>OperationDefinition.instance</b><br> 541 * </p> 542 */ 543 @SearchParamDefinition(name="instance", path="OperationDefinition.instance", description="", type="token" ) 544 public static final String SP_INSTANCE = "instance"; 545 546 /** 547 * <b>Fluent Client</b> search parameter constant for <b>instance</b> 548 * <p> 549 * Description: <b></b><br> 550 * Type: <b>token</b><br> 551 * Path: <b>OperationDefinition.instance</b><br> 552 * </p> 553 */ 554 public static final TokenClientParam INSTANCE = new TokenClientParam(SP_INSTANCE); 555 556 /** 557 * Search parameter constant for <b>profile</b> 558 * <p> 559 * Description: <b></b><br> 560 * Type: <b>reference</b><br> 561 * Path: <b>OperationDefinition.parameter.profile</b><br> 562 * </p> 563 */ 564 @SearchParamDefinition(name="profile", path="OperationDefinition.parameter.profile", description="", type="reference" ) 565 public static final String SP_PROFILE = "profile"; 566 567 /** 568 * <b>Fluent Client</b> search parameter constant for <b>profile</b> 569 * <p> 570 * Description: <b></b><br> 571 * Type: <b>reference</b><br> 572 * Path: <b>OperationDefinition.parameter.profile</b><br> 573 * </p> 574 */ 575 public static final ReferenceClientParam PROFILE = new ReferenceClientParam(SP_PROFILE); 576 577 578 /** 579 * Constant for fluent queries to be used to add include statements. Specifies 580 * the path value of "<b>OperationDefinition:base</b>". 581 */ 582 public static final Include INCLUDE_BASE = new Include("OperationDefinition:base"); 583 584 /** 585 * Constant for fluent queries to be used to add include statements. Specifies 586 * the path value of "<b>OperationDefinition:profile</b>". 587 */ 588 public static final Include INCLUDE_PROFILE = new Include("OperationDefinition:profile"); 589 590 591 @Child(name="url", type=UriDt.class, order=0, min=0, max=1, summary=false, modifier=false) 592 @Description( 593 shortDefinition="id", 594 formalDefinition="An absolute URL that is used to identify this operation definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this operation definition is (or will be) published" 595 ) 596 private UriDt myUrl; 597 598 @Child(name="version", type=StringDt.class, order=1, min=0, max=1, summary=false, modifier=false) 599 @Description( 600 shortDefinition="id.version", 601 formalDefinition="The identifier that is used to identify this version of the profile when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the profile author manually and the value should be a timestamp" 602 ) 603 private StringDt myVersion; 604 605 @Child(name="name", type=StringDt.class, order=2, min=1, max=1, summary=false, modifier=false) 606 @Description( 607 shortDefinition="", 608 formalDefinition="A free text natural language name identifying the operation" 609 ) 610 private StringDt myName; 611 612 @Child(name="status", type=CodeDt.class, order=3, min=1, max=1, summary=false, modifier=false) 613 @Description( 614 shortDefinition="status", 615 formalDefinition="The status of the profile" 616 ) 617 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/conformance-resource-status") 618 private BoundCodeDt<ConformanceResourceStatusEnum> myStatus; 619 620 @Child(name="kind", type=CodeDt.class, order=4, min=1, max=1, summary=false, modifier=false) 621 @Description( 622 shortDefinition="class", 623 formalDefinition="Whether this is an operation or a named query" 624 ) 625 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/operation-kind") 626 private BoundCodeDt<OperationKindEnum> myKind; 627 628 @Child(name="experimental", type=BooleanDt.class, order=5, min=0, max=1, summary=false, modifier=false) 629 @Description( 630 shortDefinition="", 631 formalDefinition="This profile was authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage" 632 ) 633 private BooleanDt myExperimental; 634 635 @Child(name="publisher", type=StringDt.class, order=6, min=0, max=1, summary=true, modifier=false) 636 @Description( 637 shortDefinition="who.witness", 638 formalDefinition="The name of the individual or organization that published the operation definition" 639 ) 640 private StringDt myPublisher; 641 642 @Child(name="contact", order=7, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 643 @Description( 644 shortDefinition="", 645 formalDefinition="Contacts to assist a user in finding and communicating with the publisher" 646 ) 647 private java.util.List<Contact> myContact; 648 649 @Child(name="date", type=DateTimeDt.class, order=8, min=0, max=1, summary=false, modifier=false) 650 @Description( 651 shortDefinition="when.recorded", 652 formalDefinition="The date this version of the operation definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the Operation Definition changes" 653 ) 654 private DateTimeDt myDate; 655 656 @Child(name="description", type=StringDt.class, order=9, min=0, max=1, summary=false, modifier=false) 657 @Description( 658 shortDefinition="", 659 formalDefinition="A free text natural language description of the profile and its use" 660 ) 661 private StringDt myDescription; 662 663 @Child(name="requirements", type=StringDt.class, order=10, min=0, max=1, summary=false, modifier=false) 664 @Description( 665 shortDefinition="", 666 formalDefinition="Explains why this operation definition is needed and why it's been constrained as it has" 667 ) 668 private StringDt myRequirements; 669 670 @Child(name="idempotent", type=BooleanDt.class, order=11, min=0, max=1, summary=false, modifier=false) 671 @Description( 672 shortDefinition="", 673 formalDefinition="Operations that are idempotent (see [HTTP specification definition of idempotent](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)) may be invoked by performing an HTTP GET operation instead of a POST" 674 ) 675 private BooleanDt myIdempotent; 676 677 @Child(name="code", type=CodeDt.class, order=12, min=1, max=1, summary=false, modifier=false) 678 @Description( 679 shortDefinition="", 680 formalDefinition="The name used to invoke the operation" 681 ) 682 private CodeDt myCode; 683 684 @Child(name="notes", type=StringDt.class, order=13, min=0, max=1, summary=false, modifier=false) 685 @Description( 686 shortDefinition="", 687 formalDefinition="Additional information about how to use this operation or named query" 688 ) 689 private StringDt myNotes; 690 691 @Child(name="base", order=14, min=0, max=1, summary=false, modifier=false, type={ 692 ca.uhn.fhir.model.dstu2.resource.OperationDefinition.class }) 693 @Description( 694 shortDefinition="", 695 formalDefinition="Indicates that this operation definition is a constraining profile on the base" 696 ) 697 private ResourceReferenceDt myBase; 698 699 @Child(name="system", type=BooleanDt.class, order=15, min=1, max=1, summary=false, modifier=false) 700 @Description( 701 shortDefinition="", 702 formalDefinition="Indicates whether this operation or named query can be invoked at the system level (e.g. without needing to choose a resource type for the context)" 703 ) 704 private BooleanDt mySystem; 705 706 @Child(name="type", type=CodeDt.class, order=16, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 707 @Description( 708 shortDefinition="", 709 formalDefinition="Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context)" 710 ) 711 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/resource-types") 712 private java.util.List<BoundCodeDt<ResourceTypeEnum>> myType; 713 714 @Child(name="instance", type=BooleanDt.class, order=17, min=1, max=1, summary=false, modifier=false) 715 @Description( 716 shortDefinition="", 717 formalDefinition="Indicates whether this operation can be invoked on a particular instance of one of the given types" 718 ) 719 private BooleanDt myInstance; 720 721 @Child(name="parameter", order=18, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 722 @Description( 723 shortDefinition="", 724 formalDefinition="The parameters for the operation/query" 725 ) 726 private java.util.List<Parameter> myParameter; 727 728 729 @Override 730 public boolean isEmpty() { 731 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myUrl, myVersion, myName, myStatus, myKind, myExperimental, myPublisher, myContact, myDate, myDescription, myRequirements, myIdempotent, myCode, myNotes, myBase, mySystem, myType, myInstance, myParameter); 732 } 733 734 @Override 735 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 736 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myUrl, myVersion, myName, myStatus, myKind, myExperimental, myPublisher, myContact, myDate, myDescription, myRequirements, myIdempotent, myCode, myNotes, myBase, mySystem, myType, myInstance, myParameter); 737 } 738 739 /** 740 * Gets the value(s) for <b>url</b> (id). 741 * creating it if it does 742 * not exist. Will not return <code>null</code>. 743 * 744 * <p> 745 * <b>Definition:</b> 746 * An absolute URL that is used to identify this operation definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this operation definition is (or will be) published 747 * </p> 748 */ 749 public UriDt getUrlElement() { 750 if (myUrl == null) { 751 myUrl = new UriDt(); 752 } 753 return myUrl; 754 } 755 756 757 /** 758 * Gets the value(s) for <b>url</b> (id). 759 * creating it if it does 760 * not exist. This method may return <code>null</code>. 761 * 762 * <p> 763 * <b>Definition:</b> 764 * An absolute URL that is used to identify this operation definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this operation definition is (or will be) published 765 * </p> 766 */ 767 public String getUrl() { 768 return getUrlElement().getValue(); 769 } 770 771 /** 772 * Sets the value(s) for <b>url</b> (id) 773 * 774 * <p> 775 * <b>Definition:</b> 776 * An absolute URL that is used to identify this operation definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this operation definition is (or will be) published 777 * </p> 778 */ 779 public OperationDefinition setUrl(UriDt theValue) { 780 myUrl = theValue; 781 return this; 782 } 783 784 785 786 /** 787 * Sets the value for <b>url</b> (id) 788 * 789 * <p> 790 * <b>Definition:</b> 791 * An absolute URL that is used to identify this operation definition when it is referenced in a specification, model, design or an instance. This SHALL be a URL, SHOULD be globally unique, and SHOULD be an address at which this operation definition is (or will be) published 792 * </p> 793 */ 794 public OperationDefinition setUrl( String theUri) { 795 myUrl = new UriDt(theUri); 796 return this; 797 } 798 799 800 /** 801 * Gets the value(s) for <b>version</b> (id.version). 802 * creating it if it does 803 * not exist. Will not return <code>null</code>. 804 * 805 * <p> 806 * <b>Definition:</b> 807 * The identifier that is used to identify this version of the profile when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the profile author manually and the value should be a timestamp 808 * </p> 809 */ 810 public StringDt getVersionElement() { 811 if (myVersion == null) { 812 myVersion = new StringDt(); 813 } 814 return myVersion; 815 } 816 817 818 /** 819 * Gets the value(s) for <b>version</b> (id.version). 820 * creating it if it does 821 * not exist. This method may return <code>null</code>. 822 * 823 * <p> 824 * <b>Definition:</b> 825 * The identifier that is used to identify this version of the profile when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the profile author manually and the value should be a timestamp 826 * </p> 827 */ 828 public String getVersion() { 829 return getVersionElement().getValue(); 830 } 831 832 /** 833 * Sets the value(s) for <b>version</b> (id.version) 834 * 835 * <p> 836 * <b>Definition:</b> 837 * The identifier that is used to identify this version of the profile when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the profile author manually and the value should be a timestamp 838 * </p> 839 */ 840 public OperationDefinition setVersion(StringDt theValue) { 841 myVersion = theValue; 842 return this; 843 } 844 845 846 847 /** 848 * Sets the value for <b>version</b> (id.version) 849 * 850 * <p> 851 * <b>Definition:</b> 852 * The identifier that is used to identify this version of the profile when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the profile author manually and the value should be a timestamp 853 * </p> 854 */ 855 public OperationDefinition setVersion( String theString) { 856 myVersion = new StringDt(theString); 857 return this; 858 } 859 860 861 /** 862 * Gets the value(s) for <b>name</b> (). 863 * creating it if it does 864 * not exist. Will not return <code>null</code>. 865 * 866 * <p> 867 * <b>Definition:</b> 868 * A free text natural language name identifying the operation 869 * </p> 870 */ 871 public StringDt getNameElement() { 872 if (myName == null) { 873 myName = new StringDt(); 874 } 875 return myName; 876 } 877 878 879 /** 880 * Gets the value(s) for <b>name</b> (). 881 * creating it if it does 882 * not exist. This method may return <code>null</code>. 883 * 884 * <p> 885 * <b>Definition:</b> 886 * A free text natural language name identifying the operation 887 * </p> 888 */ 889 public String getName() { 890 return getNameElement().getValue(); 891 } 892 893 /** 894 * Sets the value(s) for <b>name</b> () 895 * 896 * <p> 897 * <b>Definition:</b> 898 * A free text natural language name identifying the operation 899 * </p> 900 */ 901 public OperationDefinition setName(StringDt theValue) { 902 myName = theValue; 903 return this; 904 } 905 906 907 908 /** 909 * Sets the value for <b>name</b> () 910 * 911 * <p> 912 * <b>Definition:</b> 913 * A free text natural language name identifying the operation 914 * </p> 915 */ 916 public OperationDefinition setName( String theString) { 917 myName = new StringDt(theString); 918 return this; 919 } 920 921 922 /** 923 * Gets the value(s) for <b>status</b> (status). 924 * creating it if it does 925 * not exist. Will not return <code>null</code>. 926 * 927 * <p> 928 * <b>Definition:</b> 929 * The status of the profile 930 * </p> 931 */ 932 public BoundCodeDt<ConformanceResourceStatusEnum> getStatusElement() { 933 if (myStatus == null) { 934 myStatus = new BoundCodeDt<ConformanceResourceStatusEnum>(ConformanceResourceStatusEnum.VALUESET_BINDER); 935 } 936 return myStatus; 937 } 938 939 940 /** 941 * Gets the value(s) for <b>status</b> (status). 942 * creating it if it does 943 * not exist. This method may return <code>null</code>. 944 * 945 * <p> 946 * <b>Definition:</b> 947 * The status of the profile 948 * </p> 949 */ 950 public String getStatus() { 951 return getStatusElement().getValue(); 952 } 953 954 /** 955 * Sets the value(s) for <b>status</b> (status) 956 * 957 * <p> 958 * <b>Definition:</b> 959 * The status of the profile 960 * </p> 961 */ 962 public OperationDefinition setStatus(BoundCodeDt<ConformanceResourceStatusEnum> theValue) { 963 myStatus = theValue; 964 return this; 965 } 966 967 968 969 /** 970 * Sets the value(s) for <b>status</b> (status) 971 * 972 * <p> 973 * <b>Definition:</b> 974 * The status of the profile 975 * </p> 976 */ 977 public OperationDefinition setStatus(ConformanceResourceStatusEnum theValue) { 978 setStatus(new BoundCodeDt<ConformanceResourceStatusEnum>(ConformanceResourceStatusEnum.VALUESET_BINDER, theValue)); 979 980/* 981 getStatusElement().setValueAsEnum(theValue); 982*/ 983 return this; 984 } 985 986 987 /** 988 * Gets the value(s) for <b>kind</b> (class). 989 * creating it if it does 990 * not exist. Will not return <code>null</code>. 991 * 992 * <p> 993 * <b>Definition:</b> 994 * Whether this is an operation or a named query 995 * </p> 996 */ 997 public BoundCodeDt<OperationKindEnum> getKindElement() { 998 if (myKind == null) { 999 myKind = new BoundCodeDt<OperationKindEnum>(OperationKindEnum.VALUESET_BINDER); 1000 } 1001 return myKind; 1002 } 1003 1004 1005 /** 1006 * Gets the value(s) for <b>kind</b> (class). 1007 * creating it if it does 1008 * not exist. This method may return <code>null</code>. 1009 * 1010 * <p> 1011 * <b>Definition:</b> 1012 * Whether this is an operation or a named query 1013 * </p> 1014 */ 1015 public String getKind() { 1016 return getKindElement().getValue(); 1017 } 1018 1019 /** 1020 * Sets the value(s) for <b>kind</b> (class) 1021 * 1022 * <p> 1023 * <b>Definition:</b> 1024 * Whether this is an operation or a named query 1025 * </p> 1026 */ 1027 public OperationDefinition setKind(BoundCodeDt<OperationKindEnum> theValue) { 1028 myKind = theValue; 1029 return this; 1030 } 1031 1032 1033 1034 /** 1035 * Sets the value(s) for <b>kind</b> (class) 1036 * 1037 * <p> 1038 * <b>Definition:</b> 1039 * Whether this is an operation or a named query 1040 * </p> 1041 */ 1042 public OperationDefinition setKind(OperationKindEnum theValue) { 1043 setKind(new BoundCodeDt<OperationKindEnum>(OperationKindEnum.VALUESET_BINDER, theValue)); 1044 1045/* 1046 getKindElement().setValueAsEnum(theValue); 1047*/ 1048 return this; 1049 } 1050 1051 1052 /** 1053 * Gets the value(s) for <b>experimental</b> (). 1054 * creating it if it does 1055 * not exist. Will not return <code>null</code>. 1056 * 1057 * <p> 1058 * <b>Definition:</b> 1059 * This profile was authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1060 * </p> 1061 */ 1062 public BooleanDt getExperimentalElement() { 1063 if (myExperimental == null) { 1064 myExperimental = new BooleanDt(); 1065 } 1066 return myExperimental; 1067 } 1068 1069 1070 /** 1071 * Gets the value(s) for <b>experimental</b> (). 1072 * creating it if it does 1073 * not exist. This method may return <code>null</code>. 1074 * 1075 * <p> 1076 * <b>Definition:</b> 1077 * This profile was authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1078 * </p> 1079 */ 1080 public Boolean getExperimental() { 1081 return getExperimentalElement().getValue(); 1082 } 1083 1084 /** 1085 * Sets the value(s) for <b>experimental</b> () 1086 * 1087 * <p> 1088 * <b>Definition:</b> 1089 * This profile was authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1090 * </p> 1091 */ 1092 public OperationDefinition setExperimental(BooleanDt theValue) { 1093 myExperimental = theValue; 1094 return this; 1095 } 1096 1097 1098 1099 /** 1100 * Sets the value for <b>experimental</b> () 1101 * 1102 * <p> 1103 * <b>Definition:</b> 1104 * This profile was authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage 1105 * </p> 1106 */ 1107 public OperationDefinition setExperimental( boolean theBoolean) { 1108 myExperimental = new BooleanDt(theBoolean); 1109 return this; 1110 } 1111 1112 1113 /** 1114 * Gets the value(s) for <b>publisher</b> (who.witness). 1115 * creating it if it does 1116 * not exist. Will not return <code>null</code>. 1117 * 1118 * <p> 1119 * <b>Definition:</b> 1120 * The name of the individual or organization that published the operation definition 1121 * </p> 1122 */ 1123 public StringDt getPublisherElement() { 1124 if (myPublisher == null) { 1125 myPublisher = new StringDt(); 1126 } 1127 return myPublisher; 1128 } 1129 1130 1131 /** 1132 * Gets the value(s) for <b>publisher</b> (who.witness). 1133 * creating it if it does 1134 * not exist. This method may return <code>null</code>. 1135 * 1136 * <p> 1137 * <b>Definition:</b> 1138 * The name of the individual or organization that published the operation definition 1139 * </p> 1140 */ 1141 public String getPublisher() { 1142 return getPublisherElement().getValue(); 1143 } 1144 1145 /** 1146 * Sets the value(s) for <b>publisher</b> (who.witness) 1147 * 1148 * <p> 1149 * <b>Definition:</b> 1150 * The name of the individual or organization that published the operation definition 1151 * </p> 1152 */ 1153 public OperationDefinition setPublisher(StringDt theValue) { 1154 myPublisher = theValue; 1155 return this; 1156 } 1157 1158 1159 1160 /** 1161 * Sets the value for <b>publisher</b> (who.witness) 1162 * 1163 * <p> 1164 * <b>Definition:</b> 1165 * The name of the individual or organization that published the operation definition 1166 * </p> 1167 */ 1168 public OperationDefinition setPublisher( String theString) { 1169 myPublisher = new StringDt(theString); 1170 return this; 1171 } 1172 1173 1174 /** 1175 * Gets the value(s) for <b>contact</b> (). 1176 * creating it if it does 1177 * not exist. Will not return <code>null</code>. 1178 * 1179 * <p> 1180 * <b>Definition:</b> 1181 * Contacts to assist a user in finding and communicating with the publisher 1182 * </p> 1183 */ 1184 public java.util.List<Contact> getContact() { 1185 if (myContact == null) { 1186 myContact = new java.util.ArrayList<Contact>(); 1187 } 1188 return myContact; 1189 } 1190 1191 /** 1192 * Sets the value(s) for <b>contact</b> () 1193 * 1194 * <p> 1195 * <b>Definition:</b> 1196 * Contacts to assist a user in finding and communicating with the publisher 1197 * </p> 1198 */ 1199 public OperationDefinition setContact(java.util.List<Contact> theValue) { 1200 myContact = theValue; 1201 return this; 1202 } 1203 1204 1205 1206 /** 1207 * Adds and returns a new value for <b>contact</b> () 1208 * 1209 * <p> 1210 * <b>Definition:</b> 1211 * Contacts to assist a user in finding and communicating with the publisher 1212 * </p> 1213 */ 1214 public Contact addContact() { 1215 Contact newType = new Contact(); 1216 getContact().add(newType); 1217 return newType; 1218 } 1219 1220 /** 1221 * Adds a given new value for <b>contact</b> () 1222 * 1223 * <p> 1224 * <b>Definition:</b> 1225 * Contacts to assist a user in finding and communicating with the publisher 1226 * </p> 1227 * @param theValue The contact to add (must not be <code>null</code>) 1228 */ 1229 public OperationDefinition addContact(Contact theValue) { 1230 if (theValue == null) { 1231 throw new NullPointerException("theValue must not be null"); 1232 } 1233 getContact().add(theValue); 1234 return this; 1235 } 1236 1237 /** 1238 * Gets the first repetition for <b>contact</b> (), 1239 * creating it if it does not already exist. 1240 * 1241 * <p> 1242 * <b>Definition:</b> 1243 * Contacts to assist a user in finding and communicating with the publisher 1244 * </p> 1245 */ 1246 public Contact getContactFirstRep() { 1247 if (getContact().isEmpty()) { 1248 return addContact(); 1249 } 1250 return getContact().get(0); 1251 } 1252 1253 /** 1254 * Gets the value(s) for <b>date</b> (when.recorded). 1255 * creating it if it does 1256 * not exist. Will not return <code>null</code>. 1257 * 1258 * <p> 1259 * <b>Definition:</b> 1260 * The date this version of the operation definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the Operation Definition changes 1261 * </p> 1262 */ 1263 public DateTimeDt getDateElement() { 1264 if (myDate == null) { 1265 myDate = new DateTimeDt(); 1266 } 1267 return myDate; 1268 } 1269 1270 1271 /** 1272 * Gets the value(s) for <b>date</b> (when.recorded). 1273 * creating it if it does 1274 * not exist. This method may return <code>null</code>. 1275 * 1276 * <p> 1277 * <b>Definition:</b> 1278 * The date this version of the operation definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the Operation Definition changes 1279 * </p> 1280 */ 1281 public Date getDate() { 1282 return getDateElement().getValue(); 1283 } 1284 1285 /** 1286 * Sets the value(s) for <b>date</b> (when.recorded) 1287 * 1288 * <p> 1289 * <b>Definition:</b> 1290 * The date this version of the operation definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the Operation Definition changes 1291 * </p> 1292 */ 1293 public OperationDefinition setDate(DateTimeDt theValue) { 1294 myDate = theValue; 1295 return this; 1296 } 1297 1298 1299 1300 /** 1301 * Sets the value for <b>date</b> (when.recorded) 1302 * 1303 * <p> 1304 * <b>Definition:</b> 1305 * The date this version of the operation definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the Operation Definition changes 1306 * </p> 1307 */ 1308 public OperationDefinition setDate( Date theDate, TemporalPrecisionEnum thePrecision) { 1309 myDate = new DateTimeDt(theDate, thePrecision); 1310 return this; 1311 } 1312 1313 /** 1314 * Sets the value for <b>date</b> (when.recorded) 1315 * 1316 * <p> 1317 * <b>Definition:</b> 1318 * The date this version of the operation definition was published. The date must change when the business version changes, if it does, and it must change if the status code changes. In addition, it should change when the substantive content of the Operation Definition changes 1319 * </p> 1320 */ 1321 public OperationDefinition setDateWithSecondsPrecision( Date theDate) { 1322 myDate = new DateTimeDt(theDate); 1323 return this; 1324 } 1325 1326 1327 /** 1328 * Gets the value(s) for <b>description</b> (). 1329 * creating it if it does 1330 * not exist. Will not return <code>null</code>. 1331 * 1332 * <p> 1333 * <b>Definition:</b> 1334 * A free text natural language description of the profile and its use 1335 * </p> 1336 */ 1337 public StringDt getDescriptionElement() { 1338 if (myDescription == null) { 1339 myDescription = new StringDt(); 1340 } 1341 return myDescription; 1342 } 1343 1344 1345 /** 1346 * Gets the value(s) for <b>description</b> (). 1347 * creating it if it does 1348 * not exist. This method may return <code>null</code>. 1349 * 1350 * <p> 1351 * <b>Definition:</b> 1352 * A free text natural language description of the profile and its use 1353 * </p> 1354 */ 1355 public String getDescription() { 1356 return getDescriptionElement().getValue(); 1357 } 1358 1359 /** 1360 * Sets the value(s) for <b>description</b> () 1361 * 1362 * <p> 1363 * <b>Definition:</b> 1364 * A free text natural language description of the profile and its use 1365 * </p> 1366 */ 1367 public OperationDefinition setDescription(StringDt theValue) { 1368 myDescription = theValue; 1369 return this; 1370 } 1371 1372 1373 1374 /** 1375 * Sets the value for <b>description</b> () 1376 * 1377 * <p> 1378 * <b>Definition:</b> 1379 * A free text natural language description of the profile and its use 1380 * </p> 1381 */ 1382 public OperationDefinition setDescription( String theString) { 1383 myDescription = new StringDt(theString); 1384 return this; 1385 } 1386 1387 1388 /** 1389 * Gets the value(s) for <b>requirements</b> (). 1390 * creating it if it does 1391 * not exist. Will not return <code>null</code>. 1392 * 1393 * <p> 1394 * <b>Definition:</b> 1395 * Explains why this operation definition is needed and why it's been constrained as it has 1396 * </p> 1397 */ 1398 public StringDt getRequirementsElement() { 1399 if (myRequirements == null) { 1400 myRequirements = new StringDt(); 1401 } 1402 return myRequirements; 1403 } 1404 1405 1406 /** 1407 * Gets the value(s) for <b>requirements</b> (). 1408 * creating it if it does 1409 * not exist. This method may return <code>null</code>. 1410 * 1411 * <p> 1412 * <b>Definition:</b> 1413 * Explains why this operation definition is needed and why it's been constrained as it has 1414 * </p> 1415 */ 1416 public String getRequirements() { 1417 return getRequirementsElement().getValue(); 1418 } 1419 1420 /** 1421 * Sets the value(s) for <b>requirements</b> () 1422 * 1423 * <p> 1424 * <b>Definition:</b> 1425 * Explains why this operation definition is needed and why it's been constrained as it has 1426 * </p> 1427 */ 1428 public OperationDefinition setRequirements(StringDt theValue) { 1429 myRequirements = theValue; 1430 return this; 1431 } 1432 1433 1434 1435 /** 1436 * Sets the value for <b>requirements</b> () 1437 * 1438 * <p> 1439 * <b>Definition:</b> 1440 * Explains why this operation definition is needed and why it's been constrained as it has 1441 * </p> 1442 */ 1443 public OperationDefinition setRequirements( String theString) { 1444 myRequirements = new StringDt(theString); 1445 return this; 1446 } 1447 1448 1449 /** 1450 * Gets the value(s) for <b>idempotent</b> (). 1451 * creating it if it does 1452 * not exist. Will not return <code>null</code>. 1453 * 1454 * <p> 1455 * <b>Definition:</b> 1456 * Operations that are idempotent (see [HTTP specification definition of idempotent](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)) may be invoked by performing an HTTP GET operation instead of a POST 1457 * </p> 1458 */ 1459 public BooleanDt getIdempotentElement() { 1460 if (myIdempotent == null) { 1461 myIdempotent = new BooleanDt(); 1462 } 1463 return myIdempotent; 1464 } 1465 1466 1467 /** 1468 * Gets the value(s) for <b>idempotent</b> (). 1469 * creating it if it does 1470 * not exist. This method may return <code>null</code>. 1471 * 1472 * <p> 1473 * <b>Definition:</b> 1474 * Operations that are idempotent (see [HTTP specification definition of idempotent](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)) may be invoked by performing an HTTP GET operation instead of a POST 1475 * </p> 1476 */ 1477 public Boolean getIdempotent() { 1478 return getIdempotentElement().getValue(); 1479 } 1480 1481 /** 1482 * Sets the value(s) for <b>idempotent</b> () 1483 * 1484 * <p> 1485 * <b>Definition:</b> 1486 * Operations that are idempotent (see [HTTP specification definition of idempotent](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)) may be invoked by performing an HTTP GET operation instead of a POST 1487 * </p> 1488 */ 1489 public OperationDefinition setIdempotent(BooleanDt theValue) { 1490 myIdempotent = theValue; 1491 return this; 1492 } 1493 1494 1495 1496 /** 1497 * Sets the value for <b>idempotent</b> () 1498 * 1499 * <p> 1500 * <b>Definition:</b> 1501 * Operations that are idempotent (see [HTTP specification definition of idempotent](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html)) may be invoked by performing an HTTP GET operation instead of a POST 1502 * </p> 1503 */ 1504 public OperationDefinition setIdempotent( boolean theBoolean) { 1505 myIdempotent = new BooleanDt(theBoolean); 1506 return this; 1507 } 1508 1509 1510 /** 1511 * Gets the value(s) for <b>code</b> (). 1512 * creating it if it does 1513 * not exist. Will not return <code>null</code>. 1514 * 1515 * <p> 1516 * <b>Definition:</b> 1517 * The name used to invoke the operation 1518 * </p> 1519 */ 1520 public CodeDt getCodeElement() { 1521 if (myCode == null) { 1522 myCode = new CodeDt(); 1523 } 1524 return myCode; 1525 } 1526 1527 1528 /** 1529 * Gets the value(s) for <b>code</b> (). 1530 * creating it if it does 1531 * not exist. This method may return <code>null</code>. 1532 * 1533 * <p> 1534 * <b>Definition:</b> 1535 * The name used to invoke the operation 1536 * </p> 1537 */ 1538 public String getCode() { 1539 return getCodeElement().getValue(); 1540 } 1541 1542 /** 1543 * Sets the value(s) for <b>code</b> () 1544 * 1545 * <p> 1546 * <b>Definition:</b> 1547 * The name used to invoke the operation 1548 * </p> 1549 */ 1550 public OperationDefinition setCode(CodeDt theValue) { 1551 myCode = theValue; 1552 return this; 1553 } 1554 1555 1556 1557 /** 1558 * Sets the value for <b>code</b> () 1559 * 1560 * <p> 1561 * <b>Definition:</b> 1562 * The name used to invoke the operation 1563 * </p> 1564 */ 1565 public OperationDefinition setCode( String theCode) { 1566 myCode = new CodeDt(theCode); 1567 return this; 1568 } 1569 1570 1571 /** 1572 * Gets the value(s) for <b>notes</b> (). 1573 * creating it if it does 1574 * not exist. Will not return <code>null</code>. 1575 * 1576 * <p> 1577 * <b>Definition:</b> 1578 * Additional information about how to use this operation or named query 1579 * </p> 1580 */ 1581 public StringDt getNotesElement() { 1582 if (myNotes == null) { 1583 myNotes = new StringDt(); 1584 } 1585 return myNotes; 1586 } 1587 1588 1589 /** 1590 * Gets the value(s) for <b>notes</b> (). 1591 * creating it if it does 1592 * not exist. This method may return <code>null</code>. 1593 * 1594 * <p> 1595 * <b>Definition:</b> 1596 * Additional information about how to use this operation or named query 1597 * </p> 1598 */ 1599 public String getNotes() { 1600 return getNotesElement().getValue(); 1601 } 1602 1603 /** 1604 * Sets the value(s) for <b>notes</b> () 1605 * 1606 * <p> 1607 * <b>Definition:</b> 1608 * Additional information about how to use this operation or named query 1609 * </p> 1610 */ 1611 public OperationDefinition setNotes(StringDt theValue) { 1612 myNotes = theValue; 1613 return this; 1614 } 1615 1616 1617 1618 /** 1619 * Sets the value for <b>notes</b> () 1620 * 1621 * <p> 1622 * <b>Definition:</b> 1623 * Additional information about how to use this operation or named query 1624 * </p> 1625 */ 1626 public OperationDefinition setNotes( String theString) { 1627 myNotes = new StringDt(theString); 1628 return this; 1629 } 1630 1631 1632 /** 1633 * Gets the value(s) for <b>base</b> (). 1634 * creating it if it does 1635 * not exist. Will not return <code>null</code>. 1636 * 1637 * <p> 1638 * <b>Definition:</b> 1639 * Indicates that this operation definition is a constraining profile on the base 1640 * </p> 1641 */ 1642 public ResourceReferenceDt getBase() { 1643 if (myBase == null) { 1644 myBase = new ResourceReferenceDt(); 1645 } 1646 return myBase; 1647 } 1648 1649 /** 1650 * Sets the value(s) for <b>base</b> () 1651 * 1652 * <p> 1653 * <b>Definition:</b> 1654 * Indicates that this operation definition is a constraining profile on the base 1655 * </p> 1656 */ 1657 public OperationDefinition setBase(ResourceReferenceDt theValue) { 1658 myBase = theValue; 1659 return this; 1660 } 1661 1662 1663 1664 1665 /** 1666 * Gets the value(s) for <b>system</b> (). 1667 * creating it if it does 1668 * not exist. Will not return <code>null</code>. 1669 * 1670 * <p> 1671 * <b>Definition:</b> 1672 * Indicates whether this operation or named query can be invoked at the system level (e.g. without needing to choose a resource type for the context) 1673 * </p> 1674 */ 1675 public BooleanDt getSystemElement() { 1676 if (mySystem == null) { 1677 mySystem = new BooleanDt(); 1678 } 1679 return mySystem; 1680 } 1681 1682 1683 /** 1684 * Gets the value(s) for <b>system</b> (). 1685 * creating it if it does 1686 * not exist. This method may return <code>null</code>. 1687 * 1688 * <p> 1689 * <b>Definition:</b> 1690 * Indicates whether this operation or named query can be invoked at the system level (e.g. without needing to choose a resource type for the context) 1691 * </p> 1692 */ 1693 public Boolean getSystem() { 1694 return getSystemElement().getValue(); 1695 } 1696 1697 /** 1698 * Sets the value(s) for <b>system</b> () 1699 * 1700 * <p> 1701 * <b>Definition:</b> 1702 * Indicates whether this operation or named query can be invoked at the system level (e.g. without needing to choose a resource type for the context) 1703 * </p> 1704 */ 1705 public OperationDefinition setSystem(BooleanDt theValue) { 1706 mySystem = theValue; 1707 return this; 1708 } 1709 1710 1711 1712 /** 1713 * Sets the value for <b>system</b> () 1714 * 1715 * <p> 1716 * <b>Definition:</b> 1717 * Indicates whether this operation or named query can be invoked at the system level (e.g. without needing to choose a resource type for the context) 1718 * </p> 1719 */ 1720 public OperationDefinition setSystem( boolean theBoolean) { 1721 mySystem = new BooleanDt(theBoolean); 1722 return this; 1723 } 1724 1725 1726 /** 1727 * Gets the value(s) for <b>type</b> (). 1728 * creating it if it does 1729 * not exist. Will not return <code>null</code>. 1730 * 1731 * <p> 1732 * <b>Definition:</b> 1733 * Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context) 1734 * </p> 1735 */ 1736 public java.util.List<BoundCodeDt<ResourceTypeEnum>> getType() { 1737 if (myType == null) { 1738 myType = new java.util.ArrayList<BoundCodeDt<ResourceTypeEnum>>(); 1739 } 1740 return myType; 1741 } 1742 1743 /** 1744 * Sets the value(s) for <b>type</b> () 1745 * 1746 * <p> 1747 * <b>Definition:</b> 1748 * Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context) 1749 * </p> 1750 */ 1751 public OperationDefinition setType(java.util.List<BoundCodeDt<ResourceTypeEnum>> theValue) { 1752 myType = theValue; 1753 return this; 1754 } 1755 1756 1757 1758 /** 1759 * Add a value for <b>type</b> () using an enumerated type. This 1760 * is intended as a convenience method for situations where the FHIR defined ValueSets are mandatory 1761 * or contain the desirable codes. If you wish to use codes other than those which are built-in, 1762 * you may also use the {@link #addType()} method. 1763 * 1764 * <p> 1765 * <b>Definition:</b> 1766 * Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context) 1767 * </p> 1768 */ 1769 public BoundCodeDt<ResourceTypeEnum> addType(ResourceTypeEnum theValue) { 1770 BoundCodeDt<ResourceTypeEnum> retVal = new BoundCodeDt<ResourceTypeEnum>(ResourceTypeEnum.VALUESET_BINDER, theValue); 1771 getType().add(retVal); 1772 return retVal; 1773 } 1774 1775 /** 1776 * Gets the first repetition for <b>type</b> (), 1777 * creating it if it does not already exist. 1778 * 1779 * <p> 1780 * <b>Definition:</b> 1781 * Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context) 1782 * </p> 1783 */ 1784 public BoundCodeDt<ResourceTypeEnum> getTypeFirstRep() { 1785 if (getType().size() == 0) { 1786 addType(); 1787 } 1788 return getType().get(0); 1789 } 1790 1791 /** 1792 * Add a value for <b>type</b> () 1793 * 1794 * <p> 1795 * <b>Definition:</b> 1796 * Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context) 1797 * </p> 1798 */ 1799 public BoundCodeDt<ResourceTypeEnum> addType() { 1800 BoundCodeDt<ResourceTypeEnum> retVal = new BoundCodeDt<ResourceTypeEnum>(ResourceTypeEnum.VALUESET_BINDER); 1801 getType().add(retVal); 1802 return retVal; 1803 } 1804 1805 /** 1806 * Sets the value(s), and clears any existing value(s) for <b>type</b> () 1807 * 1808 * <p> 1809 * <b>Definition:</b> 1810 * Indicates whether this operation or named query can be invoked at the resource type level for any given resource type level (e.g. without needing to choose a resource type for the context) 1811 * </p> 1812 */ 1813 public OperationDefinition setType(ResourceTypeEnum theValue) { 1814 getType().clear(); 1815 addType(theValue); 1816 return this; 1817 } 1818 1819 1820 /** 1821 * Gets the value(s) for <b>instance</b> (). 1822 * creating it if it does 1823 * not exist. Will not return <code>null</code>. 1824 * 1825 * <p> 1826 * <b>Definition:</b> 1827 * Indicates whether this operation can be invoked on a particular instance of one of the given types 1828 * </p> 1829 */ 1830 public BooleanDt getInstanceElement() { 1831 if (myInstance == null) { 1832 myInstance = new BooleanDt(); 1833 } 1834 return myInstance; 1835 } 1836 1837 1838 /** 1839 * Gets the value(s) for <b>instance</b> (). 1840 * creating it if it does 1841 * not exist. This method may return <code>null</code>. 1842 * 1843 * <p> 1844 * <b>Definition:</b> 1845 * Indicates whether this operation can be invoked on a particular instance of one of the given types 1846 * </p> 1847 */ 1848 public Boolean getInstance() { 1849 return getInstanceElement().getValue(); 1850 } 1851 1852 /** 1853 * Sets the value(s) for <b>instance</b> () 1854 * 1855 * <p> 1856 * <b>Definition:</b> 1857 * Indicates whether this operation can be invoked on a particular instance of one of the given types 1858 * </p> 1859 */ 1860 public OperationDefinition setInstance(BooleanDt theValue) { 1861 myInstance = theValue; 1862 return this; 1863 } 1864 1865 1866 1867 /** 1868 * Sets the value for <b>instance</b> () 1869 * 1870 * <p> 1871 * <b>Definition:</b> 1872 * Indicates whether this operation can be invoked on a particular instance of one of the given types 1873 * </p> 1874 */ 1875 public OperationDefinition setInstance( boolean theBoolean) { 1876 myInstance = new BooleanDt(theBoolean); 1877 return this; 1878 } 1879 1880 1881 /** 1882 * Gets the value(s) for <b>parameter</b> (). 1883 * creating it if it does 1884 * not exist. Will not return <code>null</code>. 1885 * 1886 * <p> 1887 * <b>Definition:</b> 1888 * The parameters for the operation/query 1889 * </p> 1890 */ 1891 public java.util.List<Parameter> getParameter() { 1892 if (myParameter == null) { 1893 myParameter = new java.util.ArrayList<Parameter>(); 1894 } 1895 return myParameter; 1896 } 1897 1898 /** 1899 * Sets the value(s) for <b>parameter</b> () 1900 * 1901 * <p> 1902 * <b>Definition:</b> 1903 * The parameters for the operation/query 1904 * </p> 1905 */ 1906 public OperationDefinition setParameter(java.util.List<Parameter> theValue) { 1907 myParameter = theValue; 1908 return this; 1909 } 1910 1911 1912 1913 /** 1914 * Adds and returns a new value for <b>parameter</b> () 1915 * 1916 * <p> 1917 * <b>Definition:</b> 1918 * The parameters for the operation/query 1919 * </p> 1920 */ 1921 public Parameter addParameter() { 1922 Parameter newType = new Parameter(); 1923 getParameter().add(newType); 1924 return newType; 1925 } 1926 1927 /** 1928 * Adds a given new value for <b>parameter</b> () 1929 * 1930 * <p> 1931 * <b>Definition:</b> 1932 * The parameters for the operation/query 1933 * </p> 1934 * @param theValue The parameter to add (must not be <code>null</code>) 1935 */ 1936 public OperationDefinition addParameter(Parameter theValue) { 1937 if (theValue == null) { 1938 throw new NullPointerException("theValue must not be null"); 1939 } 1940 getParameter().add(theValue); 1941 return this; 1942 } 1943 1944 /** 1945 * Gets the first repetition for <b>parameter</b> (), 1946 * creating it if it does not already exist. 1947 * 1948 * <p> 1949 * <b>Definition:</b> 1950 * The parameters for the operation/query 1951 * </p> 1952 */ 1953 public Parameter getParameterFirstRep() { 1954 if (getParameter().isEmpty()) { 1955 return addParameter(); 1956 } 1957 return getParameter().get(0); 1958 } 1959 1960 /** 1961 * Block class for child element: <b>OperationDefinition.contact</b> () 1962 * 1963 * <p> 1964 * <b>Definition:</b> 1965 * Contacts to assist a user in finding and communicating with the publisher 1966 * </p> 1967 */ 1968 @Block() 1969 public static class Contact 1970 extends BaseIdentifiableElement implements IResourceBlock { 1971 1972 @Child(name="name", type=StringDt.class, order=0, min=0, max=1, summary=true, modifier=false) 1973 @Description( 1974 shortDefinition="", 1975 formalDefinition="The name of an individual to contact regarding the operation definition" 1976 ) 1977 private StringDt myName; 1978 1979 @Child(name="telecom", type=ContactPointDt.class, order=1, min=0, max=Child.MAX_UNLIMITED, summary=true, modifier=false) 1980 @Description( 1981 shortDefinition="", 1982 formalDefinition="Contact details for individual (if a name was provided) or the publisher" 1983 ) 1984 private java.util.List<ContactPointDt> myTelecom; 1985 1986 1987 @Override 1988 public boolean isEmpty() { 1989 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myName, myTelecom); 1990 } 1991 1992 @Override 1993 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1994 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myName, myTelecom); 1995 } 1996 1997 /** 1998 * Gets the value(s) for <b>name</b> (). 1999 * creating it if it does 2000 * not exist. Will not return <code>null</code>. 2001 * 2002 * <p> 2003 * <b>Definition:</b> 2004 * The name of an individual to contact regarding the operation definition 2005 * </p> 2006 */ 2007 public StringDt getNameElement() { 2008 if (myName == null) { 2009 myName = new StringDt(); 2010 } 2011 return myName; 2012 } 2013 2014 2015 /** 2016 * Gets the value(s) for <b>name</b> (). 2017 * creating it if it does 2018 * not exist. This method may return <code>null</code>. 2019 * 2020 * <p> 2021 * <b>Definition:</b> 2022 * The name of an individual to contact regarding the operation definition 2023 * </p> 2024 */ 2025 public String getName() { 2026 return getNameElement().getValue(); 2027 } 2028 2029 /** 2030 * Sets the value(s) for <b>name</b> () 2031 * 2032 * <p> 2033 * <b>Definition:</b> 2034 * The name of an individual to contact regarding the operation definition 2035 * </p> 2036 */ 2037 public Contact setName(StringDt theValue) { 2038 myName = theValue; 2039 return this; 2040 } 2041 2042 2043 2044 /** 2045 * Sets the value for <b>name</b> () 2046 * 2047 * <p> 2048 * <b>Definition:</b> 2049 * The name of an individual to contact regarding the operation definition 2050 * </p> 2051 */ 2052 public Contact setName( String theString) { 2053 myName = new StringDt(theString); 2054 return this; 2055 } 2056 2057 2058 /** 2059 * Gets the value(s) for <b>telecom</b> (). 2060 * creating it if it does 2061 * not exist. Will not return <code>null</code>. 2062 * 2063 * <p> 2064 * <b>Definition:</b> 2065 * Contact details for individual (if a name was provided) or the publisher 2066 * </p> 2067 */ 2068 public java.util.List<ContactPointDt> getTelecom() { 2069 if (myTelecom == null) { 2070 myTelecom = new java.util.ArrayList<ContactPointDt>(); 2071 } 2072 return myTelecom; 2073 } 2074 2075 /** 2076 * Sets the value(s) for <b>telecom</b> () 2077 * 2078 * <p> 2079 * <b>Definition:</b> 2080 * Contact details for individual (if a name was provided) or the publisher 2081 * </p> 2082 */ 2083 public Contact setTelecom(java.util.List<ContactPointDt> theValue) { 2084 myTelecom = theValue; 2085 return this; 2086 } 2087 2088 2089 2090 /** 2091 * Adds and returns a new value for <b>telecom</b> () 2092 * 2093 * <p> 2094 * <b>Definition:</b> 2095 * Contact details for individual (if a name was provided) or the publisher 2096 * </p> 2097 */ 2098 public ContactPointDt addTelecom() { 2099 ContactPointDt newType = new ContactPointDt(); 2100 getTelecom().add(newType); 2101 return newType; 2102 } 2103 2104 /** 2105 * Adds a given new value for <b>telecom</b> () 2106 * 2107 * <p> 2108 * <b>Definition:</b> 2109 * Contact details for individual (if a name was provided) or the publisher 2110 * </p> 2111 * @param theValue The telecom to add (must not be <code>null</code>) 2112 */ 2113 public Contact addTelecom(ContactPointDt theValue) { 2114 if (theValue == null) { 2115 throw new NullPointerException("theValue must not be null"); 2116 } 2117 getTelecom().add(theValue); 2118 return this; 2119 } 2120 2121 /** 2122 * Gets the first repetition for <b>telecom</b> (), 2123 * creating it if it does not already exist. 2124 * 2125 * <p> 2126 * <b>Definition:</b> 2127 * Contact details for individual (if a name was provided) or the publisher 2128 * </p> 2129 */ 2130 public ContactPointDt getTelecomFirstRep() { 2131 if (getTelecom().isEmpty()) { 2132 return addTelecom(); 2133 } 2134 return getTelecom().get(0); 2135 } 2136 2137 2138 2139 } 2140 2141 2142 /** 2143 * Block class for child element: <b>OperationDefinition.parameter</b> () 2144 * 2145 * <p> 2146 * <b>Definition:</b> 2147 * The parameters for the operation/query 2148 * </p> 2149 */ 2150 @Block() 2151 public static class Parameter 2152 extends BaseIdentifiableElement implements IResourceBlock { 2153 2154 @Child(name="name", type=CodeDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2155 @Description( 2156 shortDefinition="", 2157 formalDefinition="The name of used to identify the parameter" 2158 ) 2159 private CodeDt myName; 2160 2161 @Child(name="use", type=CodeDt.class, order=1, min=1, max=1, summary=false, modifier=false) 2162 @Description( 2163 shortDefinition="", 2164 formalDefinition="Whether this is an input or an output parameter" 2165 ) 2166 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/operation-parameter-use") 2167 private BoundCodeDt<OperationParameterUseEnum> myUse; 2168 2169 @Child(name="min", type=IntegerDt.class, order=2, min=1, max=1, summary=false, modifier=false) 2170 @Description( 2171 shortDefinition="", 2172 formalDefinition="The minimum number of times this parameter SHALL appear in the request or response" 2173 ) 2174 private IntegerDt myMin; 2175 2176 @Child(name="max", type=StringDt.class, order=3, min=1, max=1, summary=false, modifier=false) 2177 @Description( 2178 shortDefinition="", 2179 formalDefinition="The maximum number of times this element is permitted to appear in the request or response" 2180 ) 2181 private StringDt myMax; 2182 2183 @Child(name="documentation", type=StringDt.class, order=4, min=0, max=1, summary=false, modifier=false) 2184 @Description( 2185 shortDefinition="", 2186 formalDefinition="Describes the meaning or use of this parameter" 2187 ) 2188 private StringDt myDocumentation; 2189 2190 @Child(name="type", type=CodeDt.class, order=5, min=0, max=1, summary=false, modifier=false) 2191 @Description( 2192 shortDefinition="", 2193 formalDefinition="The type for this parameter" 2194 ) 2195 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/valueset-operation-parameter-type") 2196 private CodeDt myType; 2197 2198 @Child(name="profile", order=6, min=0, max=1, summary=false, modifier=false, type={ 2199 ca.uhn.fhir.model.dstu2.resource.StructureDefinition.class }) 2200 @Description( 2201 shortDefinition="", 2202 formalDefinition="A profile the specifies the rules that this parameter must conform to" 2203 ) 2204 private ResourceReferenceDt myProfile; 2205 2206 @Child(name="binding", order=7, min=0, max=1, summary=false, modifier=false) 2207 @Description( 2208 shortDefinition="", 2209 formalDefinition="Binds to a value set if this parameter is coded (code, Coding, CodeableConcept)" 2210 ) 2211 private ParameterBinding myBinding; 2212 2213 @Child(name="part", type=Parameter.class, order=8, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 2214 @Description( 2215 shortDefinition="", 2216 formalDefinition="The parts of a Tuple Parameter" 2217 ) 2218 private java.util.List<Parameter> myPart; 2219 2220 2221 @Override 2222 public boolean isEmpty() { 2223 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myName, myUse, myMin, myMax, myDocumentation, myType, myProfile, myBinding, myPart); 2224 } 2225 2226 @Override 2227 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2228 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myName, myUse, myMin, myMax, myDocumentation, myType, myProfile, myBinding, myPart); 2229 } 2230 2231 /** 2232 * Gets the value(s) for <b>name</b> (). 2233 * creating it if it does 2234 * not exist. Will not return <code>null</code>. 2235 * 2236 * <p> 2237 * <b>Definition:</b> 2238 * The name of used to identify the parameter 2239 * </p> 2240 */ 2241 public CodeDt getNameElement() { 2242 if (myName == null) { 2243 myName = new CodeDt(); 2244 } 2245 return myName; 2246 } 2247 2248 2249 /** 2250 * Gets the value(s) for <b>name</b> (). 2251 * creating it if it does 2252 * not exist. This method may return <code>null</code>. 2253 * 2254 * <p> 2255 * <b>Definition:</b> 2256 * The name of used to identify the parameter 2257 * </p> 2258 */ 2259 public String getName() { 2260 return getNameElement().getValue(); 2261 } 2262 2263 /** 2264 * Sets the value(s) for <b>name</b> () 2265 * 2266 * <p> 2267 * <b>Definition:</b> 2268 * The name of used to identify the parameter 2269 * </p> 2270 */ 2271 public Parameter setName(CodeDt theValue) { 2272 myName = theValue; 2273 return this; 2274 } 2275 2276 2277 2278 /** 2279 * Sets the value for <b>name</b> () 2280 * 2281 * <p> 2282 * <b>Definition:</b> 2283 * The name of used to identify the parameter 2284 * </p> 2285 */ 2286 public Parameter setName( String theCode) { 2287 myName = new CodeDt(theCode); 2288 return this; 2289 } 2290 2291 2292 /** 2293 * Gets the value(s) for <b>use</b> (). 2294 * creating it if it does 2295 * not exist. Will not return <code>null</code>. 2296 * 2297 * <p> 2298 * <b>Definition:</b> 2299 * Whether this is an input or an output parameter 2300 * </p> 2301 */ 2302 public BoundCodeDt<OperationParameterUseEnum> getUseElement() { 2303 if (myUse == null) { 2304 myUse = new BoundCodeDt<OperationParameterUseEnum>(OperationParameterUseEnum.VALUESET_BINDER); 2305 } 2306 return myUse; 2307 } 2308 2309 2310 /** 2311 * Gets the value(s) for <b>use</b> (). 2312 * creating it if it does 2313 * not exist. This method may return <code>null</code>. 2314 * 2315 * <p> 2316 * <b>Definition:</b> 2317 * Whether this is an input or an output parameter 2318 * </p> 2319 */ 2320 public String getUse() { 2321 return getUseElement().getValue(); 2322 } 2323 2324 /** 2325 * Sets the value(s) for <b>use</b> () 2326 * 2327 * <p> 2328 * <b>Definition:</b> 2329 * Whether this is an input or an output parameter 2330 * </p> 2331 */ 2332 public Parameter setUse(BoundCodeDt<OperationParameterUseEnum> theValue) { 2333 myUse = theValue; 2334 return this; 2335 } 2336 2337 2338 2339 /** 2340 * Sets the value(s) for <b>use</b> () 2341 * 2342 * <p> 2343 * <b>Definition:</b> 2344 * Whether this is an input or an output parameter 2345 * </p> 2346 */ 2347 public Parameter setUse(OperationParameterUseEnum theValue) { 2348 setUse(new BoundCodeDt<OperationParameterUseEnum>(OperationParameterUseEnum.VALUESET_BINDER, theValue)); 2349 2350/* 2351 getUseElement().setValueAsEnum(theValue); 2352*/ 2353 return this; 2354 } 2355 2356 2357 /** 2358 * Gets the value(s) for <b>min</b> (). 2359 * creating it if it does 2360 * not exist. Will not return <code>null</code>. 2361 * 2362 * <p> 2363 * <b>Definition:</b> 2364 * The minimum number of times this parameter SHALL appear in the request or response 2365 * </p> 2366 */ 2367 public IntegerDt getMinElement() { 2368 if (myMin == null) { 2369 myMin = new IntegerDt(); 2370 } 2371 return myMin; 2372 } 2373 2374 2375 /** 2376 * Gets the value(s) for <b>min</b> (). 2377 * creating it if it does 2378 * not exist. This method may return <code>null</code>. 2379 * 2380 * <p> 2381 * <b>Definition:</b> 2382 * The minimum number of times this parameter SHALL appear in the request or response 2383 * </p> 2384 */ 2385 public Integer getMin() { 2386 return getMinElement().getValue(); 2387 } 2388 2389 /** 2390 * Sets the value(s) for <b>min</b> () 2391 * 2392 * <p> 2393 * <b>Definition:</b> 2394 * The minimum number of times this parameter SHALL appear in the request or response 2395 * </p> 2396 */ 2397 public Parameter setMin(IntegerDt theValue) { 2398 myMin = theValue; 2399 return this; 2400 } 2401 2402 2403 2404 /** 2405 * Sets the value for <b>min</b> () 2406 * 2407 * <p> 2408 * <b>Definition:</b> 2409 * The minimum number of times this parameter SHALL appear in the request or response 2410 * </p> 2411 */ 2412 public Parameter setMin( int theInteger) { 2413 myMin = new IntegerDt(theInteger); 2414 return this; 2415 } 2416 2417 2418 /** 2419 * Gets the value(s) for <b>max</b> (). 2420 * creating it if it does 2421 * not exist. Will not return <code>null</code>. 2422 * 2423 * <p> 2424 * <b>Definition:</b> 2425 * The maximum number of times this element is permitted to appear in the request or response 2426 * </p> 2427 */ 2428 public StringDt getMaxElement() { 2429 if (myMax == null) { 2430 myMax = new StringDt(); 2431 } 2432 return myMax; 2433 } 2434 2435 2436 /** 2437 * Gets the value(s) for <b>max</b> (). 2438 * creating it if it does 2439 * not exist. This method may return <code>null</code>. 2440 * 2441 * <p> 2442 * <b>Definition:</b> 2443 * The maximum number of times this element is permitted to appear in the request or response 2444 * </p> 2445 */ 2446 public String getMax() { 2447 return getMaxElement().getValue(); 2448 } 2449 2450 /** 2451 * Sets the value(s) for <b>max</b> () 2452 * 2453 * <p> 2454 * <b>Definition:</b> 2455 * The maximum number of times this element is permitted to appear in the request or response 2456 * </p> 2457 */ 2458 public Parameter setMax(StringDt theValue) { 2459 myMax = theValue; 2460 return this; 2461 } 2462 2463 2464 2465 /** 2466 * Sets the value for <b>max</b> () 2467 * 2468 * <p> 2469 * <b>Definition:</b> 2470 * The maximum number of times this element is permitted to appear in the request or response 2471 * </p> 2472 */ 2473 public Parameter setMax( String theString) { 2474 myMax = new StringDt(theString); 2475 return this; 2476 } 2477 2478 2479 /** 2480 * Gets the value(s) for <b>documentation</b> (). 2481 * creating it if it does 2482 * not exist. Will not return <code>null</code>. 2483 * 2484 * <p> 2485 * <b>Definition:</b> 2486 * Describes the meaning or use of this parameter 2487 * </p> 2488 */ 2489 public StringDt getDocumentationElement() { 2490 if (myDocumentation == null) { 2491 myDocumentation = new StringDt(); 2492 } 2493 return myDocumentation; 2494 } 2495 2496 2497 /** 2498 * Gets the value(s) for <b>documentation</b> (). 2499 * creating it if it does 2500 * not exist. This method may return <code>null</code>. 2501 * 2502 * <p> 2503 * <b>Definition:</b> 2504 * Describes the meaning or use of this parameter 2505 * </p> 2506 */ 2507 public String getDocumentation() { 2508 return getDocumentationElement().getValue(); 2509 } 2510 2511 /** 2512 * Sets the value(s) for <b>documentation</b> () 2513 * 2514 * <p> 2515 * <b>Definition:</b> 2516 * Describes the meaning or use of this parameter 2517 * </p> 2518 */ 2519 public Parameter setDocumentation(StringDt theValue) { 2520 myDocumentation = theValue; 2521 return this; 2522 } 2523 2524 2525 2526 /** 2527 * Sets the value for <b>documentation</b> () 2528 * 2529 * <p> 2530 * <b>Definition:</b> 2531 * Describes the meaning or use of this parameter 2532 * </p> 2533 */ 2534 public Parameter setDocumentation( String theString) { 2535 myDocumentation = new StringDt(theString); 2536 return this; 2537 } 2538 2539 2540 /** 2541 * Gets the value(s) for <b>type</b> (). 2542 * creating it if it does 2543 * not exist. Will not return <code>null</code>. 2544 * 2545 * <p> 2546 * <b>Definition:</b> 2547 * The type for this parameter 2548 * </p> 2549 */ 2550 public CodeDt getTypeElement() { 2551 if (myType == null) { 2552 myType = new CodeDt(); 2553 } 2554 return myType; 2555 } 2556 2557 2558 /** 2559 * Gets the value(s) for <b>type</b> (). 2560 * creating it if it does 2561 * not exist. This method may return <code>null</code>. 2562 * 2563 * <p> 2564 * <b>Definition:</b> 2565 * The type for this parameter 2566 * </p> 2567 */ 2568 public String getType() { 2569 return getTypeElement().getValue(); 2570 } 2571 2572 /** 2573 * Sets the value(s) for <b>type</b> () 2574 * 2575 * <p> 2576 * <b>Definition:</b> 2577 * The type for this parameter 2578 * </p> 2579 */ 2580 public Parameter setType(CodeDt theValue) { 2581 myType = theValue; 2582 return this; 2583 } 2584 2585 2586 2587 /** 2588 * Sets the value for <b>type</b> () 2589 * 2590 * <p> 2591 * <b>Definition:</b> 2592 * The type for this parameter 2593 * </p> 2594 */ 2595 public Parameter setType( String theCode) { 2596 myType = new CodeDt(theCode); 2597 return this; 2598 } 2599 2600 2601 /** 2602 * Gets the value(s) for <b>profile</b> (). 2603 * creating it if it does 2604 * not exist. Will not return <code>null</code>. 2605 * 2606 * <p> 2607 * <b>Definition:</b> 2608 * A profile the specifies the rules that this parameter must conform to 2609 * </p> 2610 */ 2611 public ResourceReferenceDt getProfile() { 2612 if (myProfile == null) { 2613 myProfile = new ResourceReferenceDt(); 2614 } 2615 return myProfile; 2616 } 2617 2618 /** 2619 * Sets the value(s) for <b>profile</b> () 2620 * 2621 * <p> 2622 * <b>Definition:</b> 2623 * A profile the specifies the rules that this parameter must conform to 2624 * </p> 2625 */ 2626 public Parameter setProfile(ResourceReferenceDt theValue) { 2627 myProfile = theValue; 2628 return this; 2629 } 2630 2631 2632 2633 2634 /** 2635 * Gets the value(s) for <b>binding</b> (). 2636 * creating it if it does 2637 * not exist. Will not return <code>null</code>. 2638 * 2639 * <p> 2640 * <b>Definition:</b> 2641 * Binds to a value set if this parameter is coded (code, Coding, CodeableConcept) 2642 * </p> 2643 */ 2644 public ParameterBinding getBinding() { 2645 if (myBinding == null) { 2646 myBinding = new ParameterBinding(); 2647 } 2648 return myBinding; 2649 } 2650 2651 /** 2652 * Sets the value(s) for <b>binding</b> () 2653 * 2654 * <p> 2655 * <b>Definition:</b> 2656 * Binds to a value set if this parameter is coded (code, Coding, CodeableConcept) 2657 * </p> 2658 */ 2659 public Parameter setBinding(ParameterBinding theValue) { 2660 myBinding = theValue; 2661 return this; 2662 } 2663 2664 2665 2666 2667 /** 2668 * Gets the value(s) for <b>part</b> (). 2669 * creating it if it does 2670 * not exist. Will not return <code>null</code>. 2671 * 2672 * <p> 2673 * <b>Definition:</b> 2674 * The parts of a Tuple Parameter 2675 * </p> 2676 */ 2677 public java.util.List<Parameter> getPart() { 2678 if (myPart == null) { 2679 myPart = new java.util.ArrayList<Parameter>(); 2680 } 2681 return myPart; 2682 } 2683 2684 /** 2685 * Sets the value(s) for <b>part</b> () 2686 * 2687 * <p> 2688 * <b>Definition:</b> 2689 * The parts of a Tuple Parameter 2690 * </p> 2691 */ 2692 public Parameter setPart(java.util.List<Parameter> theValue) { 2693 myPart = theValue; 2694 return this; 2695 } 2696 2697 2698 2699 /** 2700 * Adds and returns a new value for <b>part</b> () 2701 * 2702 * <p> 2703 * <b>Definition:</b> 2704 * The parts of a Tuple Parameter 2705 * </p> 2706 */ 2707 public Parameter addPart() { 2708 Parameter newType = new Parameter(); 2709 getPart().add(newType); 2710 return newType; 2711 } 2712 2713 /** 2714 * Adds a given new value for <b>part</b> () 2715 * 2716 * <p> 2717 * <b>Definition:</b> 2718 * The parts of a Tuple Parameter 2719 * </p> 2720 * @param theValue The part to add (must not be <code>null</code>) 2721 */ 2722 public Parameter addPart(Parameter theValue) { 2723 if (theValue == null) { 2724 throw new NullPointerException("theValue must not be null"); 2725 } 2726 getPart().add(theValue); 2727 return this; 2728 } 2729 2730 /** 2731 * Gets the first repetition for <b>part</b> (), 2732 * creating it if it does not already exist. 2733 * 2734 * <p> 2735 * <b>Definition:</b> 2736 * The parts of a Tuple Parameter 2737 * </p> 2738 */ 2739 public Parameter getPartFirstRep() { 2740 if (getPart().isEmpty()) { 2741 return addPart(); 2742 } 2743 return getPart().get(0); 2744 } 2745 2746 2747 2748 } 2749 2750 /** 2751 * Block class for child element: <b>OperationDefinition.parameter.binding</b> () 2752 * 2753 * <p> 2754 * <b>Definition:</b> 2755 * Binds to a value set if this parameter is coded (code, Coding, CodeableConcept) 2756 * </p> 2757 */ 2758 @Block() 2759 public static class ParameterBinding 2760 extends BaseIdentifiableElement implements IResourceBlock { 2761 2762 @Child(name="strength", type=CodeDt.class, order=0, min=1, max=1, summary=false, modifier=false) 2763 @Description( 2764 shortDefinition="", 2765 formalDefinition="Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances" 2766 ) 2767 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/binding-strength") 2768 private BoundCodeDt<BindingStrengthEnum> myStrength; 2769 2770 @Child(name="valueSet", order=1, min=1, max=1, summary=false, modifier=false, type={ 2771 UriDt.class, ValueSet.class }) 2772 @Description( 2773 shortDefinition="", 2774 formalDefinition="Points to the value set or external definition (e.g. implicit value set) that identifies the set of codes to be used" 2775 ) 2776 private IDatatype myValueSet; 2777 2778 2779 @Override 2780 public boolean isEmpty() { 2781 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myStrength, myValueSet); 2782 } 2783 2784 @Override 2785 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 2786 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myStrength, myValueSet); 2787 } 2788 2789 /** 2790 * Gets the value(s) for <b>strength</b> (). 2791 * creating it if it does 2792 * not exist. Will not return <code>null</code>. 2793 * 2794 * <p> 2795 * <b>Definition:</b> 2796 * Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances 2797 * </p> 2798 */ 2799 public BoundCodeDt<BindingStrengthEnum> getStrengthElement() { 2800 if (myStrength == null) { 2801 myStrength = new BoundCodeDt<BindingStrengthEnum>(BindingStrengthEnum.VALUESET_BINDER); 2802 } 2803 return myStrength; 2804 } 2805 2806 2807 /** 2808 * Gets the value(s) for <b>strength</b> (). 2809 * creating it if it does 2810 * not exist. This method may return <code>null</code>. 2811 * 2812 * <p> 2813 * <b>Definition:</b> 2814 * Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances 2815 * </p> 2816 */ 2817 public String getStrength() { 2818 return getStrengthElement().getValue(); 2819 } 2820 2821 /** 2822 * Sets the value(s) for <b>strength</b> () 2823 * 2824 * <p> 2825 * <b>Definition:</b> 2826 * Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances 2827 * </p> 2828 */ 2829 public ParameterBinding setStrength(BoundCodeDt<BindingStrengthEnum> theValue) { 2830 myStrength = theValue; 2831 return this; 2832 } 2833 2834 2835 2836 /** 2837 * Sets the value(s) for <b>strength</b> () 2838 * 2839 * <p> 2840 * <b>Definition:</b> 2841 * Indicates the degree of conformance expectations associated with this binding - that is, the degree to which the provided value set must be adhered to in the instances 2842 * </p> 2843 */ 2844 public ParameterBinding setStrength(BindingStrengthEnum theValue) { 2845 setStrength(new BoundCodeDt<BindingStrengthEnum>(BindingStrengthEnum.VALUESET_BINDER, theValue)); 2846 2847/* 2848 getStrengthElement().setValueAsEnum(theValue); 2849*/ 2850 return this; 2851 } 2852 2853 2854 /** 2855 * Gets the value(s) for <b>valueSet[x]</b> (). 2856 * creating it if it does 2857 * not exist. Will not return <code>null</code>. 2858 * 2859 * <p> 2860 * <b>Definition:</b> 2861 * Points to the value set or external definition (e.g. implicit value set) that identifies the set of codes to be used 2862 * </p> 2863 */ 2864 public IDatatype getValueSet() { 2865 return myValueSet; 2866 } 2867 2868 /** 2869 * Sets the value(s) for <b>valueSet[x]</b> () 2870 * 2871 * <p> 2872 * <b>Definition:</b> 2873 * Points to the value set or external definition (e.g. implicit value set) that identifies the set of codes to be used 2874 * </p> 2875 */ 2876 public ParameterBinding setValueSet(IDatatype theValue) { 2877 myValueSet = theValue; 2878 return this; 2879 } 2880 2881 2882 2883 2884 2885 2886 } 2887 2888 2889 2890 2891 2892 @Override 2893 public String getResourceName() { 2894 return "OperationDefinition"; 2895 } 2896 2897 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 2898 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 2899 } 2900 2901 2902}