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>DeviceMetric</b> Resource 282 * (Measurement, calculation or setting capability of a medical device) 283 * 284 * <p> 285 * <b>Definition:</b> 286 * Describes a measurement, calculation or setting capability of a medical device. 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/DeviceMetric">http://hl7.org/fhir/profiles/DeviceMetric</a> 297 * </p> 298 * 299 */ 300@ResourceDef(name="DeviceMetric", profile="http://hl7.org/fhir/profiles/DeviceMetric", id="devicemetric") 301public class DeviceMetric extends ca.uhn.fhir.model.dstu2.resource.BaseResource 302 implements IResource 303 { 304 305 /** 306 * Search parameter constant for <b>parent</b> 307 * <p> 308 * Description: <b>The parent DeviceMetric resource</b><br> 309 * Type: <b>reference</b><br> 310 * Path: <b>DeviceMetric.parent</b><br> 311 * </p> 312 */ 313 @SearchParamDefinition(name="parent", path="DeviceMetric.parent", description="The parent DeviceMetric resource", type="reference" 314 ) 315 public static final String SP_PARENT = "parent"; 316 317 /** 318 * <b>Fluent Client</b> search parameter constant for <b>parent</b> 319 * <p> 320 * Description: <b>The parent DeviceMetric resource</b><br> 321 * Type: <b>reference</b><br> 322 * Path: <b>DeviceMetric.parent</b><br> 323 * </p> 324 */ 325 public static final ReferenceClientParam PARENT = new ReferenceClientParam(SP_PARENT); 326 327 /** 328 * Search parameter constant for <b>type</b> 329 * <p> 330 * Description: <b>The component type</b><br> 331 * Type: <b>token</b><br> 332 * Path: <b>DeviceMetric.type</b><br> 333 * </p> 334 */ 335 @SearchParamDefinition(name="type", path="DeviceMetric.type", description="The component type", type="token" 336 ) 337 public static final String SP_TYPE = "type"; 338 339 /** 340 * <b>Fluent Client</b> search parameter constant for <b>type</b> 341 * <p> 342 * Description: <b>The component type</b><br> 343 * Type: <b>token</b><br> 344 * Path: <b>DeviceMetric.type</b><br> 345 * </p> 346 */ 347 public static final TokenClientParam TYPE = new TokenClientParam(SP_TYPE); 348 349 /** 350 * Search parameter constant for <b>source</b> 351 * <p> 352 * Description: <b>The device resource</b><br> 353 * Type: <b>reference</b><br> 354 * Path: <b>DeviceMetric.source</b><br> 355 * </p> 356 */ 357 @SearchParamDefinition(name="source", path="DeviceMetric.source", description="The device resource", type="reference" 358, providesMembershipIn={ 359 @Compartment(name="Patient") } 360 ) 361 public static final String SP_SOURCE = "source"; 362 363 /** 364 * <b>Fluent Client</b> search parameter constant for <b>source</b> 365 * <p> 366 * Description: <b>The device resource</b><br> 367 * Type: <b>reference</b><br> 368 * Path: <b>DeviceMetric.source</b><br> 369 * </p> 370 */ 371 public static final ReferenceClientParam SOURCE = new ReferenceClientParam(SP_SOURCE); 372 373 /** 374 * Search parameter constant for <b>category</b> 375 * <p> 376 * Description: <b>The category of the metric</b><br> 377 * Type: <b>token</b><br> 378 * Path: <b>DeviceMetric.category</b><br> 379 * </p> 380 */ 381 @SearchParamDefinition(name="category", path="DeviceMetric.category", description="The category of the metric", type="token" 382 ) 383 public static final String SP_CATEGORY = "category"; 384 385 /** 386 * <b>Fluent Client</b> search parameter constant for <b>category</b> 387 * <p> 388 * Description: <b>The category of the metric</b><br> 389 * Type: <b>token</b><br> 390 * Path: <b>DeviceMetric.category</b><br> 391 * </p> 392 */ 393 public static final TokenClientParam CATEGORY = new TokenClientParam(SP_CATEGORY); 394 395 /** 396 * Search parameter constant for <b>identifier</b> 397 * <p> 398 * Description: <b>The identifier of the metric</b><br> 399 * Type: <b>token</b><br> 400 * Path: <b>DeviceMetric.identifier</b><br> 401 * </p> 402 */ 403 @SearchParamDefinition(name="identifier", path="DeviceMetric.identifier", description="The identifier of the metric", type="token" 404 ) 405 public static final String SP_IDENTIFIER = "identifier"; 406 407 /** 408 * <b>Fluent Client</b> search parameter constant for <b>identifier</b> 409 * <p> 410 * Description: <b>The identifier of the metric</b><br> 411 * Type: <b>token</b><br> 412 * Path: <b>DeviceMetric.identifier</b><br> 413 * </p> 414 */ 415 public static final TokenClientParam IDENTIFIER = new TokenClientParam(SP_IDENTIFIER); 416 417 418 /** 419 * Constant for fluent queries to be used to add include statements. Specifies 420 * the path value of "<b>DeviceMetric:parent</b>". 421 */ 422 public static final Include INCLUDE_PARENT = new Include("DeviceMetric:parent"); 423 424 /** 425 * Constant for fluent queries to be used to add include statements. Specifies 426 * the path value of "<b>DeviceMetric:source</b>". 427 */ 428 public static final Include INCLUDE_SOURCE = new Include("DeviceMetric:source"); 429 430 431 @Child(name="type", type=CodeableConceptDt.class, order=0, min=1, max=1, summary=false, modifier=false) 432 @Description( 433 shortDefinition="Type of metric", 434 formalDefinition="Describes the type of the metric. For example: Heart Rate, PEEP Setting, etc." 435 ) 436 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "https://rtmms.nist.gov/rtmms/index.htm#!hrosetta") 437 private CodeableConceptDt myType; 438 439 @Child(name="identifier", type=IdentifierDt.class, order=1, min=1, max=1, summary=false, modifier=false) 440 @Description( 441 shortDefinition="Unique identifier of this DeviceMetric", 442 formalDefinition="Describes the unique identification of this metric that has been assigned by the device or gateway software. For example: handle ID. It should be noted that in order to make the identifier unique, the system element of the identifier should be set to the unique identifier of the device." 443 ) 444 private IdentifierDt myIdentifier; 445 446 @Child(name="unit", type=CodeableConceptDt.class, order=2, min=0, max=1, summary=false, modifier=false) 447 @Description( 448 shortDefinition="Unit of metric", 449 formalDefinition="Describes the unit that an observed value determined for this metric will have. For example: Percent, Seconds, etc." 450 ) 451 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "https://rtmms.nist.gov/rtmms/index.htm#!units") 452 private CodeableConceptDt myUnit; 453 454 @Child(name="source", order=3, min=0, max=1, summary=false, modifier=false, type={ 455 ca.uhn.fhir.model.dstu2.resource.Device.class 456 }) 457 @Description( 458 shortDefinition="Describes the link to the source Device", 459 formalDefinition="Describes the link to the Device that this DeviceMetric belongs to and that contains administrative device information such as manufacture, serial number, etc." 460 ) 461 private ResourceReferenceDt mySource; 462 463 @Child(name="parent", order=4, min=0, max=1, summary=false, modifier=false, type={ 464 ca.uhn.fhir.model.dstu2.resource.DeviceComponent.class 465 }) 466 @Description( 467 shortDefinition="Describes the link to the parent DeviceComponent", 468 formalDefinition="Describes the link to the DeviceComponent that this DeviceMetric belongs to and that provide information about the location of this DeviceMetric in the containment structure of the parent Device. An example would be a DeviceComponent that represents a Channel. This reference can be used by a client application to distinguish DeviceMetrics that have the same type, but should be interpreted based on their containment location." 469 ) 470 private ResourceReferenceDt myParent; 471 472 @Child(name="operationalStatus", type=CodeDt.class, order=5, min=0, max=1, summary=false, modifier=false) 473 @Description( 474 shortDefinition="on | off | standby", 475 formalDefinition="Indicates current operational state of the device. For example: On, Off, Standby, etc." 476 ) 477 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/metric-operational-status") 478 private BoundCodeDt<DeviceMetricOperationalStatusEnum> myOperationalStatus; 479 480 @Child(name="color", type=CodeDt.class, order=6, min=0, max=1, summary=false, modifier=false) 481 @Description( 482 shortDefinition="black | red | green | yellow | blue | magenta | cyan | white", 483 formalDefinition="Describes the color representation for the metric. This is often used to aid clinicians to track and identify parameter types by color. In practice, consider a Patient Monitor that has ECG/HR and Pleth for example; the parameters are displayed in different characteristic colors, such as HR-blue, BP-green, and PR and SpO2- magenta." 484 ) 485 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/metric-color") 486 private BoundCodeDt<DeviceMetricColorEnum> myColor; 487 488 @Child(name="category", type=CodeDt.class, order=7, min=1, max=1, summary=false, modifier=false) 489 @Description( 490 shortDefinition="measurement | setting | calculation | unspecified", 491 formalDefinition="Indicates the category of the observation generation process. A DeviceMetric can be for example a setting, measurement, or calculation." 492 ) 493 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/metric-category") 494 private BoundCodeDt<DeviceMetricCategoryEnum> myCategory; 495 496 @Child(name="measurementPeriod", type=TimingDt.class, order=8, min=0, max=1, summary=false, modifier=false) 497 @Description( 498 shortDefinition="Describes the measurement repetition time", 499 formalDefinition="Describes the measurement repetition time. This is not necessarily the same as the update period. The measurement repetition time can range from milliseconds up to hours. An example for a measurement repetition time in the range of milliseconds is the sampling rate of an ECG. An example for a measurement repetition time in the range of hours is a NIBP that is triggered automatically every hour. The update period may be different than the measurement repetition time, if the device does not update the published observed value with the same frequency as it was measured." 500 ) 501 private TimingDt myMeasurementPeriod; 502 503 @Child(name="calibration", order=9, min=0, max=Child.MAX_UNLIMITED, summary=false, modifier=false) 504 @Description( 505 shortDefinition="Describes the calibrations that have been performed or that are required to be performed", 506 formalDefinition="Describes the calibrations that have been performed or that are required to be performed" 507 ) 508 private java.util.List<Calibration> myCalibration; 509 510 511 @Override 512 public boolean isEmpty() { 513 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myType, myIdentifier, myUnit, mySource, myParent, myOperationalStatus, myColor, myCategory, myMeasurementPeriod, myCalibration); 514 } 515 516 @Override 517 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 518 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myType, myIdentifier, myUnit, mySource, myParent, myOperationalStatus, myColor, myCategory, myMeasurementPeriod, myCalibration); 519 } 520 521 /** 522 * Gets the value(s) for <b>type</b> (Type of metric). 523 * creating it if it does 524 * not exist. Will not return <code>null</code>. 525 * 526 * <p> 527 * <b>Definition:</b> 528 * Describes the type of the metric. For example: Heart Rate, PEEP Setting, etc. 529 * </p> 530 */ 531 public CodeableConceptDt getType() { 532 if (myType == null) { 533 myType = new CodeableConceptDt(); 534 } 535 return myType; 536 } 537 538 /** 539 * Sets the value(s) for <b>type</b> (Type of metric) 540 * 541 * <p> 542 * <b>Definition:</b> 543 * Describes the type of the metric. For example: Heart Rate, PEEP Setting, etc. 544 * </p> 545 */ 546 public DeviceMetric setType(CodeableConceptDt theValue) { 547 myType = theValue; 548 return this; 549 } 550 551 552 553 554 /** 555 * Gets the value(s) for <b>identifier</b> (Unique identifier of this DeviceMetric). 556 * creating it if it does 557 * not exist. Will not return <code>null</code>. 558 * 559 * <p> 560 * <b>Definition:</b> 561 * Describes the unique identification of this metric that has been assigned by the device or gateway software. For example: handle ID. It should be noted that in order to make the identifier unique, the system element of the identifier should be set to the unique identifier of the device. 562 * </p> 563 */ 564 public IdentifierDt getIdentifier() { 565 if (myIdentifier == null) { 566 myIdentifier = new IdentifierDt(); 567 } 568 return myIdentifier; 569 } 570 571 /** 572 * Sets the value(s) for <b>identifier</b> (Unique identifier of this DeviceMetric) 573 * 574 * <p> 575 * <b>Definition:</b> 576 * Describes the unique identification of this metric that has been assigned by the device or gateway software. For example: handle ID. It should be noted that in order to make the identifier unique, the system element of the identifier should be set to the unique identifier of the device. 577 * </p> 578 */ 579 public DeviceMetric setIdentifier(IdentifierDt theValue) { 580 myIdentifier = theValue; 581 return this; 582 } 583 584 585 586 587 /** 588 * Gets the value(s) for <b>unit</b> (Unit of metric). 589 * creating it if it does 590 * not exist. Will not return <code>null</code>. 591 * 592 * <p> 593 * <b>Definition:</b> 594 * Describes the unit that an observed value determined for this metric will have. For example: Percent, Seconds, etc. 595 * </p> 596 */ 597 public CodeableConceptDt getUnit() { 598 if (myUnit == null) { 599 myUnit = new CodeableConceptDt(); 600 } 601 return myUnit; 602 } 603 604 /** 605 * Sets the value(s) for <b>unit</b> (Unit of metric) 606 * 607 * <p> 608 * <b>Definition:</b> 609 * Describes the unit that an observed value determined for this metric will have. For example: Percent, Seconds, etc. 610 * </p> 611 */ 612 public DeviceMetric setUnit(CodeableConceptDt theValue) { 613 myUnit = theValue; 614 return this; 615 } 616 617 618 619 620 /** 621 * Gets the value(s) for <b>source</b> (Describes the link to the source Device). 622 * creating it if it does 623 * not exist. Will not return <code>null</code>. 624 * 625 * <p> 626 * <b>Definition:</b> 627 * Describes the link to the Device that this DeviceMetric belongs to and that contains administrative device information such as manufacture, serial number, etc. 628 * </p> 629 */ 630 public ResourceReferenceDt getSource() { 631 if (mySource == null) { 632 mySource = new ResourceReferenceDt(); 633 } 634 return mySource; 635 } 636 637 /** 638 * Sets the value(s) for <b>source</b> (Describes the link to the source Device) 639 * 640 * <p> 641 * <b>Definition:</b> 642 * Describes the link to the Device that this DeviceMetric belongs to and that contains administrative device information such as manufacture, serial number, etc. 643 * </p> 644 */ 645 public DeviceMetric setSource(ResourceReferenceDt theValue) { 646 mySource = theValue; 647 return this; 648 } 649 650 651 652 653 /** 654 * Gets the value(s) for <b>parent</b> (Describes the link to the parent DeviceComponent). 655 * creating it if it does 656 * not exist. Will not return <code>null</code>. 657 * 658 * <p> 659 * <b>Definition:</b> 660 * Describes the link to the DeviceComponent that this DeviceMetric belongs to and that provide information about the location of this DeviceMetric in the containment structure of the parent Device. An example would be a DeviceComponent that represents a Channel. This reference can be used by a client application to distinguish DeviceMetrics that have the same type, but should be interpreted based on their containment location. 661 * </p> 662 */ 663 public ResourceReferenceDt getParent() { 664 if (myParent == null) { 665 myParent = new ResourceReferenceDt(); 666 } 667 return myParent; 668 } 669 670 /** 671 * Sets the value(s) for <b>parent</b> (Describes the link to the parent DeviceComponent) 672 * 673 * <p> 674 * <b>Definition:</b> 675 * Describes the link to the DeviceComponent that this DeviceMetric belongs to and that provide information about the location of this DeviceMetric in the containment structure of the parent Device. An example would be a DeviceComponent that represents a Channel. This reference can be used by a client application to distinguish DeviceMetrics that have the same type, but should be interpreted based on their containment location. 676 * </p> 677 */ 678 public DeviceMetric setParent(ResourceReferenceDt theValue) { 679 myParent = theValue; 680 return this; 681 } 682 683 684 685 686 /** 687 * Gets the value(s) for <b>operationalStatus</b> (on | off | standby). 688 * creating it if it does 689 * not exist. Will not return <code>null</code>. 690 * 691 * <p> 692 * <b>Definition:</b> 693 * Indicates current operational state of the device. For example: On, Off, Standby, etc. 694 * </p> 695 */ 696 public BoundCodeDt<DeviceMetricOperationalStatusEnum> getOperationalStatusElement() { 697 if (myOperationalStatus == null) { 698 myOperationalStatus = new BoundCodeDt<DeviceMetricOperationalStatusEnum>(DeviceMetricOperationalStatusEnum.VALUESET_BINDER); 699 } 700 return myOperationalStatus; 701 } 702 703 704 /** 705 * Gets the value(s) for <b>operationalStatus</b> (on | off | standby). 706 * creating it if it does 707 * not exist. This method may return <code>null</code>. 708 * 709 * <p> 710 * <b>Definition:</b> 711 * Indicates current operational state of the device. For example: On, Off, Standby, etc. 712 * </p> 713 */ 714 public String getOperationalStatus() { 715 return getOperationalStatusElement().getValue(); 716 } 717 718 /** 719 * Sets the value(s) for <b>operationalStatus</b> (on | off | standby) 720 * 721 * <p> 722 * <b>Definition:</b> 723 * Indicates current operational state of the device. For example: On, Off, Standby, etc. 724 * </p> 725 */ 726 public DeviceMetric setOperationalStatus(BoundCodeDt<DeviceMetricOperationalStatusEnum> theValue) { 727 myOperationalStatus = theValue; 728 return this; 729 } 730 731 732 733 /** 734 * Sets the value(s) for <b>operationalStatus</b> (on | off | standby) 735 * 736 * <p> 737 * <b>Definition:</b> 738 * Indicates current operational state of the device. For example: On, Off, Standby, etc. 739 * </p> 740 */ 741 public DeviceMetric setOperationalStatus(DeviceMetricOperationalStatusEnum theValue) { 742 setOperationalStatus(new BoundCodeDt<DeviceMetricOperationalStatusEnum>(DeviceMetricOperationalStatusEnum.VALUESET_BINDER, theValue)); 743 744/* 745 getOperationalStatusElement().setValueAsEnum(theValue); 746*/ 747 return this; 748 } 749 750 751 /** 752 * Gets the value(s) for <b>color</b> (black | red | green | yellow | blue | magenta | cyan | white). 753 * creating it if it does 754 * not exist. Will not return <code>null</code>. 755 * 756 * <p> 757 * <b>Definition:</b> 758 * Describes the color representation for the metric. This is often used to aid clinicians to track and identify parameter types by color. In practice, consider a Patient Monitor that has ECG/HR and Pleth for example; the parameters are displayed in different characteristic colors, such as HR-blue, BP-green, and PR and SpO2- magenta. 759 * </p> 760 */ 761 public BoundCodeDt<DeviceMetricColorEnum> getColorElement() { 762 if (myColor == null) { 763 myColor = new BoundCodeDt<DeviceMetricColorEnum>(DeviceMetricColorEnum.VALUESET_BINDER); 764 } 765 return myColor; 766 } 767 768 769 /** 770 * Gets the value(s) for <b>color</b> (black | red | green | yellow | blue | magenta | cyan | white). 771 * creating it if it does 772 * not exist. This method may return <code>null</code>. 773 * 774 * <p> 775 * <b>Definition:</b> 776 * Describes the color representation for the metric. This is often used to aid clinicians to track and identify parameter types by color. In practice, consider a Patient Monitor that has ECG/HR and Pleth for example; the parameters are displayed in different characteristic colors, such as HR-blue, BP-green, and PR and SpO2- magenta. 777 * </p> 778 */ 779 public String getColor() { 780 return getColorElement().getValue(); 781 } 782 783 /** 784 * Sets the value(s) for <b>color</b> (black | red | green | yellow | blue | magenta | cyan | white) 785 * 786 * <p> 787 * <b>Definition:</b> 788 * Describes the color representation for the metric. This is often used to aid clinicians to track and identify parameter types by color. In practice, consider a Patient Monitor that has ECG/HR and Pleth for example; the parameters are displayed in different characteristic colors, such as HR-blue, BP-green, and PR and SpO2- magenta. 789 * </p> 790 */ 791 public DeviceMetric setColor(BoundCodeDt<DeviceMetricColorEnum> theValue) { 792 myColor = theValue; 793 return this; 794 } 795 796 797 798 /** 799 * Sets the value(s) for <b>color</b> (black | red | green | yellow | blue | magenta | cyan | white) 800 * 801 * <p> 802 * <b>Definition:</b> 803 * Describes the color representation for the metric. This is often used to aid clinicians to track and identify parameter types by color. In practice, consider a Patient Monitor that has ECG/HR and Pleth for example; the parameters are displayed in different characteristic colors, such as HR-blue, BP-green, and PR and SpO2- magenta. 804 * </p> 805 */ 806 public DeviceMetric setColor(DeviceMetricColorEnum theValue) { 807 setColor(new BoundCodeDt<DeviceMetricColorEnum>(DeviceMetricColorEnum.VALUESET_BINDER, theValue)); 808 809/* 810 getColorElement().setValueAsEnum(theValue); 811*/ 812 return this; 813 } 814 815 816 /** 817 * Gets the value(s) for <b>category</b> (measurement | setting | calculation | unspecified). 818 * creating it if it does 819 * not exist. Will not return <code>null</code>. 820 * 821 * <p> 822 * <b>Definition:</b> 823 * Indicates the category of the observation generation process. A DeviceMetric can be for example a setting, measurement, or calculation. 824 * </p> 825 */ 826 public BoundCodeDt<DeviceMetricCategoryEnum> getCategoryElement() { 827 if (myCategory == null) { 828 myCategory = new BoundCodeDt<DeviceMetricCategoryEnum>(DeviceMetricCategoryEnum.VALUESET_BINDER); 829 } 830 return myCategory; 831 } 832 833 834 /** 835 * Gets the value(s) for <b>category</b> (measurement | setting | calculation | unspecified). 836 * creating it if it does 837 * not exist. This method may return <code>null</code>. 838 * 839 * <p> 840 * <b>Definition:</b> 841 * Indicates the category of the observation generation process. A DeviceMetric can be for example a setting, measurement, or calculation. 842 * </p> 843 */ 844 public String getCategory() { 845 return getCategoryElement().getValue(); 846 } 847 848 /** 849 * Sets the value(s) for <b>category</b> (measurement | setting | calculation | unspecified) 850 * 851 * <p> 852 * <b>Definition:</b> 853 * Indicates the category of the observation generation process. A DeviceMetric can be for example a setting, measurement, or calculation. 854 * </p> 855 */ 856 public DeviceMetric setCategory(BoundCodeDt<DeviceMetricCategoryEnum> theValue) { 857 myCategory = theValue; 858 return this; 859 } 860 861 862 863 /** 864 * Sets the value(s) for <b>category</b> (measurement | setting | calculation | unspecified) 865 * 866 * <p> 867 * <b>Definition:</b> 868 * Indicates the category of the observation generation process. A DeviceMetric can be for example a setting, measurement, or calculation. 869 * </p> 870 */ 871 public DeviceMetric setCategory(DeviceMetricCategoryEnum theValue) { 872 setCategory(new BoundCodeDt<DeviceMetricCategoryEnum>(DeviceMetricCategoryEnum.VALUESET_BINDER, theValue)); 873 874/* 875 getCategoryElement().setValueAsEnum(theValue); 876*/ 877 return this; 878 } 879 880 881 /** 882 * Gets the value(s) for <b>measurementPeriod</b> (Describes the measurement repetition time). 883 * creating it if it does 884 * not exist. Will not return <code>null</code>. 885 * 886 * <p> 887 * <b>Definition:</b> 888 * Describes the measurement repetition time. This is not necessarily the same as the update period. The measurement repetition time can range from milliseconds up to hours. An example for a measurement repetition time in the range of milliseconds is the sampling rate of an ECG. An example for a measurement repetition time in the range of hours is a NIBP that is triggered automatically every hour. The update period may be different than the measurement repetition time, if the device does not update the published observed value with the same frequency as it was measured. 889 * </p> 890 */ 891 public TimingDt getMeasurementPeriod() { 892 if (myMeasurementPeriod == null) { 893 myMeasurementPeriod = new TimingDt(); 894 } 895 return myMeasurementPeriod; 896 } 897 898 /** 899 * Sets the value(s) for <b>measurementPeriod</b> (Describes the measurement repetition time) 900 * 901 * <p> 902 * <b>Definition:</b> 903 * Describes the measurement repetition time. This is not necessarily the same as the update period. The measurement repetition time can range from milliseconds up to hours. An example for a measurement repetition time in the range of milliseconds is the sampling rate of an ECG. An example for a measurement repetition time in the range of hours is a NIBP that is triggered automatically every hour. The update period may be different than the measurement repetition time, if the device does not update the published observed value with the same frequency as it was measured. 904 * </p> 905 */ 906 public DeviceMetric setMeasurementPeriod(TimingDt theValue) { 907 myMeasurementPeriod = theValue; 908 return this; 909 } 910 911 912 913 914 /** 915 * Gets the value(s) for <b>calibration</b> (Describes the calibrations that have been performed or that are required to be performed). 916 * creating it if it does 917 * not exist. Will not return <code>null</code>. 918 * 919 * <p> 920 * <b>Definition:</b> 921 * Describes the calibrations that have been performed or that are required to be performed 922 * </p> 923 */ 924 public java.util.List<Calibration> getCalibration() { 925 if (myCalibration == null) { 926 myCalibration = new java.util.ArrayList<Calibration>(); 927 } 928 return myCalibration; 929 } 930 931 /** 932 * Sets the value(s) for <b>calibration</b> (Describes the calibrations that have been performed or that are required to be performed) 933 * 934 * <p> 935 * <b>Definition:</b> 936 * Describes the calibrations that have been performed or that are required to be performed 937 * </p> 938 */ 939 public DeviceMetric setCalibration(java.util.List<Calibration> theValue) { 940 myCalibration = theValue; 941 return this; 942 } 943 944 945 946 /** 947 * Adds and returns a new value for <b>calibration</b> (Describes the calibrations that have been performed or that are required to be performed) 948 * 949 * <p> 950 * <b>Definition:</b> 951 * Describes the calibrations that have been performed or that are required to be performed 952 * </p> 953 */ 954 public Calibration addCalibration() { 955 Calibration newType = new Calibration(); 956 getCalibration().add(newType); 957 return newType; 958 } 959 960 /** 961 * Adds a given new value for <b>calibration</b> (Describes the calibrations that have been performed or that are required to be performed) 962 * 963 * <p> 964 * <b>Definition:</b> 965 * Describes the calibrations that have been performed or that are required to be performed 966 * </p> 967 * @param theValue The calibration to add (must not be <code>null</code>) 968 */ 969 public DeviceMetric addCalibration(Calibration theValue) { 970 if (theValue == null) { 971 throw new NullPointerException("theValue must not be null"); 972 } 973 getCalibration().add(theValue); 974 return this; 975 } 976 977 /** 978 * Gets the first repetition for <b>calibration</b> (Describes the calibrations that have been performed or that are required to be performed), 979 * creating it if it does not already exist. 980 * 981 * <p> 982 * <b>Definition:</b> 983 * Describes the calibrations that have been performed or that are required to be performed 984 * </p> 985 */ 986 public Calibration getCalibrationFirstRep() { 987 if (getCalibration().isEmpty()) { 988 return addCalibration(); 989 } 990 return getCalibration().get(0); 991 } 992 993 /** 994 * Block class for child element: <b>DeviceMetric.calibration</b> (Describes the calibrations that have been performed or that are required to be performed) 995 * 996 * <p> 997 * <b>Definition:</b> 998 * Describes the calibrations that have been performed or that are required to be performed 999 * </p> 1000 */ 1001 @Block() 1002 public static class Calibration 1003 extends BaseIdentifiableElement 1004 implements IResourceBlock { 1005 1006 @Child(name="type", type=CodeDt.class, order=0, min=0, max=1, summary=false, modifier=false) 1007 @Description( 1008 shortDefinition="unspecified | offset | gain | two-point", 1009 formalDefinition="Describes the type of the calibration method." 1010 ) 1011 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/metric-calibration-type") 1012 private BoundCodeDt<DeviceMetricCalibrationTypeEnum> myType; 1013 1014 @Child(name="state", type=CodeDt.class, order=1, min=0, max=1, summary=false, modifier=false) 1015 @Description( 1016 shortDefinition="not-calibrated | calibration-required | calibrated | unspecified", 1017 formalDefinition="Describes the state of the calibration." 1018 ) 1019 @ca.uhn.fhir.model.api.annotation.Binding(valueSet = "http://hl7.org/fhir/ValueSet/metric-calibration-state") 1020 private BoundCodeDt<DeviceMetricCalibrationStateEnum> myState; 1021 1022 @Child(name="time", type=InstantDt.class, order=2, min=0, max=1, summary=false, modifier=false) 1023 @Description( 1024 shortDefinition="Describes the time last calibration has been performed", 1025 formalDefinition="Describes the time last calibration has been performed." 1026 ) 1027 private InstantDt myTime; 1028 1029 1030 @Override 1031 public boolean isEmpty() { 1032 return super.isBaseEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty( myType, myState, myTime); 1033 } 1034 1035 @Override 1036 public <T extends IElement> List<T> getAllPopulatedChildElementsOfType(Class<T> theType) { 1037 return ca.uhn.fhir.util.ElementUtil.allPopulatedChildElements(theType, myType, myState, myTime); 1038 } 1039 1040 /** 1041 * Gets the value(s) for <b>type</b> (unspecified | offset | gain | two-point). 1042 * creating it if it does 1043 * not exist. Will not return <code>null</code>. 1044 * 1045 * <p> 1046 * <b>Definition:</b> 1047 * Describes the type of the calibration method. 1048 * </p> 1049 */ 1050 public BoundCodeDt<DeviceMetricCalibrationTypeEnum> getTypeElement() { 1051 if (myType == null) { 1052 myType = new BoundCodeDt<DeviceMetricCalibrationTypeEnum>(DeviceMetricCalibrationTypeEnum.VALUESET_BINDER); 1053 } 1054 return myType; 1055 } 1056 1057 1058 /** 1059 * Gets the value(s) for <b>type</b> (unspecified | offset | gain | two-point). 1060 * creating it if it does 1061 * not exist. This method may return <code>null</code>. 1062 * 1063 * <p> 1064 * <b>Definition:</b> 1065 * Describes the type of the calibration method. 1066 * </p> 1067 */ 1068 public String getType() { 1069 return getTypeElement().getValue(); 1070 } 1071 1072 /** 1073 * Sets the value(s) for <b>type</b> (unspecified | offset | gain | two-point) 1074 * 1075 * <p> 1076 * <b>Definition:</b> 1077 * Describes the type of the calibration method. 1078 * </p> 1079 */ 1080 public Calibration setType(BoundCodeDt<DeviceMetricCalibrationTypeEnum> theValue) { 1081 myType = theValue; 1082 return this; 1083 } 1084 1085 1086 1087 /** 1088 * Sets the value(s) for <b>type</b> (unspecified | offset | gain | two-point) 1089 * 1090 * <p> 1091 * <b>Definition:</b> 1092 * Describes the type of the calibration method. 1093 * </p> 1094 */ 1095 public Calibration setType(DeviceMetricCalibrationTypeEnum theValue) { 1096 setType(new BoundCodeDt<DeviceMetricCalibrationTypeEnum>(DeviceMetricCalibrationTypeEnum.VALUESET_BINDER, theValue)); 1097 1098/* 1099 getTypeElement().setValueAsEnum(theValue); 1100*/ 1101 return this; 1102 } 1103 1104 1105 /** 1106 * Gets the value(s) for <b>state</b> (not-calibrated | calibration-required | calibrated | unspecified). 1107 * creating it if it does 1108 * not exist. Will not return <code>null</code>. 1109 * 1110 * <p> 1111 * <b>Definition:</b> 1112 * Describes the state of the calibration. 1113 * </p> 1114 */ 1115 public BoundCodeDt<DeviceMetricCalibrationStateEnum> getStateElement() { 1116 if (myState == null) { 1117 myState = new BoundCodeDt<DeviceMetricCalibrationStateEnum>(DeviceMetricCalibrationStateEnum.VALUESET_BINDER); 1118 } 1119 return myState; 1120 } 1121 1122 1123 /** 1124 * Gets the value(s) for <b>state</b> (not-calibrated | calibration-required | calibrated | unspecified). 1125 * creating it if it does 1126 * not exist. This method may return <code>null</code>. 1127 * 1128 * <p> 1129 * <b>Definition:</b> 1130 * Describes the state of the calibration. 1131 * </p> 1132 */ 1133 public String getState() { 1134 return getStateElement().getValue(); 1135 } 1136 1137 /** 1138 * Sets the value(s) for <b>state</b> (not-calibrated | calibration-required | calibrated | unspecified) 1139 * 1140 * <p> 1141 * <b>Definition:</b> 1142 * Describes the state of the calibration. 1143 * </p> 1144 */ 1145 public Calibration setState(BoundCodeDt<DeviceMetricCalibrationStateEnum> theValue) { 1146 myState = theValue; 1147 return this; 1148 } 1149 1150 1151 1152 /** 1153 * Sets the value(s) for <b>state</b> (not-calibrated | calibration-required | calibrated | unspecified) 1154 * 1155 * <p> 1156 * <b>Definition:</b> 1157 * Describes the state of the calibration. 1158 * </p> 1159 */ 1160 public Calibration setState(DeviceMetricCalibrationStateEnum theValue) { 1161 setState(new BoundCodeDt<DeviceMetricCalibrationStateEnum>(DeviceMetricCalibrationStateEnum.VALUESET_BINDER, theValue)); 1162 1163/* 1164 getStateElement().setValueAsEnum(theValue); 1165*/ 1166 return this; 1167 } 1168 1169 1170 /** 1171 * Gets the value(s) for <b>time</b> (Describes the time last calibration has been performed). 1172 * creating it if it does 1173 * not exist. Will not return <code>null</code>. 1174 * 1175 * <p> 1176 * <b>Definition:</b> 1177 * Describes the time last calibration has been performed. 1178 * </p> 1179 */ 1180 public InstantDt getTimeElement() { 1181 if (myTime == null) { 1182 myTime = new InstantDt(); 1183 } 1184 return myTime; 1185 } 1186 1187 1188 /** 1189 * Gets the value(s) for <b>time</b> (Describes the time last calibration has been performed). 1190 * creating it if it does 1191 * not exist. This method may return <code>null</code>. 1192 * 1193 * <p> 1194 * <b>Definition:</b> 1195 * Describes the time last calibration has been performed. 1196 * </p> 1197 */ 1198 public Date getTime() { 1199 return getTimeElement().getValue(); 1200 } 1201 1202 /** 1203 * Sets the value(s) for <b>time</b> (Describes the time last calibration has been performed) 1204 * 1205 * <p> 1206 * <b>Definition:</b> 1207 * Describes the time last calibration has been performed. 1208 * </p> 1209 */ 1210 public Calibration setTime(InstantDt theValue) { 1211 myTime = theValue; 1212 return this; 1213 } 1214 1215 1216 1217 /** 1218 * Sets the value for <b>time</b> (Describes the time last calibration has been performed) 1219 * 1220 * <p> 1221 * <b>Definition:</b> 1222 * Describes the time last calibration has been performed. 1223 * </p> 1224 */ 1225 public Calibration setTimeWithMillisPrecision( Date theDate) { 1226 myTime = new InstantDt(theDate); 1227 return this; 1228 } 1229 1230 /** 1231 * Sets the value for <b>time</b> (Describes the time last calibration has been performed) 1232 * 1233 * <p> 1234 * <b>Definition:</b> 1235 * Describes the time last calibration has been performed. 1236 * </p> 1237 */ 1238 public Calibration setTime( Date theDate, TemporalPrecisionEnum thePrecision) { 1239 myTime = new InstantDt(theDate, thePrecision); 1240 return this; 1241 } 1242 1243 1244 1245 1246 } 1247 1248 1249 1250 1251 @Override 1252 public String getResourceName() { 1253 return "DeviceMetric"; 1254 } 1255 1256 public ca.uhn.fhir.context.FhirVersionEnum getStructureFhirVersionEnum() { 1257 return ca.uhn.fhir.context.FhirVersionEnum.DSTU2; 1258 } 1259 1260 1261}