From b43497897b90e88bd3566c3cbc94109c23fd0d0c Mon Sep 17 00:00:00 2001 From: Grahame Grieve Date: Mon, 11 May 2020 17:09:14 +1000 Subject: [PATCH] upgrade to v4.4.0, with attendant fixes --- .../convertors/conv10_50/AuditEvent10_50.java | 66 +- .../convertors/conv10_50/CarePlan10_50.java | 6 +- .../convertors/conv10_50/ConceptMap10_50.java | 12 +- .../conv10_50/DeviceUseStatement10_50.java | 18 +- .../conv10_50/MedicationDispense10_50.java | 12 +- .../conv10_50/MedicationStatement10_50.java | 17 +- .../convertors/conv14_50/ConceptMap14_50.java | 12 +- .../convertors/conv30_50/AuditEvent30_50.java | 61 +- .../convertors/conv30_50/CarePlan30_50.java | 6 +- .../convertors/conv30_50/ConceptMap30_50.java | 12 +- .../conv30_50/DeviceUseStatement30_50.java | 24 +- .../convertors/conv30_50/Medication30_50.java | 12 +- .../MedicationAdministration30_50.java | 12 +- .../conv30_50/MedicationDispense30_50.java | 13 +- .../conv30_50/MedicationRequest30_50.java | 12 +- .../conv30_50/MedicationStatement30_50.java | 16 +- .../convertors/conv40_50/AuditEvent40_50.java | 62 +- .../convertors/conv40_50/CarePlan40_50.java | 6 +- .../convertors/conv40_50/ConceptMap40_50.java | 12 +- .../convertors/conv40_50/Consent40_50.java | 6 +- .../convertors/conv40_50/Device40_50.java | 4 +- .../conv40_50/DeviceDefinition40_50.java | 4 - .../conv40_50/DeviceRequest40_50.java | 13 +- .../conv40_50/DeviceUseStatement40_50.java | 24 +- .../conv40_50/Enumerations40_50.java | 12 +- .../conv40_50/Immunization40_50.java | 8 +- .../ImmunizationEvaluation40_50.java | 8 +- .../ImmunizationRecommendation40_50.java | 8 +- .../convertors/conv40_50/Medication40_50.java | 12 +- .../MedicationAdministration40_50.java | 12 +- .../conv40_50/MedicationDispense40_50.java | 24 +- .../conv40_50/MedicationKnowledge40_50.java | 12 +- .../conv40_50/MedicationRequest40_50.java | 12 +- .../conv40_50/MedicationStatement40_50.java | 16 +- .../MedicinalProductDefinition40_50.java | 18 +- .../conv40_50/SubstancePolymer40_50.java | 26 +- .../conv40_50/SupplyRequest40_50.java | 18 +- .../configuration/CodeableConcept.java | 13 + .../configuration/Coding.java | 5 + .../configuration/Constants.java | 2 +- .../configuration/ElementDefinition.java | 10 +- .../configuration/JsonParser.java | 6 + .../configuration/Parameters.java | 1 - .../ParametersParameterComponent.java | 19 + .../configuration/ResourceType.java | 26 + .../configuration/TypeRefComponent.java | 2 +- .../core/generator/analysis/Analyser.java | 10 +- .../codegen/JavaEnumerationsGenerator.java | 6 +- .../codegen/JavaParserJsonGenerator.java | 10 +- .../generator/codegen/JavaTypeGenerator.java | 107 + .../generator/engine/DefinitionsLoader.java | 16 +- .../generator/engine/JavaCoreGenerator.java | 15 +- .../org/hl7/fhir/r5/formats/JsonParser.java | 4515 +++++-- .../org/hl7/fhir/r5/formats/RdfParser.java | 1624 ++- .../org/hl7/fhir/r5/formats/XmlParser.java | 3700 ++++-- .../java/org/hl7/fhir/r5/model/Account.java | 2 +- .../hl7/fhir/r5/model/ActivityDefinition.java | 12 +- .../java/org/hl7/fhir/r5/model/Address.java | 2 +- .../model/AdministrableProductDefinition.java | 232 +- .../org/hl7/fhir/r5/model/AdverseEvent.java | 38 +- .../main/java/org/hl7/fhir/r5/model/Age.java | 2 +- .../hl7/fhir/r5/model/AllergyIntolerance.java | 20 +- .../org/hl7/fhir/r5/model/Annotation.java | 2 +- .../org/hl7/fhir/r5/model/Appointment.java | 4 +- .../fhir/r5/model/AppointmentResponse.java | 2 +- .../org/hl7/fhir/r5/model/Attachment.java | 2 +- .../org/hl7/fhir/r5/model/AuditEvent.java | 277 +- .../hl7/fhir/r5/model/BackboneElement.java | 2 +- .../org/hl7/fhir/r5/model/BackboneType.java | 2 +- .../java/org/hl7/fhir/r5/model/Basic.java | 4 +- .../java/org/hl7/fhir/r5/model/Binary.java | 2 +- .../r5/model/BiologicallyDerivedProduct.java | 2 +- .../org/hl7/fhir/r5/model/BodyStructure.java | 2 +- .../java/org/hl7/fhir/r5/model/Bundle.java | 26 +- .../hl7/fhir/r5/model/CanonicalResource.java | 2 +- .../fhir/r5/model/CapabilityStatement.java | 2 +- .../fhir/r5/model/CapabilityStatement2.java | 2 +- .../java/org/hl7/fhir/r5/model/CarePlan.java | 101 +- .../java/org/hl7/fhir/r5/model/CareTeam.java | 14 +- .../org/hl7/fhir/r5/model/CatalogEntry.java | 2 +- .../org/hl7/fhir/r5/model/ChargeItem.java | 2 +- .../fhir/r5/model/ChargeItemDefinition.java | 2 +- .../java/org/hl7/fhir/r5/model/Citation.java | 10139 ++++++++++++++++ .../java/org/hl7/fhir/r5/model/Claim.java | 2 +- .../org/hl7/fhir/r5/model/ClaimResponse.java | 2 +- .../hl7/fhir/r5/model/ClinicalImpression.java | 16 +- .../hl7/fhir/r5/model/ClinicalUseIssue.java | 132 +- .../org/hl7/fhir/r5/model/CodeSystem.java | 10 +- .../hl7/fhir/r5/model/CodeableConcept.java | 25 +- .../hl7/fhir/r5/model/CodeableReference.java | 2 +- .../java/org/hl7/fhir/r5/model/Coding.java | 6 +- .../org/hl7/fhir/r5/model/Communication.java | 8 +- .../fhir/r5/model/CommunicationRequest.java | 4 +- .../fhir/r5/model/CompartmentDefinition.java | 2 +- .../org/hl7/fhir/r5/model/Composition.java | 18 +- .../org/hl7/fhir/r5/model/ConceptMap.java | 10 +- .../java/org/hl7/fhir/r5/model/Condition.java | 18 +- .../fhir/r5/model/ConditionDefinition.java | 2 +- .../java/org/hl7/fhir/r5/model/Consent.java | 108 +- .../java/org/hl7/fhir/r5/model/Constants.java | 10 +- .../org/hl7/fhir/r5/model/ContactDetail.java | 2 +- .../org/hl7/fhir/r5/model/ContactPoint.java | 2 +- .../java/org/hl7/fhir/r5/model/Contract.java | 4 +- .../org/hl7/fhir/r5/model/Contributor.java | 2 +- .../java/org/hl7/fhir/r5/model/Count.java | 2 +- .../java/org/hl7/fhir/r5/model/Coverage.java | 2 +- .../r5/model/CoverageEligibilityRequest.java | 2 +- .../r5/model/CoverageEligibilityResponse.java | 2 +- .../hl7/fhir/r5/model/DataRequirement.java | 2 +- .../java/org/hl7/fhir/r5/model/DataType.java | 2 +- .../org/hl7/fhir/r5/model/DetectedIssue.java | 10 +- .../java/org/hl7/fhir/r5/model/Device.java | 1036 +- .../hl7/fhir/r5/model/DeviceDefinition.java | 212 +- .../org/hl7/fhir/r5/model/DeviceMetric.java | 2 +- .../org/hl7/fhir/r5/model/DeviceRequest.java | 99 +- .../hl7/fhir/r5/model/DeviceUseStatement.java | 486 +- .../hl7/fhir/r5/model/DiagnosticReport.java | 20 +- .../java/org/hl7/fhir/r5/model/Distance.java | 2 +- .../hl7/fhir/r5/model/DocumentManifest.java | 12 +- .../hl7/fhir/r5/model/DocumentReference.java | 10 +- .../org/hl7/fhir/r5/model/DomainResource.java | 2 +- .../java/org/hl7/fhir/r5/model/Dosage.java | 2 +- .../java/org/hl7/fhir/r5/model/Duration.java | 2 +- .../java/org/hl7/fhir/r5/model/Element.java | 2 +- .../hl7/fhir/r5/model/ElementDefinition.java | 3 +- .../java/org/hl7/fhir/r5/model/Encounter.java | 14 +- .../java/org/hl7/fhir/r5/model/Endpoint.java | 2 +- .../hl7/fhir/r5/model/EnrollmentRequest.java | 2 +- .../hl7/fhir/r5/model/EnrollmentResponse.java | 2 +- .../org/hl7/fhir/r5/model/Enumerations.java | 764 +- .../org/hl7/fhir/r5/model/EpisodeOfCare.java | 14 +- .../hl7/fhir/r5/model/EventDefinition.java | 12 +- .../java/org/hl7/fhir/r5/model/Evidence.java | 631 +- .../org/hl7/fhir/r5/model/EvidenceFocus.java | 2048 ++++ .../hl7/fhir/r5/model/EvidenceVariable.java | 871 +- .../hl7/fhir/r5/model/ExampleScenario.java | 2 +- .../fhir/r5/model/ExplanationOfBenefit.java | 2 +- .../org/hl7/fhir/r5/model/Expression.java | 2 +- .../java/org/hl7/fhir/r5/model/Extension.java | 2 +- .../fhir/r5/model/FamilyMemberHistory.java | 20 +- .../main/java/org/hl7/fhir/r5/model/Flag.java | 14 +- .../main/java/org/hl7/fhir/r5/model/Goal.java | 8 +- .../hl7/fhir/r5/model/GraphDefinition.java | 2 +- .../java/org/hl7/fhir/r5/model/Group.java | 2 +- .../hl7/fhir/r5/model/GuidanceResponse.java | 2 +- .../hl7/fhir/r5/model/HealthcareService.java | 2 +- .../java/org/hl7/fhir/r5/model/HumanName.java | 2 +- .../org/hl7/fhir/r5/model/Identifier.java | 2 +- .../org/hl7/fhir/r5/model/ImagingStudy.java | 8 +- .../org/hl7/fhir/r5/model/Immunization.java | 223 +- .../fhir/r5/model/ImmunizationEvaluation.java | 217 +- .../r5/model/ImmunizationRecommendation.java | 215 +- .../fhir/r5/model/ImplementationGuide.java | 20 +- .../org/hl7/fhir/r5/model/Ingredient.java | 344 +- .../org/hl7/fhir/r5/model/InsurancePlan.java | 2 +- .../org/hl7/fhir/r5/model/Integer64Type.java | 14 +- .../java/org/hl7/fhir/r5/model/Invoice.java | 2 +- .../java/org/hl7/fhir/r5/model/Library.java | 12 +- .../java/org/hl7/fhir/r5/model/Linkage.java | 6 +- .../org/hl7/fhir/r5/model/ListResource.java | 22 +- .../java/org/hl7/fhir/r5/model/Location.java | 2 +- .../r5/model/ManufacturedItemDefinition.java | 229 +- .../hl7/fhir/r5/model/MarketingStatus.java | 2 +- .../java/org/hl7/fhir/r5/model/Measure.java | 12 +- .../org/hl7/fhir/r5/model/MeasureReport.java | 4 +- .../org/hl7/fhir/r5/model/Medication.java | 95 +- .../r5/model/MedicationAdministration.java | 165 +- .../hl7/fhir/r5/model/MedicationDispense.java | 208 +- .../fhir/r5/model/MedicationKnowledge.java | 383 +- .../hl7/fhir/r5/model/MedicationRequest.java | 111 +- .../hl7/fhir/r5/model/MedicationUsage.java | 111 +- .../r5/model/MedicinalProductDefinition.java | 496 +- .../hl7/fhir/r5/model/MessageDefinition.java | 10 +- .../org/hl7/fhir/r5/model/MessageHeader.java | 4 +- .../main/java/org/hl7/fhir/r5/model/Meta.java | 1370 +-- .../hl7/fhir/r5/model/MetadataResource.java | 2 +- .../hl7/fhir/r5/model/MolecularSequence.java | 2 +- .../java/org/hl7/fhir/r5/model/Money.java | 2 +- .../org/hl7/fhir/r5/model/NamingSystem.java | 2 +- .../java/org/hl7/fhir/r5/model/Narrative.java | 4 +- .../hl7/fhir/r5/model/NutritionIntake.java | 1545 ++- .../org/hl7/fhir/r5/model/NutritionOrder.java | 8 +- .../hl7/fhir/r5/model/NutritionProduct.java | 2304 ++++ .../org/hl7/fhir/r5/model/Observation.java | 22 +- .../fhir/r5/model/ObservationDefinition.java | 52 +- .../fhir/r5/model/OperationDefinition.java | 2 +- .../hl7/fhir/r5/model/OperationOutcome.java | 2 +- .../fhir/r5/model/OrderedDistribution.java | 2 +- .../org/hl7/fhir/r5/model/Organization.java | 2 +- .../r5/model/OrganizationAffiliation.java | 2 +- .../r5/model/PackagedProductDefinition.java | 664 +- .../fhir/r5/model/ParameterDefinition.java | 2 +- .../org/hl7/fhir/r5/model/Parameters.java | 59 +- .../java/org/hl7/fhir/r5/model/Patient.java | 2 +- .../org/hl7/fhir/r5/model/PaymentNotice.java | 6 +- .../fhir/r5/model/PaymentReconciliation.java | 2 +- .../java/org/hl7/fhir/r5/model/Period.java | 2 +- .../org/hl7/fhir/r5/model/Permission.java | 1614 +++ .../java/org/hl7/fhir/r5/model/Person.java | 2 +- .../org/hl7/fhir/r5/model/PlanDefinition.java | 12 +- .../org/hl7/fhir/r5/model/Population.java | 2 +- .../org/hl7/fhir/r5/model/Practitioner.java | 2 +- .../hl7/fhir/r5/model/PractitionerRole.java | 2 +- .../java/org/hl7/fhir/r5/model/Procedure.java | 36 +- .../hl7/fhir/r5/model/ProdCharacteristic.java | 2 +- .../hl7/fhir/r5/model/ProductShelfLife.java | 2 +- .../org/hl7/fhir/r5/model/Provenance.java | 6 +- .../java/org/hl7/fhir/r5/model/Quantity.java | 2 +- .../org/hl7/fhir/r5/model/Questionnaire.java | 18 +- .../fhir/r5/model/QuestionnaireResponse.java | 4 +- .../java/org/hl7/fhir/r5/model/Range.java | 2 +- .../java/org/hl7/fhir/r5/model/Ratio.java | 2 +- .../java/org/hl7/fhir/r5/model/Reference.java | 2 +- .../fhir/r5/model/RegulatedAuthorization.java | 304 +- .../hl7/fhir/r5/model/RelatedArtifact.java | 2 +- .../org/hl7/fhir/r5/model/RelatedPerson.java | 2 +- .../org/hl7/fhir/r5/model/RequestGroup.java | 2 +- .../org/hl7/fhir/r5/model/ResearchStudy.java | 2 +- .../hl7/fhir/r5/model/ResearchSubject.java | 2 +- .../java/org/hl7/fhir/r5/model/Resource.java | 2 +- .../hl7/fhir/r5/model/ResourceFactory.java | 23 +- .../org/hl7/fhir/r5/model/ResourceType.java | 94 +- .../org/hl7/fhir/r5/model/RiskAssessment.java | 14 +- .../org/hl7/fhir/r5/model/SampledData.java | 2 +- .../java/org/hl7/fhir/r5/model/Schedule.java | 2 +- .../hl7/fhir/r5/model/SearchParameter.java | 2 +- .../org/hl7/fhir/r5/model/ServiceRequest.java | 14 +- .../java/org/hl7/fhir/r5/model/Signature.java | 2 +- .../main/java/org/hl7/fhir/r5/model/Slot.java | 2 +- .../java/org/hl7/fhir/r5/model/Specimen.java | 2 +- .../hl7/fhir/r5/model/SpecimenDefinition.java | 42 +- .../java/org/hl7/fhir/r5/model/Statistic.java | 2 +- .../fhir/r5/model/StructureDefinition.java | 26 +- .../org/hl7/fhir/r5/model/StructureMap.java | 10 +- .../org/hl7/fhir/r5/model/Subscription.java | 1718 +-- .../hl7/fhir/r5/model/SubscriptionStatus.java | 680 ++ .../{Topic.java => SubscriptionTopic.java} | 1070 +- .../java/org/hl7/fhir/r5/model/Substance.java | 2 +- .../hl7/fhir/r5/model/SubstanceAmount.java | 2 +- .../fhir/r5/model/SubstanceDefinition.java | 228 +- .../fhir/r5/model/SubstanceNucleicAcid.java | 2 +- .../hl7/fhir/r5/model/SubstancePolymer.java | 502 +- .../hl7/fhir/r5/model/SubstanceProtein.java | 2 +- .../model/SubstanceReferenceInformation.java | 2 +- .../r5/model/SubstanceSourceMaterial.java | 2 +- .../org/hl7/fhir/r5/model/SupplyDelivery.java | 8 +- .../org/hl7/fhir/r5/model/SupplyRequest.java | 83 +- .../main/java/org/hl7/fhir/r5/model/Task.java | 8 +- .../r5/model/TerminologyCapabilities.java | 2 +- .../org/hl7/fhir/r5/model/TestReport.java | 2 +- .../org/hl7/fhir/r5/model/TestScript.java | 134 +- .../java/org/hl7/fhir/r5/model/Timing.java | 2 +- .../hl7/fhir/r5/model/TriggerDefinition.java | 2 +- .../org/hl7/fhir/r5/model/UsageContext.java | 2 +- .../java/org/hl7/fhir/r5/model/ValueSet.java | 10 +- .../hl7/fhir/r5/model/VerificationResult.java | 4 +- .../hl7/fhir/r5/model/VisionPrescription.java | 8 +- .../r5/renderers/TerminologyRenderer.java | 4 +- .../fhir/r5/utils/StructureMapUtilities.java | 10 +- .../instance/InstanceValidator.java | 25 +- .../validation/instance/utils/NodeStack.java | 5 + pom.xml | 2 +- 262 files changed, 34261 insertions(+), 9835 deletions(-) create mode 100644 org.hl7.fhir.core.generator/configuration/ParametersParameterComponent.java create mode 100644 org.hl7.fhir.core.generator/configuration/ResourceType.java create mode 100644 org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaTypeGenerator.java create mode 100644 org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Citation.java create mode 100644 org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceFocus.java create mode 100644 org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionProduct.java create mode 100644 org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Permission.java create mode 100644 org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionStatus.java rename org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/{Topic.java => SubscriptionTopic.java} (68%) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/AuditEvent10_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/AuditEvent10_50.java index 8205c3ec9..f2df3d922 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/AuditEvent10_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/AuditEvent10_50.java @@ -1,6 +1,7 @@ package org.hl7.fhir.convertors.conv10_50; import org.hl7.fhir.convertors.VersionConvertor_10_50; +import org.hl7.fhir.convertors.VersionConvertor_30_50; import org.hl7.fhir.exceptions.FHIRException; public class AuditEvent10_50 { @@ -14,8 +15,11 @@ public class AuditEvent10_50 { for (org.hl7.fhir.r5.model.Coding t : src.getSubtype()) tgt.getEvent().addSubtype(VersionConvertor_10_50.convertCoding(t)); tgt.getEvent().setActionElement(convertAuditEventAction(src.getActionElement())); tgt.getEvent().setDateTime(src.getRecorded()); - tgt.getEvent().setOutcomeElement(convertAuditEventOutcome(src.getOutcomeElement())); - tgt.getEvent().setOutcomeDesc(src.getOutcomeDesc()); + + if (src.hasOutcome() && src.getOutcome().hasCoding("http://terminology.hl7.org/CodeSystem/audit-event-outcome")) + tgt.getEvent().getOutcomeElement().setValueAsString(src.getOutcome().getCode("http://terminology.hl7.org/CodeSystem/audit-event-outcome")); + if (src.getOutcome().hasText()) + tgt.getEvent().setOutcomeDescElement(VersionConvertor_10_50.convertString(src.getOutcome().getTextElement())); for (org.hl7.fhir.r5.model.CodeableConcept t : src.getPurposeOfEvent()) for (org.hl7.fhir.r5.model.Coding cc : t.getCoding()) tgt.getEvent().addPurposeOfEvent(VersionConvertor_10_50.convertCoding(cc)); for (org.hl7.fhir.r5.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) tgt.addParticipant(convertAuditEventAgentComponent(t)); if (src.hasSource()) @@ -35,8 +39,12 @@ public class AuditEvent10_50 { for (org.hl7.fhir.dstu2.model.Coding t : src.getEvent().getSubtype()) tgt.addSubtype(VersionConvertor_10_50.convertCoding(t)); tgt.setActionElement(convertAuditEventAction(src.getEvent().getActionElement())); tgt.setRecorded(src.getEvent().getDateTime()); - tgt.setOutcomeElement(convertAuditEventOutcome(src.getEvent().getOutcomeElement())); - tgt.setOutcomeDesc(src.getEvent().getOutcomeDesc()); + + if (src.getEvent().hasOutcome()) + tgt.getOutcome().addCoding().setSystem("http://terminology.hl7.org/CodeSystem/audit-event-outcome").setCode(src.getEvent().getOutcome().toCode()); + if (src.getEvent().hasOutcomeDesc()) + tgt.getOutcome().setTextElement(VersionConvertor_10_50.convertString(src.getEvent().getOutcomeDescElement())); + for (org.hl7.fhir.dstu2.model.Coding t : src.getEvent().getPurposeOfEvent()) tgt.addPurposeOfEvent().addCoding(VersionConvertor_10_50.convertCoding(t)); } for (org.hl7.fhir.dstu2.model.AuditEvent.AuditEventParticipantComponent t : src.getParticipant()) tgt.addAgent(convertAuditEventAgentComponent(t)); @@ -258,55 +266,7 @@ public class AuditEvent10_50 { return tgt; } - static public org.hl7.fhir.dstu2.model.Enumeration convertAuditEventOutcome(org.hl7.fhir.r5.model.Enumeration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2.model.Enumeration tgt = new org.hl7.fhir.dstu2.model.Enumeration<>(new org.hl7.fhir.dstu2.model.AuditEvent.AuditEventOutcomeEnumFactory()); - VersionConvertor_10_50.copyElement(src, tgt); - switch(src.getValue()) { - case _0: - tgt.setValue(org.hl7.fhir.dstu2.model.AuditEvent.AuditEventOutcome._0); - break; - case _4: - tgt.setValue(org.hl7.fhir.dstu2.model.AuditEvent.AuditEventOutcome._4); - break; - case _8: - tgt.setValue(org.hl7.fhir.dstu2.model.AuditEvent.AuditEventOutcome._8); - break; - case _12: - tgt.setValue(org.hl7.fhir.dstu2.model.AuditEvent.AuditEventOutcome._12); - break; - default: - tgt.setValue(org.hl7.fhir.dstu2.model.AuditEvent.AuditEventOutcome.NULL); - break; - } - return tgt; - } - - static public org.hl7.fhir.r5.model.Enumeration convertAuditEventOutcome(org.hl7.fhir.dstu2.model.Enumeration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r5.model.Enumeration tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcomeEnumFactory()); - VersionConvertor_10_50.copyElement(src, tgt); - switch(src.getValue()) { - case _0: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._0); - break; - case _4: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._4); - break; - case _8: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._8); - break; - case _12: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._12); - break; - default: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome.NULL); - break; - } - return tgt; - } + static public org.hl7.fhir.r5.model.Enumeration convertAuditEventParticipantNetworkType(org.hl7.fhir.dstu2.model.Enumeration src) throws FHIRException { if (src == null || src.isEmpty()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/CarePlan10_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/CarePlan10_50.java index bb26c4d67..83f4606a9 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/CarePlan10_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/CarePlan10_50.java @@ -107,7 +107,7 @@ public class CarePlan10_50 { if (src.hasScheduled()) tgt.setScheduled(VersionConvertor_10_50.convertType(src.getScheduled())); if (src.hasLocation()) - tgt.setLocation(VersionConvertor_10_50.convertReference(src.getLocation())); + tgt.getLocation().setReference(VersionConvertor_10_50.convertReference(src.getLocation())); for (org.hl7.fhir.dstu2.model.Reference t : src.getPerformer()) tgt.addPerformer(VersionConvertor_10_50.convertReference(t)); if (src.hasProduct()) tgt.setProduct(VersionConvertor_10_50.convertType(src.getProduct())); @@ -138,8 +138,8 @@ public class CarePlan10_50 { tgt.setProhibitedElement(VersionConvertor_10_50.convertBoolean(src.getDoNotPerformElement())); if (src.hasScheduled()) tgt.setScheduled(VersionConvertor_10_50.convertType(src.getScheduled())); - if (src.hasLocation()) - tgt.setLocation(VersionConvertor_10_50.convertReference(src.getLocation())); + if (src.getLocation().hasReference()) + tgt.setLocation(VersionConvertor_10_50.convertReference(src.getLocation().getReference())); for (org.hl7.fhir.r5.model.Reference t : src.getPerformer()) tgt.addPerformer(VersionConvertor_10_50.convertReference(t)); if (src.hasProduct()) tgt.setProduct(VersionConvertor_10_50.convertType(src.getProduct())); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/ConceptMap10_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/ConceptMap10_50.java index 289ab7fa3..0a0f73b7c 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/ConceptMap10_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/ConceptMap10_50.java @@ -134,10 +134,10 @@ public class ConceptMap10_50 { case EQUIVALENT: tgt.setValue(org.hl7.fhir.dstu2.model.Enumerations.ConceptMapEquivalence.EQUIVALENT); break; - case SOURCENARROWERTARGET: + case SOURCEISNARROWERTHANTARGET: tgt.setValue(org.hl7.fhir.dstu2.model.Enumerations.ConceptMapEquivalence.WIDER); break; - case SOURCEBROADERTARGET: + case SOURCEISBROADERTHANTARGET: tgt.setValue(org.hl7.fhir.dstu2.model.Enumerations.ConceptMapEquivalence.NARROWER); break; case NOTRELATEDTO: @@ -165,16 +165,16 @@ public class ConceptMap10_50 { tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); break; case WIDER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case SUBSUMES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case NARROWER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case SPECIALIZES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case INEXACT: tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/DeviceUseStatement10_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/DeviceUseStatement10_50.java index d16f2f53f..3d221d3f0 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/DeviceUseStatement10_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/DeviceUseStatement10_50.java @@ -13,14 +13,14 @@ public class DeviceUseStatement10_50 { org.hl7.fhir.r5.model.DeviceUseStatement tgt = new org.hl7.fhir.r5.model.DeviceUseStatement(); VersionConvertor_10_50.copyDomainResource(src, tgt); if (src.hasBodySiteCodeableConcept()) - tgt.setBodySite(VersionConvertor_10_50.convertCodeableConcept(src.getBodySiteCodeableConcept())); + tgt.getBodySite().setConcept(VersionConvertor_10_50.convertCodeableConcept(src.getBodySiteCodeableConcept())); if (src.hasDevice()) - tgt.setDevice(VersionConvertor_10_50.convertReference(src.getDevice())); + tgt.getDevice().setReference(VersionConvertor_10_50.convertReference(src.getDevice())); for (org.hl7.fhir.dstu2.model.Identifier t : src.getIdentifier()) tgt.addIdentifier(VersionConvertor_10_50.convertIdentifier(t)); for (org.hl7.fhir.dstu2.model.CodeableConcept t : src.getIndication()) tgt.addReason(VersionConvertor_10_50.convertCodeableConceptToCodableReference(t)); for (org.hl7.fhir.dstu2.model.StringType t : src.getNotes()) tgt.addNote().setText(t.getValue()); if (src.hasRecordedOnElement()) - tgt.setRecordedOnElement(VersionConvertor_10_50.convertDateTime(src.getRecordedOnElement())); + tgt.setDateAssertedElement(VersionConvertor_10_50.convertDateTime(src.getRecordedOnElement())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_10_50.convertReference(src.getSubject())); if (src.hasTiming()) @@ -33,16 +33,16 @@ public class DeviceUseStatement10_50 { return null; org.hl7.fhir.dstu2.model.DeviceUseStatement tgt = new org.hl7.fhir.dstu2.model.DeviceUseStatement(); VersionConvertor_10_50.copyDomainResource(src, tgt); - if (src.hasBodySite()) - tgt.setBodySite(VersionConvertor_10_50.convertType(src.getBodySite())); - if (src.hasDevice()) - tgt.setDevice(VersionConvertor_10_50.convertReference(src.getDevice())); + if (src.getBodySite().hasConcept()) + tgt.setBodySite(VersionConvertor_10_50.convertType(src.getBodySite().getConcept())); + if (src.getDevice().hasReference()) + tgt.setDevice(VersionConvertor_10_50.convertReference(src.getDevice().getReference())); for (org.hl7.fhir.r5.model.Identifier t : src.getIdentifier()) tgt.addIdentifier(VersionConvertor_10_50.convertIdentifier(t)); for (CodeableReference t : src.getReason()) if (t.hasConcept()) tgt.addIndication(VersionConvertor_10_50.convertCodeableConcept(t.getConcept())); for (Annotation t : src.getNote()) tgt.addNotes(t.getText()); - if (src.hasRecordedOnElement()) - tgt.setRecordedOnElement(VersionConvertor_10_50.convertDateTime(src.getRecordedOnElement())); + if (src.hasDateAssertedElement()) + tgt.setRecordedOnElement(VersionConvertor_10_50.convertDateTime(src.getDateAssertedElement())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_10_50.convertReference(src.getSubject())); if (src.hasTiming()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationDispense10_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationDispense10_50.java index 79bdd9196..dad235aaf 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationDispense10_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationDispense10_50.java @@ -17,8 +17,10 @@ public class MedicationDispense10_50 { tgt.addIdentifier(VersionConvertor_10_50.convertIdentifier(src.getIdentifier())); if (src.hasStatusElement()) tgt.setStatusElement(convertMedicationDispenseStatus(src.getStatusElement())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(VersionConvertor_10_50.convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(VersionConvertor_10_50.convertReference(src.getMedicationReference())); if (src.hasPatient()) tgt.setSubject(VersionConvertor_10_50.convertReference(src.getPatient())); for (org.hl7.fhir.dstu2.model.Reference t : src.getAuthorizingPrescription()) tgt.addAuthorizingPrescription(VersionConvertor_10_50.convertReference(t)); @@ -52,8 +54,10 @@ public class MedicationDispense10_50 { tgt.setIdentifier(VersionConvertor_10_50.convertIdentifier(src.getIdentifierFirstRep())); if (src.hasStatusElement()) tgt.setStatusElement(convertMedicationDispenseStatus(src.getStatusElement())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication())); + if (src.getMedication().hasConcept()) + tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication().getConcept())); + if (src.getMedication().hasReference()) + tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication().getReference())); if (src.hasSubject()) tgt.setPatient(VersionConvertor_10_50.convertReference(src.getSubject())); for (org.hl7.fhir.r5.model.Reference t : src.getAuthorizingPrescription()) tgt.addAuthorizingPrescription(VersionConvertor_10_50.convertReference(t)); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationStatement10_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationStatement10_50.java index 8d6757783..6b735f80a 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationStatement10_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv10_50/MedicationStatement10_50.java @@ -1,6 +1,7 @@ package org.hl7.fhir.convertors.conv10_50; import org.hl7.fhir.convertors.VersionConvertor_10_50; +import org.hl7.fhir.convertors.VersionConvertor_30_50; import org.hl7.fhir.exceptions.FHIRException; import org.hl7.fhir.r5.model.Dosage.DosageDoseAndRateComponent; @@ -14,8 +15,12 @@ public class MedicationStatement10_50 { for (org.hl7.fhir.r5.model.Identifier t : src.getIdentifier()) tgt.addIdentifier(VersionConvertor_10_50.convertIdentifier(t)); if (src.hasStatus()) tgt.setStatusElement(convertMedicationStatementStatus(src.getStatusElement())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication())); + if (src.getMedication().hasConcept()) { + tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication().getConcept())); + } + if (src.getMedication().hasReference()) { + tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication().getReference())); + } if (src.hasSubject()) tgt.setPatient(VersionConvertor_10_50.convertReference(src.getSubject())); if (src.hasEffective()) @@ -38,8 +43,12 @@ public class MedicationStatement10_50 { for (org.hl7.fhir.dstu2.model.Identifier t : src.getIdentifier()) tgt.addIdentifier(VersionConvertor_10_50.convertIdentifier(t)); if (src.hasStatus()) tgt.setStatusElement(convertMedicationStatementStatus(src.getStatusElement())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_10_50.convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) { + tgt.getMedication().setConcept(VersionConvertor_10_50.convertCodeableConcept(src.getMedicationCodeableConcept())); + } + if (src.hasMedicationReference()) { + tgt.getMedication().setReference(VersionConvertor_10_50.convertReference(src.getMedicationReference())); + } if (src.hasPatient()) tgt.setSubject(VersionConvertor_10_50.convertReference(src.getPatient())); if (src.hasEffective()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv14_50/ConceptMap14_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv14_50/ConceptMap14_50.java index 837128619..0d415bc67 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv14_50/ConceptMap14_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv14_50/ConceptMap14_50.java @@ -142,10 +142,10 @@ public class ConceptMap14_50 { case EQUIVALENT: tgt.setValue(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUIVALENT); break; - case SOURCENARROWERTARGET: + case SOURCEISNARROWERTHANTARGET: tgt.setValue(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.WIDER); break; - case SOURCEBROADERTARGET: + case SOURCEISBROADERTHANTARGET: tgt.setValue(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NARROWER); break; case NOTRELATEDTO: @@ -173,16 +173,16 @@ public class ConceptMap14_50 { tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); break; case WIDER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case SUBSUMES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case NARROWER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case SPECIALIZES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case INEXACT: tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/AuditEvent30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/AuditEvent30_50.java index 15c822162..e2d1b4bd1 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/AuditEvent30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/AuditEvent30_50.java @@ -18,9 +18,9 @@ public class AuditEvent30_50 { if (src.hasRecorded()) tgt.setRecordedElement(VersionConvertor_30_50.convertInstant(src.getRecordedElement())); if (src.hasOutcome()) - tgt.setOutcomeElement(convertAuditEventOutcome(src.getOutcomeElement())); + tgt.getOutcome().addCoding().setSystem("http://terminology.hl7.org/CodeSystem/audit-event-outcome").setCode(src.getOutcome().toCode()); if (src.hasOutcomeDesc()) - tgt.setOutcomeDescElement(VersionConvertor_30_50.convertString(src.getOutcomeDescElement())); + tgt.getOutcome().setTextElement(VersionConvertor_30_50.convertString(src.getOutcomeDescElement())); for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfEvent()) tgt.addPurposeOfEvent(VersionConvertor_30_50.convertCodeableConcept(t)); for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) tgt.addAgent(convertAuditEventAgentComponent(t)); if (src.hasSource()) @@ -41,10 +41,10 @@ public class AuditEvent30_50 { tgt.setActionElement(convertAuditEventAction(src.getActionElement())); if (src.hasRecorded()) tgt.setRecordedElement(VersionConvertor_30_50.convertInstant(src.getRecordedElement())); - if (src.hasOutcome()) - tgt.setOutcomeElement(convertAuditEventOutcome(src.getOutcomeElement())); - if (src.hasOutcomeDesc()) - tgt.setOutcomeDescElement(VersionConvertor_30_50.convertString(src.getOutcomeDescElement())); + if (src.hasOutcome() && src.getOutcome().hasCoding("http://terminology.hl7.org/CodeSystem/audit-event-outcome")) + tgt.getOutcomeElement().setValueAsString(src.getOutcome().getCode("http://terminology.hl7.org/CodeSystem/audit-event-outcome")); + if (src.getOutcome().hasText()) + tgt.setOutcomeDescElement(VersionConvertor_30_50.convertString(src.getOutcome().getTextElement())); for (org.hl7.fhir.r5.model.CodeableConcept t : src.getPurposeOfEvent()) tgt.addPurposeOfEvent(VersionConvertor_30_50.convertCodeableConcept(t)); for (org.hl7.fhir.r5.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) tgt.addAgent(convertAuditEventAgentComponent(t)); if (src.hasSource()) @@ -321,55 +321,6 @@ public class AuditEvent30_50 { return tgt; } - static public org.hl7.fhir.dstu3.model.Enumeration convertAuditEventOutcome(org.hl7.fhir.r5.model.Enumeration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Enumeration tgt = new org.hl7.fhir.dstu3.model.Enumeration<>(new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcomeEnumFactory()); - VersionConvertor_30_50.copyElement(src, tgt); - switch(src.getValue()) { - case _0: - tgt.setValue(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._0); - break; - case _4: - tgt.setValue(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._4); - break; - case _8: - tgt.setValue(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._8); - break; - case _12: - tgt.setValue(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._12); - break; - default: - tgt.setValue(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome.NULL); - break; - } - return tgt; - } - - static public org.hl7.fhir.r5.model.Enumeration convertAuditEventOutcome(org.hl7.fhir.dstu3.model.Enumeration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r5.model.Enumeration tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcomeEnumFactory()); - VersionConvertor_30_50.copyElement(src, tgt); - switch(src.getValue()) { - case _0: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._0); - break; - case _4: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._4); - break; - case _8: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._8); - break; - case _12: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._12); - break; - default: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome.NULL); - break; - } - return tgt; - } public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.r5.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { if (src == null) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/CarePlan30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/CarePlan30_50.java index 4abb34709..3373c59c2 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/CarePlan30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/CarePlan30_50.java @@ -256,8 +256,8 @@ public class CarePlan30_50 { tgt.setScheduled(VersionConvertor_30_50.convertType(src.getScheduled())); } if (src.hasLocation()) { - if (src.hasLocation()) - tgt.setLocation(VersionConvertor_30_50.convertReference(src.getLocation())); + if (src.getLocation().hasReference()) + tgt.setLocation(VersionConvertor_30_50.convertReference(src.getLocation().getReference())); } for (org.hl7.fhir.r5.model.Reference t : src.getPerformer()) { tgt.addPerformer(VersionConvertor_30_50.convertReference(t)); @@ -325,7 +325,7 @@ public class CarePlan30_50 { } if (src.hasLocation()) { if (src.hasLocation()) - tgt.setLocation(VersionConvertor_30_50.convertReference(src.getLocation())); + tgt.getLocation().setReference(VersionConvertor_30_50.convertReference(src.getLocation())); } for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) { tgt.addPerformer(VersionConvertor_30_50.convertReference(t)); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/ConceptMap30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/ConceptMap30_50.java index 176416ac5..9910ecfe5 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/ConceptMap30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/ConceptMap30_50.java @@ -221,10 +221,10 @@ public class ConceptMap30_50 { case EQUIVALENT: tgt.setValue(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT); break; - case SOURCENARROWERTARGET: + case SOURCEISNARROWERTHANTARGET: tgt.setValue(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER); break; - case SOURCEBROADERTARGET: + case SOURCEISBROADERTHANTARGET: tgt.setValue(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER); break; case NOTRELATEDTO: @@ -252,16 +252,16 @@ public class ConceptMap30_50 { tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); break; case WIDER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case SUBSUMES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case NARROWER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case SPECIALIZES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case INEXACT: tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/DeviceUseStatement30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/DeviceUseStatement30_50.java index 1c3fe8385..658f4010f 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/DeviceUseStatement30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/DeviceUseStatement30_50.java @@ -18,16 +18,16 @@ public class DeviceUseStatement30_50 { tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasTiming()) tgt.setTiming(VersionConvertor_30_50.convertType(src.getTiming())); - if (src.hasRecordedOn()) - tgt.setRecordedOnElement(VersionConvertor_30_50.convertDateTime(src.getRecordedOnElement())); - if (src.hasSource()) - tgt.setSource(VersionConvertor_30_50.convertReference(src.getSource())); - if (src.hasDevice()) - tgt.setDevice(VersionConvertor_30_50.convertReference(src.getDevice())); + if (src.hasDateAsserted()) + tgt.setRecordedOnElement(VersionConvertor_30_50.convertDateTime(src.getDateAssertedElement())); + if (src.hasInformationSource()) + tgt.setSource(VersionConvertor_30_50.convertReference(src.getInformationSource())); + if (src.getDevice().hasReference()) + tgt.setDevice(VersionConvertor_30_50.convertReference(src.getDevice().getReference())); for (CodeableReference t : src.getReason()) if (t.hasConcept()) tgt.addIndication(VersionConvertor_30_50.convertCodeableConcept(t.getConcept())); - if (src.hasBodySite()) - tgt.setBodySite(VersionConvertor_30_50.convertCodeableConcept(src.getBodySite())); + if (src.getBodySite().hasConcept()) + tgt.setBodySite(VersionConvertor_30_50.convertCodeableConcept(src.getBodySite().getConcept())); for (org.hl7.fhir.r5.model.Annotation t : src.getNote()) tgt.addNote(VersionConvertor_30_50.convertAnnotation(t)); return tgt; } @@ -45,14 +45,14 @@ public class DeviceUseStatement30_50 { if (src.hasTiming()) tgt.setTiming(VersionConvertor_30_50.convertType(src.getTiming())); if (src.hasRecordedOn()) - tgt.setRecordedOnElement(VersionConvertor_30_50.convertDateTime(src.getRecordedOnElement())); + tgt.setDateAssertedElement(VersionConvertor_30_50.convertDateTime(src.getRecordedOnElement())); if (src.hasSource()) - tgt.setSource(VersionConvertor_30_50.convertReference(src.getSource())); + tgt.setInformationSource(VersionConvertor_30_50.convertReference(src.getSource())); if (src.hasDevice()) - tgt.setDevice(VersionConvertor_30_50.convertReference(src.getDevice())); + tgt.getDevice().setReference(VersionConvertor_30_50.convertReference(src.getDevice())); for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getIndication()) tgt.addReason(VersionConvertor_30_50.convertCodeableConceptToCodableReference(t)); if (src.hasBodySite()) - tgt.setBodySite(VersionConvertor_30_50.convertCodeableConcept(src.getBodySite())); + tgt.getBodySite().setConcept(VersionConvertor_30_50.convertCodeableConcept(src.getBodySite())); for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) tgt.addNote(VersionConvertor_30_50.convertAnnotation(t)); return tgt; } diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/Medication30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/Medication30_50.java index 766608244..07fa2b9b1 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/Medication30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/Medication30_50.java @@ -48,8 +48,10 @@ public class Medication30_50 { return null; org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent(); VersionConvertor_30_50.copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(VersionConvertor_30_50.convertType(src.getItem())); + if (src.getItem().hasConcept()) + tgt.setItem(VersionConvertor_30_50.convertType(src.getItem().getConcept())); + if (src.getItem().hasReference()) + tgt.setItem(VersionConvertor_30_50.convertType(src.getItem().getReference())); if (src.hasIsActive()) tgt.setIsActiveElement(VersionConvertor_30_50.convertBoolean(src.getIsActiveElement())); if (src.hasStrengthRatio()) @@ -62,8 +64,10 @@ public class Medication30_50 { return null; org.hl7.fhir.r5.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.r5.model.Medication.MedicationIngredientComponent(); VersionConvertor_30_50.copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(VersionConvertor_30_50.convertType(src.getItem())); + if (src.hasItemCodeableConcept()) + tgt.getItem().setConcept(VersionConvertor_30_50.convertCodeableConcept(src.getItemCodeableConcept())); + if (src.hasItemReference()) + tgt.getItem().setReference(VersionConvertor_30_50.convertReference(src.getItemReference())); if (src.hasIsActive()) tgt.setIsActiveElement(VersionConvertor_30_50.convertBoolean(src.getIsActiveElement())); if (src.hasAmount()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationAdministration30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationAdministration30_50.java index 061b72a28..d39113655 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationAdministration30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationAdministration30_50.java @@ -19,8 +19,10 @@ public class MedicationAdministration30_50 { tgt.setStatusElement(convertMedicationAdministrationStatus(src.getStatusElement())); if (src.hasCategory()) tgt.setCategory(VersionConvertor_30_50.convertCodeableConcept(src.getCategoryFirstRep())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.getMedication().hasConcept()) + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getConcept())); + if (src.getMedication().hasReference()) + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getReference())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasEncounter()) @@ -55,8 +57,10 @@ public class MedicationAdministration30_50 { tgt.setStatusElement(convertMedicationAdministrationStatus(src.getStatusElement())); if (src.hasCategory()) tgt.addCategory(VersionConvertor_30_50.convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(VersionConvertor_30_50.convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(VersionConvertor_30_50.convertReference(src.getMedicationReference())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasContext()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationDispense30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationDispense30_50.java index ebd81ad08..afb6e5e90 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationDispense30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationDispense30_50.java @@ -1,5 +1,6 @@ package org.hl7.fhir.convertors.conv30_50; +import org.hl7.fhir.convertors.VersionConvertor_10_50; import org.hl7.fhir.convertors.VersionConvertor_30_50; import org.hl7.fhir.exceptions.FHIRException; @@ -16,8 +17,10 @@ public class MedicationDispense30_50 { tgt.setStatusElement(convertMedicationDispenseStatus(src.getStatusElement())); if (src.hasCategory()) tgt.setCategory(VersionConvertor_30_50.convertCodeableConcept(src.getCategoryFirstRep())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.getMedication().hasConcept()) + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getConcept())); + if (src.getMedication().hasReference()) + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getReference())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasEncounter()) @@ -58,8 +61,10 @@ public class MedicationDispense30_50 { tgt.setStatusElement(convertMedicationDispenseStatus(src.getStatusElement())); if (src.hasCategory()) tgt.addCategory(VersionConvertor_30_50.convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(VersionConvertor_30_50.convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(VersionConvertor_30_50.convertReference(src.getMedicationReference())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasContext()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationRequest30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationRequest30_50.java index c509b3b28..1e7f8207c 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationRequest30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationRequest30_50.java @@ -21,8 +21,10 @@ public class MedicationRequest30_50 { tgt.setIntentElement(convertMedicationRequestIntent(src.getIntentElement())); if (src.hasPriority()) tgt.setPriorityElement(convertMedicationRequestPriority(src.getPriorityElement())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.getMedication().hasConcept()) + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getConcept())); + if (src.getMedication().hasReference()) + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getReference())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasEncounter()) @@ -68,8 +70,10 @@ public class MedicationRequest30_50 { tgt.setIntentElement(convertMedicationRequestIntent(src.getIntentElement())); if (src.hasPriority()) tgt.setPriorityElement(convertMedicationRequestPriority(src.getPriorityElement())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(VersionConvertor_30_50.convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(VersionConvertor_30_50.convertReference(src.getMedicationReference())); if (src.hasSubject()) tgt.setSubject(VersionConvertor_30_50.convertReference(src.getSubject())); if (src.hasContext()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationStatement30_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationStatement30_50.java index 40220fe5c..369fa3283 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationStatement30_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv30_50/MedicationStatement30_50.java @@ -20,8 +20,12 @@ public class MedicationStatement30_50 { tgt.setStatusElement(convertMedicationStatementStatus(src.getStatusElement())); if (src.hasCategory()) tgt.addCategory(VersionConvertor_30_50.convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) { + tgt.getMedication().setConcept(VersionConvertor_30_50.convertCodeableConcept(src.getMedicationCodeableConcept())); + } + if (src.hasMedicationReference()) { + tgt.getMedication().setReference(VersionConvertor_30_50.convertReference(src.getMedicationReference())); + } if (src.hasEffective()) tgt.setEffective(VersionConvertor_30_50.convertType(src.getEffective())); if (src.hasDateAsserted()) @@ -52,8 +56,12 @@ public class MedicationStatement30_50 { tgt.setStatusElement(convertMedicationStatementStatus(src.getStatusElement())); if (src.hasCategory()) tgt.setCategory(VersionConvertor_30_50.convertCodeableConcept(src.getCategoryFirstRep())); - if (src.hasMedication()) - tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication())); + if (src.getMedication().hasConcept()) { + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getConcept())); + } + if (src.getMedication().hasReference()) { + tgt.setMedication(VersionConvertor_30_50.convertType(src.getMedication().getReference())); + } if (src.hasEffective()) tgt.setEffective(VersionConvertor_30_50.convertType(src.getEffective())); if (src.hasDateAsserted()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/AuditEvent40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/AuditEvent40_50.java index 2063174a2..fe9041761 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/AuditEvent40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/AuditEvent40_50.java @@ -1,5 +1,6 @@ package org.hl7.fhir.convertors.conv40_50; +import org.hl7.fhir.convertors.VersionConvertor_30_50; /*- * #%L * org.hl7.fhir.convertors @@ -68,9 +69,9 @@ public class AuditEvent40_50 extends VersionConvertor_40_50 { if (src.hasRecorded()) tgt.setRecordedElement(convertInstant(src.getRecordedElement())); if (src.hasOutcome()) - tgt.setOutcomeElement(convertAuditEventOutcome(src.getOutcomeElement())); + tgt.getOutcome().addCoding().setSystem("http://terminology.hl7.org/CodeSystem/audit-event-outcome").setCode(src.getOutcome().toCode()); if (src.hasOutcomeDesc()) - tgt.setOutcomeDescElement(convertString(src.getOutcomeDescElement())); + tgt.getOutcome().setTextElement(convertString(src.getOutcomeDescElement())); for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfEvent()) tgt.addPurposeOfEvent(convertCodeableConcept(t)); for (org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) tgt.addAgent(convertAuditEventAgentComponent(t)); if (src.hasSource()) @@ -93,10 +94,10 @@ public class AuditEvent40_50 extends VersionConvertor_40_50 { tgt.setPeriod(convertPeriod(src.getPeriod())); if (src.hasRecorded()) tgt.setRecordedElement(convertInstant(src.getRecordedElement())); - if (src.hasOutcome()) - tgt.setOutcomeElement(convertAuditEventOutcome(src.getOutcomeElement())); - if (src.hasOutcomeDesc()) - tgt.setOutcomeDescElement(convertString(src.getOutcomeDescElement())); + if (src.hasOutcome() && src.getOutcome().hasCoding("http://terminology.hl7.org/CodeSystem/audit-event-outcome")) + tgt.getOutcomeElement().setValueAsString(src.getOutcome().getCode("http://terminology.hl7.org/CodeSystem/audit-event-outcome")); + if (src.getOutcome().hasText()) + tgt.setOutcomeDescElement(VersionConvertor_40_50.convertString(src.getOutcome().getTextElement())); for (org.hl7.fhir.r5.model.CodeableConcept t : src.getPurposeOfEvent()) tgt.addPurposeOfEvent(convertCodeableConcept(t)); for (org.hl7.fhir.r5.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) tgt.addAgent(convertAuditEventAgentComponent(t)); if (src.hasSource()) @@ -161,55 +162,6 @@ public class AuditEvent40_50 extends VersionConvertor_40_50 { return tgt; } - static public org.hl7.fhir.r5.model.Enumeration convertAuditEventOutcome(org.hl7.fhir.r4.model.Enumeration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r5.model.Enumeration tgt = new org.hl7.fhir.r5.model.Enumeration<>(new org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcomeEnumFactory()); - VersionConvertor_40_50.copyElement(src, tgt); - switch(src.getValue()) { - case _0: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._0); - break; - case _4: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._4); - break; - case _8: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._8); - break; - case _12: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome._12); - break; - default: - tgt.setValue(org.hl7.fhir.r5.model.AuditEvent.AuditEventOutcome.NULL); - break; - } - return tgt; - } - - static public org.hl7.fhir.r4.model.Enumeration convertAuditEventOutcome(org.hl7.fhir.r5.model.Enumeration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Enumeration tgt = new org.hl7.fhir.r4.model.Enumeration<>(new org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcomeEnumFactory()); - VersionConvertor_40_50.copyElement(src, tgt); - switch(src.getValue()) { - case _0: - tgt.setValue(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._0); - break; - case _4: - tgt.setValue(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._4); - break; - case _8: - tgt.setValue(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._8); - break; - case _12: - tgt.setValue(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._12); - break; - default: - tgt.setValue(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome.NULL); - break; - } - return tgt; - } public static org.hl7.fhir.r5.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { if (src == null) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/CarePlan40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/CarePlan40_50.java index 3e3a02561..1593ca08b 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/CarePlan40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/CarePlan40_50.java @@ -308,7 +308,7 @@ public class CarePlan40_50 extends VersionConvertor_40_50 { if (src.hasScheduled()) tgt.setScheduled(convertType(src.getScheduled())); if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); + tgt.getLocation().setReference(convertReference(src.getLocation())); for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) tgt.addPerformer(convertReference(t)); if (src.hasProduct()) tgt.setProduct(convertType(src.getProduct())); @@ -345,8 +345,8 @@ public class CarePlan40_50 extends VersionConvertor_40_50 { tgt.setDoNotPerformElement(convertBoolean(src.getDoNotPerformElement())); if (src.hasScheduled()) tgt.setScheduled(convertType(src.getScheduled())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); + if (src.getLocation().hasReference()) + tgt.setLocation(convertReference(src.getLocation().getReference())); for (org.hl7.fhir.r5.model.Reference t : src.getPerformer()) tgt.addPerformer(convertReference(t)); if (src.hasProduct()) tgt.setProduct(convertType(src.getProduct())); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ConceptMap40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ConceptMap40_50.java index 25276dc41..dee8c68de 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ConceptMap40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ConceptMap40_50.java @@ -262,10 +262,10 @@ public class ConceptMap40_50 extends VersionConvertor_40_50 { case EQUIVALENT: tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT); break; - case SOURCENARROWERTARGET: + case SOURCEISNARROWERTHANTARGET: tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER); break; - case SOURCEBROADERTARGET: + case SOURCEISBROADERTHANTARGET: tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER); break; case NOTRELATEDTO: @@ -293,16 +293,16 @@ public class ConceptMap40_50 extends VersionConvertor_40_50 { tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); break; case WIDER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case SUBSUMES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case NARROWER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case SPECIALIZES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case RELATEDTO: tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Consent40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Consent40_50.java index d4333def4..6d2313200 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Consent40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Consent40_50.java @@ -65,7 +65,7 @@ public class Consent40_50 extends VersionConvertor_40_50 { tgt.setScope(convertCodeableConcept(src.getScope())); for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) tgt.addCategory(convertCodeableConcept(t)); if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); + tgt.setSubject(convertReference(src.getPatient())); if (src.hasDateTime()) tgt.setDateTimeElement(convertDateTime(src.getDateTimeElement())); for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) tgt.addPerformer(convertReference(t)); @@ -94,8 +94,8 @@ public class Consent40_50 extends VersionConvertor_40_50 { if (src.hasScope()) tgt.setScope(convertCodeableConcept(src.getScope())); for (org.hl7.fhir.r5.model.CodeableConcept t : src.getCategory()) tgt.addCategory(convertCodeableConcept(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); + if (src.hasSubject()) + tgt.setPatient(convertReference(src.getSubject())); if (src.hasDateTime()) tgt.setDateTimeElement(convertDateTime(src.getDateTimeElement())); for (org.hl7.fhir.r5.model.Reference t : src.getPerformer()) tgt.addPerformer(convertReference(t)); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Device40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Device40_50.java index 537d0f7e0..3293e77b8 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Device40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Device40_50.java @@ -83,7 +83,7 @@ public class Device40_50 extends VersionConvertor_40_50 { if (src.hasPartNumber()) tgt.setPartNumberElement(convertString(src.getPartNumberElement())); if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); + tgt.addType(convertCodeableConcept(src.getType())); for (org.hl7.fhir.r4.model.Device.DeviceSpecializationComponent t : src.getSpecialization()) tgt.addSpecialization(convertDeviceSpecializationComponent(t)); for (org.hl7.fhir.r4.model.Device.DeviceVersionComponent t : src.getVersion()) tgt.addVersion(convertDeviceVersionComponent(t)); for (org.hl7.fhir.r4.model.Device.DevicePropertyComponent t : src.getProperty()) tgt.addProperty(convertDevicePropertyComponent(t)); @@ -133,7 +133,7 @@ public class Device40_50 extends VersionConvertor_40_50 { if (src.hasPartNumber()) tgt.setPartNumberElement(convertString(src.getPartNumberElement())); if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); + tgt.setType(convertCodeableConcept(src.getTypeFirstRep())); for (org.hl7.fhir.r5.model.Device.DeviceSpecializationComponent t : src.getSpecialization()) tgt.addSpecialization(convertDeviceSpecializationComponent(t)); for (org.hl7.fhir.r5.model.Device.DeviceVersionComponent t : src.getVersion()) tgt.addVersion(convertDeviceVersionComponent(t)); for (org.hl7.fhir.r5.model.Device.DevicePropertyComponent t : src.getProperty()) tgt.addProperty(convertDevicePropertyComponent(t)); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceDefinition40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceDefinition40_50.java index e09ac294d..4eaed93f9 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceDefinition40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceDefinition40_50.java @@ -79,8 +79,6 @@ public class DeviceDefinition40_50 extends VersionConvertor_40_50 { if (src.hasOwner()) tgt.setOwner(convertReference(src.getOwner())); for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) tgt.addContact(convertContactPoint(t)); - if (src.hasUrl()) - tgt.setUrlElement(convertUri(src.getUrlElement())); if (src.hasOnlineInformation()) tgt.setOnlineInformationElement(convertUri(src.getOnlineInformationElement())); for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) tgt.addNote(convertAnnotation(t)); @@ -118,8 +116,6 @@ public class DeviceDefinition40_50 extends VersionConvertor_40_50 { if (src.hasOwner()) tgt.setOwner(convertReference(src.getOwner())); for (org.hl7.fhir.r5.model.ContactPoint t : src.getContact()) tgt.addContact(convertContactPoint(t)); - if (src.hasUrl()) - tgt.setUrlElement(convertUri(src.getUrlElement())); if (src.hasOnlineInformation()) tgt.setOnlineInformationElement(convertUri(src.getOnlineInformationElement())); for (org.hl7.fhir.r5.model.Annotation t : src.getNote()) tgt.addNote(convertAnnotation(t)); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceRequest40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceRequest40_50.java index e38045038..f291b851f 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceRequest40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceRequest40_50.java @@ -72,8 +72,11 @@ public class DeviceRequest40_50 extends VersionConvertor_40_50 { tgt.setIntentElement(convertRequestIntent(src.getIntentElement())); if (src.hasPriority()) tgt.setPriorityElement(convertRequestPriority(src.getPriorityElement())); - if (src.hasCode()) - tgt.setCode(convertType(src.getCode())); + if (src.hasCodeCodeableConcept()) + tgt.getCode().setConcept(convertCodeableConcept(src.getCodeCodeableConcept())); + else if (src.hasCodeReference()) + tgt.getCode().setReference(convertReference(src.getCodeReference())); + for (org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestParameterComponent t : src.getParameter()) tgt.addParameter(convertDeviceRequestParameterComponent(t)); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); @@ -116,8 +119,10 @@ public class DeviceRequest40_50 extends VersionConvertor_40_50 { tgt.setIntentElement(convertRequestIntent(src.getIntentElement())); if (src.hasPriority()) tgt.setPriorityElement(convertRequestPriority(src.getPriorityElement())); - if (src.hasCode()) - tgt.setCode(convertType(src.getCode())); + if (src.getCode().hasConcept()) + tgt.setCode(convertType(src.getCode().getConcept())); + if (src.getCode().hasReference()) + tgt.setCode(convertType(src.getCode().getReference())); for (org.hl7.fhir.r5.model.DeviceRequest.DeviceRequestParameterComponent t : src.getParameter()) tgt.addParameter(convertDeviceRequestParameterComponent(t)); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceUseStatement40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceUseStatement40_50.java index f4050d6df..7d9140e1c 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceUseStatement40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/DeviceUseStatement40_50.java @@ -69,15 +69,15 @@ public class DeviceUseStatement40_50 extends VersionConvertor_40_50 { if (src.hasTiming()) tgt.setTiming(convertType(src.getTiming())); if (src.hasRecordedOn()) - tgt.setRecordedOnElement(convertDateTime(src.getRecordedOnElement())); + tgt.setDateAssertedElement(convertDateTime(src.getRecordedOnElement())); if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); + tgt.setInformationSource(convertReference(src.getSource())); if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); + tgt.getDevice().setReference(convertReference(src.getDevice())); for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) tgt.addReason(convertCodeableConceptToCodeableReference(t)); for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) tgt.addReason(convertReferenceToCodeableReference(t)); if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + tgt.getBodySite().setConcept(convertCodeableConcept(src.getBodySite())); for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) tgt.addNote(convertAnnotation(t)); return tgt; } @@ -96,18 +96,18 @@ public class DeviceUseStatement40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r5.model.Reference t : src.getDerivedFrom()) tgt.addDerivedFrom(convertReference(t)); if (src.hasTiming()) tgt.setTiming(convertType(src.getTiming())); - if (src.hasRecordedOn()) - tgt.setRecordedOnElement(convertDateTime(src.getRecordedOnElement())); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); + if (src.hasDateAsserted()) + tgt.setRecordedOnElement(convertDateTime(src.getDateAssertedElement())); + if (src.hasInformationSource()) + tgt.setSource(convertReference(src.getInformationSource())); + if (src.getDevice().hasReference()) + tgt.setDevice(convertReference(src.getDevice().getReference())); for (CodeableReference t : src.getReason()) if (t.hasConcept()) tgt.addReasonCode(convertCodeableConcept(t.getConcept())); for (CodeableReference t : src.getReason()) if (t.hasReference()) tgt.addReasonReference(convertReference(t.getReference())); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + if (src.getBodySite().hasConcept()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite().getConcept())); for (org.hl7.fhir.r5.model.Annotation t : src.getNote()) tgt.addNote(convertAnnotation(t)); return tgt; } diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Enumerations40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Enumerations40_50.java index 1208a54b0..adfd47201 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Enumerations40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Enumerations40_50.java @@ -457,16 +457,16 @@ public class Enumerations40_50 extends VersionConvertor_40_50 { tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.EQUIVALENT); break; case WIDER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case SUBSUMES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCENARROWERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); break; case NARROWER: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case SPECIALIZES: - tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEBROADERTARGET); + tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.SOURCEISBROADERTHANTARGET); break; case INEXACT: tgt.setValue(org.hl7.fhir.r5.model.Enumerations.ConceptMapRelationship.RELATEDTO); @@ -496,10 +496,10 @@ public class Enumerations40_50 extends VersionConvertor_40_50 { case EQUIVALENT: tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT); break; - case SOURCENARROWERTARGET: + case SOURCEISNARROWERTHANTARGET: tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER); break; - case SOURCEBROADERTARGET: + case SOURCEISBROADERTHANTARGET: tgt.setValue(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER); break; case NOTRELATEDTO: diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Immunization40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Immunization40_50.java index 04e18fa38..a90f1ae02 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Immunization40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Immunization40_50.java @@ -303,9 +303,9 @@ public class Immunization40_50 extends VersionConvertor_40_50 { tgt.setAuthority(convertReference(src.getAuthority())); for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTargetDisease()) tgt.addTargetDisease(convertCodeableConcept(t)); if (src.hasDoseNumber()) - tgt.setDoseNumber(convertType(src.getDoseNumber())); + tgt.setDoseNumber(src.getDoseNumber().primitiveValue()); if (src.hasSeriesDoses()) - tgt.setSeriesDoses(convertType(src.getSeriesDoses())); + tgt.setSeriesDoses(src.getSeriesDoses().primitiveValue()); return tgt; } @@ -320,9 +320,9 @@ public class Immunization40_50 extends VersionConvertor_40_50 { tgt.setAuthority(convertReference(src.getAuthority())); for (org.hl7.fhir.r5.model.CodeableConcept t : src.getTargetDisease()) tgt.addTargetDisease(convertCodeableConcept(t)); if (src.hasDoseNumber()) - tgt.setDoseNumber(convertType(src.getDoseNumber())); + tgt.setDoseNumber(convertType(src.getDoseNumberElement())); if (src.hasSeriesDoses()) - tgt.setSeriesDoses(convertType(src.getSeriesDoses())); + tgt.setSeriesDoses(convertType(src.getSeriesDosesElement())); return tgt; } } diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationEvaluation40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationEvaluation40_50.java index b69cb897c..c5c9c00d4 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationEvaluation40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationEvaluation40_50.java @@ -79,9 +79,9 @@ public class ImmunizationEvaluation40_50 extends VersionConvertor_40_50 { if (src.hasSeries()) tgt.setSeriesElement(convertString(src.getSeriesElement())); if (src.hasDoseNumber()) - tgt.setDoseNumber(convertType(src.getDoseNumber())); + tgt.setDoseNumber(src.getDoseNumber().primitiveValue()); if (src.hasSeriesDoses()) - tgt.setSeriesDoses(convertType(src.getSeriesDoses())); + tgt.setSeriesDoses(src.getSeriesDoses().primitiveValue()); return tgt; } @@ -111,9 +111,9 @@ public class ImmunizationEvaluation40_50 extends VersionConvertor_40_50 { if (src.hasSeries()) tgt.setSeriesElement(convertString(src.getSeriesElement())); if (src.hasDoseNumber()) - tgt.setDoseNumber(convertType(src.getDoseNumber())); + tgt.setDoseNumber(convertType(src.getDoseNumberElement())); if (src.hasSeriesDoses()) - tgt.setSeriesDoses(convertType(src.getSeriesDoses())); + tgt.setSeriesDoses(convertType(src.getSeriesDosesElement())); return tgt; } diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationRecommendation40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationRecommendation40_50.java index e4b059084..df13a9132 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationRecommendation40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/ImmunizationRecommendation40_50.java @@ -103,9 +103,9 @@ public class ImmunizationRecommendation40_50 extends VersionConvertor_40_50 { if (src.hasSeries()) tgt.setSeriesElement(convertString(src.getSeriesElement())); if (src.hasDoseNumber()) - tgt.setDoseNumber(convertType(src.getDoseNumber())); + tgt.setDoseNumber(src.getDoseNumber().primitiveValue()); if (src.hasSeriesDoses()) - tgt.setSeriesDoses(convertType(src.getSeriesDoses())); + tgt.setSeriesDoses(src.getSeriesDoses().primitiveValue()); for (org.hl7.fhir.r4.model.Reference t : src.getSupportingImmunization()) tgt.addSupportingImmunization(convertReference(t)); for (org.hl7.fhir.r4.model.Reference t : src.getSupportingPatientInformation()) tgt.addSupportingPatientInformation(convertReference(t)); return tgt; @@ -129,9 +129,9 @@ public class ImmunizationRecommendation40_50 extends VersionConvertor_40_50 { if (src.hasSeries()) tgt.setSeriesElement(convertString(src.getSeriesElement())); if (src.hasDoseNumber()) - tgt.setDoseNumber(convertType(src.getDoseNumber())); + tgt.setDoseNumber(convertType(src.getDoseNumberElement())); if (src.hasSeriesDoses()) - tgt.setSeriesDoses(convertType(src.getSeriesDoses())); + tgt.setSeriesDoses(convertType(src.getSeriesDosesElement())); for (org.hl7.fhir.r5.model.Reference t : src.getSupportingImmunization()) tgt.addSupportingImmunization(convertReference(t)); for (org.hl7.fhir.r5.model.Reference t : src.getSupportingPatientInformation()) tgt.addSupportingPatientInformation(convertReference(t)); return tgt; diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Medication40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Medication40_50.java index f4053a9a8..2d8a9c4e6 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Medication40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/Medication40_50.java @@ -146,8 +146,10 @@ public class Medication40_50 extends VersionConvertor_40_50 { return null; org.hl7.fhir.r5.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.r5.model.Medication.MedicationIngredientComponent(); copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); + if (src.hasItemCodeableConcept()) + tgt.getItem().setConcept(convertCodeableConcept(src.getItemCodeableConcept())); + if (src.hasItemReference()) + tgt.getItem().setReference(convertReference(src.getItemReference())); if (src.hasIsActive()) tgt.setIsActiveElement(convertBoolean(src.getIsActiveElement())); if (src.hasStrength()) @@ -160,8 +162,10 @@ public class Medication40_50 extends VersionConvertor_40_50 { return null; org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent(); copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); + if (src.getItem().hasConcept()) + tgt.setItem(convertType(src.getItem().getConcept())); + if (src.getItem().hasReference()) + tgt.setItem(convertType(src.getItem().getReference())); if (src.hasIsActive()) tgt.setIsActiveElement(convertBoolean(src.getIsActiveElement())); if (src.hasStrengthRatio()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationAdministration40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationAdministration40_50.java index f5e09ddd3..7e352a9c9 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationAdministration40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationAdministration40_50.java @@ -71,8 +71,10 @@ public class MedicationAdministration40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r4.model.CodeableConcept t : src.getStatusReason()) tgt.addStatusReason(convertCodeableConcept(t)); if (src.hasCategory()) tgt.addCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(convertReference(src.getMedicationReference())); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasContext()) @@ -106,8 +108,10 @@ public class MedicationAdministration40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r5.model.CodeableConcept t : src.getStatusReason()) tgt.addStatusReason(convertCodeableConcept(t)); if (src.hasCategory()) tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.getMedication().hasConcept()) + tgt.setMedication(convertType(src.getMedication().getConcept())); + if (src.getMedication().hasReference()) + tgt.setMedication(convertType(src.getMedication().getReference())); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasEncounter()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationDispense40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationDispense40_50.java index 421bc5b71..0d6682a98 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationDispense40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationDispense40_50.java @@ -65,12 +65,16 @@ public class MedicationDispense40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) tgt.addPartOf(convertReference(t)); if (src.hasStatus()) tgt.setStatusElement(convertMedicationStatus(src.getStatusElement())); - if (src.hasStatusReason()) - tgt.setStatusReason(convertType(src.getStatusReason())); + if (src.hasStatusReasonCodeableConcept()) + tgt.getStatusReason().setConcept(convertCodeableConcept(src.getStatusReasonCodeableConcept())); + if (src.hasStatusReasonReference()) + tgt.getStatusReason().setReference(convertReference(src.getStatusReasonReference())); if (src.hasCategory()) tgt.addCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(convertReference(src.getMedicationReference())); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasContext()) @@ -111,12 +115,16 @@ public class MedicationDispense40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r5.model.Reference t : src.getPartOf()) tgt.addPartOf(convertReference(t)); if (src.hasStatus()) tgt.setStatusElement(convertStatus(src.getStatusElement())); - if (src.hasStatusReason()) - tgt.setStatusReason(convertType(src.getStatusReason())); + if (src.getStatusReason().hasConcept()) + tgt.setStatusReason(convertType(src.getStatusReason().getConcept())); + if (src.getStatusReason().hasReference()) + tgt.setStatusReason(convertType(src.getStatusReason().getReference())); if (src.hasCategory()) tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.getMedication().hasConcept()) + tgt.setMedication(convertType(src.getMedication().getConcept())); + if (src.getMedication().hasReference()) + tgt.setMedication(convertType(src.getMedication().getReference())); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasEncounter()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationKnowledge40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationKnowledge40_50.java index 56180669c..ffd85da8d 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationKnowledge40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationKnowledge40_50.java @@ -206,8 +206,10 @@ public class MedicationKnowledge40_50 extends VersionConvertor_40_50 { return null; org.hl7.fhir.r5.model.MedicationKnowledge.MedicationKnowledgeIngredientComponent tgt = new org.hl7.fhir.r5.model.MedicationKnowledge.MedicationKnowledgeIngredientComponent(); copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); + if (src.hasItemCodeableConcept()) + tgt.getItem().setConcept(convertCodeableConcept(src.getItemCodeableConcept())); + if (src.hasItemReference()) + tgt.getItem().setReference(convertReference(src.getItemReference())); if (src.hasIsActive()) tgt.setIsActiveElement(convertBoolean(src.getIsActiveElement())); if (src.hasStrength()) @@ -220,8 +222,10 @@ public class MedicationKnowledge40_50 extends VersionConvertor_40_50 { return null; org.hl7.fhir.r4.model.MedicationKnowledge.MedicationKnowledgeIngredientComponent tgt = new org.hl7.fhir.r4.model.MedicationKnowledge.MedicationKnowledgeIngredientComponent(); copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); + if (src.getItem().hasConcept()) + tgt.setItem(convertType(src.getItem().getConcept())); + if (src.getItem().hasReference()) + tgt.setItem(convertType(src.getItem().getReference())); if (src.hasIsActive()) tgt.setIsActiveElement(convertBoolean(src.getIsActiveElement())); if (src.hasStrengthRatio()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationRequest40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationRequest40_50.java index 10d1688c4..5a8f0aa52 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationRequest40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationRequest40_50.java @@ -74,8 +74,10 @@ public class MedicationRequest40_50 extends VersionConvertor_40_50 { tgt.setReportedElement(convertBoolean(src.getReportedBooleanType())); if (src.hasReportedReference()) tgt.setInformationSource(convertReference(src.getReportedReference())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) + tgt.getMedication().setConcept(convertCodeableConcept(src.getMedicationCodeableConcept())); + if (src.hasMedicationReference()) + tgt.getMedication().setReference(convertReference(src.getMedicationReference())); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasEncounter()) @@ -135,8 +137,10 @@ public class MedicationRequest40_50 extends VersionConvertor_40_50 { tgt.setReported(convertBoolean(src.getReportedElement())); if (src.hasInformationSource()) tgt.setReported(convertReference(src.getInformationSource())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.getMedication().hasReference()) + tgt.setMedication(convertType(src.getMedication().getReference())); + if (src.getMedication().hasConcept()) + tgt.setMedication(convertType(src.getMedication().getConcept())); if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasEncounter()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationStatement40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationStatement40_50.java index c5272d0f3..f96fe964a 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationStatement40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicationStatement40_50.java @@ -67,8 +67,12 @@ public class MedicationStatement40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r4.model.CodeableConcept t : src.getStatusReason()) tgt.addStatusReason(convertCodeableConcept(t)); if (src.hasCategory()) tgt.addCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.hasMedicationCodeableConcept()) { + tgt.getMedication().setConcept(convertCodeableConcept(src.getMedicationCodeableConcept())); + } + if (src.hasMedicationReference()) { + tgt.getMedication().setReference(convertReference(src.getMedicationReference())); + } if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasContext()) @@ -100,8 +104,12 @@ public class MedicationStatement40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r5.model.CodeableConcept t : src.getStatusReason()) tgt.addStatusReason(convertCodeableConcept(t)); if (src.hasCategory()) tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); + if (src.getMedication().hasConcept()) { + tgt.setMedication(convertType(src.getMedication().getConcept())); + } + if (src.getMedication().hasReference()) { + tgt.setMedication(convertType(src.getMedication().getReference())); + } if (src.hasSubject()) tgt.setSubject(convertReference(src.getSubject())); if (src.hasEncounter()) diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicinalProductDefinition40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicinalProductDefinition40_50.java index eb5c318cf..a3007dd97 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicinalProductDefinition40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/MedicinalProductDefinition40_50.java @@ -64,7 +64,7 @@ public class MedicinalProductDefinition40_50 extends VersionConvertor_40_50 { if (src.hasType()) tgt.setType(convertCodeableConcept(src.getType())); if (src.hasDomain()) - tgt.setDomain(convertCoding(src.getDomain())); + tgt.getDomain().addCoding(convertCoding(src.getDomain())); // version (new) // status (new) // description (new) @@ -108,7 +108,7 @@ public class MedicinalProductDefinition40_50 extends VersionConvertor_40_50 { copyElement(srcPart, tgtPart); tgtName.addNamePart(tgtPart); tgtPart.setPartElement(convertString(srcPart.getPartElement())); - tgtPart.setType(convertCoding(srcPart.getType())); + tgtPart.getType().addCoding(convertCoding(srcPart.getType())); } for (org.hl7.fhir.r4.model.MedicinalProduct.MedicinalProductNameCountryLanguageComponent srcLang : srcName.getCountryLanguage()) { org.hl7.fhir.r5.model.MedicinalProductDefinition.MedicinalProductDefinitionNameCountryLanguageComponent tgtLang = new org.hl7.fhir.r5.model.MedicinalProductDefinition.MedicinalProductDefinitionNameCountryLanguageComponent(); @@ -129,7 +129,7 @@ public class MedicinalProductDefinition40_50 extends VersionConvertor_40_50 { copyElement(srcMBO, tgtMBO); tgt.addManufacturingBusinessOperation(tgtMBO); if (srcMBO.hasOperationType()) { - tgtMBO.setType(convertCodeableConcept(srcMBO.getOperationType())); + tgtMBO.getType().setConcept(convertCodeableConcept(srcMBO.getOperationType())); // operationType -> type[x] } if (srcMBO.hasAuthorisationReferenceNumber()) @@ -163,8 +163,8 @@ public class MedicinalProductDefinition40_50 extends VersionConvertor_40_50 { for (org.hl7.fhir.r5.model.Identifier t : src.getIdentifier()) tgt.addIdentifier(convertIdentifier(t)); if (src.hasType()) tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDomain()) - tgt.setDomain(convertCoding(src.getDomain())); + if (src.getDomain().hasCoding()) + tgt.setDomain(convertCoding(src.getDomain().getCodingFirstRep())); if (src.hasVersion()) throw new FHIRException("Converting MedicinalProductDefinition.version is not supported"); if (src.hasStatus()) @@ -220,7 +220,9 @@ public class MedicinalProductDefinition40_50 extends VersionConvertor_40_50 { copyElement(srcPart, tgtPart); tgtName.addNamePart(tgtPart); tgtPart.setPartElement(convertString(srcPart.getPartElement())); - tgtPart.setType(convertCoding(srcPart.getType())); + if (srcPart.getType().hasCoding()) { + tgtPart.setType(convertCoding(srcPart.getType().getCodingFirstRep())); + } } for (org.hl7.fhir.r5.model.MedicinalProductDefinition.MedicinalProductDefinitionNameCountryLanguageComponent srcLang : srcName.getCountryLanguage()) { org.hl7.fhir.r4.model.MedicinalProduct.MedicinalProductNameCountryLanguageComponent tgtLang = new org.hl7.fhir.r4.model.MedicinalProduct.MedicinalProductNameCountryLanguageComponent(); @@ -248,8 +250,8 @@ public class MedicinalProductDefinition40_50 extends VersionConvertor_40_50 { tgt.addManufacturingBusinessOperation(tgtMBO); if (srcMBO.hasType()) { // type[x] -> operationType - if (srcMBO.getType() instanceof org.hl7.fhir.r5.model.CodeableConcept) - tgtMBO.setOperationType(convertCodeableConcept((org.hl7.fhir.r5.model.CodeableConcept)srcMBO.getType())); + if (srcMBO.getType().hasConcept()) + tgtMBO.setOperationType(convertCodeableConcept(srcMBO.getType().getConcept())); else throw new FHIRException("Converting MedicinalProductDefinition.manufacturingBusinessOperation.typeReference is not supported"); } diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SubstancePolymer40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SubstancePolymer40_50.java index ebca16da5..b6c3e7905 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SubstancePolymer40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SubstancePolymer40_50.java @@ -63,7 +63,7 @@ public class SubstancePolymer40_50 extends VersionConvertor_40_50 { if (src.hasGeometry()) tgt.setGeometry(convertCodeableConcept(src.getGeometry())); for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCopolymerConnectivity()) tgt.addCopolymerConnectivity(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.StringType t : src.getModification()) tgt.getModification().add(convertString(t)); + for (org.hl7.fhir.r4.model.StringType t : src.getModification()) tgt.setModificationElement(convertString(t)); for (org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerMonomerSetComponent t : src.getMonomerSet()) tgt.addMonomerSet(convertSubstancePolymerMonomerSetComponent(t)); for (org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerRepeatComponent t : src.getRepeat()) tgt.addRepeat(convertSubstancePolymerRepeatComponent(t)); return tgt; @@ -79,7 +79,7 @@ public class SubstancePolymer40_50 extends VersionConvertor_40_50 { if (src.hasGeometry()) tgt.setGeometry(convertCodeableConcept(src.getGeometry())); for (org.hl7.fhir.r5.model.CodeableConcept t : src.getCopolymerConnectivity()) tgt.addCopolymerConnectivity(convertCodeableConcept(t)); - for (org.hl7.fhir.r5.model.StringType t : src.getModification()) tgt.getModification().add(convertString(t)); + if (src.hasModification()) tgt.getModification().add(convertString(src.getModificationElement())); for (org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerMonomerSetComponent t : src.getMonomerSet()) tgt.addMonomerSet(convertSubstancePolymerMonomerSetComponent(t)); for (org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerRepeatComponent t : src.getRepeat()) tgt.addRepeat(convertSubstancePolymerRepeatComponent(t)); return tgt; @@ -113,9 +113,9 @@ public class SubstancePolymer40_50 extends VersionConvertor_40_50 { org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent tgt = new org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent(); copyElement(src, tgt); if (src.hasMaterial()) - tgt.setMaterial(convertCodeableConcept(src.getMaterial())); + tgt.setCode(convertCodeableConcept(src.getMaterial())); if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); + tgt.setCategory(convertCodeableConcept(src.getType())); if (src.hasIsDefining()) tgt.setIsDefiningElement(convertBoolean(src.getIsDefiningElement())); if (src.hasAmount()) @@ -128,10 +128,10 @@ public class SubstancePolymer40_50 extends VersionConvertor_40_50 { return null; org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent tgt = new org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent(); copyElement(src, tgt); - if (src.hasMaterial()) - tgt.setMaterial(convertCodeableConcept(src.getMaterial())); + if (src.hasCode()) + tgt.setMaterial(convertCodeableConcept(src.getCode())); if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); + tgt.setType(convertCodeableConcept(src.getCategory())); if (src.hasIsDefining()) tgt.setIsDefiningElement(convertBoolean(src.getIsDefiningElement())); if (src.hasAmount()) @@ -175,9 +175,9 @@ public class SubstancePolymer40_50 extends VersionConvertor_40_50 { org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent tgt = new org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent(); copyElement(src, tgt); if (src.hasOrientationOfPolymerisation()) - tgt.setOrientationOfPolymerisation(convertCodeableConcept(src.getOrientationOfPolymerisation())); + tgt.setOrientation(convertCodeableConcept(src.getOrientationOfPolymerisation())); if (src.hasRepeatUnit()) - tgt.setRepeatUnitElement(convertString(src.getRepeatUnitElement())); + tgt.setUnitElement(convertString(src.getRepeatUnitElement())); if (src.hasAmount()) tgt.setAmount(convertSubstanceAmount(src.getAmount())); for (org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent t : src.getDegreeOfPolymerisation()) tgt.addDegreeOfPolymerisation(convertSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(t)); @@ -190,10 +190,10 @@ public class SubstancePolymer40_50 extends VersionConvertor_40_50 { return null; org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent tgt = new org.hl7.fhir.r4.model.SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent(); copyElement(src, tgt); - if (src.hasOrientationOfPolymerisation()) - tgt.setOrientationOfPolymerisation(convertCodeableConcept(src.getOrientationOfPolymerisation())); - if (src.hasRepeatUnit()) - tgt.setRepeatUnitElement(convertString(src.getRepeatUnitElement())); + if (src.hasOrientation()) + tgt.setOrientationOfPolymerisation(convertCodeableConcept(src.getOrientation())); + if (src.hasUnit()) + tgt.setRepeatUnitElement(convertString(src.getUnitElement())); if (src.hasAmount()) tgt.setAmount(convertSubstanceAmount(src.getAmount())); for (org.hl7.fhir.r5.model.SubstancePolymer.SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent t : src.getDegreeOfPolymerisation()) tgt.addDegreeOfPolymerisation(convertSubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent(t)); diff --git a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SupplyRequest40_50.java b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SupplyRequest40_50.java index a3bf46925..935315cfd 100644 --- a/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SupplyRequest40_50.java +++ b/org.hl7.fhir.convertors/src/main/java/org/hl7/fhir/convertors/conv40_50/SupplyRequest40_50.java @@ -66,8 +66,13 @@ public class SupplyRequest40_50 extends VersionConvertor_40_50 { tgt.setCategory(convertCodeableConcept(src.getCategory())); if (src.hasPriority()) tgt.setPriorityElement(convertRequestPriority(src.getPriorityElement())); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); + if (src.hasItem()) { + if (src.hasItemCodeableConcept()) { + tgt.getItem().setConcept(convertCodeableConcept(src.getItemCodeableConcept())); + } else { + tgt.getItem().setReference(convertReference(src.getItemReference())); + } + } if (src.hasQuantity()) tgt.setQuantity(convertQuantity(src.getQuantity())); for (org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestParameterComponent t : src.getParameter()) tgt.addParameter(convertSupplyRequestParameterComponent(t)); @@ -99,8 +104,13 @@ public class SupplyRequest40_50 extends VersionConvertor_40_50 { tgt.setCategory(convertCodeableConcept(src.getCategory())); if (src.hasPriority()) tgt.setPriorityElement(convertRequestPriority(src.getPriorityElement())); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); + if (src.hasItem()) { + if (src.getItem().hasReference()) { + tgt.setItem(convertType(src.getItem().getReference())); + } else { + tgt.setItem(convertType(src.getItem().getConcept())); + } + } if (src.hasQuantity()) tgt.setQuantity(convertQuantity(src.getQuantity())); for (org.hl7.fhir.r5.model.SupplyRequest.SupplyRequestParameterComponent t : src.getParameter()) tgt.addParameter(convertSupplyRequestParameterComponent(t)); diff --git a/org.hl7.fhir.core.generator/configuration/CodeableConcept.java b/org.hl7.fhir.core.generator/configuration/CodeableConcept.java index 3175e2751..c79fc6649 100644 --- a/org.hl7.fhir.core.generator/configuration/CodeableConcept.java +++ b/org.hl7.fhir.core.generator/configuration/CodeableConcept.java @@ -13,3 +13,16 @@ } + public boolean matches(CodeableConcept other) { + for (Coding c : other.getCoding()) { + if (hasCoding(c.getSystem(), c.getCode())) { + return true; + } + } + return false; + } + + public boolean hasCoding(Coding coding) { + return hasCoding(coding.getSystem(), coding.getCode()); + } + \ No newline at end of file diff --git a/org.hl7.fhir.core.generator/configuration/Coding.java b/org.hl7.fhir.core.generator/configuration/Coding.java index 8e020a79c..119a78405 100644 --- a/org.hl7.fhir.core.generator/configuration/Coding.java +++ b/org.hl7.fhir.core.generator/configuration/Coding.java @@ -24,3 +24,8 @@ } + + public boolean matches(Coding other) { + return other.hasCode() && this.hasCode() && other.hasSystem() && this.hasSystem() && this.getCode().equals(other.getCode()) && this.getSystem().equals(other.getSystem()) ; + } + \ No newline at end of file diff --git a/org.hl7.fhir.core.generator/configuration/Constants.java b/org.hl7.fhir.core.generator/configuration/Constants.java index 38de2ad58..48b4b6f9e 100644 --- a/org.hl7.fhir.core.generator/configuration/Constants.java +++ b/org.hl7.fhir.core.generator/configuration/Constants.java @@ -8,7 +8,7 @@ package org.hl7.fhir.r5.model; public class Constants { - public final static String LOCAL_REF_REGEX = "({{rt}})\\\\/[A-Za-z0-9\\\\-\\\\.]{1,64}\"; + public final static String LOCAL_REF_REGEX = "({{rt}})\\\\/[A-Za-z0-9\\\\-\\\\.]{1,64}"; public final static String NS_SYSTEM_TYPE = "http://hl7.org/fhirpath/System."; public final static String VERSION = "{{version}}"; diff --git a/org.hl7.fhir.core.generator/configuration/ElementDefinition.java b/org.hl7.fhir.core.generator/configuration/ElementDefinition.java index f3c2c0dc8..c7a54526b 100644 --- a/org.hl7.fhir.core.generator/configuration/ElementDefinition.java +++ b/org.hl7.fhir.core.generator/configuration/ElementDefinition.java @@ -32,7 +32,15 @@ return b.toString(); } - + public String typeSummaryVB() { + CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder("|"); + for (TypeRefComponent tr : getType()) { + if (tr.hasCode()) + b.append(tr.getWorkingCode()); + } + return b.toString().replace(" ", ""); + } + public TypeRefComponent getType(String code) { for (TypeRefComponent tr : getType()) if (tr.getCode().equals(code)) diff --git a/org.hl7.fhir.core.generator/configuration/JsonParser.java b/org.hl7.fhir.core.generator/configuration/JsonParser.java index cd5abc9a4..cf2cccb87 100644 --- a/org.hl7.fhir.core.generator/configuration/JsonParser.java +++ b/org.hl7.fhir.core.generator/configuration/JsonParser.java @@ -28,6 +28,12 @@ public class JsonParser extends JsonParserBase { setAllowUnknownContent(allowUnknownContent); } + public JsonParser(boolean allowUnknownContent, boolean allowComments) { + super(); + setAllowUnknownContent(allowUnknownContent); + setAllowComments(allowComments); + } + protected void parseBaseProperties(JsonObject json, Base res) throws IOException, FHIRFormatError { // nothing } diff --git a/org.hl7.fhir.core.generator/configuration/Parameters.java b/org.hl7.fhir.core.generator/configuration/Parameters.java index 8b3c796a8..c14597a42 100644 --- a/org.hl7.fhir.core.generator/configuration/Parameters.java +++ b/org.hl7.fhir.core.generator/configuration/Parameters.java @@ -90,4 +90,3 @@ } return false; } - diff --git a/org.hl7.fhir.core.generator/configuration/ParametersParameterComponent.java b/org.hl7.fhir.core.generator/configuration/ParametersParameterComponent.java new file mode 100644 index 000000000..127ebd38b --- /dev/null +++ b/org.hl7.fhir.core.generator/configuration/ParametersParameterComponent.java @@ -0,0 +1,19 @@ + public String toString() { + String s = getName() + " = "; + if (hasValue()) { + if (getValue().isPrimitive()) { + s = s + getValue().primitiveValue(); + } else { + s = s + "["+getValue().fhirType()+"]"; + } + } else if (hasResource()) { + s = s + "["+getResource().fhirType()+"]"; + } else { + CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder(); + for (ParametersParameterComponent p : getPart()) { + b.append(p.getName()); + } + s = s + "{"+b.toString()+"}"; + } + return s; + } diff --git a/org.hl7.fhir.core.generator/configuration/ResourceType.java b/org.hl7.fhir.core.generator/configuration/ResourceType.java new file mode 100644 index 000000000..8113db282 --- /dev/null +++ b/org.hl7.fhir.core.generator/configuration/ResourceType.java @@ -0,0 +1,26 @@ +package org.hl7.fhir.r5.model; + +{{license}} + +{{startMark}} + +import org.hl7.fhir.exceptions.FHIRException; + +public enum ResourceType { +{{types-enum}}; + + + public String getPath() {; + switch (this) { +{{types-getPath}} + } + return null; + } + + + public static ResourceType fromCode(String code) throws FHIRException {; +{{types-fromCode}} + throw new FHIRException("Unknown resource type"+code); + } + +} diff --git a/org.hl7.fhir.core.generator/configuration/TypeRefComponent.java b/org.hl7.fhir.core.generator/configuration/TypeRefComponent.java index 30a78f3c4..ca651f606 100644 --- a/org.hl7.fhir.core.generator/configuration/TypeRefComponent.java +++ b/org.hl7.fhir.core.generator/configuration/TypeRefComponent.java @@ -64,7 +64,7 @@ if (hasTargetProfile()) { res = res + "->("; boolean first = true; - for (CanonicalType s : getProfile()) { + for (CanonicalType s : getTargetProfile()) { if (first) first = false; else res = res + "|"; res = res + s.getValue(); } diff --git a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/analysis/Analyser.java b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/analysis/Analyser.java index 86f8981f0..c535059e7 100644 --- a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/analysis/Analyser.java +++ b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/analysis/Analyser.java @@ -46,7 +46,7 @@ public class Analyser { sd.setUserData("java.type.info", type); type.setDefn(sd.getSnapshot().getElementFirstRep()); - type.setChildren(filterChildren(ProfileUtilities.getChildList(sd, type.getDefn()))); + type.setChildren(filterChildren(new ProfileUtilities(null, null, null).getChildList(sd, type.getDefn()))); type.setInheritedChildren(getAbstractChildren(res.getAncestor())); for (ElementDefinition e : type.getChildren()) { @@ -92,7 +92,7 @@ public class Analyser { List res = new ArrayList<>(); StructureDefinition sdb = definitions.getStructures().get(structure.getBaseDefinition()); res.addAll(getAbstractChildren(sdb)); - res.addAll(filterChildren(ProfileUtilities.getChildList(structure, structure.getSnapshot().getElementFirstRep()))); + res.addAll(filterChildren(new ProfileUtilities(null, null, null).getChildList(structure, structure.getSnapshot().getElementFirstRep()))); return res; } @@ -168,7 +168,7 @@ public class Analyser { analysis.getTypeList().add(ctype); ctype.setDefn(e); ctype.setAncestorName(e.typeSummary()); - ctype.setChildren(filterChildren(ProfileUtilities.getChildList(analysis.getStructure(), ctype.getDefn()))); + ctype.setChildren(filterChildren(new ProfileUtilities(null, null, null).getChildList(analysis.getStructure(), ctype.getDefn()))); for (ElementDefinition c : ctype.getChildren()) { scanNestedTypes(analysis, ctype, cpath, c); @@ -188,7 +188,9 @@ public class Analyser { if (inc.hasSystem() && !inc.hasFilter() && !inc.hasConcept() && !(inc.getSystem().startsWith("http://hl7.org/fhir") || inc.getSystem().startsWith("http://terminology.hl7.org"))) ok = false; } - if (config.getIni().getBooleanProperty("no-enum", vs.getUrl())) { + if (vs == null) { + ok = false; + } else if (config.getIni().getBooleanProperty("no-enum", vs.getUrl())) { ok = false; } } diff --git a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaEnumerationsGenerator.java b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaEnumerationsGenerator.java index 13dd560b8..c1294ec99 100644 --- a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaEnumerationsGenerator.java +++ b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaEnumerationsGenerator.java @@ -80,7 +80,11 @@ public class JavaEnumerationsGenerator extends JavaBaseGenerator { for (String n : names) { ValueSet vs = enums.get(n); write("// "+n+": "+vs.getDescription()); - write(vs.getUserData("usages").toString()); + if (vs.hasUserData("usages")) { + write(vs.getUserData("usages").toString()); + } else { + write("?null?"); + } write("\r\n"); } write("\r\n"); diff --git a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaParserJsonGenerator.java b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaParserJsonGenerator.java index 4bac2ba58..50affcc18 100644 --- a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaParserJsonGenerator.java +++ b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaParserJsonGenerator.java @@ -76,7 +76,7 @@ public class JavaParserJsonGenerator extends JavaBaseGenerator { generateComposer(analysis); if (!analysis.isAbstract()) { if (analysis.getStructure().getKind() == StructureDefinitionKind.COMPLEXTYPE) { - pregt.append(" } else if (json.has(prefix+\""+analysis.getName()+"\")) {\r\n return parse"+analysis.getRootType().getName()+"(json.getAsJsonObject(prefix+\""+analysis.getName()+"\"));\r\n"); + pregt.append(" } else if (json.has(prefix+\""+analysis.getName()+"\")) {\r\n return parse"+analysis.getRootType().getName()+"(getJObject(json, prefix+\""+analysis.getName()+"\"));\r\n"); pregt2.append(" } else if (type.equals(\""+analysis.getName()+"\")) {\r\n return parse"+analysis.getName()+"(json);\r\n"); cregtn.append(" } else if (type instanceof "+analysis.getName()+") {\r\n compose"+analysis.getName()+"(prefix+\""+analysis.getName()+"\", ("+analysis.getClassName()+") type);\r\n"); cregti.append(" } else if (type instanceof "+analysis.getName()+") {\r\n compose"+analysis.getName()+"Properties(("+analysis.getName()+") type);\r\n"); @@ -212,7 +212,7 @@ public class JavaParserJsonGenerator extends JavaBaseGenerator { if (tn.equals("XhtmlNode")) { prsr = "parseXhtml(json.get(\""+name+"\").getAsString())"; } else if (tn.contains("Reference(")) { - prsr = "parseReference(json.getAsJsonObject(\""+name+"\"))"; + prsr = "parseReference(getJObject(json, \""+name+"\"))"; aprsr = "parseReference(array.get(i).getAsJsonObject())"; anprsr = "parseReference(null)"; } else if (tn.contains("canonical(")) { @@ -231,7 +231,7 @@ public class JavaParserJsonGenerator extends JavaBaseGenerator { if ((ed.isInlineType() || ed.hasContentReference()) && !pn.startsWith(analysis.getClassName())) { pn = analysis.getClassName()+pn; } - prsr = "parse"+pn+"(json.getAsJsonObject(\""+name+"\"))"; + prsr = "parse"+pn+"(getJObject(json, \""+name+"\"))"; aprsr = "parse"+pn+"(array.get(i).getAsJsonObject())"; anprsr = "parse"+pn+"(null)"; } @@ -276,7 +276,7 @@ public class JavaParserJsonGenerator extends JavaBaseGenerator { if ((isPrimitive(ed.typeSummary()) || ed.typeSummary().startsWith("canonical(")) && !tn.equals("XhtmlNode")) { parser.append(" res.add"+upFirst(getElementName(name, false))+"Element("+prsr+");\r\n"); parser.append(" if (json.has(\"_"+name+"\"))\r\n"); - parser.append(" parseElementProperties(json.getAsJsonObject(\"_"+name+"\"), res.get"+upFirst(getElementName(name, false))+"ElementFirstRep());\r\n"); + parser.append(" parseElementProperties(getJObject(json, \"_"+name+"\"), res.get"+upFirst(getElementName(name, false))+"ElementFirstRep());\r\n"); } else { parser.append(" res.add"+upFirst(getElementName(name, false))+"("+prsr+");\r\n"); } @@ -285,7 +285,7 @@ public class JavaParserJsonGenerator extends JavaBaseGenerator { if ((isPrimitive(ed.typeSummary()) || ed.typeSummary().startsWith("canonical(")) && !tn.equals("XhtmlNode")) { parser.append(" res.set"+upFirst(getElementName(name, false))+"Element("+prsr+");\r\n"); parser.append(" if (json.has(\"_"+name+"\"))\r\n"); - parser.append(" parseElementProperties(json.getAsJsonObject(\"_"+name+"\"), res.get"+upFirst(getElementName(name, false))+"Element());\r\n"); + parser.append(" parseElementProperties(getJObject(json, \"_"+name+"\"), res.get"+upFirst(getElementName(name, false))+"Element());\r\n"); } else { parser.append(" res.set"+upFirst(getElementName(name, false))+"("+prsr+");\r\n"); } diff --git a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaTypeGenerator.java b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaTypeGenerator.java new file mode 100644 index 000000000..d71e652d1 --- /dev/null +++ b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/codegen/JavaTypeGenerator.java @@ -0,0 +1,107 @@ +package org.hl7.fhir.core.generator.codegen; +/* +Copyright (c) 2011+, HL7, Inc +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE +POSSIBILITY OF SUCH DAMAGE. + +*/ +import java.io.OutputStream; +import java.io.OutputStreamWriter; +import java.io.UnsupportedEncodingException; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.hl7.fhir.core.generator.analysis.TypeInfo; +import org.hl7.fhir.core.generator.codegen.JavaBaseGenerator; +import org.hl7.fhir.core.generator.engine.Definitions; +import org.hl7.fhir.r5.model.ImplementationGuide.SPDXLicense; +import org.hl7.fhir.r5.model.StructureDefinition; +import org.hl7.fhir.r5.model.StructureDefinition.StructureDefinitionKind; +import org.hl7.fhir.r5.model.StructureDefinition.TypeDerivationRule; + + + +public class JavaTypeGenerator extends JavaBaseGenerator { + + + public JavaTypeGenerator(OutputStream out, Definitions definitions, Configuration configuration, Date genDate, String version) throws UnsupportedEncodingException { + super(out, definitions, configuration, version, genDate); + } + + public void generate() throws Exception { + String template = config.getAdornments().get("ResourceType"); + template = template.replace("{{license}}", config.getLicense()); + template = template.replace("{{startMark}}", startVMarkValue()); + template = template.replace("{{types-enum}}", genEnums()); + template = template.replace("{{types-getPath}}", genTypePaths()); + template = template.replace("{{types-fromCode}}", genFromCode()); + write(template); + flush(); + close(); + } + + + private String genEnums() { + StringBuilder b = new StringBuilder(); + boolean first = true; + for (StructureDefinition sd : definitions.getStructures().getSortedList()) { + if (sd.getKind() == StructureDefinitionKind.RESOURCE && sd.getDerivation() == TypeDerivationRule.SPECIALIZATION && !sd.getAbstract()) { + String tn = sd.getType(); + if (first) { first = false; } else { b.append(",\r\n "); } + b.append(tn); + } + } + + return b.toString(); + } + + private String genTypePaths() { + StringBuilder b = new StringBuilder(); + for (StructureDefinition sd : definitions.getStructures().getSortedList()) { + if (sd.getKind() == StructureDefinitionKind.RESOURCE && sd.getDerivation() == TypeDerivationRule.SPECIALIZATION && !sd.getAbstract()) { + b.append(" case "+sd.getType()+":\r\n"); + b.append(" return \""+sd.getType().toLowerCase()+"\";\r\n"); + } + } + + return b.toString(); + } + + private String genFromCode() { + StringBuilder b = new StringBuilder(); + for (StructureDefinition sd : definitions.getStructures().getSortedList()) { + if (sd.getKind() == StructureDefinitionKind.RESOURCE && sd.getDerivation() == TypeDerivationRule.SPECIALIZATION && !sd.getAbstract()) { + b.append(" if (\""+sd.getType()+"\".equals(code))\r\n"); + b.append(" return "+sd.getType()+";\r\n"); + } + } + return b.toString(); + } + +} diff --git a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/DefinitionsLoader.java b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/DefinitionsLoader.java index 5ffeb2358..69e8811b3 100644 --- a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/DefinitionsLoader.java +++ b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/DefinitionsLoader.java @@ -23,28 +23,28 @@ public class DefinitionsLoader { Definitions res = new Definitions(); for (String t : npm.listResources("CodeSystem")) { - res.getCodeSystems().see((CodeSystem) load(npm, t)); + res.getCodeSystems().see((CodeSystem) load(npm, t), null); } for (String t : npm.listResources("ValueSet")) { - res.getValuesets().see((ValueSet) load(npm, t)); + res.getValuesets().see((ValueSet) load(npm, t), null); } for (String t : npm.listResources("ConceptMap")) { - res.getConceptMaps().see((ConceptMap) load(npm, t)); + res.getConceptMaps().see((ConceptMap) load(npm, t), null); } for (String t : npm.listResources("CapabilityStatement")) { - res.getStatements().see((CapabilityStatement) load(npm, t)); + res.getStatements().see((CapabilityStatement) load(npm, t), null); } for (String t : npm.listResources("StructureDefinition")) { - res.getStructures().see((StructureDefinition) load(npm, t)); + res.getStructures().see((StructureDefinition) load(npm, t), null); } for (String t : npm.listResources("OperationDefinition")) { - res.getOperations().see((OperationDefinition) load(npm, t)); + res.getOperations().see((OperationDefinition) load(npm, t), null); } for (String t : npm.listResources("SearchParameter")) { - res.getSearchParams().see((SearchParameter) load(npm, t)); + res.getSearchParams().see((SearchParameter) load(npm, t), null); } for (String t : npm.listResources("CompartmentDefinition")) { - res.getCompartments().see((CompartmentDefinition) load(npm, t)); + res.getCompartments().see((CompartmentDefinition) load(npm, t), null); } return res; } diff --git a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/JavaCoreGenerator.java b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/JavaCoreGenerator.java index 707206e8d..2c079e38d 100644 --- a/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/JavaCoreGenerator.java +++ b/org.hl7.fhir.core.generator/src/org/hl7/fhir/core/generator/engine/JavaCoreGenerator.java @@ -19,6 +19,7 @@ import org.hl7.fhir.core.generator.codegen.JavaParserJsonGenerator; import org.hl7.fhir.core.generator.codegen.JavaParserRdfGenerator; import org.hl7.fhir.core.generator.codegen.JavaParserXmlGenerator; import org.hl7.fhir.core.generator.codegen.JavaResourceGenerator; +import org.hl7.fhir.core.generator.codegen.JavaTypeGenerator; import org.hl7.fhir.r5.model.ValueSet; import org.hl7.fhir.r5.model.StructureDefinition.StructureDefinitionKind; import org.hl7.fhir.r5.model.StructureDefinition.TypeDerivationRule; @@ -61,18 +62,20 @@ public class JavaCoreGenerator { String ap = Utilities.path(src); System.out.println("Load Configuration from "+ap); Configuration config = new Configuration(ap); + String pid = "r5"; + String jid = "r5"; PackageCacheManager pcm = new PackageCacheManager(true, ToolsVersion.TOOLS_VERSION); System.out.println("Cache: "+pcm.getFolder()); - System.out.println("Load hl7.fhir.r5.core"); - NpmPackage npm = pcm.loadPackage("hl7.fhir.r5.core", version); + System.out.println("Load hl7.fhir."+pid+".core"); + NpmPackage npm = pcm.loadPackage("hl7.fhir."+pid+".core", version); Definitions master = DefinitionsLoader.load(npm); markValueSets(master, config); - System.out.println("Load hl7.fhir.r5.expansions"); - Definitions expansions = DefinitionsLoader.load(pcm.loadPackage("hl7.fhir.r5.expansions", version)); + System.out.println("Load hl7.fhir."+pid+".expansions"); + Definitions expansions = DefinitionsLoader.load(pcm.loadPackage("hl7.fhir."+pid+".expansions", version)); System.out.println("Process Expansions"); updateExpansions(master, expansions); @@ -88,6 +91,7 @@ public class JavaCoreGenerator { egen.close(); JavaFactoryGenerator fgen = new JavaFactoryGenerator(new FileOutputStream(Utilities.path(dest, "src", "org", "hl7", "fhir", "r5", "model", "ResourceFactory.java")), master, config, date, npm.version()); + JavaTypeGenerator tgen = new JavaTypeGenerator(new FileOutputStream(Utilities.path(dest, "src", "org", "hl7", "fhir", "r5", "model", "ResourceType.java")), master, config, date, npm.version()); JavaParserJsonGenerator jgen = new JavaParserJsonGenerator(new FileOutputStream(Utilities.path(dest, "src", "org", "hl7", "fhir", "r5", "formats", "JsonParser.java")), master, config, date, npm.version()); JavaParserXmlGenerator xgen = new JavaParserXmlGenerator(new FileOutputStream(Utilities.path(dest, "src", "org", "hl7", "fhir", "r5", "formats", "XmlParser.java")), master, config, date, npm.version()); JavaParserRdfGenerator rgen = new JavaParserRdfGenerator(new FileOutputStream(Utilities.path(dest, "src", "org", "hl7", "fhir", "r5", "formats", "RdfParser.java")), master, config, date, npm.version()); @@ -169,6 +173,9 @@ public class JavaCoreGenerator { System.out.println(" .. Factory"); fgen.generate(); fgen.close(); + System.out.println(" .. Types"); + tgen.generate(); + tgen.close(); System.out.println(" .. JsonParser"); jgen.generate(); jgen.close(); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/JsonParser.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/JsonParser.java index 15d841321..936e6aaf7 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/JsonParser.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/JsonParser.java @@ -50,11 +50,10 @@ package org.hl7.fhir.r5.formats; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Mon, Jan 20, 2020 14:31+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent -import ca.uhn.fhir.parser.DataFormatException; import org.hl7.fhir.r5.model.*; import org.hl7.fhir.utilities.Utilities; import org.hl7.fhir.utilities.xhtml.XhtmlNode; @@ -161,7 +160,8 @@ public class JsonParser extends JsonParserBase { } protected Base64BinaryType parseBase64Binary(String v) throws IOException, FHIRFormatError { - return new Base64BinaryType(v); + Base64BinaryType res = new Base64BinaryType(v); + return res; } protected UnsignedIntType parseUnsignedInt(String v) throws IOException, FHIRFormatError { @@ -2689,10 +2689,10 @@ public class JsonParser extends JsonParserBase { res.getDevice().add(parseReference(array.get(i).getAsJsonObject())); } }; - if (json.has("characteristic")) { - JsonArray array = json.getAsJsonArray("characteristic"); + if (json.has("property")) { + JsonArray array = json.getAsJsonArray("property"); for (int i = 0; i < array.size(); i++) { - res.getCharacteristic().add(parseAdministrableProductDefinitionCharacteristicComponent(array.get(i).getAsJsonObject())); + res.getProperty().add(parseAdministrableProductDefinitionPropertyComponent(array.get(i).getAsJsonObject())); } }; if (json.has("routeOfAdministration")) { @@ -2703,16 +2703,16 @@ public class JsonParser extends JsonParserBase { }; } - protected AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent parseAdministrableProductDefinitionCharacteristicComponent(JsonObject json) throws IOException, FHIRFormatError { - AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent(); - parseAdministrableProductDefinitionCharacteristicComponentProperties(json, res); + protected AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent parseAdministrableProductDefinitionPropertyComponent(JsonObject json) throws IOException, FHIRFormatError { + AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent(); + parseAdministrableProductDefinitionPropertyComponentProperties(json, res); return res; } - protected void parseAdministrableProductDefinitionCharacteristicComponentProperties(JsonObject json, AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent res) throws IOException, FHIRFormatError { + protected void parseAdministrableProductDefinitionPropertyComponentProperties(JsonObject json, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - if (json.has("code")) - res.setCode(parseCodeableConcept(getJObject(json, "code"))); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); DataType value = parseType("value", json); if (value != null) res.setValue(value); @@ -3313,13 +3313,7 @@ public class JsonParser extends JsonParserBase { if (json.has("_recorded")) parseElementProperties(getJObject(json, "_recorded"), res.getRecordedElement()); if (json.has("outcome")) - res.setOutcomeElement(parseEnumeration(json.get("outcome").getAsString(), AuditEvent.AuditEventOutcome.NULL, new AuditEvent.AuditEventOutcomeEnumFactory())); - if (json.has("_outcome")) - parseElementProperties(getJObject(json, "_outcome"), res.getOutcomeElement()); - if (json.has("outcomeDesc")) - res.setOutcomeDescElement(parseString(json.get("outcomeDesc").getAsString())); - if (json.has("_outcomeDesc")) - parseElementProperties(getJObject(json, "_outcomeDesc"), res.getOutcomeDescElement()); + res.setOutcome(parseCodeableConcept(getJObject(json, "outcome"))); if (json.has("purposeOfEvent")) { JsonArray array = json.getAsJsonArray("purposeOfEvent"); for (int i = 0; i < array.size(); i++) { @@ -5212,7 +5206,7 @@ public class JsonParser extends JsonParserBase { if (scheduled != null) res.setScheduled(scheduled); if (json.has("location")) - res.setLocation(parseReference(getJObject(json, "location"))); + res.setLocation(parseCodeableReference(getJObject(json, "location"))); DataType reported = parseType("reported", json); if (reported != null) res.setReported(reported); @@ -5787,6 +5781,653 @@ public class JsonParser extends JsonParserBase { res.setAmount(parseMoney(getJObject(json, "amount"))); } + protected Citation parseCitation(JsonObject json) throws IOException, FHIRFormatError { + Citation res = new Citation(); + parseCitationProperties(json, res); + return res; + } + + protected void parseCitationProperties(JsonObject json, Citation res) throws IOException, FHIRFormatError { + parseMetadataResourceProperties(json, res); + if (json.has("url")) + res.setUrlElement(parseUri(json.get("url").getAsString())); + if (json.has("_url")) + parseElementProperties(getJObject(json, "_url"), res.getUrlElement()); + if (json.has("version")) + res.setVersionElement(parseString(json.get("version").getAsString())); + if (json.has("_version")) + parseElementProperties(getJObject(json, "_version"), res.getVersionElement()); + if (json.has("status")) + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); + if (json.has("_status")) + parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("useContext")) { + JsonArray array = json.getAsJsonArray("useContext"); + for (int i = 0; i < array.size(); i++) { + res.getUseContext().add(parseUsageContext(array.get(i).getAsJsonObject())); + } + }; + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("relatedIdentifier")) { + JsonArray array = json.getAsJsonArray("relatedIdentifier"); + for (int i = 0; i < array.size(); i++) { + res.getRelatedIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("dateCited")) + res.setDateCitedElement(parseDateTime(json.get("dateCited").getAsString())); + if (json.has("_dateCited")) + parseElementProperties(getJObject(json, "_dateCited"), res.getDateCitedElement()); + if (json.has("variantCitation")) + res.setVariantCitation(parseCitationVariantCitationComponent(getJObject(json, "variantCitation"))); + if (json.has("publishingModel")) + res.setPublishingModel(parseCodeableConcept(getJObject(json, "publishingModel"))); + if (json.has("journal")) + res.setJournal(parseCitationJournalComponent(getJObject(json, "journal"))); + if (json.has("articleTitle")) + res.setArticleTitleElement(parseMarkdown(json.get("articleTitle").getAsString())); + if (json.has("_articleTitle")) + parseElementProperties(getJObject(json, "_articleTitle"), res.getArticleTitleElement()); + if (json.has("alternativeTitle")) { + JsonArray array = json.getAsJsonArray("alternativeTitle"); + for (int i = 0; i < array.size(); i++) { + res.getAlternativeTitle().add(parseCitationAlternativeTitleComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("pagination")) + res.setPagination(parseCitationPaginationComponent(getJObject(json, "pagination"))); + if (json.has("articleUrl")) { + JsonArray array = json.getAsJsonArray("articleUrl"); + for (int i = 0; i < array.size(); i++) { + res.getArticleUrl().add(parseCitationArticleUrlComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("abstract")) + res.setAbstractElement(parseMarkdown(json.get("abstract").getAsString())); + if (json.has("_abstract")) + parseElementProperties(getJObject(json, "_abstract"), res.getAbstractElement()); + if (json.has("abstractCopyright")) + res.setAbstractCopyrightElement(parseMarkdown(json.get("abstractCopyright").getAsString())); + if (json.has("_abstractCopyright")) + parseElementProperties(getJObject(json, "_abstractCopyright"), res.getAbstractCopyrightElement()); + if (json.has("alternativeAbstract")) { + JsonArray array = json.getAsJsonArray("alternativeAbstract"); + for (int i = 0; i < array.size(); i++) { + res.getAlternativeAbstract().add(parseCitationAlternativeAbstractComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("authorList")) + res.setAuthorList(parseCitationAuthorListComponent(getJObject(json, "authorList"))); + if (json.has("authorString")) { + JsonArray array = json.getAsJsonArray("authorString"); + for (int i = 0; i < array.size(); i++) { + res.getAuthorString().add(parseCitationAuthorStringComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("contributorList")) + res.setContributorList(parseCitationContributorListComponent(getJObject(json, "contributorList"))); + if (json.has("articleLanguage")) + res.setArticleLanguage(parseCodeableConcept(getJObject(json, "articleLanguage"))); + if (json.has("alternativeForm")) { + JsonArray array = json.getAsJsonArray("alternativeForm"); + for (int i = 0; i < array.size(); i++) { + res.getAlternativeForm().add(parseCitationAlternativeFormComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("classifier")) { + JsonArray array = json.getAsJsonArray("classifier"); + for (int i = 0; i < array.size(); i++) { + res.getClassifier().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("relatedArtifact")) { + JsonArray array = json.getAsJsonArray("relatedArtifact"); + for (int i = 0; i < array.size(); i++) { + res.getRelatedArtifact().add(parseRelatedArtifact(array.get(i).getAsJsonObject())); + } + }; + if (json.has("note")) { + JsonArray array = json.getAsJsonArray("note"); + for (int i = 0; i < array.size(); i++) { + res.getNote().add(parseAnnotation(array.get(i).getAsJsonObject())); + } + }; + if (json.has("medlinePubMed")) + res.setMedlinePubMed(parseCitationMedlinePubMedComponent(getJObject(json, "medlinePubMed"))); + } + + protected Citation.CitationVariantCitationComponent parseCitationVariantCitationComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationVariantCitationComponent res = new Citation.CitationVariantCitationComponent(); + parseCitationVariantCitationComponentProperties(json, res); + return res; + } + + protected void parseCitationVariantCitationComponentProperties(JsonObject json, Citation.CitationVariantCitationComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("value")) + res.setValueElement(parseString(json.get("value").getAsString())); + if (json.has("_value")) + parseElementProperties(getJObject(json, "_value"), res.getValueElement()); + if (json.has("baseCitation")) + res.setBaseCitation(parseReference(getJObject(json, "baseCitation"))); + } + + protected Citation.CitationJournalComponent parseCitationJournalComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationJournalComponent res = new Citation.CitationJournalComponent(); + parseCitationJournalComponentProperties(json, res); + return res; + } + + protected void parseCitationJournalComponentProperties(JsonObject json, Citation.CitationJournalComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("country")) + res.setCountryElement(parseString(json.get("country").getAsString())); + if (json.has("_country")) + parseElementProperties(getJObject(json, "_country"), res.getCountryElement()); + if (json.has("journalIssue")) + res.setJournalIssue(parseCitationJournalJournalIssueComponent(getJObject(json, "journalIssue"))); + if (json.has("title")) + res.setTitleElement(parseString(json.get("title").getAsString())); + if (json.has("_title")) + parseElementProperties(getJObject(json, "_title"), res.getTitleElement()); + } + + protected Citation.CitationJournalJournalIssueComponent parseCitationJournalJournalIssueComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationJournalJournalIssueComponent res = new Citation.CitationJournalJournalIssueComponent(); + parseCitationJournalJournalIssueComponentProperties(json, res); + return res; + } + + protected void parseCitationJournalJournalIssueComponentProperties(JsonObject json, Citation.CitationJournalJournalIssueComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("citedMedium")) + res.setCitedMedium(parseCodeableConcept(getJObject(json, "citedMedium"))); + if (json.has("volume")) + res.setVolumeElement(parseString(json.get("volume").getAsString())); + if (json.has("_volume")) + parseElementProperties(getJObject(json, "_volume"), res.getVolumeElement()); + if (json.has("issue")) + res.setIssueElement(parseString(json.get("issue").getAsString())); + if (json.has("_issue")) + parseElementProperties(getJObject(json, "_issue"), res.getIssueElement()); + if (json.has("publicationDate")) + res.setPublicationDateElement(parseString(json.get("publicationDate").getAsString())); + if (json.has("_publicationDate")) + parseElementProperties(getJObject(json, "_publicationDate"), res.getPublicationDateElement()); + } + + protected Citation.CitationAlternativeTitleComponent parseCitationAlternativeTitleComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAlternativeTitleComponent res = new Citation.CitationAlternativeTitleComponent(); + parseCitationAlternativeTitleComponentProperties(json, res); + return res; + } + + protected void parseCitationAlternativeTitleComponentProperties(JsonObject json, Citation.CitationAlternativeTitleComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("language")) + res.setLanguage(parseCodeableConcept(getJObject(json, "language"))); + if (json.has("title")) + res.setTitleElement(parseMarkdown(json.get("title").getAsString())); + if (json.has("_title")) + parseElementProperties(getJObject(json, "_title"), res.getTitleElement()); + } + + protected Citation.CitationPaginationComponent parseCitationPaginationComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationPaginationComponent res = new Citation.CitationPaginationComponent(); + parseCitationPaginationComponentProperties(json, res); + return res; + } + + protected void parseCitationPaginationComponentProperties(JsonObject json, Citation.CitationPaginationComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("pageString")) + res.setPageStringElement(parseString(json.get("pageString").getAsString())); + if (json.has("_pageString")) + parseElementProperties(getJObject(json, "_pageString"), res.getPageStringElement()); + if (json.has("firstPage")) + res.setFirstPageElement(parseString(json.get("firstPage").getAsString())); + if (json.has("_firstPage")) + parseElementProperties(getJObject(json, "_firstPage"), res.getFirstPageElement()); + if (json.has("lastPage")) + res.setLastPageElement(parseString(json.get("lastPage").getAsString())); + if (json.has("_lastPage")) + parseElementProperties(getJObject(json, "_lastPage"), res.getLastPageElement()); + } + + protected Citation.CitationArticleUrlComponent parseCitationArticleUrlComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationArticleUrlComponent res = new Citation.CitationArticleUrlComponent(); + parseCitationArticleUrlComponentProperties(json, res); + return res; + } + + protected void parseCitationArticleUrlComponentProperties(JsonObject json, Citation.CitationArticleUrlComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("url")) + res.setUrlElement(parseUri(json.get("url").getAsString())); + if (json.has("_url")) + parseElementProperties(getJObject(json, "_url"), res.getUrlElement()); + } + + protected Citation.CitationAlternativeAbstractComponent parseCitationAlternativeAbstractComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAlternativeAbstractComponent res = new Citation.CitationAlternativeAbstractComponent(); + parseCitationAlternativeAbstractComponentProperties(json, res); + return res; + } + + protected void parseCitationAlternativeAbstractComponentProperties(JsonObject json, Citation.CitationAlternativeAbstractComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("language")) + res.setLanguage(parseCodeableConcept(getJObject(json, "language"))); + if (json.has("abstract")) + res.setAbstractElement(parseMarkdown(json.get("abstract").getAsString())); + if (json.has("_abstract")) + parseElementProperties(getJObject(json, "_abstract"), res.getAbstractElement()); + if (json.has("abstractCopyright")) + res.setAbstractCopyrightElement(parseMarkdown(json.get("abstractCopyright").getAsString())); + if (json.has("_abstractCopyright")) + parseElementProperties(getJObject(json, "_abstractCopyright"), res.getAbstractCopyrightElement()); + } + + protected Citation.CitationAuthorListComponent parseCitationAuthorListComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAuthorListComponent res = new Citation.CitationAuthorListComponent(); + parseCitationAuthorListComponentProperties(json, res); + return res; + } + + protected void parseCitationAuthorListComponentProperties(JsonObject json, Citation.CitationAuthorListComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("complete")) + res.setCompleteElement(parseBoolean(json.get("complete").getAsBoolean())); + if (json.has("_complete")) + parseElementProperties(getJObject(json, "_complete"), res.getCompleteElement()); + if (json.has("author")) { + JsonArray array = json.getAsJsonArray("author"); + for (int i = 0; i < array.size(); i++) { + res.getAuthor().add(parseCitationAuthorListAuthorComponent(array.get(i).getAsJsonObject())); + } + }; + } + + protected Citation.CitationAuthorListAuthorComponent parseCitationAuthorListAuthorComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAuthorListAuthorComponent res = new Citation.CitationAuthorListAuthorComponent(); + parseCitationAuthorListAuthorComponentProperties(json, res); + return res; + } + + protected void parseCitationAuthorListAuthorComponentProperties(JsonObject json, Citation.CitationAuthorListAuthorComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("lastName")) + res.setLastNameElement(parseString(json.get("lastName").getAsString())); + if (json.has("_lastName")) + parseElementProperties(getJObject(json, "_lastName"), res.getLastNameElement()); + if (json.has("foreName")) + res.setForeNameElement(parseString(json.get("foreName").getAsString())); + if (json.has("_foreName")) + parseElementProperties(getJObject(json, "_foreName"), res.getForeNameElement()); + if (json.has("suffix")) + res.setSuffixElement(parseString(json.get("suffix").getAsString())); + if (json.has("_suffix")) + parseElementProperties(getJObject(json, "_suffix"), res.getSuffixElement()); + if (json.has("initials")) + res.setInitialsElement(parseString(json.get("initials").getAsString())); + if (json.has("_initials")) + parseElementProperties(getJObject(json, "_initials"), res.getInitialsElement()); + if (json.has("collectiveName")) + res.setCollectiveNameElement(parseString(json.get("collectiveName").getAsString())); + if (json.has("_collectiveName")) + parseElementProperties(getJObject(json, "_collectiveName"), res.getCollectiveNameElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("affiliationInfo")) { + JsonArray array = json.getAsJsonArray("affiliationInfo"); + for (int i = 0; i < array.size(); i++) { + res.getAffiliationInfo().add(parseCitationAuthorListAuthorAffiliationInfoComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("address")) { + JsonArray array = json.getAsJsonArray("address"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getAddress().add(new StringType()); + } else {; + res.getAddress().add(parseString(array.get(i).getAsString())); + } + } + }; + if (json.has("_address")) { + JsonArray array = json.getAsJsonArray("_address"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getAddress().size()) + res.getAddress().add(parseString(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getAddress().get(i)); + } + }; + if (json.has("telecom")) { + JsonArray array = json.getAsJsonArray("telecom"); + for (int i = 0; i < array.size(); i++) { + res.getTelecom().add(parseContactPoint(array.get(i).getAsJsonObject())); + } + }; + if (json.has("correspondingAuthor")) + res.setCorrespondingAuthorElement(parseBoolean(json.get("correspondingAuthor").getAsBoolean())); + if (json.has("_correspondingAuthor")) + parseElementProperties(getJObject(json, "_correspondingAuthor"), res.getCorrespondingAuthorElement()); + if (json.has("listOrder")) + res.setListOrderElement(parsePositiveInt(json.get("listOrder").getAsString())); + if (json.has("_listOrder")) + parseElementProperties(getJObject(json, "_listOrder"), res.getListOrderElement()); + } + + protected Citation.CitationAuthorListAuthorAffiliationInfoComponent parseCitationAuthorListAuthorAffiliationInfoComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAuthorListAuthorAffiliationInfoComponent res = new Citation.CitationAuthorListAuthorAffiliationInfoComponent(); + parseCitationAuthorListAuthorAffiliationInfoComponentProperties(json, res); + return res; + } + + protected void parseCitationAuthorListAuthorAffiliationInfoComponentProperties(JsonObject json, Citation.CitationAuthorListAuthorAffiliationInfoComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("affiliation")) + res.setAffiliationElement(parseString(json.get("affiliation").getAsString())); + if (json.has("_affiliation")) + parseElementProperties(getJObject(json, "_affiliation"), res.getAffiliationElement()); + if (json.has("role")) + res.setRoleElement(parseString(json.get("role").getAsString())); + if (json.has("_role")) + parseElementProperties(getJObject(json, "_role"), res.getRoleElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + } + + protected Citation.CitationAuthorStringComponent parseCitationAuthorStringComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAuthorStringComponent res = new Citation.CitationAuthorStringComponent(); + parseCitationAuthorStringComponentProperties(json, res); + return res; + } + + protected void parseCitationAuthorStringComponentProperties(JsonObject json, Citation.CitationAuthorStringComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("source")) + res.setSource(parseCodeableConcept(getJObject(json, "source"))); + if (json.has("value")) + res.setValueElement(parseString(json.get("value").getAsString())); + if (json.has("_value")) + parseElementProperties(getJObject(json, "_value"), res.getValueElement()); + } + + protected Citation.CitationContributorListComponent parseCitationContributorListComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationContributorListComponent res = new Citation.CitationContributorListComponent(); + parseCitationContributorListComponentProperties(json, res); + return res; + } + + protected void parseCitationContributorListComponentProperties(JsonObject json, Citation.CitationContributorListComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("complete")) + res.setCompleteElement(parseBoolean(json.get("complete").getAsBoolean())); + if (json.has("_complete")) + parseElementProperties(getJObject(json, "_complete"), res.getCompleteElement()); + if (json.has("contributor")) { + JsonArray array = json.getAsJsonArray("contributor"); + for (int i = 0; i < array.size(); i++) { + res.getContributor().add(parseCitationContributorListContributorComponent(array.get(i).getAsJsonObject())); + } + }; + } + + protected Citation.CitationContributorListContributorComponent parseCitationContributorListContributorComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationContributorListContributorComponent res = new Citation.CitationContributorListContributorComponent(); + parseCitationContributorListContributorComponentProperties(json, res); + return res; + } + + protected void parseCitationContributorListContributorComponentProperties(JsonObject json, Citation.CitationContributorListContributorComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("lastName")) + res.setLastNameElement(parseString(json.get("lastName").getAsString())); + if (json.has("_lastName")) + parseElementProperties(getJObject(json, "_lastName"), res.getLastNameElement()); + if (json.has("foreName")) + res.setForeNameElement(parseString(json.get("foreName").getAsString())); + if (json.has("_foreName")) + parseElementProperties(getJObject(json, "_foreName"), res.getForeNameElement()); + if (json.has("suffix")) + res.setSuffixElement(parseString(json.get("suffix").getAsString())); + if (json.has("_suffix")) + parseElementProperties(getJObject(json, "_suffix"), res.getSuffixElement()); + if (json.has("initials")) + res.setInitialsElement(parseString(json.get("initials").getAsString())); + if (json.has("_initials")) + parseElementProperties(getJObject(json, "_initials"), res.getInitialsElement()); + if (json.has("collectiveName")) + res.setCollectiveNameElement(parseString(json.get("collectiveName").getAsString())); + if (json.has("_collectiveName")) + parseElementProperties(getJObject(json, "_collectiveName"), res.getCollectiveNameElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("contribution")) { + JsonArray array = json.getAsJsonArray("contribution"); + for (int i = 0; i < array.size(); i++) { + res.getContribution().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("affiliationInfo")) { + JsonArray array = json.getAsJsonArray("affiliationInfo"); + for (int i = 0; i < array.size(); i++) { + res.getAffiliationInfo().add(parseCitationContributorListContributorAffiliationInfoComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("listOrder")) + res.setListOrderElement(parsePositiveInt(json.get("listOrder").getAsString())); + if (json.has("_listOrder")) + parseElementProperties(getJObject(json, "_listOrder"), res.getListOrderElement()); + } + + protected Citation.CitationContributorListContributorAffiliationInfoComponent parseCitationContributorListContributorAffiliationInfoComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationContributorListContributorAffiliationInfoComponent res = new Citation.CitationContributorListContributorAffiliationInfoComponent(); + parseCitationContributorListContributorAffiliationInfoComponentProperties(json, res); + return res; + } + + protected void parseCitationContributorListContributorAffiliationInfoComponentProperties(JsonObject json, Citation.CitationContributorListContributorAffiliationInfoComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("affiliation")) + res.setAffiliationElement(parseString(json.get("affiliation").getAsString())); + if (json.has("_affiliation")) + parseElementProperties(getJObject(json, "_affiliation"), res.getAffiliationElement()); + if (json.has("role")) + res.setRoleElement(parseString(json.get("role").getAsString())); + if (json.has("_role")) + parseElementProperties(getJObject(json, "_role"), res.getRoleElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + } + + protected Citation.CitationAlternativeFormComponent parseCitationAlternativeFormComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAlternativeFormComponent res = new Citation.CitationAlternativeFormComponent(); + parseCitationAlternativeFormComponentProperties(json, res); + return res; + } + + protected void parseCitationAlternativeFormComponentProperties(JsonObject json, Citation.CitationAlternativeFormComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("publishingModel")) + res.setPublishingModel(parseCodeableConcept(getJObject(json, "publishingModel"))); + if (json.has("language")) + res.setLanguage(parseCodeableConcept(getJObject(json, "language"))); + if (json.has("journalIssue")) + res.setJournalIssue(parseCitationAlternativeFormJournalIssueComponent(getJObject(json, "journalIssue"))); + if (json.has("pagination")) + res.setPagination(parseCitationAlternativeFormPaginationComponent(getJObject(json, "pagination"))); + } + + protected Citation.CitationAlternativeFormJournalIssueComponent parseCitationAlternativeFormJournalIssueComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAlternativeFormJournalIssueComponent res = new Citation.CitationAlternativeFormJournalIssueComponent(); + parseCitationAlternativeFormJournalIssueComponentProperties(json, res); + return res; + } + + protected void parseCitationAlternativeFormJournalIssueComponentProperties(JsonObject json, Citation.CitationAlternativeFormJournalIssueComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("citedMedium")) + res.setCitedMedium(parseCodeableConcept(getJObject(json, "citedMedium"))); + if (json.has("volume")) + res.setVolumeElement(parseString(json.get("volume").getAsString())); + if (json.has("_volume")) + parseElementProperties(getJObject(json, "_volume"), res.getVolumeElement()); + if (json.has("issue")) + res.setIssueElement(parseString(json.get("issue").getAsString())); + if (json.has("_issue")) + parseElementProperties(getJObject(json, "_issue"), res.getIssueElement()); + if (json.has("publicationDate")) + res.setPublicationDateElement(parseString(json.get("publicationDate").getAsString())); + if (json.has("_publicationDate")) + parseElementProperties(getJObject(json, "_publicationDate"), res.getPublicationDateElement()); + } + + protected Citation.CitationAlternativeFormPaginationComponent parseCitationAlternativeFormPaginationComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationAlternativeFormPaginationComponent res = new Citation.CitationAlternativeFormPaginationComponent(); + parseCitationAlternativeFormPaginationComponentProperties(json, res); + return res; + } + + protected void parseCitationAlternativeFormPaginationComponentProperties(JsonObject json, Citation.CitationAlternativeFormPaginationComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("pageString")) + res.setPageStringElement(parseString(json.get("pageString").getAsString())); + if (json.has("_pageString")) + parseElementProperties(getJObject(json, "_pageString"), res.getPageStringElement()); + if (json.has("firstPage")) + res.setFirstPageElement(parseString(json.get("firstPage").getAsString())); + if (json.has("_firstPage")) + parseElementProperties(getJObject(json, "_firstPage"), res.getFirstPageElement()); + if (json.has("lastPage")) + res.setLastPageElement(parseString(json.get("lastPage").getAsString())); + if (json.has("_lastPage")) + parseElementProperties(getJObject(json, "_lastPage"), res.getLastPageElement()); + } + + protected Citation.CitationMedlinePubMedComponent parseCitationMedlinePubMedComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationMedlinePubMedComponent res = new Citation.CitationMedlinePubMedComponent(); + parseCitationMedlinePubMedComponentProperties(json, res); + return res; + } + + protected void parseCitationMedlinePubMedComponentProperties(JsonObject json, Citation.CitationMedlinePubMedComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("medlineState")) + res.setMedlineState(parseCodeableConcept(getJObject(json, "medlineState"))); + if (json.has("owner")) + res.setOwner(parseCodeableConcept(getJObject(json, "owner"))); + if (json.has("pmid")) + res.setPmidElement(parsePositiveInt(json.get("pmid").getAsString())); + if (json.has("_pmid")) + parseElementProperties(getJObject(json, "_pmid"), res.getPmidElement()); + if (json.has("pmidVersion")) + res.setPmidVersionElement(parsePositiveInt(json.get("pmidVersion").getAsString())); + if (json.has("_pmidVersion")) + parseElementProperties(getJObject(json, "_pmidVersion"), res.getPmidVersionElement()); + if (json.has("dateCreated")) + res.setDateCreatedElement(parseDate(json.get("dateCreated").getAsString())); + if (json.has("_dateCreated")) + parseElementProperties(getJObject(json, "_dateCreated"), res.getDateCreatedElement()); + if (json.has("dateCompleted")) + res.setDateCompletedElement(parseDate(json.get("dateCompleted").getAsString())); + if (json.has("_dateCompleted")) + parseElementProperties(getJObject(json, "_dateCompleted"), res.getDateCompletedElement()); + if (json.has("dateRevised")) + res.setDateRevisedElement(parseDate(json.get("dateRevised").getAsString())); + if (json.has("_dateRevised")) + parseElementProperties(getJObject(json, "_dateRevised"), res.getDateRevisedElement()); + if (json.has("pubMedPubDate")) { + JsonArray array = json.getAsJsonArray("pubMedPubDate"); + for (int i = 0; i < array.size(); i++) { + res.getPubMedPubDate().add(parseCitationMedlinePubMedPubMedPubDateComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("publicationState")) + res.setPublicationState(parseCodeableConcept(getJObject(json, "publicationState"))); + if (json.has("relatedArticle")) { + JsonArray array = json.getAsJsonArray("relatedArticle"); + for (int i = 0; i < array.size(); i++) { + res.getRelatedArticle().add(parseCitationMedlinePubMedRelatedArticleComponent(array.get(i).getAsJsonObject())); + } + }; + } + + protected Citation.CitationMedlinePubMedPubMedPubDateComponent parseCitationMedlinePubMedPubMedPubDateComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationMedlinePubMedPubMedPubDateComponent res = new Citation.CitationMedlinePubMedPubMedPubDateComponent(); + parseCitationMedlinePubMedPubMedPubDateComponentProperties(json, res); + return res; + } + + protected void parseCitationMedlinePubMedPubMedPubDateComponentProperties(JsonObject json, Citation.CitationMedlinePubMedPubMedPubDateComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("publicationState")) + res.setPublicationState(parseCodeableConcept(getJObject(json, "publicationState"))); + if (json.has("date")) + res.setDateElement(parseDateTime(json.get("date").getAsString())); + if (json.has("_date")) + parseElementProperties(getJObject(json, "_date"), res.getDateElement()); + } + + protected Citation.CitationMedlinePubMedRelatedArticleComponent parseCitationMedlinePubMedRelatedArticleComponent(JsonObject json) throws IOException, FHIRFormatError { + Citation.CitationMedlinePubMedRelatedArticleComponent res = new Citation.CitationMedlinePubMedRelatedArticleComponent(); + parseCitationMedlinePubMedRelatedArticleComponentProperties(json, res); + return res; + } + + protected void parseCitationMedlinePubMedRelatedArticleComponentProperties(JsonObject json, Citation.CitationMedlinePubMedRelatedArticleComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("citationReference")) + res.setCitationReference(parseReference(getJObject(json, "citationReference"))); + if (json.has("citationMarkdown")) + res.setCitationMarkdownElement(parseMarkdown(json.get("citationMarkdown").getAsString())); + if (json.has("_citationMarkdown")) + parseElementProperties(getJObject(json, "_citationMarkdown"), res.getCitationMarkdownElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + } + protected Claim parseClaim(JsonObject json) throws IOException, FHIRFormatError { Claim res = new Claim(); parseClaimProperties(json, res); @@ -7108,6 +7749,8 @@ public class JsonParser extends JsonParserBase { res.setTypeElement(parseEnumeration(json.get("type").getAsString(), ClinicalUseIssue.ClinicalUseIssueType.NULL, new ClinicalUseIssue.ClinicalUseIssueTypeEnumFactory())); if (json.has("_type")) parseElementProperties(getJObject(json, "_type"), res.getTypeElement()); + if (json.has("category")) + res.setCategory(parseCodeableConcept(getJObject(json, "category"))); if (json.has("subject")) { JsonArray array = json.getAsJsonArray("subject"); for (int i = 0; i < array.size(); i++) { @@ -8707,8 +9350,8 @@ public class JsonParser extends JsonParserBase { res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - if (json.has("patient")) - res.setPatient(parseReference(getJObject(json, "patient"))); + if (json.has("subject")) + res.setSubject(parseReference(getJObject(json, "subject"))); if (json.has("dateTime")) res.setDateTimeElement(parseDateTime(json.get("dateTime").getAsString())); if (json.has("_dateTime")) @@ -10403,6 +11046,10 @@ public class JsonParser extends JsonParserBase { res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); } }; + if (json.has("displayName")) + res.setDisplayNameElement(parseString(json.get("displayName").getAsString())); + if (json.has("_displayName")) + parseElementProperties(getJObject(json, "_displayName"), res.getDisplayNameElement()); if (json.has("definition")) res.setDefinition(parseReference(getJObject(json, "definition"))); if (json.has("udiCarrier")) { @@ -10459,8 +11106,12 @@ public class JsonParser extends JsonParserBase { res.setPartNumberElement(parseString(json.get("partNumber").getAsString())); if (json.has("_partNumber")) parseElementProperties(getJObject(json, "_partNumber"), res.getPartNumberElement()); - if (json.has("type")) - res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("type")) { + JsonArray array = json.getAsJsonArray("type"); + for (int i = 0; i < array.size(); i++) { + res.getType().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; if (json.has("specialization")) { JsonArray array = json.getAsJsonArray("specialization"); for (int i = 0; i < array.size(); i++) { @@ -10481,6 +11132,10 @@ public class JsonParser extends JsonParserBase { }; if (json.has("patient")) res.setPatient(parseReference(getJObject(json, "patient"))); + if (json.has("operationalStatus")) + res.setOperationalStatus(parseDeviceOperationalStatusComponent(getJObject(json, "operationalStatus"))); + if (json.has("associationStatus")) + res.setAssociationStatus(parseDeviceAssociationStatusComponent(getJObject(json, "associationStatus"))); if (json.has("owner")) res.setOwner(parseReference(getJObject(json, "owner"))); if (json.has("contact")) { @@ -10621,6 +11276,42 @@ public class JsonParser extends JsonParserBase { }; } + protected Device.DeviceOperationalStatusComponent parseDeviceOperationalStatusComponent(JsonObject json) throws IOException, FHIRFormatError { + Device.DeviceOperationalStatusComponent res = new Device.DeviceOperationalStatusComponent(); + parseDeviceOperationalStatusComponentProperties(json, res); + return res; + } + + protected void parseDeviceOperationalStatusComponentProperties(JsonObject json, Device.DeviceOperationalStatusComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("value")) + res.setValue(parseCodeableConcept(getJObject(json, "value"))); + if (json.has("reason")) { + JsonArray array = json.getAsJsonArray("reason"); + for (int i = 0; i < array.size(); i++) { + res.getReason().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + } + + protected Device.DeviceAssociationStatusComponent parseDeviceAssociationStatusComponent(JsonObject json) throws IOException, FHIRFormatError { + Device.DeviceAssociationStatusComponent res = new Device.DeviceAssociationStatusComponent(); + parseDeviceAssociationStatusComponentProperties(json, res); + return res; + } + + protected void parseDeviceAssociationStatusComponentProperties(JsonObject json, Device.DeviceAssociationStatusComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("value")) + res.setValue(parseCodeableConcept(getJObject(json, "value"))); + if (json.has("reason")) { + JsonArray array = json.getAsJsonArray("reason"); + for (int i = 0; i < array.size(); i++) { + res.getReason().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + } + protected DeviceDefinition parseDeviceDefinition(JsonObject json) throws IOException, FHIRFormatError { DeviceDefinition res = new DeviceDefinition(); parseDeviceDefinitionProperties(json, res); @@ -10721,10 +11412,6 @@ public class JsonParser extends JsonParserBase { res.getContact().add(parseContactPoint(array.get(i).getAsJsonObject())); } }; - if (json.has("url")) - res.setUrlElement(parseUri(json.get("url").getAsString())); - if (json.has("_url")) - parseElementProperties(getJObject(json, "_url"), res.getUrlElement()); if (json.has("onlineInformation")) res.setOnlineInformationElement(parseUri(json.get("onlineInformation").getAsString())); if (json.has("_onlineInformation")) @@ -11011,9 +11698,8 @@ public class JsonParser extends JsonParserBase { res.setPriorityElement(parseEnumeration(json.get("priority").getAsString(), Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); if (json.has("_priority")) parseElementProperties(getJObject(json, "_priority"), res.getPriorityElement()); - DataType code = parseType("code", json); - if (code != null) - res.setCode(code); + if (json.has("code")) + res.setCode(parseCodeableReference(getJObject(json, "code"))); if (json.has("parameter")) { JsonArray array = json.getAsJsonArray("parameter"); for (int i = 0; i < array.size(); i++) { @@ -11108,6 +11794,12 @@ public class JsonParser extends JsonParserBase { res.setStatusElement(parseEnumeration(json.get("status").getAsString(), DeviceUseStatement.DeviceUseStatementStatus.NULL, new DeviceUseStatement.DeviceUseStatementStatusEnumFactory())); if (json.has("_status")) parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("category")) { + JsonArray array = json.getAsJsonArray("category"); + for (int i = 0; i < array.size(); i++) { + res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; if (json.has("subject")) res.setSubject(parseReference(getJObject(json, "subject"))); if (json.has("derivedFrom")) { @@ -11116,17 +11808,27 @@ public class JsonParser extends JsonParserBase { res.getDerivedFrom().add(parseReference(array.get(i).getAsJsonObject())); } }; + if (json.has("context")) + res.setContext(parseReference(getJObject(json, "context"))); DataType timing = parseType("timing", json); if (timing != null) res.setTiming(timing); - if (json.has("recordedOn")) - res.setRecordedOnElement(parseDateTime(json.get("recordedOn").getAsString())); - if (json.has("_recordedOn")) - parseElementProperties(getJObject(json, "_recordedOn"), res.getRecordedOnElement()); - if (json.has("source")) - res.setSource(parseReference(getJObject(json, "source"))); + if (json.has("dateAsserted")) + res.setDateAssertedElement(parseDateTime(json.get("dateAsserted").getAsString())); + if (json.has("_dateAsserted")) + parseElementProperties(getJObject(json, "_dateAsserted"), res.getDateAssertedElement()); + if (json.has("usageStatus")) + res.setUsageStatus(parseCodeableConcept(getJObject(json, "usageStatus"))); + if (json.has("usageReason")) { + JsonArray array = json.getAsJsonArray("usageReason"); + for (int i = 0; i < array.size(); i++) { + res.getUsageReason().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("informationSource")) + res.setInformationSource(parseReference(getJObject(json, "informationSource"))); if (json.has("device")) - res.setDevice(parseReference(getJObject(json, "device"))); + res.setDevice(parseCodeableReference(getJObject(json, "device"))); if (json.has("reason")) { JsonArray array = json.getAsJsonArray("reason"); for (int i = 0; i < array.size(); i++) { @@ -11134,7 +11836,7 @@ public class JsonParser extends JsonParserBase { } }; if (json.has("bodySite")) - res.setBodySite(parseCodeableConcept(getJObject(json, "bodySite"))); + res.setBodySite(parseCodeableReference(getJObject(json, "bodySite"))); if (json.has("note")) { JsonArray array = json.getAsJsonArray("note"); for (int i = 0; i < array.size(); i++) { @@ -12179,8 +12881,6 @@ public class JsonParser extends JsonParserBase { res.getNote().add(parseAnnotation(array.get(i).getAsJsonObject())); } }; - if (json.has("referentGroup")) - res.setReferentGroup(parseEvidenceReferentGroupComponent(getJObject(json, "referentGroup"))); if (json.has("variableDefinition")) { JsonArray array = json.getAsJsonArray("variableDefinition"); for (int i = 0; i < array.size(); i++) { @@ -12211,32 +12911,6 @@ public class JsonParser extends JsonParserBase { }; } - protected Evidence.EvidenceReferentGroupComponent parseEvidenceReferentGroupComponent(JsonObject json) throws IOException, FHIRFormatError { - Evidence.EvidenceReferentGroupComponent res = new Evidence.EvidenceReferentGroupComponent(); - parseEvidenceReferentGroupComponentProperties(json, res); - return res; - } - - protected void parseEvidenceReferentGroupComponentProperties(JsonObject json, Evidence.EvidenceReferentGroupComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); - if (json.has("description")) - res.setDescriptionElement(parseMarkdown(json.get("description").getAsString())); - if (json.has("_description")) - parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); - if (json.has("note")) { - JsonArray array = json.getAsJsonArray("note"); - for (int i = 0; i < array.size(); i++) { - res.getNote().add(parseAnnotation(array.get(i).getAsJsonObject())); - } - }; - if (json.has("evidenceSource")) - res.setEvidenceSource(parseReference(getJObject(json, "evidenceSource"))); - if (json.has("intendedGroup")) - res.setIntendedGroup(parseReference(getJObject(json, "intendedGroup"))); - if (json.has("directnessMatch")) - res.setDirectnessMatch(parseCodeableConcept(getJObject(json, "directnessMatch"))); - } - protected Evidence.EvidenceVariableDefinitionComponent parseEvidenceVariableDefinitionComponent(JsonObject json) throws IOException, FHIRFormatError { Evidence.EvidenceVariableDefinitionComponent res = new Evidence.EvidenceVariableDefinitionComponent(); parseEvidenceVariableDefinitionComponentProperties(json, res); @@ -12257,10 +12931,10 @@ public class JsonParser extends JsonParserBase { }; if (json.has("variableRole")) res.setVariableRole(parseCodeableConcept(getJObject(json, "variableRole"))); - if (json.has("actualDefinition")) - res.setActualDefinition(parseReference(getJObject(json, "actualDefinition"))); - if (json.has("intendedDefinition")) - res.setIntendedDefinition(parseReference(getJObject(json, "intendedDefinition"))); + if (json.has("observed")) + res.setObserved(parseReference(getJObject(json, "observed"))); + if (json.has("intended")) + res.setIntended(parseReference(getJObject(json, "intended"))); if (json.has("directnessMatch")) res.setDirectnessMatch(parseCodeableConcept(getJObject(json, "directnessMatch"))); } @@ -12321,6 +12995,93 @@ public class JsonParser extends JsonParserBase { }; } + protected EvidenceFocus parseEvidenceFocus(JsonObject json) throws IOException, FHIRFormatError { + EvidenceFocus res = new EvidenceFocus(); + parseEvidenceFocusProperties(json, res); + return res; + } + + protected void parseEvidenceFocusProperties(JsonObject json, EvidenceFocus res) throws IOException, FHIRFormatError { + parseMetadataResourceProperties(json, res); + if (json.has("url")) + res.setUrlElement(parseUri(json.get("url").getAsString())); + if (json.has("_url")) + parseElementProperties(getJObject(json, "_url"), res.getUrlElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("version")) + res.setVersionElement(parseString(json.get("version").getAsString())); + if (json.has("_version")) + parseElementProperties(getJObject(json, "_version"), res.getVersionElement()); + if (json.has("name")) + res.setNameElement(parseString(json.get("name").getAsString())); + if (json.has("_name")) + parseElementProperties(getJObject(json, "_name"), res.getNameElement()); + if (json.has("status")) + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); + if (json.has("_status")) + parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("useContext")) { + JsonArray array = json.getAsJsonArray("useContext"); + for (int i = 0; i < array.size(); i++) { + res.getUseContext().add(parseUsageContext(array.get(i).getAsJsonObject())); + } + }; + if (json.has("date")) + res.setDateElement(parseDateTime(json.get("date").getAsString())); + if (json.has("_date")) + parseElementProperties(getJObject(json, "_date"), res.getDateElement()); + if (json.has("note")) { + JsonArray array = json.getAsJsonArray("note"); + for (int i = 0; i < array.size(); i++) { + res.getNote().add(parseAnnotation(array.get(i).getAsJsonObject())); + } + }; + if (json.has("copyright")) + res.setCopyrightElement(parseMarkdown(json.get("copyright").getAsString())); + if (json.has("_copyright")) + parseElementProperties(getJObject(json, "_copyright"), res.getCopyrightElement()); + if (json.has("citeAs")) + res.setCiteAs(parseReference(getJObject(json, "citeAs"))); + if (json.has("characteristic")) { + JsonArray array = json.getAsJsonArray("characteristic"); + for (int i = 0; i < array.size(); i++) { + res.getCharacteristic().add(parseEvidenceFocusCharacteristicComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("relatedArtifact")) { + JsonArray array = json.getAsJsonArray("relatedArtifact"); + for (int i = 0; i < array.size(); i++) { + res.getRelatedArtifact().add(parseRelatedArtifact(array.get(i).getAsJsonObject())); + } + }; + } + + protected EvidenceFocus.EvidenceFocusCharacteristicComponent parseEvidenceFocusCharacteristicComponent(JsonObject json) throws IOException, FHIRFormatError { + EvidenceFocus.EvidenceFocusCharacteristicComponent res = new EvidenceFocus.EvidenceFocusCharacteristicComponent(); + parseEvidenceFocusCharacteristicComponentProperties(json, res); + return res; + } + + protected void parseEvidenceFocusCharacteristicComponentProperties(JsonObject json, EvidenceFocus.EvidenceFocusCharacteristicComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("code")) + res.setCode(parseCodeableConcept(getJObject(json, "code"))); + DataType value = parseType("value", json); + if (value != null) + res.setValue(value); + if (json.has("exclude")) + res.setExcludeElement(parseBoolean(json.get("exclude").getAsBoolean())); + if (json.has("_exclude")) + parseElementProperties(getJObject(json, "_exclude"), res.getExcludeElement()); + if (json.has("period")) + res.setPeriod(parsePeriod(getJObject(json, "period"))); + } + protected EvidenceVariable parseEvidenceVariable(JsonObject json) throws IOException, FHIRFormatError { EvidenceVariable res = new EvidenceVariable(); parseEvidenceVariableProperties(json, res); @@ -12457,6 +13218,10 @@ public class JsonParser extends JsonParserBase { res.setActualElement(parseBoolean(json.get("actual").getAsBoolean())); if (json.has("_actual")) parseElementProperties(getJObject(json, "_actual"), res.getActualElement()); + if (json.has("characteristicCombination")) + res.setCharacteristicCombinationElement(parseEnumeration(json.get("characteristicCombination").getAsString(), EvidenceVariable.CharacteristicCombination.NULL, new EvidenceVariable.CharacteristicCombinationEnumFactory())); + if (json.has("_characteristicCombination")) + parseElementProperties(getJObject(json, "_characteristicCombination"), res.getCharacteristicCombinationElement()); if (json.has("characteristic")) { JsonArray array = json.getAsJsonArray("characteristic"); for (int i = 0; i < array.size(); i++) { @@ -12484,40 +13249,42 @@ public class JsonParser extends JsonParserBase { res.setMethod(parseCodeableConcept(getJObject(json, "method"))); if (json.has("device")) res.setDevice(parseReference(getJObject(json, "device"))); - if (json.has("booleanSet")) { - JsonArray array = json.getAsJsonArray("booleanSet"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getBooleanSet().add(new StringType()); - } else {; - res.getBooleanSet().add(parseString(array.get(i).getAsString())); - } - } - }; - if (json.has("_booleanSet")) { - JsonArray array = json.getAsJsonArray("_booleanSet"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getBooleanSet().size()) - res.getBooleanSet().add(parseString(null)); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getBooleanSet().get(i)); - } - }; if (json.has("exclude")) res.setExcludeElement(parseBoolean(json.get("exclude").getAsBoolean())); if (json.has("_exclude")) parseElementProperties(getJObject(json, "_exclude"), res.getExcludeElement()); - DataType participantEffective = parseType("participantEffective", json); - if (participantEffective != null) - res.setParticipantEffective(participantEffective); if (json.has("timeFromStart")) - res.setTimeFromStart(parseDuration(getJObject(json, "timeFromStart"))); + res.setTimeFromStart(parseEvidenceVariableCharacteristicTimeFromStartComponent(getJObject(json, "timeFromStart"))); if (json.has("groupMeasure")) res.setGroupMeasureElement(parseEnumeration(json.get("groupMeasure").getAsString(), EvidenceVariable.GroupMeasure.NULL, new EvidenceVariable.GroupMeasureEnumFactory())); if (json.has("_groupMeasure")) parseElementProperties(getJObject(json, "_groupMeasure"), res.getGroupMeasureElement()); } + protected EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent parseEvidenceVariableCharacteristicTimeFromStartComponent(JsonObject json) throws IOException, FHIRFormatError { + EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent res = new EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent(); + parseEvidenceVariableCharacteristicTimeFromStartComponentProperties(json, res); + return res; + } + + protected void parseEvidenceVariableCharacteristicTimeFromStartComponentProperties(JsonObject json, EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("description")) + res.setDescriptionElement(parseString(json.get("description").getAsString())); + if (json.has("_description")) + parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); + if (json.has("quantity")) + res.setQuantity(parseQuantity(getJObject(json, "quantity"))); + if (json.has("range")) + res.setRange(parseRange(getJObject(json, "range"))); + if (json.has("note")) { + JsonArray array = json.getAsJsonArray("note"); + for (int i = 0; i < array.size(); i++) { + res.getNote().add(parseAnnotation(array.get(i).getAsJsonObject())); + } + }; + } + protected ExampleScenario parseExampleScenario(JsonObject json) throws IOException, FHIRFormatError { ExampleScenario res = new ExampleScenario(); parseExampleScenarioProperties(json, res); @@ -15177,12 +15944,14 @@ public class JsonParser extends JsonParserBase { res.getTargetDisease().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - DataType doseNumber = parseType("doseNumber", json); - if (doseNumber != null) - res.setDoseNumber(doseNumber); - DataType seriesDoses = parseType("seriesDoses", json); - if (seriesDoses != null) - res.setSeriesDoses(seriesDoses); + if (json.has("doseNumber")) + res.setDoseNumberElement(parseString(json.get("doseNumber").getAsString())); + if (json.has("_doseNumber")) + parseElementProperties(getJObject(json, "_doseNumber"), res.getDoseNumberElement()); + if (json.has("seriesDoses")) + res.setSeriesDosesElement(parseString(json.get("seriesDoses").getAsString())); + if (json.has("_seriesDoses")) + parseElementProperties(getJObject(json, "_seriesDoses"), res.getSeriesDosesElement()); } protected ImmunizationEvaluation parseImmunizationEvaluation(JsonObject json) throws IOException, FHIRFormatError { @@ -15231,12 +16000,14 @@ public class JsonParser extends JsonParserBase { res.setSeriesElement(parseString(json.get("series").getAsString())); if (json.has("_series")) parseElementProperties(getJObject(json, "_series"), res.getSeriesElement()); - DataType doseNumber = parseType("doseNumber", json); - if (doseNumber != null) - res.setDoseNumber(doseNumber); - DataType seriesDoses = parseType("seriesDoses", json); - if (seriesDoses != null) - res.setSeriesDoses(seriesDoses); + if (json.has("doseNumber")) + res.setDoseNumberElement(parseString(json.get("doseNumber").getAsString())); + if (json.has("_doseNumber")) + parseElementProperties(getJObject(json, "_doseNumber"), res.getDoseNumberElement()); + if (json.has("seriesDoses")) + res.setSeriesDosesElement(parseString(json.get("seriesDoses").getAsString())); + if (json.has("_seriesDoses")) + parseElementProperties(getJObject(json, "_seriesDoses"), res.getSeriesDosesElement()); } protected ImmunizationRecommendation parseImmunizationRecommendation(JsonObject json) throws IOException, FHIRFormatError { @@ -15317,12 +16088,14 @@ public class JsonParser extends JsonParserBase { res.setSeriesElement(parseString(json.get("series").getAsString())); if (json.has("_series")) parseElementProperties(getJObject(json, "_series"), res.getSeriesElement()); - DataType doseNumber = parseType("doseNumber", json); - if (doseNumber != null) - res.setDoseNumber(doseNumber); - DataType seriesDoses = parseType("seriesDoses", json); - if (seriesDoses != null) - res.setSeriesDoses(seriesDoses); + if (json.has("doseNumber")) + res.setDoseNumberElement(parseString(json.get("doseNumber").getAsString())); + if (json.has("_doseNumber")) + parseElementProperties(getJObject(json, "_doseNumber"), res.getDoseNumberElement()); + if (json.has("seriesDoses")) + res.setSeriesDosesElement(parseString(json.get("seriesDoses").getAsString())); + if (json.has("_seriesDoses")) + parseElementProperties(getJObject(json, "_seriesDoses"), res.getSeriesDosesElement()); if (json.has("supportingImmunization")) { JsonArray array = json.getAsJsonArray("supportingImmunization"); for (int i = 0; i < array.size(); i++) { @@ -15803,6 +16576,16 @@ public class JsonParser extends JsonParserBase { res.setIdentifier(parseIdentifier(getJObject(json, "identifier"))); if (json.has("role")) res.setRole(parseCodeableConcept(getJObject(json, "role"))); + if (json.has("function")) { + JsonArray array = json.getAsJsonArray("function"); + for (int i = 0; i < array.size(); i++) { + res.getFunction().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("description")) + res.setDescriptionElement(parseMarkdown(json.get("description").getAsString())); + if (json.has("_description")) + parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); if (json.has("allergenicIndicator")) res.setAllergenicIndicatorElement(parseBoolean(json.get("allergenicIndicator").getAsBoolean())); if (json.has("_allergenicIndicator")) @@ -15858,10 +16641,18 @@ public class JsonParser extends JsonParserBase { res.setPresentation(parseRatio(getJObject(json, "presentation"))); if (json.has("presentationHighLimit")) res.setPresentationHighLimit(parseRatio(getJObject(json, "presentationHighLimit"))); + if (json.has("presentationText")) + res.setPresentationTextElement(parseString(json.get("presentationText").getAsString())); + if (json.has("_presentationText")) + parseElementProperties(getJObject(json, "_presentationText"), res.getPresentationTextElement()); if (json.has("concentration")) res.setConcentration(parseRatio(getJObject(json, "concentration"))); if (json.has("concentrationHighLimit")) res.setConcentrationHighLimit(parseRatio(getJObject(json, "concentrationHighLimit"))); + if (json.has("concentrationText")) + res.setConcentrationTextElement(parseString(json.get("concentrationText").getAsString())); + if (json.has("_concentrationText")) + parseElementProperties(getJObject(json, "_concentrationText"), res.getConcentrationTextElement()); if (json.has("measurementPoint")) res.setMeasurementPointElement(parseString(json.get("measurementPoint").getAsString())); if (json.has("_measurementPoint")) @@ -16805,24 +17596,24 @@ public class JsonParser extends JsonParserBase { res.getIngredient().add(parseReference(array.get(i).getAsJsonObject())); } }; - if (json.has("characteristic")) { - JsonArray array = json.getAsJsonArray("characteristic"); + if (json.has("property")) { + JsonArray array = json.getAsJsonArray("property"); for (int i = 0; i < array.size(); i++) { - res.getCharacteristic().add(parseManufacturedItemDefinitionCharacteristicComponent(array.get(i).getAsJsonObject())); + res.getProperty().add(parseManufacturedItemDefinitionPropertyComponent(array.get(i).getAsJsonObject())); } }; } - protected ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent parseManufacturedItemDefinitionCharacteristicComponent(JsonObject json) throws IOException, FHIRFormatError { - ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent(); - parseManufacturedItemDefinitionCharacteristicComponentProperties(json, res); + protected ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent parseManufacturedItemDefinitionPropertyComponent(JsonObject json) throws IOException, FHIRFormatError { + ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent(); + parseManufacturedItemDefinitionPropertyComponentProperties(json, res); return res; } - protected void parseManufacturedItemDefinitionCharacteristicComponentProperties(JsonObject json, ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent res) throws IOException, FHIRFormatError { + protected void parseManufacturedItemDefinitionPropertyComponentProperties(JsonObject json, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - if (json.has("code")) - res.setCode(parseCodeableConcept(getJObject(json, "code"))); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); DataType value = parseType("value", json); if (value != null) res.setValue(value); @@ -17381,9 +18172,8 @@ public class JsonParser extends JsonParserBase { protected void parseMedicationIngredientComponentProperties(JsonObject json, Medication.MedicationIngredientComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - DataType item = parseType("item", json); - if (item != null) - res.setItem(item); + if (json.has("item")) + res.setItem(parseCodeableReference(getJObject(json, "item"))); if (json.has("isActive")) res.setIsActiveElement(parseBoolean(json.get("isActive").getAsBoolean())); if (json.has("_isActive")) @@ -17491,9 +18281,8 @@ public class JsonParser extends JsonParserBase { res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - DataType medication = parseType("medication", json); - if (medication != null) - res.setMedication(medication); + if (json.has("medication")) + res.setMedication(parseCodeableReference(getJObject(json, "medication"))); if (json.has("subject")) res.setSubject(parseReference(getJObject(json, "subject"))); if (json.has("encounter")) @@ -17616,18 +18405,16 @@ public class JsonParser extends JsonParserBase { res.setStatusElement(parseEnumeration(json.get("status").getAsString(), MedicationDispense.MedicationDispenseStatusCodes.NULL, new MedicationDispense.MedicationDispenseStatusCodesEnumFactory())); if (json.has("_status")) parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); - DataType statusReason = parseType("statusReason", json); - if (statusReason != null) - res.setStatusReason(statusReason); + if (json.has("statusReason")) + res.setStatusReason(parseCodeableReference(getJObject(json, "statusReason"))); if (json.has("category")) { JsonArray array = json.getAsJsonArray("category"); for (int i = 0; i < array.size(); i++) { res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - DataType medication = parseType("medication", json); - if (medication != null) - res.setMedication(medication); + if (json.has("medication")) + res.setMedication(parseCodeableReference(getJObject(json, "medication"))); if (json.has("subject")) res.setSubject(parseReference(getJObject(json, "subject"))); if (json.has("encounter")) @@ -17927,9 +18714,8 @@ public class JsonParser extends JsonParserBase { protected void parseMedicationKnowledgeIngredientComponentProperties(JsonObject json, MedicationKnowledge.MedicationKnowledgeIngredientComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - DataType item = parseType("item", json); - if (item != null) - res.setItem(item); + if (json.has("item")) + res.setItem(parseCodeableReference(getJObject(json, "item"))); if (json.has("isActive")) res.setIsActiveElement(parseBoolean(json.get("isActive").getAsBoolean())); if (json.has("_isActive")) @@ -17987,9 +18773,8 @@ public class JsonParser extends JsonParserBase { res.getDosage().add(parseMedicationKnowledgeAdministrationGuidelineDosageComponent(array.get(i).getAsJsonObject())); } }; - DataType indication = parseType("indication", json); - if (indication != null) - res.setIndication(indication); + if (json.has("indication")) + res.setIndication(parseCodeableReference(getJObject(json, "indication"))); if (json.has("patientCharacteristic")) { JsonArray array = json.getAsJsonArray("patientCharacteristic"); for (int i = 0; i < array.size(); i++) { @@ -18024,28 +18809,11 @@ public class JsonParser extends JsonParserBase { protected void parseMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponentProperties(JsonObject json, MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - DataType characteristic = parseType("characteristic", json); - if (characteristic != null) - res.setCharacteristic(characteristic); - if (json.has("value")) { - JsonArray array = json.getAsJsonArray("value"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getValue().add(new StringType()); - } else {; - res.getValue().add(parseString(array.get(i).getAsString())); - } - } - }; - if (json.has("_value")) { - JsonArray array = json.getAsJsonArray("_value"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getValue().size()) - res.getValue().add(parseString(null)); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getValue().get(i)); - } - }; + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); + DataType value = parseType("value", json); + if (value != null) + res.setValue(value); } protected MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent parseMedicationKnowledgeMedicineClassificationComponent(JsonObject json) throws IOException, FHIRFormatError { @@ -18220,9 +18988,8 @@ public class JsonParser extends JsonParserBase { parseElementProperties(getJObject(json, "_reported"), res.getReportedElement()); if (json.has("informationSource")) res.setInformationSource(parseReference(getJObject(json, "informationSource"))); - DataType medication = parseType("medication", json); - if (medication != null) - res.setMedication(medication); + if (json.has("medication")) + res.setMedication(parseCodeableReference(getJObject(json, "medication"))); if (json.has("subject")) res.setSubject(parseReference(getJObject(json, "subject"))); if (json.has("encounter")) @@ -18438,9 +19205,8 @@ public class JsonParser extends JsonParserBase { res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - DataType medication = parseType("medication", json); - if (medication != null) - res.setMedication(medication); + if (json.has("medication")) + res.setMedication(parseCodeableReference(getJObject(json, "medication"))); if (json.has("subject")) res.setSubject(parseReference(getJObject(json, "subject"))); if (json.has("encounter")) @@ -18505,13 +19271,17 @@ public class JsonParser extends JsonParserBase { if (json.has("type")) res.setType(parseCodeableConcept(getJObject(json, "type"))); if (json.has("domain")) - res.setDomain(parseCoding(getJObject(json, "domain"))); + res.setDomain(parseCodeableConcept(getJObject(json, "domain"))); if (json.has("version")) res.setVersionElement(parseString(json.get("version").getAsString())); if (json.has("_version")) parseElementProperties(getJObject(json, "_version"), res.getVersionElement()); if (json.has("status")) - res.setStatus(parseCoding(getJObject(json, "status"))); + res.setStatus(parseCodeableConcept(getJObject(json, "status"))); + if (json.has("statusDate")) + res.setStatusDateElement(parseDateTime(json.get("statusDate").getAsString())); + if (json.has("_statusDate")) + parseElementProperties(getJObject(json, "_statusDate"), res.getStatusDateElement()); if (json.has("description")) res.setDescriptionElement(parseMarkdown(json.get("description").getAsString())); if (json.has("_description")) @@ -18540,6 +19310,12 @@ public class JsonParser extends JsonParserBase { res.getProductClassification().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; + if (json.has("characteristic")) { + JsonArray array = json.getAsJsonArray("characteristic"); + for (int i = 0; i < array.size(); i++) { + res.getCharacteristic().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; if (json.has("marketingStatus")) { JsonArray array = json.getAsJsonArray("marketingStatus"); for (int i = 0; i < array.size(); i++) { @@ -18635,7 +19411,7 @@ public class JsonParser extends JsonParserBase { if (json.has("_productName")) parseElementProperties(getJObject(json, "_productName"), res.getProductNameElement()); if (json.has("type")) - res.setType(parseCoding(getJObject(json, "type"))); + res.setType(parseCodeableConcept(getJObject(json, "type"))); if (json.has("namePart")) { JsonArray array = json.getAsJsonArray("namePart"); for (int i = 0; i < array.size(); i++) { @@ -18663,7 +19439,7 @@ public class JsonParser extends JsonParserBase { if (json.has("_part")) parseElementProperties(getJObject(json, "_part"), res.getPartElement()); if (json.has("type")) - res.setType(parseCoding(getJObject(json, "type"))); + res.setType(parseCodeableConcept(getJObject(json, "type"))); } protected MedicinalProductDefinition.MedicinalProductDefinitionNameCountryLanguageComponent parseMedicinalProductDefinitionNameCountryLanguageComponent(JsonObject json) throws IOException, FHIRFormatError { @@ -18694,7 +19470,7 @@ public class JsonParser extends JsonParserBase { if (product != null) res.setProduct(product); if (json.has("type")) - res.setType(parseCoding(getJObject(json, "type"))); + res.setType(parseCodeableConcept(getJObject(json, "type"))); } protected MedicinalProductDefinition.MedicinalProductDefinitionManufacturingBusinessOperationComponent parseMedicinalProductDefinitionManufacturingBusinessOperationComponent(JsonObject json) throws IOException, FHIRFormatError { @@ -18705,9 +19481,8 @@ public class JsonParser extends JsonParserBase { protected void parseMedicinalProductDefinitionManufacturingBusinessOperationComponentProperties(JsonObject json, MedicinalProductDefinition.MedicinalProductDefinitionManufacturingBusinessOperationComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - DataType type = parseType("type", json); - if (type != null) - res.setType(type); + if (json.has("type")) + res.setType(parseCodeableReference(getJObject(json, "type"))); if (json.has("effectiveDate")) res.setEffectiveDate(parsePeriod(getJObject(json, "effectiveDate"))); if (json.has("manufacturer")) { @@ -19604,6 +20379,44 @@ public class JsonParser extends JsonParserBase { res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); } }; + if (json.has("instantiatesCanonical")) { + JsonArray array = json.getAsJsonArray("instantiatesCanonical"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getInstantiatesCanonical().add(new CanonicalType()); + } else {; + res.getInstantiatesCanonical().add(parseCanonical(array.get(i).getAsString())); + } + } + }; + if (json.has("_instantiatesCanonical")) { + JsonArray array = json.getAsJsonArray("_instantiatesCanonical"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getInstantiatesCanonical().size()) + res.getInstantiatesCanonical().add(parseCanonical(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getInstantiatesCanonical().get(i)); + } + }; + if (json.has("instantiatesUri")) { + JsonArray array = json.getAsJsonArray("instantiatesUri"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getInstantiatesUri().add(new UriType()); + } else {; + res.getInstantiatesUri().add(parseUri(array.get(i).getAsString())); + } + } + }; + if (json.has("_instantiatesUri")) { + JsonArray array = json.getAsJsonArray("_instantiatesUri"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getInstantiatesUri().size()) + res.getInstantiatesUri().add(parseUri(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getInstantiatesUri().get(i)); + } + }; if (json.has("basedOn")) { JsonArray array = json.getAsJsonArray("basedOn"); for (int i = 0; i < array.size(); i++) { @@ -19617,7 +20430,7 @@ public class JsonParser extends JsonParserBase { } }; if (json.has("status")) - res.setStatusElement(parseEnumeration(json.get("status").getAsString(), NutritionIntake.NutritionIntakeStatusCodes.NULL, new NutritionIntake.NutritionIntakeStatusCodesEnumFactory())); + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.EventStatus.NULL, new Enumerations.EventStatusEnumFactory())); if (json.has("_status")) parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); if (json.has("statusReason")) { @@ -19626,12 +20439,22 @@ public class JsonParser extends JsonParserBase { res.getStatusReason().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - if (json.has("category")) { - JsonArray array = json.getAsJsonArray("category"); - for (int i = 0; i < array.size(); i++) { - res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); - } - }; + if (json.has("code")) + res.setCode(parseCodeableConcept(getJObject(json, "code"))); + if (json.has("subject")) + res.setSubject(parseReference(getJObject(json, "subject"))); + if (json.has("encounter")) + res.setEncounter(parseReference(getJObject(json, "encounter"))); + DataType occurrence = parseType("occurrence", json); + if (occurrence != null) + res.setOccurrence(occurrence); + if (json.has("recorded")) + res.setRecordedElement(parseDateTime(json.get("recorded").getAsString())); + if (json.has("_recorded")) + parseElementProperties(getJObject(json, "_recorded"), res.getRecordedElement()); + DataType reported = parseType("reported", json); + if (reported != null) + res.setReported(reported); if (json.has("consumedItem")) { JsonArray array = json.getAsJsonArray("consumedItem"); for (int i = 0; i < array.size(); i++) { @@ -19644,29 +20467,24 @@ public class JsonParser extends JsonParserBase { res.getIngredientLabel().add(parseNutritionIntakeIngredientLabelComponent(array.get(i).getAsJsonObject())); } }; - if (json.has("subject")) - res.setSubject(parseReference(getJObject(json, "subject"))); - if (json.has("encounter")) - res.setEncounter(parseReference(getJObject(json, "encounter"))); - DataType effective = parseType("effective", json); - if (effective != null) - res.setEffective(effective); - if (json.has("dateAsserted")) - res.setDateAssertedElement(parseDateTime(json.get("dateAsserted").getAsString())); - if (json.has("_dateAsserted")) - parseElementProperties(getJObject(json, "_dateAsserted"), res.getDateAssertedElement()); - if (json.has("informationSource")) - res.setInformationSource(parseReference(getJObject(json, "informationSource"))); + if (json.has("performer")) { + JsonArray array = json.getAsJsonArray("performer"); + for (int i = 0; i < array.size(); i++) { + res.getPerformer().add(parseNutritionIntakePerformerComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("location")) + res.setLocation(parseReference(getJObject(json, "location"))); if (json.has("derivedFrom")) { JsonArray array = json.getAsJsonArray("derivedFrom"); for (int i = 0; i < array.size(); i++) { res.getDerivedFrom().add(parseReference(array.get(i).getAsJsonObject())); } }; - if (json.has("reasonCode")) { - JsonArray array = json.getAsJsonArray("reasonCode"); + if (json.has("reason")) { + JsonArray array = json.getAsJsonArray("reason"); for (int i = 0; i < array.size(); i++) { - res.getReasonCode().add(parseCodeableReference(array.get(i).getAsJsonObject())); + res.getReason().add(parseCodeableReference(array.get(i).getAsJsonObject())); } }; if (json.has("note")) { @@ -19688,7 +20506,7 @@ public class JsonParser extends JsonParserBase { if (json.has("type")) res.setType(parseCodeableConcept(getJObject(json, "type"))); if (json.has("nutritionProduct")) - res.setNutritionProduct(parseCodeableConcept(getJObject(json, "nutritionProduct"))); + res.setNutritionProduct(parseCodeableReference(getJObject(json, "nutritionProduct"))); if (json.has("schedule")) res.setSchedule(parseTiming(getJObject(json, "schedule"))); if (json.has("amount")) @@ -19712,11 +20530,25 @@ public class JsonParser extends JsonParserBase { protected void parseNutritionIntakeIngredientLabelComponentProperties(JsonObject json, NutritionIntake.NutritionIntakeIngredientLabelComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); if (json.has("nutrient")) - res.setNutrient(parseCodeableConcept(getJObject(json, "nutrient"))); + res.setNutrient(parseCodeableReference(getJObject(json, "nutrient"))); if (json.has("amount")) res.setAmount(parseQuantity(getJObject(json, "amount"))); } + protected NutritionIntake.NutritionIntakePerformerComponent parseNutritionIntakePerformerComponent(JsonObject json) throws IOException, FHIRFormatError { + NutritionIntake.NutritionIntakePerformerComponent res = new NutritionIntake.NutritionIntakePerformerComponent(); + parseNutritionIntakePerformerComponentProperties(json, res); + return res; + } + + protected void parseNutritionIntakePerformerComponentProperties(JsonObject json, NutritionIntake.NutritionIntakePerformerComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("function")) + res.setFunction(parseCodeableConcept(getJObject(json, "function"))); + if (json.has("actor")) + res.setActor(parseReference(getJObject(json, "actor"))); + } + protected NutritionOrder parseNutritionOrder(JsonObject json) throws IOException, FHIRFormatError { NutritionOrder res = new NutritionOrder(); parseNutritionOrderProperties(json, res); @@ -19997,6 +20829,147 @@ public class JsonParser extends JsonParserBase { res.setRate(rate); } + protected NutritionProduct parseNutritionProduct(JsonObject json) throws IOException, FHIRFormatError { + NutritionProduct res = new NutritionProduct(); + parseNutritionProductProperties(json, res); + return res; + } + + protected void parseNutritionProductProperties(JsonObject json, NutritionProduct res) throws IOException, FHIRFormatError { + parseDomainResourceProperties(json, res); + if (json.has("status")) + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), NutritionProduct.NutritionProductStatus.NULL, new NutritionProduct.NutritionProductStatusEnumFactory())); + if (json.has("_status")) + parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("category")) { + JsonArray array = json.getAsJsonArray("category"); + for (int i = 0; i < array.size(); i++) { + res.getCategory().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("code")) + res.setCode(parseCodeableConcept(getJObject(json, "code"))); + if (json.has("manufacturer")) { + JsonArray array = json.getAsJsonArray("manufacturer"); + for (int i = 0; i < array.size(); i++) { + res.getManufacturer().add(parseReference(array.get(i).getAsJsonObject())); + } + }; + if (json.has("nutrient")) { + JsonArray array = json.getAsJsonArray("nutrient"); + for (int i = 0; i < array.size(); i++) { + res.getNutrient().add(parseNutritionProductNutrientComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("ingredient")) { + JsonArray array = json.getAsJsonArray("ingredient"); + for (int i = 0; i < array.size(); i++) { + res.getIngredient().add(parseNutritionProductIngredientComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("knownAllergen")) { + JsonArray array = json.getAsJsonArray("knownAllergen"); + for (int i = 0; i < array.size(); i++) { + res.getKnownAllergen().add(parseCodeableReference(array.get(i).getAsJsonObject())); + } + }; + if (json.has("productCharacteristic")) { + JsonArray array = json.getAsJsonArray("productCharacteristic"); + for (int i = 0; i < array.size(); i++) { + res.getProductCharacteristic().add(parseNutritionProductProductCharacteristicComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("instance")) + res.setInstance(parseNutritionProductInstanceComponent(getJObject(json, "instance"))); + if (json.has("note")) { + JsonArray array = json.getAsJsonArray("note"); + for (int i = 0; i < array.size(); i++) { + res.getNote().add(parseAnnotation(array.get(i).getAsJsonObject())); + } + }; + } + + protected NutritionProduct.NutritionProductNutrientComponent parseNutritionProductNutrientComponent(JsonObject json) throws IOException, FHIRFormatError { + NutritionProduct.NutritionProductNutrientComponent res = new NutritionProduct.NutritionProductNutrientComponent(); + parseNutritionProductNutrientComponentProperties(json, res); + return res; + } + + protected void parseNutritionProductNutrientComponentProperties(JsonObject json, NutritionProduct.NutritionProductNutrientComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("item")) + res.setItem(parseCodeableReference(getJObject(json, "item"))); + if (json.has("amount")) { + JsonArray array = json.getAsJsonArray("amount"); + for (int i = 0; i < array.size(); i++) { + res.getAmount().add(parseRatio(array.get(i).getAsJsonObject())); + } + }; + } + + protected NutritionProduct.NutritionProductIngredientComponent parseNutritionProductIngredientComponent(JsonObject json) throws IOException, FHIRFormatError { + NutritionProduct.NutritionProductIngredientComponent res = new NutritionProduct.NutritionProductIngredientComponent(); + parseNutritionProductIngredientComponentProperties(json, res); + return res; + } + + protected void parseNutritionProductIngredientComponentProperties(JsonObject json, NutritionProduct.NutritionProductIngredientComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("item")) + res.setItem(parseCodeableReference(getJObject(json, "item"))); + if (json.has("amount")) { + JsonArray array = json.getAsJsonArray("amount"); + for (int i = 0; i < array.size(); i++) { + res.getAmount().add(parseRatio(array.get(i).getAsJsonObject())); + } + }; + } + + protected NutritionProduct.NutritionProductProductCharacteristicComponent parseNutritionProductProductCharacteristicComponent(JsonObject json) throws IOException, FHIRFormatError { + NutritionProduct.NutritionProductProductCharacteristicComponent res = new NutritionProduct.NutritionProductProductCharacteristicComponent(); + parseNutritionProductProductCharacteristicComponentProperties(json, res); + return res; + } + + protected void parseNutritionProductProductCharacteristicComponentProperties(JsonObject json, NutritionProduct.NutritionProductProductCharacteristicComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); + DataType value = parseType("value", json); + if (value != null) + res.setValue(value); + } + + protected NutritionProduct.NutritionProductInstanceComponent parseNutritionProductInstanceComponent(JsonObject json) throws IOException, FHIRFormatError { + NutritionProduct.NutritionProductInstanceComponent res = new NutritionProduct.NutritionProductInstanceComponent(); + parseNutritionProductInstanceComponentProperties(json, res); + return res; + } + + protected void parseNutritionProductInstanceComponentProperties(JsonObject json, NutritionProduct.NutritionProductInstanceComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("quantity")) + res.setQuantity(parseQuantity(getJObject(json, "quantity"))); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("lotNumber")) + res.setLotNumberElement(parseString(json.get("lotNumber").getAsString())); + if (json.has("_lotNumber")) + parseElementProperties(getJObject(json, "_lotNumber"), res.getLotNumberElement()); + if (json.has("expiry")) + res.setExpiryElement(parseDateTime(json.get("expiry").getAsString())); + if (json.has("_expiry")) + parseElementProperties(getJObject(json, "_expiry"), res.getExpiryElement()); + if (json.has("useBy")) + res.setUseByElement(parseDateTime(json.get("useBy").getAsString())); + if (json.has("_useBy")) + parseElementProperties(getJObject(json, "_useBy"), res.getUseByElement()); + } + protected Observation parseObservation(JsonObject json) throws IOException, FHIRFormatError { Observation res = new Observation(); parseObservationProperties(json, res); @@ -20991,14 +21964,24 @@ public class JsonParser extends JsonParserBase { res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); } }; + if (json.has("name")) + res.setNameElement(parseString(json.get("name").getAsString())); + if (json.has("_name")) + parseElementProperties(getJObject(json, "_name"), res.getNameElement()); if (json.has("subject")) { JsonArray array = json.getAsJsonArray("subject"); for (int i = 0; i < array.size(); i++) { res.getSubject().add(parseReference(array.get(i).getAsJsonObject())); } }; + if (json.has("status")) + res.setStatus(parseCodeableConcept(getJObject(json, "status"))); + if (json.has("statusDate")) + res.setStatusDateElement(parseDateTime(json.get("statusDate").getAsString())); + if (json.has("_statusDate")) + parseElementProperties(getJObject(json, "_statusDate"), res.getStatusDateElement()); if (json.has("description")) - res.setDescriptionElement(parseString(json.get("description").getAsString())); + res.setDescriptionElement(parseMarkdown(json.get("description").getAsString())); if (json.has("_description")) parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); if (json.has("legalStatusOfSupply")) @@ -21009,6 +21992,12 @@ public class JsonParser extends JsonParserBase { res.getMarketingStatus().add(parseMarketingStatus(array.get(i).getAsJsonObject())); } }; + if (json.has("characteristic")) { + JsonArray array = json.getAsJsonArray("characteristic"); + for (int i = 0; i < array.size(); i++) { + res.getCharacteristic().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; if (json.has("copackagedIndicator")) res.setCopackagedIndicatorElement(parseBoolean(json.get("copackagedIndicator").getAsBoolean())); if (json.has("_copackagedIndicator")) @@ -21066,7 +22055,9 @@ public class JsonParser extends JsonParserBase { if (json.has("type")) res.setType(parseCodeableConcept(getJObject(json, "type"))); if (json.has("quantity")) - res.setQuantity(parseQuantity(getJObject(json, "quantity"))); + res.setQuantityElement(parseInteger(json.get("quantity").getAsLong())); + if (json.has("_quantity")) + parseElementProperties(getJObject(json, "_quantity"), res.getQuantityElement()); if (json.has("material")) { JsonArray array = json.getAsJsonArray("material"); for (int i = 0; i < array.size(); i++) { @@ -21091,10 +22082,10 @@ public class JsonParser extends JsonParserBase { res.getManufacturer().add(parseReference(array.get(i).getAsJsonObject())); } }; - if (json.has("characteristic")) { - JsonArray array = json.getAsJsonArray("characteristic"); + if (json.has("property")) { + JsonArray array = json.getAsJsonArray("property"); for (int i = 0; i < array.size(); i++) { - res.getCharacteristic().add(parsePackagedProductDefinitionPackageCharacteristicComponent(array.get(i).getAsJsonObject())); + res.getProperty().add(parsePackagedProductDefinitionPackagePropertyComponent(array.get(i).getAsJsonObject())); } }; if (json.has("containedItem")) { @@ -21111,16 +22102,16 @@ public class JsonParser extends JsonParserBase { }; } - protected PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent parsePackagedProductDefinitionPackageCharacteristicComponent(JsonObject json) throws IOException, FHIRFormatError { - PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent(); - parsePackagedProductDefinitionPackageCharacteristicComponentProperties(json, res); + protected PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent parsePackagedProductDefinitionPackagePropertyComponent(JsonObject json) throws IOException, FHIRFormatError { + PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent(); + parsePackagedProductDefinitionPackagePropertyComponentProperties(json, res); return res; } - protected void parsePackagedProductDefinitionPackageCharacteristicComponentProperties(JsonObject json, PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent res) throws IOException, FHIRFormatError { + protected void parsePackagedProductDefinitionPackagePropertyComponentProperties(JsonObject json, PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - if (json.has("code")) - res.setCode(parseCodeableConcept(getJObject(json, "code"))); + if (json.has("type")) + res.setType(parseCodeableConcept(getJObject(json, "type"))); DataType value = parseType("value", json); if (value != null) res.setValue(value); @@ -21494,6 +22485,121 @@ public class JsonParser extends JsonParserBase { parseElementProperties(getJObject(json, "_text"), res.getTextElement()); } + protected Permission parsePermission(JsonObject json) throws IOException, FHIRFormatError { + Permission res = new Permission(); + parsePermissionProperties(json, res); + return res; + } + + protected void parsePermissionProperties(JsonObject json, Permission res) throws IOException, FHIRFormatError { + parseDomainResourceProperties(json, res); + if (json.has("status")) + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Permission.PermissionStatus.NULL, new Permission.PermissionStatusEnumFactory())); + if (json.has("_status")) + parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("intent")) + res.setIntent(parseCodeableConcept(getJObject(json, "intent"))); + if (json.has("asserter")) + res.setAsserter(parseReference(getJObject(json, "asserter"))); + if (json.has("assertionDate")) { + JsonArray array = json.getAsJsonArray("assertionDate"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getAssertionDate().add(new DateTimeType()); + } else {; + res.getAssertionDate().add(parseDateTime(array.get(i).getAsString())); + } + } + }; + if (json.has("_assertionDate")) { + JsonArray array = json.getAsJsonArray("_assertionDate"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getAssertionDate().size()) + res.getAssertionDate().add(parseDateTime(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getAssertionDate().get(i)); + } + }; + if (json.has("validity")) + res.setValidity(parsePeriod(getJObject(json, "validity"))); + if (json.has("purpose")) { + JsonArray array = json.getAsJsonArray("purpose"); + for (int i = 0; i < array.size(); i++) { + res.getPurpose().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("dataScope")) { + JsonArray array = json.getAsJsonArray("dataScope"); + for (int i = 0; i < array.size(); i++) { + res.getDataScope().add(parseExpression(array.get(i).getAsJsonObject())); + } + }; + if (json.has("processingActivity")) { + JsonArray array = json.getAsJsonArray("processingActivity"); + for (int i = 0; i < array.size(); i++) { + res.getProcessingActivity().add(parsePermissionProcessingActivityComponent(array.get(i).getAsJsonObject())); + } + }; + if (json.has("justification")) + res.setJustification(parsePermissionJustificationComponent(getJObject(json, "justification"))); + if (json.has("usageLimitations")) { + JsonArray array = json.getAsJsonArray("usageLimitations"); + for (int i = 0; i < array.size(); i++) { + res.getUsageLimitations().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + } + + protected Permission.PermissionProcessingActivityComponent parsePermissionProcessingActivityComponent(JsonObject json) throws IOException, FHIRFormatError { + Permission.PermissionProcessingActivityComponent res = new Permission.PermissionProcessingActivityComponent(); + parsePermissionProcessingActivityComponentProperties(json, res); + return res; + } + + protected void parsePermissionProcessingActivityComponentProperties(JsonObject json, Permission.PermissionProcessingActivityComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("partyReference")) { + JsonArray array = json.getAsJsonArray("partyReference"); + for (int i = 0; i < array.size(); i++) { + res.getPartyReference().add(parseReference(array.get(i).getAsJsonObject())); + } + }; + if (json.has("partyCodeableConcept")) { + JsonArray array = json.getAsJsonArray("partyCodeableConcept"); + for (int i = 0; i < array.size(); i++) { + res.getPartyCodeableConcept().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("purpose")) { + JsonArray array = json.getAsJsonArray("purpose"); + for (int i = 0; i < array.size(); i++) { + res.getPurpose().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + } + + protected Permission.PermissionJustificationComponent parsePermissionJustificationComponent(JsonObject json) throws IOException, FHIRFormatError { + Permission.PermissionJustificationComponent res = new Permission.PermissionJustificationComponent(); + parsePermissionJustificationComponentProperties(json, res); + return res; + } + + protected void parsePermissionJustificationComponentProperties(JsonObject json, Permission.PermissionJustificationComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("evidence")) { + JsonArray array = json.getAsJsonArray("evidence"); + for (int i = 0; i < array.size(); i++) { + res.getEvidence().add(parseReference(array.get(i).getAsJsonObject())); + } + }; + if (json.has("grounds")) { + JsonArray array = json.getAsJsonArray("grounds"); + for (int i = 0; i < array.size(); i++) { + res.getGrounds().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + } + protected Person parsePerson(JsonObject json) throws IOException, FHIRFormatError { Person res = new Person(); parsePersonProperties(json, res); @@ -22943,6 +24049,11 @@ public class JsonParser extends JsonParserBase { parseElementProperties(getJObject(json, "_statusDate"), res.getStatusDateElement()); if (json.has("validityPeriod")) res.setValidityPeriod(parsePeriod(getJObject(json, "validityPeriod"))); + DataType indication = parseType("indication", json); + if (indication != null) + res.setIndication(indication); + if (json.has("intendedUse")) + res.setIntendedUse(parseCodeableConcept(getJObject(json, "intendedUse"))); if (json.has("basis")) { JsonArray array = json.getAsJsonArray("basis"); for (int i = 0; i < array.size(); i++) { @@ -25198,7 +26309,7 @@ public class JsonParser extends JsonParserBase { if (json.has("_name")) parseElementProperties(getJObject(json, "_name"), res.getNameElement()); if (json.has("status")) - res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Subscription.SubscriptionStatus.NULL, new Subscription.SubscriptionStatusEnumFactory())); + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.SubscriptionState.NULL, new Enumerations.SubscriptionStateEnumFactory())); if (json.has("_status")) parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); if (json.has("topic")) @@ -25229,46 +26340,8 @@ public class JsonParser extends JsonParserBase { res.getError().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - if (json.has("eventCount")) - res.setEventCountElement(parseUnsignedInt(json.get("eventCount").getAsString())); - if (json.has("_eventCount")) - parseElementProperties(getJObject(json, "_eventCount"), res.getEventCountElement()); - if (json.has("channel")) - res.setChannel(parseSubscriptionChannelComponent(getJObject(json, "channel"))); - } - - protected Subscription.SubscriptionFilterByComponent parseSubscriptionFilterByComponent(JsonObject json) throws IOException, FHIRFormatError { - Subscription.SubscriptionFilterByComponent res = new Subscription.SubscriptionFilterByComponent(); - parseSubscriptionFilterByComponentProperties(json, res); - return res; - } - - protected void parseSubscriptionFilterByComponentProperties(JsonObject json, Subscription.SubscriptionFilterByComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); - if (json.has("name")) - res.setNameElement(parseString(json.get("name").getAsString())); - if (json.has("_name")) - parseElementProperties(getJObject(json, "_name"), res.getNameElement()); - if (json.has("matchType")) - res.setMatchTypeElement(parseEnumeration(json.get("matchType").getAsString(), Subscription.SubscriptionFilterByMatchType.NULL, new Subscription.SubscriptionFilterByMatchTypeEnumFactory())); - if (json.has("_matchType")) - parseElementProperties(getJObject(json, "_matchType"), res.getMatchTypeElement()); - if (json.has("value")) - res.setValueElement(parseString(json.get("value").getAsString())); - if (json.has("_value")) - parseElementProperties(getJObject(json, "_value"), res.getValueElement()); - } - - protected Subscription.SubscriptionChannelComponent parseSubscriptionChannelComponent(JsonObject json) throws IOException, FHIRFormatError { - Subscription.SubscriptionChannelComponent res = new Subscription.SubscriptionChannelComponent(); - parseSubscriptionChannelComponentProperties(json, res); - return res; - } - - protected void parseSubscriptionChannelComponentProperties(JsonObject json, Subscription.SubscriptionChannelComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); - if (json.has("type")) - res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("channelType")) + res.setChannelType(parseCoding(getJObject(json, "channelType"))); if (json.has("endpoint")) res.setEndpointElement(parseUrl(json.get("endpoint").getAsString())); if (json.has("_endpoint")) @@ -25296,18 +26369,10 @@ public class JsonParser extends JsonParserBase { res.setHeartbeatPeriodElement(parseUnsignedInt(json.get("heartbeatPeriod").getAsString())); if (json.has("_heartbeatPeriod")) parseElementProperties(getJObject(json, "_heartbeatPeriod"), res.getHeartbeatPeriodElement()); - if (json.has("payload")) - res.setPayload(parseSubscriptionChannelPayloadComponent(getJObject(json, "payload"))); - } - - protected Subscription.SubscriptionChannelPayloadComponent parseSubscriptionChannelPayloadComponent(JsonObject json) throws IOException, FHIRFormatError { - Subscription.SubscriptionChannelPayloadComponent res = new Subscription.SubscriptionChannelPayloadComponent(); - parseSubscriptionChannelPayloadComponentProperties(json, res); - return res; - } - - protected void parseSubscriptionChannelPayloadComponentProperties(JsonObject json, Subscription.SubscriptionChannelPayloadComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); + if (json.has("timeout")) + res.setTimeoutElement(parseUnsignedInt(json.get("timeout").getAsString())); + if (json.has("_timeout")) + parseElementProperties(getJObject(json, "_timeout"), res.getTimeoutElement()); if (json.has("contentType")) res.setContentTypeElement(parseCode(json.get("contentType").getAsString())); if (json.has("_contentType")) @@ -25318,6 +26383,318 @@ public class JsonParser extends JsonParserBase { parseElementProperties(getJObject(json, "_content"), res.getContentElement()); } + protected Subscription.SubscriptionFilterByComponent parseSubscriptionFilterByComponent(JsonObject json) throws IOException, FHIRFormatError { + Subscription.SubscriptionFilterByComponent res = new Subscription.SubscriptionFilterByComponent(); + parseSubscriptionFilterByComponentProperties(json, res); + return res; + } + + protected void parseSubscriptionFilterByComponentProperties(JsonObject json, Subscription.SubscriptionFilterByComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("searchParamName")) + res.setSearchParamNameElement(parseString(json.get("searchParamName").getAsString())); + if (json.has("_searchParamName")) + parseElementProperties(getJObject(json, "_searchParamName"), res.getSearchParamNameElement()); + if (json.has("searchModifier")) + res.setSearchModifierElement(parseEnumeration(json.get("searchModifier").getAsString(), Enumerations.SubscriptionSearchModifier.NULL, new Enumerations.SubscriptionSearchModifierEnumFactory())); + if (json.has("_searchModifier")) + parseElementProperties(getJObject(json, "_searchModifier"), res.getSearchModifierElement()); + if (json.has("value")) + res.setValueElement(parseString(json.get("value").getAsString())); + if (json.has("_value")) + parseElementProperties(getJObject(json, "_value"), res.getValueElement()); + } + + protected SubscriptionStatus parseSubscriptionStatus(JsonObject json) throws IOException, FHIRFormatError { + SubscriptionStatus res = new SubscriptionStatus(); + parseSubscriptionStatusProperties(json, res); + return res; + } + + protected void parseSubscriptionStatusProperties(JsonObject json, SubscriptionStatus res) throws IOException, FHIRFormatError { + parseDomainResourceProperties(json, res); + if (json.has("notificationType")) + res.setNotificationTypeElement(parseEnumeration(json.get("notificationType").getAsString(), SubscriptionStatus.SubscriptionNotificationType.NULL, new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory())); + if (json.has("_notificationType")) + parseElementProperties(getJObject(json, "_notificationType"), res.getNotificationTypeElement()); + if (json.has("eventsSinceSubscriptionStart")) + res.setEventsSinceSubscriptionStartElement(parseInteger64(json.get("eventsSinceSubscriptionStart").getAsLong())); + if (json.has("_eventsSinceSubscriptionStart")) + parseElementProperties(getJObject(json, "_eventsSinceSubscriptionStart"), res.getEventsSinceSubscriptionStartElement()); + if (json.has("eventsInNotification")) + res.setEventsInNotificationElement(parseInteger(json.get("eventsInNotification").getAsLong())); + if (json.has("_eventsInNotification")) + parseElementProperties(getJObject(json, "_eventsInNotification"), res.getEventsInNotificationElement()); + if (json.has("subscription")) + res.setSubscription(parseReference(getJObject(json, "subscription"))); + if (json.has("status")) + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.SubscriptionState.NULL, new Enumerations.SubscriptionStateEnumFactory())); + if (json.has("_status")) + parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("topic")) + res.setTopic(parseReference(getJObject(json, "topic"))); + } + + protected SubscriptionTopic parseSubscriptionTopic(JsonObject json) throws IOException, FHIRFormatError { + SubscriptionTopic res = new SubscriptionTopic(); + parseSubscriptionTopicProperties(json, res); + return res; + } + + protected void parseSubscriptionTopicProperties(JsonObject json, SubscriptionTopic res) throws IOException, FHIRFormatError { + parseDomainResourceProperties(json, res); + if (json.has("url")) + res.setUrlElement(parseUri(json.get("url").getAsString())); + if (json.has("_url")) + parseElementProperties(getJObject(json, "_url"), res.getUrlElement()); + if (json.has("identifier")) { + JsonArray array = json.getAsJsonArray("identifier"); + for (int i = 0; i < array.size(); i++) { + res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); + } + }; + if (json.has("version")) + res.setVersionElement(parseString(json.get("version").getAsString())); + if (json.has("_version")) + parseElementProperties(getJObject(json, "_version"), res.getVersionElement()); + if (json.has("title")) + res.setTitleElement(parseString(json.get("title").getAsString())); + if (json.has("_title")) + parseElementProperties(getJObject(json, "_title"), res.getTitleElement()); + if (json.has("derivedFromCanonical")) { + JsonArray array = json.getAsJsonArray("derivedFromCanonical"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getDerivedFromCanonical().add(new CanonicalType()); + } else {; + res.getDerivedFromCanonical().add(parseCanonical(array.get(i).getAsString())); + } + } + }; + if (json.has("_derivedFromCanonical")) { + JsonArray array = json.getAsJsonArray("_derivedFromCanonical"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getDerivedFromCanonical().size()) + res.getDerivedFromCanonical().add(parseCanonical(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getDerivedFromCanonical().get(i)); + } + }; + if (json.has("derivedFromUri")) { + JsonArray array = json.getAsJsonArray("derivedFromUri"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getDerivedFromUri().add(new UriType()); + } else {; + res.getDerivedFromUri().add(parseUri(array.get(i).getAsString())); + } + } + }; + if (json.has("_derivedFromUri")) { + JsonArray array = json.getAsJsonArray("_derivedFromUri"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getDerivedFromUri().size()) + res.getDerivedFromUri().add(parseUri(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getDerivedFromUri().get(i)); + } + }; + if (json.has("status")) + res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); + if (json.has("_status")) + parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); + if (json.has("experimental")) + res.setExperimentalElement(parseBoolean(json.get("experimental").getAsBoolean())); + if (json.has("_experimental")) + parseElementProperties(getJObject(json, "_experimental"), res.getExperimentalElement()); + if (json.has("date")) + res.setDateElement(parseDateTime(json.get("date").getAsString())); + if (json.has("_date")) + parseElementProperties(getJObject(json, "_date"), res.getDateElement()); + if (json.has("publisher")) + res.setPublisher(parseReference(getJObject(json, "publisher"))); + if (json.has("contact")) { + JsonArray array = json.getAsJsonArray("contact"); + for (int i = 0; i < array.size(); i++) { + res.getContact().add(parseContactDetail(array.get(i).getAsJsonObject())); + } + }; + if (json.has("description")) + res.setDescriptionElement(parseMarkdown(json.get("description").getAsString())); + if (json.has("_description")) + parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); + if (json.has("useContext")) { + JsonArray array = json.getAsJsonArray("useContext"); + for (int i = 0; i < array.size(); i++) { + res.getUseContext().add(parseUsageContext(array.get(i).getAsJsonObject())); + } + }; + if (json.has("jurisdiction")) { + JsonArray array = json.getAsJsonArray("jurisdiction"); + for (int i = 0; i < array.size(); i++) { + res.getJurisdiction().add(parseCodeableConcept(array.get(i).getAsJsonObject())); + } + }; + if (json.has("purpose")) + res.setPurposeElement(parseMarkdown(json.get("purpose").getAsString())); + if (json.has("_purpose")) + parseElementProperties(getJObject(json, "_purpose"), res.getPurposeElement()); + if (json.has("copyright")) + res.setCopyrightElement(parseMarkdown(json.get("copyright").getAsString())); + if (json.has("_copyright")) + parseElementProperties(getJObject(json, "_copyright"), res.getCopyrightElement()); + if (json.has("approvalDate")) + res.setApprovalDateElement(parseDate(json.get("approvalDate").getAsString())); + if (json.has("_approvalDate")) + parseElementProperties(getJObject(json, "_approvalDate"), res.getApprovalDateElement()); + if (json.has("lastReviewDate")) + res.setLastReviewDateElement(parseDate(json.get("lastReviewDate").getAsString())); + if (json.has("_lastReviewDate")) + parseElementProperties(getJObject(json, "_lastReviewDate"), res.getLastReviewDateElement()); + if (json.has("effectivePeriod")) + res.setEffectivePeriod(parsePeriod(getJObject(json, "effectivePeriod"))); + if (json.has("resourceTrigger")) + res.setResourceTrigger(parseSubscriptionTopicResourceTriggerComponent(getJObject(json, "resourceTrigger"))); + if (json.has("canFilterBy")) { + JsonArray array = json.getAsJsonArray("canFilterBy"); + for (int i = 0; i < array.size(); i++) { + res.getCanFilterBy().add(parseSubscriptionTopicCanFilterByComponent(array.get(i).getAsJsonObject())); + } + }; + } + + protected SubscriptionTopic.SubscriptionTopicResourceTriggerComponent parseSubscriptionTopicResourceTriggerComponent(JsonObject json) throws IOException, FHIRFormatError { + SubscriptionTopic.SubscriptionTopicResourceTriggerComponent res = new SubscriptionTopic.SubscriptionTopicResourceTriggerComponent(); + parseSubscriptionTopicResourceTriggerComponentProperties(json, res); + return res; + } + + protected void parseSubscriptionTopicResourceTriggerComponentProperties(JsonObject json, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("description")) + res.setDescriptionElement(parseString(json.get("description").getAsString())); + if (json.has("_description")) + parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); + if (json.has("resourceType")) { + JsonArray array = json.getAsJsonArray("resourceType"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getResourceType().add(new CodeType()); + } else {; + res.getResourceType().add(parseCode(array.get(i).getAsString())); + } + } + }; + if (json.has("_resourceType")) { + JsonArray array = json.getAsJsonArray("_resourceType"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getResourceType().size()) + res.getResourceType().add(parseCode(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getResourceType().get(i)); + } + }; + if (json.has("methodCriteria")) { + JsonArray array = json.getAsJsonArray("methodCriteria"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getMethodCriteria().add(new Enumeration(new SubscriptionTopic.InteractionTriggerEnumFactory(), SubscriptionTopic.InteractionTrigger.NULL)); + } else {; + res.getMethodCriteria().add(parseEnumeration(array.get(i).getAsString(), SubscriptionTopic.InteractionTrigger.NULL, new SubscriptionTopic.InteractionTriggerEnumFactory())); + } + } + }; + if (json.has("_methodCriteria")) { + JsonArray array = json.getAsJsonArray("_methodCriteria"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getMethodCriteria().size()) + res.getMethodCriteria().add(parseEnumeration(null, SubscriptionTopic.InteractionTrigger.NULL, new SubscriptionTopic.InteractionTriggerEnumFactory())); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getMethodCriteria().get(i)); + } + }; + if (json.has("queryCriteria")) + res.setQueryCriteria(parseSubscriptionTopicResourceTriggerQueryCriteriaComponent(getJObject(json, "queryCriteria"))); + if (json.has("fhirPathCriteria")) { + JsonArray array = json.getAsJsonArray("fhirPathCriteria"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getFhirPathCriteria().add(new StringType()); + } else {; + res.getFhirPathCriteria().add(parseString(array.get(i).getAsString())); + } + } + }; + if (json.has("_fhirPathCriteria")) { + JsonArray array = json.getAsJsonArray("_fhirPathCriteria"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getFhirPathCriteria().size()) + res.getFhirPathCriteria().add(parseString(null)); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getFhirPathCriteria().get(i)); + } + }; + } + + protected SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent parseSubscriptionTopicResourceTriggerQueryCriteriaComponent(JsonObject json) throws IOException, FHIRFormatError { + SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent res = new SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent(); + parseSubscriptionTopicResourceTriggerQueryCriteriaComponentProperties(json, res); + return res; + } + + protected void parseSubscriptionTopicResourceTriggerQueryCriteriaComponentProperties(JsonObject json, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("previous")) + res.setPreviousElement(parseString(json.get("previous").getAsString())); + if (json.has("_previous")) + parseElementProperties(getJObject(json, "_previous"), res.getPreviousElement()); + if (json.has("current")) + res.setCurrentElement(parseString(json.get("current").getAsString())); + if (json.has("_current")) + parseElementProperties(getJObject(json, "_current"), res.getCurrentElement()); + if (json.has("requireBoth")) + res.setRequireBothElement(parseBoolean(json.get("requireBoth").getAsBoolean())); + if (json.has("_requireBoth")) + parseElementProperties(getJObject(json, "_requireBoth"), res.getRequireBothElement()); + } + + protected SubscriptionTopic.SubscriptionTopicCanFilterByComponent parseSubscriptionTopicCanFilterByComponent(JsonObject json) throws IOException, FHIRFormatError { + SubscriptionTopic.SubscriptionTopicCanFilterByComponent res = new SubscriptionTopic.SubscriptionTopicCanFilterByComponent(); + parseSubscriptionTopicCanFilterByComponentProperties(json, res); + return res; + } + + protected void parseSubscriptionTopicCanFilterByComponentProperties(JsonObject json, SubscriptionTopic.SubscriptionTopicCanFilterByComponent res) throws IOException, FHIRFormatError { + parseBackboneElementProperties(json, res); + if (json.has("searchParamName")) + res.setSearchParamNameElement(parseString(json.get("searchParamName").getAsString())); + if (json.has("_searchParamName")) + parseElementProperties(getJObject(json, "_searchParamName"), res.getSearchParamNameElement()); + if (json.has("searchModifier")) { + JsonArray array = json.getAsJsonArray("searchModifier"); + for (int i = 0; i < array.size(); i++) { + if (array.get(i).isJsonNull()) { + res.getSearchModifier().add(new Enumeration(new Enumerations.SubscriptionSearchModifierEnumFactory(), Enumerations.SubscriptionSearchModifier.NULL)); + } else {; + res.getSearchModifier().add(parseEnumeration(array.get(i).getAsString(), Enumerations.SubscriptionSearchModifier.NULL, new Enumerations.SubscriptionSearchModifierEnumFactory())); + } + } + }; + if (json.has("_searchModifier")) { + JsonArray array = json.getAsJsonArray("_searchModifier"); + for (int i = 0; i < array.size(); i++) { + if (i == res.getSearchModifier().size()) + res.getSearchModifier().add(parseEnumeration(null, Enumerations.SubscriptionSearchModifier.NULL, new Enumerations.SubscriptionSearchModifierEnumFactory())); + if (array.get(i) instanceof JsonObject) + parseElementProperties(array.get(i).getAsJsonObject(), res.getSearchModifier().get(i)); + } + }; + if (json.has("documentation")) + res.setDocumentationElement(parseMarkdown(json.get("documentation").getAsString())); + if (json.has("_documentation")) + parseElementProperties(getJObject(json, "_documentation"), res.getDocumentationElement()); + } + protected Substance parseSubstance(JsonObject json) throws IOException, FHIRFormatError { Substance res = new Substance(); parseSubstanceProperties(json, res); @@ -25584,10 +26961,10 @@ public class JsonParser extends JsonParserBase { }; if (json.has("molecularWeight")) res.setMolecularWeight(parseSubstanceDefinitionStructureIsotopeMolecularWeightComponent(getJObject(json, "molecularWeight"))); - if (json.has("sourceCoding")) { - JsonArray array = json.getAsJsonArray("sourceCoding"); + if (json.has("technique")) { + JsonArray array = json.getAsJsonArray("technique"); for (int i = 0; i < array.size(); i++) { - res.getSourceCoding().add(parseCoding(array.get(i).getAsJsonObject())); + res.getTechnique().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; if (json.has("sourceDocument")) { @@ -25654,6 +27031,8 @@ public class JsonParser extends JsonParserBase { res.setRepresentationElement(parseString(json.get("representation").getAsString())); if (json.has("_representation")) parseElementProperties(getJObject(json, "_representation"), res.getRepresentationElement()); + if (json.has("format")) + res.setFormat(parseCodeableConcept(getJObject(json, "format"))); if (json.has("attachment")) res.setAttachment(parseAttachment(getJObject(json, "attachment"))); } @@ -25922,6 +27301,8 @@ public class JsonParser extends JsonParserBase { protected void parseSubstancePolymerProperties(JsonObject json, SubstancePolymer res) throws IOException, FHIRFormatError { parseDomainResourceProperties(json, res); + if (json.has("identifier")) + res.setIdentifier(parseIdentifier(getJObject(json, "identifier"))); if (json.has("class")) res.setClass_(parseCodeableConcept(getJObject(json, "class"))); if (json.has("geometry")) @@ -25932,25 +27313,10 @@ public class JsonParser extends JsonParserBase { res.getCopolymerConnectivity().add(parseCodeableConcept(array.get(i).getAsJsonObject())); } }; - if (json.has("modification")) { - JsonArray array = json.getAsJsonArray("modification"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getModification().add(new StringType()); - } else {; - res.getModification().add(parseString(array.get(i).getAsString())); - } - } - }; - if (json.has("_modification")) { - JsonArray array = json.getAsJsonArray("_modification"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getModification().size()) - res.getModification().add(parseString(null)); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getModification().get(i)); - } - }; + if (json.has("modification")) + res.setModificationElement(parseString(json.get("modification").getAsString())); + if (json.has("_modification")) + parseElementProperties(getJObject(json, "_modification"), res.getModificationElement()); if (json.has("monomerSet")) { JsonArray array = json.getAsJsonArray("monomerSet"); for (int i = 0; i < array.size(); i++) { @@ -25991,10 +27357,10 @@ public class JsonParser extends JsonParserBase { protected void parseSubstancePolymerMonomerSetStartingMaterialComponentProperties(JsonObject json, SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - if (json.has("material")) - res.setMaterial(parseCodeableConcept(getJObject(json, "material"))); - if (json.has("type")) - res.setType(parseCodeableConcept(getJObject(json, "type"))); + if (json.has("code")) + res.setCode(parseCodeableConcept(getJObject(json, "code"))); + if (json.has("category")) + res.setCategory(parseCodeableConcept(getJObject(json, "category"))); if (json.has("isDefining")) res.setIsDefiningElement(parseBoolean(json.get("isDefining").getAsBoolean())); if (json.has("_isDefining")) @@ -26037,12 +27403,12 @@ public class JsonParser extends JsonParserBase { protected void parseSubstancePolymerRepeatRepeatUnitComponentProperties(JsonObject json, SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent res) throws IOException, FHIRFormatError { parseBackboneElementProperties(json, res); - if (json.has("orientationOfPolymerisation")) - res.setOrientationOfPolymerisation(parseCodeableConcept(getJObject(json, "orientationOfPolymerisation"))); - if (json.has("repeatUnit")) - res.setRepeatUnitElement(parseString(json.get("repeatUnit").getAsString())); - if (json.has("_repeatUnit")) - parseElementProperties(getJObject(json, "_repeatUnit"), res.getRepeatUnitElement()); + if (json.has("unit")) + res.setUnitElement(parseString(json.get("unit").getAsString())); + if (json.has("_unit")) + parseElementProperties(getJObject(json, "_unit"), res.getUnitElement()); + if (json.has("orientation")) + res.setOrientation(parseCodeableConcept(getJObject(json, "orientation"))); if (json.has("amount")) res.setAmount(parseSubstanceAmount(getJObject(json, "amount"))); if (json.has("degreeOfPolymerisation")) { @@ -26087,6 +27453,8 @@ public class JsonParser extends JsonParserBase { res.setRepresentationElement(parseString(json.get("representation").getAsString())); if (json.has("_representation")) parseElementProperties(getJObject(json, "_representation"), res.getRepresentationElement()); + if (json.has("format")) + res.setFormat(parseCodeableConcept(getJObject(json, "format"))); if (json.has("attachment")) res.setAttachment(parseAttachment(getJObject(json, "attachment"))); } @@ -26605,9 +27973,8 @@ public class JsonParser extends JsonParserBase { res.setPriorityElement(parseEnumeration(json.get("priority").getAsString(), Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); if (json.has("_priority")) parseElementProperties(getJObject(json, "_priority"), res.getPriorityElement()); - DataType item = parseType("item", json); - if (item != null) - res.setItem(item); + if (json.has("item")) + res.setItem(parseCodeableReference(getJObject(json, "item"))); if (json.has("quantity")) res.setQuantity(parseQuantity(getJObject(json, "quantity"))); if (json.has("parameter")) { @@ -28017,251 +29384,6 @@ public class JsonParser extends JsonParserBase { res.setOperation(parseTestScriptSetupActionOperationComponent(getJObject(json, "operation"))); } - protected Topic parseTopic(JsonObject json) throws IOException, FHIRFormatError { - Topic res = new Topic(); - parseTopicProperties(json, res); - return res; - } - - protected void parseTopicProperties(JsonObject json, Topic res) throws IOException, FHIRFormatError { - parseDomainResourceProperties(json, res); - if (json.has("url")) - res.setUrlElement(parseUri(json.get("url").getAsString())); - if (json.has("_url")) - parseElementProperties(getJObject(json, "_url"), res.getUrlElement()); - if (json.has("identifier")) { - JsonArray array = json.getAsJsonArray("identifier"); - for (int i = 0; i < array.size(); i++) { - res.getIdentifier().add(parseIdentifier(array.get(i).getAsJsonObject())); - } - }; - if (json.has("version")) - res.setVersionElement(parseString(json.get("version").getAsString())); - if (json.has("_version")) - parseElementProperties(getJObject(json, "_version"), res.getVersionElement()); - if (json.has("title")) - res.setTitleElement(parseString(json.get("title").getAsString())); - if (json.has("_title")) - parseElementProperties(getJObject(json, "_title"), res.getTitleElement()); - if (json.has("derivedFromCanonical")) { - JsonArray array = json.getAsJsonArray("derivedFromCanonical"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getDerivedFromCanonical().add(new CanonicalType()); - } else {; - res.getDerivedFromCanonical().add(parseCanonical(array.get(i).getAsString())); - } - } - }; - if (json.has("_derivedFromCanonical")) { - JsonArray array = json.getAsJsonArray("_derivedFromCanonical"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getDerivedFromCanonical().size()) - res.getDerivedFromCanonical().add(parseCanonical(null)); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getDerivedFromCanonical().get(i)); - } - }; - if (json.has("derivedFromUri")) { - JsonArray array = json.getAsJsonArray("derivedFromUri"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getDerivedFromUri().add(new UriType()); - } else {; - res.getDerivedFromUri().add(parseUri(array.get(i).getAsString())); - } - } - }; - if (json.has("_derivedFromUri")) { - JsonArray array = json.getAsJsonArray("_derivedFromUri"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getDerivedFromUri().size()) - res.getDerivedFromUri().add(parseUri(null)); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getDerivedFromUri().get(i)); - } - }; - if (json.has("status")) - res.setStatusElement(parseEnumeration(json.get("status").getAsString(), Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); - if (json.has("_status")) - parseElementProperties(getJObject(json, "_status"), res.getStatusElement()); - if (json.has("experimental")) - res.setExperimentalElement(parseBoolean(json.get("experimental").getAsBoolean())); - if (json.has("_experimental")) - parseElementProperties(getJObject(json, "_experimental"), res.getExperimentalElement()); - if (json.has("date")) - res.setDateElement(parseDateTime(json.get("date").getAsString())); - if (json.has("_date")) - parseElementProperties(getJObject(json, "_date"), res.getDateElement()); - if (json.has("publisher")) - res.setPublisher(parseReference(getJObject(json, "publisher"))); - if (json.has("contact")) { - JsonArray array = json.getAsJsonArray("contact"); - for (int i = 0; i < array.size(); i++) { - res.getContact().add(parseContactDetail(array.get(i).getAsJsonObject())); - } - }; - if (json.has("description")) - res.setDescriptionElement(parseMarkdown(json.get("description").getAsString())); - if (json.has("_description")) - parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); - if (json.has("useContext")) { - JsonArray array = json.getAsJsonArray("useContext"); - for (int i = 0; i < array.size(); i++) { - res.getUseContext().add(parseUsageContext(array.get(i).getAsJsonObject())); - } - }; - if (json.has("jurisdiction")) { - JsonArray array = json.getAsJsonArray("jurisdiction"); - for (int i = 0; i < array.size(); i++) { - res.getJurisdiction().add(parseCodeableConcept(array.get(i).getAsJsonObject())); - } - }; - if (json.has("purpose")) - res.setPurposeElement(parseMarkdown(json.get("purpose").getAsString())); - if (json.has("_purpose")) - parseElementProperties(getJObject(json, "_purpose"), res.getPurposeElement()); - if (json.has("copyright")) - res.setCopyrightElement(parseMarkdown(json.get("copyright").getAsString())); - if (json.has("_copyright")) - parseElementProperties(getJObject(json, "_copyright"), res.getCopyrightElement()); - if (json.has("approvalDate")) - res.setApprovalDateElement(parseDate(json.get("approvalDate").getAsString())); - if (json.has("_approvalDate")) - parseElementProperties(getJObject(json, "_approvalDate"), res.getApprovalDateElement()); - if (json.has("lastReviewDate")) - res.setLastReviewDateElement(parseDate(json.get("lastReviewDate").getAsString())); - if (json.has("_lastReviewDate")) - parseElementProperties(getJObject(json, "_lastReviewDate"), res.getLastReviewDateElement()); - if (json.has("effectivePeriod")) - res.setEffectivePeriod(parsePeriod(getJObject(json, "effectivePeriod"))); - if (json.has("resourceTrigger")) - res.setResourceTrigger(parseTopicResourceTriggerComponent(getJObject(json, "resourceTrigger"))); - if (json.has("canFilterBy")) { - JsonArray array = json.getAsJsonArray("canFilterBy"); - for (int i = 0; i < array.size(); i++) { - res.getCanFilterBy().add(parseTopicCanFilterByComponent(array.get(i).getAsJsonObject())); - } - }; - } - - protected Topic.TopicResourceTriggerComponent parseTopicResourceTriggerComponent(JsonObject json) throws IOException, FHIRFormatError { - Topic.TopicResourceTriggerComponent res = new Topic.TopicResourceTriggerComponent(); - parseTopicResourceTriggerComponentProperties(json, res); - return res; - } - - protected void parseTopicResourceTriggerComponentProperties(JsonObject json, Topic.TopicResourceTriggerComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); - if (json.has("description")) - res.setDescriptionElement(parseString(json.get("description").getAsString())); - if (json.has("_description")) - parseElementProperties(getJObject(json, "_description"), res.getDescriptionElement()); - if (json.has("resourceType")) { - JsonArray array = json.getAsJsonArray("resourceType"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getResourceType().add(new CodeType()); - } else {; - res.getResourceType().add(parseCode(array.get(i).getAsString())); - } - } - }; - if (json.has("_resourceType")) { - JsonArray array = json.getAsJsonArray("_resourceType"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getResourceType().size()) - res.getResourceType().add(parseCode(null)); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getResourceType().get(i)); - } - }; - if (json.has("methodCriteria")) { - JsonArray array = json.getAsJsonArray("methodCriteria"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getMethodCriteria().add(new Enumeration(new Topic.InteractionTriggerEnumFactory(), Topic.InteractionTrigger.NULL)); - } else {; - res.getMethodCriteria().add(parseEnumeration(array.get(i).getAsString(), Topic.InteractionTrigger.NULL, new Topic.InteractionTriggerEnumFactory())); - } - } - }; - if (json.has("_methodCriteria")) { - JsonArray array = json.getAsJsonArray("_methodCriteria"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getMethodCriteria().size()) - res.getMethodCriteria().add(parseEnumeration(null, Topic.InteractionTrigger.NULL, new Topic.InteractionTriggerEnumFactory())); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getMethodCriteria().get(i)); - } - }; - if (json.has("queryCriteria")) - res.setQueryCriteria(parseTopicResourceTriggerQueryCriteriaComponent(getJObject(json, "queryCriteria"))); - if (json.has("fhirPathCriteria")) - res.setFhirPathCriteriaElement(parseString(json.get("fhirPathCriteria").getAsString())); - if (json.has("_fhirPathCriteria")) - parseElementProperties(getJObject(json, "_fhirPathCriteria"), res.getFhirPathCriteriaElement()); - } - - protected Topic.TopicResourceTriggerQueryCriteriaComponent parseTopicResourceTriggerQueryCriteriaComponent(JsonObject json) throws IOException, FHIRFormatError { - Topic.TopicResourceTriggerQueryCriteriaComponent res = new Topic.TopicResourceTriggerQueryCriteriaComponent(); - parseTopicResourceTriggerQueryCriteriaComponentProperties(json, res); - return res; - } - - protected void parseTopicResourceTriggerQueryCriteriaComponentProperties(JsonObject json, Topic.TopicResourceTriggerQueryCriteriaComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); - if (json.has("previous")) - res.setPreviousElement(parseString(json.get("previous").getAsString())); - if (json.has("_previous")) - parseElementProperties(getJObject(json, "_previous"), res.getPreviousElement()); - if (json.has("current")) - res.setCurrentElement(parseString(json.get("current").getAsString())); - if (json.has("_current")) - parseElementProperties(getJObject(json, "_current"), res.getCurrentElement()); - if (json.has("requireBoth")) - res.setRequireBothElement(parseBoolean(json.get("requireBoth").getAsBoolean())); - if (json.has("_requireBoth")) - parseElementProperties(getJObject(json, "_requireBoth"), res.getRequireBothElement()); - } - - protected Topic.TopicCanFilterByComponent parseTopicCanFilterByComponent(JsonObject json) throws IOException, FHIRFormatError { - Topic.TopicCanFilterByComponent res = new Topic.TopicCanFilterByComponent(); - parseTopicCanFilterByComponentProperties(json, res); - return res; - } - - protected void parseTopicCanFilterByComponentProperties(JsonObject json, Topic.TopicCanFilterByComponent res) throws IOException, FHIRFormatError { - parseBackboneElementProperties(json, res); - if (json.has("name")) - res.setNameElement(parseString(json.get("name").getAsString())); - if (json.has("_name")) - parseElementProperties(getJObject(json, "_name"), res.getNameElement()); - if (json.has("matchType")) { - JsonArray array = json.getAsJsonArray("matchType"); - for (int i = 0; i < array.size(); i++) { - if (array.get(i).isJsonNull()) { - res.getMatchType().add(new Enumeration(new Topic.TopicFilterByMatchTypeEnumFactory(), Topic.TopicFilterByMatchType.NULL)); - } else {; - res.getMatchType().add(parseEnumeration(array.get(i).getAsString(), Topic.TopicFilterByMatchType.NULL, new Topic.TopicFilterByMatchTypeEnumFactory())); - } - } - }; - if (json.has("_matchType")) { - JsonArray array = json.getAsJsonArray("_matchType"); - for (int i = 0; i < array.size(); i++) { - if (i == res.getMatchType().size()) - res.getMatchType().add(parseEnumeration(null, Topic.TopicFilterByMatchType.NULL, new Topic.TopicFilterByMatchTypeEnumFactory())); - if (array.get(i) instanceof JsonObject) - parseElementProperties(array.get(i).getAsJsonObject(), res.getMatchType().get(i)); - } - }; - if (json.has("documentation")) - res.setDocumentationElement(parseMarkdown(json.get("documentation").getAsString())); - if (json.has("_documentation")) - parseElementProperties(getJObject(json, "_documentation"), res.getDocumentationElement()); - } - protected ValueSet parseValueSet(JsonObject json) throws IOException, FHIRFormatError { ValueSet res = new ValueSet(); parseValueSetProperties(json, res); @@ -29001,6 +30123,8 @@ public class JsonParser extends JsonParserBase { return parseChargeItem(json); } else if (t.equals("ChargeItemDefinition")) { return parseChargeItemDefinition(json); + } else if (t.equals("Citation")) { + return parseCitation(json); } else if (t.equals("Claim")) { return parseClaim(json); } else if (t.equals("ClaimResponse")) { @@ -29067,6 +30191,8 @@ public class JsonParser extends JsonParserBase { return parseEventDefinition(json); } else if (t.equals("Evidence")) { return parseEvidence(json); + } else if (t.equals("EvidenceFocus")) { + return parseEvidenceFocus(json); } else if (t.equals("EvidenceVariable")) { return parseEvidenceVariable(json); } else if (t.equals("ExampleScenario")) { @@ -29143,6 +30269,8 @@ public class JsonParser extends JsonParserBase { return parseNutritionIntake(json); } else if (t.equals("NutritionOrder")) { return parseNutritionOrder(json); + } else if (t.equals("NutritionProduct")) { + return parseNutritionProduct(json); } else if (t.equals("Observation")) { return parseObservation(json); } else if (t.equals("ObservationDefinition")) { @@ -29165,6 +30293,8 @@ public class JsonParser extends JsonParserBase { return parsePaymentNotice(json); } else if (t.equals("PaymentReconciliation")) { return parsePaymentReconciliation(json); + } else if (t.equals("Permission")) { + return parsePermission(json); } else if (t.equals("Person")) { return parsePerson(json); } else if (t.equals("PlanDefinition")) { @@ -29211,6 +30341,10 @@ public class JsonParser extends JsonParserBase { return parseStructureMap(json); } else if (t.equals("Subscription")) { return parseSubscription(json); + } else if (t.equals("SubscriptionStatus")) { + return parseSubscriptionStatus(json); + } else if (t.equals("SubscriptionTopic")) { + return parseSubscriptionTopic(json); } else if (t.equals("Substance")) { return parseSubstance(json); } else if (t.equals("SubstanceDefinition")) { @@ -29237,8 +30371,6 @@ public class JsonParser extends JsonParserBase { return parseTestReport(json); } else if (t.equals("TestScript")) { return parseTestScript(json); - } else if (t.equals("Topic")) { - return parseTopic(json); } else if (t.equals("ValueSet")) { return parseValueSet(json); } else if (t.equals("VerificationResult")) { @@ -29255,121 +30387,121 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"Date") || json.has("_"+prefix+"Date")) { DataType t = json.has(prefix+"Date") ? parseDate(json.get(prefix+"Date").getAsString()) : new DateType(); if (json.has("_"+prefix+"Date")) - parseElementProperties(getJObject(json, "_"+prefix+"Date"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Date"), t); return t; } else if (json.has(prefix+"DateTime") || json.has("_"+prefix+"DateTime")) { DataType t = json.has(prefix+"DateTime") ? parseDateTime(json.get(prefix+"DateTime").getAsString()) : new DateTimeType(); if (json.has("_"+prefix+"DateTime")) - parseElementProperties(getJObject(json, "_"+prefix+"DateTime"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"DateTime"), t); return t; } else if (json.has(prefix+"Code") || json.has("_"+prefix+"Code")) { DataType t = json.has(prefix+"Code") ? parseCode(json.get(prefix+"Code").getAsString()) : new CodeType(); if (json.has("_"+prefix+"Code")) - parseElementProperties(getJObject(json, "_"+prefix+"Code"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Code"), t); return t; } else if (json.has(prefix+"String") || json.has("_"+prefix+"String")) { DataType t = json.has(prefix+"String") ? parseString(json.get(prefix+"String").getAsString()) : new StringType(); if (json.has("_"+prefix+"String")) - parseElementProperties(getJObject(json, "_"+prefix+"String"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"String"), t); return t; } else if (json.has(prefix+"Integer") || json.has("_"+prefix+"Integer")) { DataType t = json.has(prefix+"Integer") ? parseInteger(json.get(prefix+"Integer").getAsLong()) : new IntegerType(); if (json.has("_"+prefix+"Integer")) - parseElementProperties(getJObject(json, "_"+prefix+"Integer"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Integer"), t); return t; } else if (json.has(prefix+"Integer64") || json.has("_"+prefix+"Integer64")) { DataType t = json.has(prefix+"Integer64") ? parseInteger64(json.get(prefix+"Integer64").getAsLong()) : new Integer64Type(); if (json.has("_"+prefix+"Integer64")) - parseElementProperties(getJObject(json, "_"+prefix+"Integer64"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Integer64"), t); return t; } else if (json.has(prefix+"Oid") || json.has("_"+prefix+"Oid")) { DataType t = json.has(prefix+"Oid") ? parseOid(json.get(prefix+"Oid").getAsString()) : new OidType(); if (json.has("_"+prefix+"Oid")) - parseElementProperties(getJObject(json, "_"+prefix+"Oid"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Oid"), t); return t; } else if (json.has(prefix+"Canonical") || json.has("_"+prefix+"Canonical")) { DataType t = json.has(prefix+"Canonical") ? parseCanonical(json.get(prefix+"Canonical").getAsString()) : new CanonicalType(); if (json.has("_"+prefix+"Canonical")) - parseElementProperties(getJObject(json, "_"+prefix+"Canonical"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Canonical"), t); return t; } else if (json.has(prefix+"Uri") || json.has("_"+prefix+"Uri")) { DataType t = json.has(prefix+"Uri") ? parseUri(json.get(prefix+"Uri").getAsString()) : new UriType(); if (json.has("_"+prefix+"Uri")) - parseElementProperties(getJObject(json, "_"+prefix+"Uri"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Uri"), t); return t; } else if (json.has(prefix+"Uuid") || json.has("_"+prefix+"Uuid")) { DataType t = json.has(prefix+"Uuid") ? parseUuid(json.get(prefix+"Uuid").getAsString()) : new UuidType(); if (json.has("_"+prefix+"Uuid")) - parseElementProperties(getJObject(json, "_"+prefix+"Uuid"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Uuid"), t); return t; } else if (json.has(prefix+"Url") || json.has("_"+prefix+"Url")) { DataType t = json.has(prefix+"Url") ? parseUrl(json.get(prefix+"Url").getAsString()) : new UrlType(); if (json.has("_"+prefix+"Url")) - parseElementProperties(getJObject(json, "_"+prefix+"Url"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Url"), t); return t; } else if (json.has(prefix+"Instant") || json.has("_"+prefix+"Instant")) { DataType t = json.has(prefix+"Instant") ? parseInstant(json.get(prefix+"Instant").getAsString()) : new InstantType(); if (json.has("_"+prefix+"Instant")) - parseElementProperties(getJObject(json, "_"+prefix+"Instant"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Instant"), t); return t; } else if (json.has(prefix+"Boolean") || json.has("_"+prefix+"Boolean")) { DataType t = json.has(prefix+"Boolean") ? parseBoolean(json.get(prefix+"Boolean").getAsBoolean()) : new BooleanType(); if (json.has("_"+prefix+"Boolean")) - parseElementProperties(getJObject(json, "_"+prefix+"Boolean"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Boolean"), t); return t; } else if (json.has(prefix+"Base64Binary") || json.has("_"+prefix+"Base64Binary")) { DataType t = json.has(prefix+"Base64Binary") ? parseBase64Binary(json.get(prefix+"Base64Binary").getAsString()) : new Base64BinaryType(); if (json.has("_"+prefix+"Base64Binary")) - parseElementProperties(getJObject(json, "_"+prefix+"Base64Binary"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Base64Binary"), t); return t; } else if (json.has(prefix+"UnsignedInt") || json.has("_"+prefix+"UnsignedInt")) { DataType t = json.has(prefix+"UnsignedInt") ? parseUnsignedInt(json.get(prefix+"UnsignedInt").getAsString()) : new UnsignedIntType(); if (json.has("_"+prefix+"UnsignedInt")) - parseElementProperties(getJObject(json, "_"+prefix+"UnsignedInt"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"UnsignedInt"), t); return t; } else if (json.has(prefix+"Markdown") || json.has("_"+prefix+"Markdown")) { DataType t = json.has(prefix+"Markdown") ? parseMarkdown(json.get(prefix+"Markdown").getAsString()) : new MarkdownType(); if (json.has("_"+prefix+"Markdown")) - parseElementProperties(getJObject(json, "_"+prefix+"Markdown"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Markdown"), t); return t; } else if (json.has(prefix+"Time") || json.has("_"+prefix+"Time")) { DataType t = json.has(prefix+"Time") ? parseTime(json.get(prefix+"Time").getAsString()) : new TimeType(); if (json.has("_"+prefix+"Time")) - parseElementProperties(getJObject(json, "_"+prefix+"Time"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Time"), t); return t; } else if (json.has(prefix+"Id") || json.has("_"+prefix+"Id")) { DataType t = json.has(prefix+"Id") ? parseId(json.get(prefix+"Id").getAsString()) : new IdType(); if (json.has("_"+prefix+"Id")) - parseElementProperties(getJObject(json, "_"+prefix+"Id"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Id"), t); return t; } else if (json.has(prefix+"PositiveInt") || json.has("_"+prefix+"PositiveInt")) { DataType t = json.has(prefix+"PositiveInt") ? parsePositiveInt(json.get(prefix+"PositiveInt").getAsString()) : new PositiveIntType(); if (json.has("_"+prefix+"PositiveInt")) - parseElementProperties(getJObject(json, "_"+prefix+"PositiveInt"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"PositiveInt"), t); return t; } else if (json.has(prefix+"Decimal") || json.has("_"+prefix+"Decimal")) { DataType t = json.has(prefix+"Decimal") ? parseDecimal(json.get(prefix+"Decimal").getAsBigDecimal()) : new DecimalType(); if (json.has("_"+prefix+"Decimal")) - parseElementProperties(getJObject(json, "_"+prefix+"Decimal"), t); + parseElementProperties(json.getAsJsonObject("_"+prefix+"Decimal"), t); return t; } else if (json.has(prefix+"Address")) { return parseAddress(getJObject(json, prefix+"Address")); @@ -29745,6 +30877,9 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"ChargeItemDefinition")) { return true; }; + if (json.has(prefix+"Citation")) { + return true; + }; if (json.has(prefix+"Claim")) { return true; }; @@ -29844,6 +30979,9 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"Evidence")) { return true; }; + if (json.has(prefix+"EvidenceFocus")) { + return true; + }; if (json.has(prefix+"EvidenceVariable")) { return true; }; @@ -29958,6 +31096,9 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"NutritionOrder")) { return true; }; + if (json.has(prefix+"NutritionProduct")) { + return true; + }; if (json.has(prefix+"Observation")) { return true; }; @@ -29991,6 +31132,9 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"PaymentReconciliation")) { return true; }; + if (json.has(prefix+"Permission")) { + return true; + }; if (json.has(prefix+"Person")) { return true; }; @@ -30060,6 +31204,12 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"Subscription")) { return true; }; + if (json.has(prefix+"SubscriptionStatus")) { + return true; + }; + if (json.has(prefix+"SubscriptionTopic")) { + return true; + }; if (json.has(prefix+"Substance")) { return true; }; @@ -30099,9 +31249,6 @@ public class JsonParser extends JsonParserBase { if (json.has(prefix+"TestScript")) { return true; }; - if (json.has(prefix+"Topic")) { - return true; - }; if (json.has(prefix+"ValueSet")) { return true; }; @@ -33108,10 +34255,10 @@ public class JsonParser extends JsonParserBase { composeReference(null, e); closeArray(); }; - if (element.hasCharacteristic()) { - openArray("characteristic"); - for (AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent e : element.getCharacteristic()) - composeAdministrableProductDefinitionCharacteristicComponent(null, e); + if (element.hasProperty()) { + openArray("property"); + for (AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent e : element.getProperty()) + composeAdministrableProductDefinitionPropertyComponent(null, e); closeArray(); }; if (element.hasRouteOfAdministration()) { @@ -33122,18 +34269,18 @@ public class JsonParser extends JsonParserBase { }; } - protected void composeAdministrableProductDefinitionCharacteristicComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent element) throws IOException { + protected void composeAdministrableProductDefinitionPropertyComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element) throws IOException { if (element != null) { open(name); - composeAdministrableProductDefinitionCharacteristicComponentProperties(element); + composeAdministrableProductDefinitionPropertyComponentProperties(element); close(); } } - protected void composeAdministrableProductDefinitionCharacteristicComponentProperties(AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent element) throws IOException { + protected void composeAdministrableProductDefinitionPropertyComponentProperties(AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element) throws IOException { composeBackboneElementProperties(element); - if (element.hasCode()) { - composeCodeableConcept("code", element.getCode()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { composeType("value", element.getValue()); @@ -33796,13 +34943,8 @@ public class JsonParser extends JsonParserBase { composeInstantCore("recorded", element.getRecordedElement(), false); composeInstantExtras("recorded", element.getRecordedElement(), false); } - if (element.hasOutcomeElement()) { - composeEnumerationCore("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory(), false); - composeEnumerationExtras("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory(), false); - } - if (element.hasOutcomeDescElement()) { - composeStringCore("outcomeDesc", element.getOutcomeDescElement(), false); - composeStringExtras("outcomeDesc", element.getOutcomeDescElement(), false); + if (element.hasOutcome()) { + composeCodeableConcept("outcome", element.getOutcome()); } if (element.hasPurposeOfEvent()) { openArray("purposeOfEvent"); @@ -35677,7 +36819,7 @@ public class JsonParser extends JsonParserBase { composeType("scheduled", element.getScheduled()); } if (element.hasLocation()) { - composeReference("location", element.getLocation()); + composeCodeableReference("location", element.getLocation()); } if (element.hasReported()) { composeType("reported", element.getReported()); @@ -36261,6 +37403,715 @@ public class JsonParser extends JsonParserBase { } } + protected void composeCitation(String name, Citation element) throws IOException { + if (element != null) { + prop("resourceType", name); + composeCitationProperties(element); + } + } + + protected void composeCitationProperties(Citation element) throws IOException { + composeMetadataResourceProperties(element); + if (element.hasUrlElement()) { + composeUriCore("url", element.getUrlElement(), false); + composeUriExtras("url", element.getUrlElement(), false); + } + if (element.hasVersionElement()) { + composeStringCore("version", element.getVersionElement(), false); + composeStringExtras("version", element.getVersionElement(), false); + } + if (element.hasStatusElement()) { + composeEnumerationCore("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); + } + if (element.hasUseContext()) { + openArray("useContext"); + for (UsageContext e : element.getUseContext()) + composeUsageContext(null, e); + closeArray(); + }; + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasRelatedIdentifier()) { + openArray("relatedIdentifier"); + for (Identifier e : element.getRelatedIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasDateCitedElement()) { + composeDateTimeCore("dateCited", element.getDateCitedElement(), false); + composeDateTimeExtras("dateCited", element.getDateCitedElement(), false); + } + if (element.hasVariantCitation()) { + composeCitationVariantCitationComponent("variantCitation", element.getVariantCitation()); + } + if (element.hasPublishingModel()) { + composeCodeableConcept("publishingModel", element.getPublishingModel()); + } + if (element.hasJournal()) { + composeCitationJournalComponent("journal", element.getJournal()); + } + if (element.hasArticleTitleElement()) { + composeMarkdownCore("articleTitle", element.getArticleTitleElement(), false); + composeMarkdownExtras("articleTitle", element.getArticleTitleElement(), false); + } + if (element.hasAlternativeTitle()) { + openArray("alternativeTitle"); + for (Citation.CitationAlternativeTitleComponent e : element.getAlternativeTitle()) + composeCitationAlternativeTitleComponent(null, e); + closeArray(); + }; + if (element.hasPagination()) { + composeCitationPaginationComponent("pagination", element.getPagination()); + } + if (element.hasArticleUrl()) { + openArray("articleUrl"); + for (Citation.CitationArticleUrlComponent e : element.getArticleUrl()) + composeCitationArticleUrlComponent(null, e); + closeArray(); + }; + if (element.hasAbstractElement()) { + composeMarkdownCore("abstract", element.getAbstractElement(), false); + composeMarkdownExtras("abstract", element.getAbstractElement(), false); + } + if (element.hasAbstractCopyrightElement()) { + composeMarkdownCore("abstractCopyright", element.getAbstractCopyrightElement(), false); + composeMarkdownExtras("abstractCopyright", element.getAbstractCopyrightElement(), false); + } + if (element.hasAlternativeAbstract()) { + openArray("alternativeAbstract"); + for (Citation.CitationAlternativeAbstractComponent e : element.getAlternativeAbstract()) + composeCitationAlternativeAbstractComponent(null, e); + closeArray(); + }; + if (element.hasAuthorList()) { + composeCitationAuthorListComponent("authorList", element.getAuthorList()); + } + if (element.hasAuthorString()) { + openArray("authorString"); + for (Citation.CitationAuthorStringComponent e : element.getAuthorString()) + composeCitationAuthorStringComponent(null, e); + closeArray(); + }; + if (element.hasContributorList()) { + composeCitationContributorListComponent("contributorList", element.getContributorList()); + } + if (element.hasArticleLanguage()) { + composeCodeableConcept("articleLanguage", element.getArticleLanguage()); + } + if (element.hasAlternativeForm()) { + openArray("alternativeForm"); + for (Citation.CitationAlternativeFormComponent e : element.getAlternativeForm()) + composeCitationAlternativeFormComponent(null, e); + closeArray(); + }; + if (element.hasClassifier()) { + openArray("classifier"); + for (CodeableConcept e : element.getClassifier()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasRelatedArtifact()) { + openArray("relatedArtifact"); + for (RelatedArtifact e : element.getRelatedArtifact()) + composeRelatedArtifact(null, e); + closeArray(); + }; + if (element.hasNote()) { + openArray("note"); + for (Annotation e : element.getNote()) + composeAnnotation(null, e); + closeArray(); + }; + if (element.hasMedlinePubMed()) { + composeCitationMedlinePubMedComponent("medlinePubMed", element.getMedlinePubMed()); + } + } + + protected void composeCitationVariantCitationComponent(String name, Citation.CitationVariantCitationComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationVariantCitationComponentProperties(element); + close(); + } + } + + protected void composeCitationVariantCitationComponentProperties(Citation.CitationVariantCitationComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasValueElement()) { + composeStringCore("value", element.getValueElement(), false); + composeStringExtras("value", element.getValueElement(), false); + } + if (element.hasBaseCitation()) { + composeReference("baseCitation", element.getBaseCitation()); + } + } + + protected void composeCitationJournalComponent(String name, Citation.CitationJournalComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationJournalComponentProperties(element); + close(); + } + } + + protected void composeCitationJournalComponentProperties(Citation.CitationJournalComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasCountryElement()) { + composeStringCore("country", element.getCountryElement(), false); + composeStringExtras("country", element.getCountryElement(), false); + } + if (element.hasJournalIssue()) { + composeCitationJournalJournalIssueComponent("journalIssue", element.getJournalIssue()); + } + if (element.hasTitleElement()) { + composeStringCore("title", element.getTitleElement(), false); + composeStringExtras("title", element.getTitleElement(), false); + } + } + + protected void composeCitationJournalJournalIssueComponent(String name, Citation.CitationJournalJournalIssueComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationJournalJournalIssueComponentProperties(element); + close(); + } + } + + protected void composeCitationJournalJournalIssueComponentProperties(Citation.CitationJournalJournalIssueComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasCitedMedium()) { + composeCodeableConcept("citedMedium", element.getCitedMedium()); + } + if (element.hasVolumeElement()) { + composeStringCore("volume", element.getVolumeElement(), false); + composeStringExtras("volume", element.getVolumeElement(), false); + } + if (element.hasIssueElement()) { + composeStringCore("issue", element.getIssueElement(), false); + composeStringExtras("issue", element.getIssueElement(), false); + } + if (element.hasPublicationDateElement()) { + composeStringCore("publicationDate", element.getPublicationDateElement(), false); + composeStringExtras("publicationDate", element.getPublicationDateElement(), false); + } + } + + protected void composeCitationAlternativeTitleComponent(String name, Citation.CitationAlternativeTitleComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAlternativeTitleComponentProperties(element); + close(); + } + } + + protected void composeCitationAlternativeTitleComponentProperties(Citation.CitationAlternativeTitleComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasLanguage()) { + composeCodeableConcept("language", element.getLanguage()); + } + if (element.hasTitleElement()) { + composeMarkdownCore("title", element.getTitleElement(), false); + composeMarkdownExtras("title", element.getTitleElement(), false); + } + } + + protected void composeCitationPaginationComponent(String name, Citation.CitationPaginationComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationPaginationComponentProperties(element); + close(); + } + } + + protected void composeCitationPaginationComponentProperties(Citation.CitationPaginationComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasPageStringElement()) { + composeStringCore("pageString", element.getPageStringElement(), false); + composeStringExtras("pageString", element.getPageStringElement(), false); + } + if (element.hasFirstPageElement()) { + composeStringCore("firstPage", element.getFirstPageElement(), false); + composeStringExtras("firstPage", element.getFirstPageElement(), false); + } + if (element.hasLastPageElement()) { + composeStringCore("lastPage", element.getLastPageElement(), false); + composeStringExtras("lastPage", element.getLastPageElement(), false); + } + } + + protected void composeCitationArticleUrlComponent(String name, Citation.CitationArticleUrlComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationArticleUrlComponentProperties(element); + close(); + } + } + + protected void composeCitationArticleUrlComponentProperties(Citation.CitationArticleUrlComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasUrlElement()) { + composeUriCore("url", element.getUrlElement(), false); + composeUriExtras("url", element.getUrlElement(), false); + } + } + + protected void composeCitationAlternativeAbstractComponent(String name, Citation.CitationAlternativeAbstractComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAlternativeAbstractComponentProperties(element); + close(); + } + } + + protected void composeCitationAlternativeAbstractComponentProperties(Citation.CitationAlternativeAbstractComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasLanguage()) { + composeCodeableConcept("language", element.getLanguage()); + } + if (element.hasAbstractElement()) { + composeMarkdownCore("abstract", element.getAbstractElement(), false); + composeMarkdownExtras("abstract", element.getAbstractElement(), false); + } + if (element.hasAbstractCopyrightElement()) { + composeMarkdownCore("abstractCopyright", element.getAbstractCopyrightElement(), false); + composeMarkdownExtras("abstractCopyright", element.getAbstractCopyrightElement(), false); + } + } + + protected void composeCitationAuthorListComponent(String name, Citation.CitationAuthorListComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAuthorListComponentProperties(element); + close(); + } + } + + protected void composeCitationAuthorListComponentProperties(Citation.CitationAuthorListComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasCompleteElement()) { + composeBooleanCore("complete", element.getCompleteElement(), false); + composeBooleanExtras("complete", element.getCompleteElement(), false); + } + if (element.hasAuthor()) { + openArray("author"); + for (Citation.CitationAuthorListAuthorComponent e : element.getAuthor()) + composeCitationAuthorListAuthorComponent(null, e); + closeArray(); + }; + } + + protected void composeCitationAuthorListAuthorComponent(String name, Citation.CitationAuthorListAuthorComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAuthorListAuthorComponentProperties(element); + close(); + } + } + + protected void composeCitationAuthorListAuthorComponentProperties(Citation.CitationAuthorListAuthorComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasLastNameElement()) { + composeStringCore("lastName", element.getLastNameElement(), false); + composeStringExtras("lastName", element.getLastNameElement(), false); + } + if (element.hasForeNameElement()) { + composeStringCore("foreName", element.getForeNameElement(), false); + composeStringExtras("foreName", element.getForeNameElement(), false); + } + if (element.hasSuffixElement()) { + composeStringCore("suffix", element.getSuffixElement(), false); + composeStringExtras("suffix", element.getSuffixElement(), false); + } + if (element.hasInitialsElement()) { + composeStringCore("initials", element.getInitialsElement(), false); + composeStringExtras("initials", element.getInitialsElement(), false); + } + if (element.hasCollectiveNameElement()) { + composeStringCore("collectiveName", element.getCollectiveNameElement(), false); + composeStringExtras("collectiveName", element.getCollectiveNameElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasAffiliationInfo()) { + openArray("affiliationInfo"); + for (Citation.CitationAuthorListAuthorAffiliationInfoComponent e : element.getAffiliationInfo()) + composeCitationAuthorListAuthorAffiliationInfoComponent(null, e); + closeArray(); + }; + if (element.hasAddress()) { + openArray("address"); + for (StringType e : element.getAddress()) + composeStringCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getAddress())) { + openArray("_address"); + for (StringType e : element.getAddress()) + composeStringExtras(null, e, true); + closeArray(); + } + }; + if (element.hasTelecom()) { + openArray("telecom"); + for (ContactPoint e : element.getTelecom()) + composeContactPoint(null, e); + closeArray(); + }; + if (element.hasCorrespondingAuthorElement()) { + composeBooleanCore("correspondingAuthor", element.getCorrespondingAuthorElement(), false); + composeBooleanExtras("correspondingAuthor", element.getCorrespondingAuthorElement(), false); + } + if (element.hasListOrderElement()) { + composePositiveIntCore("listOrder", element.getListOrderElement(), false); + composePositiveIntExtras("listOrder", element.getListOrderElement(), false); + } + } + + protected void composeCitationAuthorListAuthorAffiliationInfoComponent(String name, Citation.CitationAuthorListAuthorAffiliationInfoComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAuthorListAuthorAffiliationInfoComponentProperties(element); + close(); + } + } + + protected void composeCitationAuthorListAuthorAffiliationInfoComponentProperties(Citation.CitationAuthorListAuthorAffiliationInfoComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasAffiliationElement()) { + composeStringCore("affiliation", element.getAffiliationElement(), false); + composeStringExtras("affiliation", element.getAffiliationElement(), false); + } + if (element.hasRoleElement()) { + composeStringCore("role", element.getRoleElement(), false); + composeStringExtras("role", element.getRoleElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + } + + protected void composeCitationAuthorStringComponent(String name, Citation.CitationAuthorStringComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAuthorStringComponentProperties(element); + close(); + } + } + + protected void composeCitationAuthorStringComponentProperties(Citation.CitationAuthorStringComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasSource()) { + composeCodeableConcept("source", element.getSource()); + } + if (element.hasValueElement()) { + composeStringCore("value", element.getValueElement(), false); + composeStringExtras("value", element.getValueElement(), false); + } + } + + protected void composeCitationContributorListComponent(String name, Citation.CitationContributorListComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationContributorListComponentProperties(element); + close(); + } + } + + protected void composeCitationContributorListComponentProperties(Citation.CitationContributorListComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasCompleteElement()) { + composeBooleanCore("complete", element.getCompleteElement(), false); + composeBooleanExtras("complete", element.getCompleteElement(), false); + } + if (element.hasContributor()) { + openArray("contributor"); + for (Citation.CitationContributorListContributorComponent e : element.getContributor()) + composeCitationContributorListContributorComponent(null, e); + closeArray(); + }; + } + + protected void composeCitationContributorListContributorComponent(String name, Citation.CitationContributorListContributorComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationContributorListContributorComponentProperties(element); + close(); + } + } + + protected void composeCitationContributorListContributorComponentProperties(Citation.CitationContributorListContributorComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasLastNameElement()) { + composeStringCore("lastName", element.getLastNameElement(), false); + composeStringExtras("lastName", element.getLastNameElement(), false); + } + if (element.hasForeNameElement()) { + composeStringCore("foreName", element.getForeNameElement(), false); + composeStringExtras("foreName", element.getForeNameElement(), false); + } + if (element.hasSuffixElement()) { + composeStringCore("suffix", element.getSuffixElement(), false); + composeStringExtras("suffix", element.getSuffixElement(), false); + } + if (element.hasInitialsElement()) { + composeStringCore("initials", element.getInitialsElement(), false); + composeStringExtras("initials", element.getInitialsElement(), false); + } + if (element.hasCollectiveNameElement()) { + composeStringCore("collectiveName", element.getCollectiveNameElement(), false); + composeStringExtras("collectiveName", element.getCollectiveNameElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasContribution()) { + openArray("contribution"); + for (CodeableConcept e : element.getContribution()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasAffiliationInfo()) { + openArray("affiliationInfo"); + for (Citation.CitationContributorListContributorAffiliationInfoComponent e : element.getAffiliationInfo()) + composeCitationContributorListContributorAffiliationInfoComponent(null, e); + closeArray(); + }; + if (element.hasListOrderElement()) { + composePositiveIntCore("listOrder", element.getListOrderElement(), false); + composePositiveIntExtras("listOrder", element.getListOrderElement(), false); + } + } + + protected void composeCitationContributorListContributorAffiliationInfoComponent(String name, Citation.CitationContributorListContributorAffiliationInfoComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationContributorListContributorAffiliationInfoComponentProperties(element); + close(); + } + } + + protected void composeCitationContributorListContributorAffiliationInfoComponentProperties(Citation.CitationContributorListContributorAffiliationInfoComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasAffiliationElement()) { + composeStringCore("affiliation", element.getAffiliationElement(), false); + composeStringExtras("affiliation", element.getAffiliationElement(), false); + } + if (element.hasRoleElement()) { + composeStringCore("role", element.getRoleElement(), false); + composeStringExtras("role", element.getRoleElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + } + + protected void composeCitationAlternativeFormComponent(String name, Citation.CitationAlternativeFormComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAlternativeFormComponentProperties(element); + close(); + } + } + + protected void composeCitationAlternativeFormComponentProperties(Citation.CitationAlternativeFormComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasPublishingModel()) { + composeCodeableConcept("publishingModel", element.getPublishingModel()); + } + if (element.hasLanguage()) { + composeCodeableConcept("language", element.getLanguage()); + } + if (element.hasJournalIssue()) { + composeCitationAlternativeFormJournalIssueComponent("journalIssue", element.getJournalIssue()); + } + if (element.hasPagination()) { + composeCitationAlternativeFormPaginationComponent("pagination", element.getPagination()); + } + } + + protected void composeCitationAlternativeFormJournalIssueComponent(String name, Citation.CitationAlternativeFormJournalIssueComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAlternativeFormJournalIssueComponentProperties(element); + close(); + } + } + + protected void composeCitationAlternativeFormJournalIssueComponentProperties(Citation.CitationAlternativeFormJournalIssueComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasCitedMedium()) { + composeCodeableConcept("citedMedium", element.getCitedMedium()); + } + if (element.hasVolumeElement()) { + composeStringCore("volume", element.getVolumeElement(), false); + composeStringExtras("volume", element.getVolumeElement(), false); + } + if (element.hasIssueElement()) { + composeStringCore("issue", element.getIssueElement(), false); + composeStringExtras("issue", element.getIssueElement(), false); + } + if (element.hasPublicationDateElement()) { + composeStringCore("publicationDate", element.getPublicationDateElement(), false); + composeStringExtras("publicationDate", element.getPublicationDateElement(), false); + } + } + + protected void composeCitationAlternativeFormPaginationComponent(String name, Citation.CitationAlternativeFormPaginationComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationAlternativeFormPaginationComponentProperties(element); + close(); + } + } + + protected void composeCitationAlternativeFormPaginationComponentProperties(Citation.CitationAlternativeFormPaginationComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasPageStringElement()) { + composeStringCore("pageString", element.getPageStringElement(), false); + composeStringExtras("pageString", element.getPageStringElement(), false); + } + if (element.hasFirstPageElement()) { + composeStringCore("firstPage", element.getFirstPageElement(), false); + composeStringExtras("firstPage", element.getFirstPageElement(), false); + } + if (element.hasLastPageElement()) { + composeStringCore("lastPage", element.getLastPageElement(), false); + composeStringExtras("lastPage", element.getLastPageElement(), false); + } + } + + protected void composeCitationMedlinePubMedComponent(String name, Citation.CitationMedlinePubMedComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationMedlinePubMedComponentProperties(element); + close(); + } + } + + protected void composeCitationMedlinePubMedComponentProperties(Citation.CitationMedlinePubMedComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasMedlineState()) { + composeCodeableConcept("medlineState", element.getMedlineState()); + } + if (element.hasOwner()) { + composeCodeableConcept("owner", element.getOwner()); + } + if (element.hasPmidElement()) { + composePositiveIntCore("pmid", element.getPmidElement(), false); + composePositiveIntExtras("pmid", element.getPmidElement(), false); + } + if (element.hasPmidVersionElement()) { + composePositiveIntCore("pmidVersion", element.getPmidVersionElement(), false); + composePositiveIntExtras("pmidVersion", element.getPmidVersionElement(), false); + } + if (element.hasDateCreatedElement()) { + composeDateCore("dateCreated", element.getDateCreatedElement(), false); + composeDateExtras("dateCreated", element.getDateCreatedElement(), false); + } + if (element.hasDateCompletedElement()) { + composeDateCore("dateCompleted", element.getDateCompletedElement(), false); + composeDateExtras("dateCompleted", element.getDateCompletedElement(), false); + } + if (element.hasDateRevisedElement()) { + composeDateCore("dateRevised", element.getDateRevisedElement(), false); + composeDateExtras("dateRevised", element.getDateRevisedElement(), false); + } + if (element.hasPubMedPubDate()) { + openArray("pubMedPubDate"); + for (Citation.CitationMedlinePubMedPubMedPubDateComponent e : element.getPubMedPubDate()) + composeCitationMedlinePubMedPubMedPubDateComponent(null, e); + closeArray(); + }; + if (element.hasPublicationState()) { + composeCodeableConcept("publicationState", element.getPublicationState()); + } + if (element.hasRelatedArticle()) { + openArray("relatedArticle"); + for (Citation.CitationMedlinePubMedRelatedArticleComponent e : element.getRelatedArticle()) + composeCitationMedlinePubMedRelatedArticleComponent(null, e); + closeArray(); + }; + } + + protected void composeCitationMedlinePubMedPubMedPubDateComponent(String name, Citation.CitationMedlinePubMedPubMedPubDateComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationMedlinePubMedPubMedPubDateComponentProperties(element); + close(); + } + } + + protected void composeCitationMedlinePubMedPubMedPubDateComponentProperties(Citation.CitationMedlinePubMedPubMedPubDateComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasPublicationState()) { + composeCodeableConcept("publicationState", element.getPublicationState()); + } + if (element.hasDateElement()) { + composeDateTimeCore("date", element.getDateElement(), false); + composeDateTimeExtras("date", element.getDateElement(), false); + } + } + + protected void composeCitationMedlinePubMedRelatedArticleComponent(String name, Citation.CitationMedlinePubMedRelatedArticleComponent element) throws IOException { + if (element != null) { + open(name); + composeCitationMedlinePubMedRelatedArticleComponentProperties(element); + close(); + } + } + + protected void composeCitationMedlinePubMedRelatedArticleComponentProperties(Citation.CitationMedlinePubMedRelatedArticleComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasCitationReference()) { + composeReference("citationReference", element.getCitationReference()); + } + if (element.hasCitationMarkdownElement()) { + composeMarkdownCore("citationMarkdown", element.getCitationMarkdownElement(), false); + composeMarkdownExtras("citationMarkdown", element.getCitationMarkdownElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + } + protected void composeClaim(String name, Claim element) throws IOException { if (element != null) { prop("resourceType", name); @@ -37626,6 +39477,9 @@ public class JsonParser extends JsonParserBase { composeEnumerationCore("type", element.getTypeElement(), new ClinicalUseIssue.ClinicalUseIssueTypeEnumFactory(), false); composeEnumerationExtras("type", element.getTypeElement(), new ClinicalUseIssue.ClinicalUseIssueTypeEnumFactory(), false); } + if (element.hasCategory()) { + composeCodeableConcept("category", element.getCategory()); + } if (element.hasSubject()) { openArray("subject"); for (Reference e : element.getSubject()) @@ -39326,8 +41180,8 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept(null, e); closeArray(); }; - if (element.hasPatient()) { - composeReference("patient", element.getPatient()); + if (element.hasSubject()) { + composeReference("subject", element.getSubject()); } if (element.hasDateTimeElement()) { composeDateTimeCore("dateTime", element.getDateTimeElement(), false); @@ -41064,6 +42918,10 @@ public class JsonParser extends JsonParserBase { composeIdentifier(null, e); closeArray(); }; + if (element.hasDisplayNameElement()) { + composeStringCore("displayName", element.getDisplayNameElement(), false); + composeStringExtras("displayName", element.getDisplayNameElement(), false); + } if (element.hasDefinition()) { composeReference("definition", element.getDefinition()); } @@ -41122,8 +42980,11 @@ public class JsonParser extends JsonParserBase { composeStringExtras("partNumber", element.getPartNumberElement(), false); } if (element.hasType()) { - composeCodeableConcept("type", element.getType()); - } + openArray("type"); + for (CodeableConcept e : element.getType()) + composeCodeableConcept(null, e); + closeArray(); + }; if (element.hasSpecialization()) { openArray("specialization"); for (Device.DeviceSpecializationComponent e : element.getSpecialization()) @@ -41145,6 +43006,12 @@ public class JsonParser extends JsonParserBase { if (element.hasPatient()) { composeReference("patient", element.getPatient()); } + if (element.hasOperationalStatus()) { + composeDeviceOperationalStatusComponent("operationalStatus", element.getOperationalStatus()); + } + if (element.hasAssociationStatus()) { + composeDeviceAssociationStatusComponent("associationStatus", element.getAssociationStatus()); + } if (element.hasOwner()) { composeReference("owner", element.getOwner()); } @@ -41302,6 +43169,48 @@ public class JsonParser extends JsonParserBase { }; } + protected void composeDeviceOperationalStatusComponent(String name, Device.DeviceOperationalStatusComponent element) throws IOException { + if (element != null) { + open(name); + composeDeviceOperationalStatusComponentProperties(element); + close(); + } + } + + protected void composeDeviceOperationalStatusComponentProperties(Device.DeviceOperationalStatusComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasValue()) { + composeCodeableConcept("value", element.getValue()); + } + if (element.hasReason()) { + openArray("reason"); + for (CodeableConcept e : element.getReason()) + composeCodeableConcept(null, e); + closeArray(); + }; + } + + protected void composeDeviceAssociationStatusComponent(String name, Device.DeviceAssociationStatusComponent element) throws IOException { + if (element != null) { + open(name); + composeDeviceAssociationStatusComponentProperties(element); + close(); + } + } + + protected void composeDeviceAssociationStatusComponentProperties(Device.DeviceAssociationStatusComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasValue()) { + composeCodeableConcept("value", element.getValue()); + } + if (element.hasReason()) { + openArray("reason"); + for (CodeableConcept e : element.getReason()) + composeCodeableConcept(null, e); + closeArray(); + }; + } + protected void composeDeviceDefinition(String name, DeviceDefinition element) throws IOException { if (element != null) { prop("resourceType", name); @@ -41399,10 +43308,6 @@ public class JsonParser extends JsonParserBase { composeContactPoint(null, e); closeArray(); }; - if (element.hasUrlElement()) { - composeUriCore("url", element.getUrlElement(), false); - composeUriExtras("url", element.getUrlElement(), false); - } if (element.hasOnlineInformationElement()) { composeUriCore("onlineInformation", element.getOnlineInformationElement(), false); composeUriExtras("onlineInformation", element.getOnlineInformationElement(), false); @@ -41703,7 +43608,7 @@ public class JsonParser extends JsonParserBase { composeEnumerationExtras("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory(), false); } if (element.hasCode()) { - composeType("code", element.getCode()); + composeCodeableReference("code", element.getCode()); } if (element.hasParameter()) { openArray("parameter"); @@ -41808,6 +43713,12 @@ public class JsonParser extends JsonParserBase { composeEnumerationCore("status", element.getStatusElement(), new DeviceUseStatement.DeviceUseStatementStatusEnumFactory(), false); composeEnumerationExtras("status", element.getStatusElement(), new DeviceUseStatement.DeviceUseStatementStatusEnumFactory(), false); } + if (element.hasCategory()) { + openArray("category"); + for (CodeableConcept e : element.getCategory()) + composeCodeableConcept(null, e); + closeArray(); + }; if (element.hasSubject()) { composeReference("subject", element.getSubject()); } @@ -41817,18 +43728,30 @@ public class JsonParser extends JsonParserBase { composeReference(null, e); closeArray(); }; + if (element.hasContext()) { + composeReference("context", element.getContext()); + } if (element.hasTiming()) { composeType("timing", element.getTiming()); } - if (element.hasRecordedOnElement()) { - composeDateTimeCore("recordedOn", element.getRecordedOnElement(), false); - composeDateTimeExtras("recordedOn", element.getRecordedOnElement(), false); + if (element.hasDateAssertedElement()) { + composeDateTimeCore("dateAsserted", element.getDateAssertedElement(), false); + composeDateTimeExtras("dateAsserted", element.getDateAssertedElement(), false); } - if (element.hasSource()) { - composeReference("source", element.getSource()); + if (element.hasUsageStatus()) { + composeCodeableConcept("usageStatus", element.getUsageStatus()); + } + if (element.hasUsageReason()) { + openArray("usageReason"); + for (CodeableConcept e : element.getUsageReason()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasInformationSource()) { + composeReference("informationSource", element.getInformationSource()); } if (element.hasDevice()) { - composeReference("device", element.getDevice()); + composeCodeableReference("device", element.getDevice()); } if (element.hasReason()) { openArray("reason"); @@ -41837,7 +43760,7 @@ public class JsonParser extends JsonParserBase { closeArray(); }; if (element.hasBodySite()) { - composeCodeableConcept("bodySite", element.getBodySite()); + composeCodeableReference("bodySite", element.getBodySite()); } if (element.hasNote()) { openArray("note"); @@ -42971,9 +44894,6 @@ public class JsonParser extends JsonParserBase { composeAnnotation(null, e); closeArray(); }; - if (element.hasReferentGroup()) { - composeEvidenceReferentGroupComponent("referentGroup", element.getReferentGroup()); - } if (element.hasVariableDefinition()) { openArray("variableDefinition"); for (Evidence.EvidenceVariableDefinitionComponent e : element.getVariableDefinition()) @@ -43006,37 +44926,6 @@ public class JsonParser extends JsonParserBase { }; } - protected void composeEvidenceReferentGroupComponent(String name, Evidence.EvidenceReferentGroupComponent element) throws IOException { - if (element != null) { - open(name); - composeEvidenceReferentGroupComponentProperties(element); - close(); - } - } - - protected void composeEvidenceReferentGroupComponentProperties(Evidence.EvidenceReferentGroupComponent element) throws IOException { - composeBackboneElementProperties(element); - if (element.hasDescriptionElement()) { - composeMarkdownCore("description", element.getDescriptionElement(), false); - composeMarkdownExtras("description", element.getDescriptionElement(), false); - } - if (element.hasNote()) { - openArray("note"); - for (Annotation e : element.getNote()) - composeAnnotation(null, e); - closeArray(); - }; - if (element.hasEvidenceSource()) { - composeReference("evidenceSource", element.getEvidenceSource()); - } - if (element.hasIntendedGroup()) { - composeReference("intendedGroup", element.getIntendedGroup()); - } - if (element.hasDirectnessMatch()) { - composeCodeableConcept("directnessMatch", element.getDirectnessMatch()); - } - } - protected void composeEvidenceVariableDefinitionComponent(String name, Evidence.EvidenceVariableDefinitionComponent element) throws IOException { if (element != null) { open(name); @@ -43060,11 +44949,11 @@ public class JsonParser extends JsonParserBase { if (element.hasVariableRole()) { composeCodeableConcept("variableRole", element.getVariableRole()); } - if (element.hasActualDefinition()) { - composeReference("actualDefinition", element.getActualDefinition()); + if (element.hasObserved()) { + composeReference("observed", element.getObserved()); } - if (element.hasIntendedDefinition()) { - composeReference("intendedDefinition", element.getIntendedDefinition()); + if (element.hasIntended()) { + composeReference("intended", element.getIntended()); } if (element.hasDirectnessMatch()) { composeCodeableConcept("directnessMatch", element.getDirectnessMatch()); @@ -43133,6 +45022,99 @@ public class JsonParser extends JsonParserBase { }; } + protected void composeEvidenceFocus(String name, EvidenceFocus element) throws IOException { + if (element != null) { + prop("resourceType", name); + composeEvidenceFocusProperties(element); + } + } + + protected void composeEvidenceFocusProperties(EvidenceFocus element) throws IOException { + composeMetadataResourceProperties(element); + if (element.hasUrlElement()) { + composeUriCore("url", element.getUrlElement(), false); + composeUriExtras("url", element.getUrlElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasVersionElement()) { + composeStringCore("version", element.getVersionElement(), false); + composeStringExtras("version", element.getVersionElement(), false); + } + if (element.hasNameElement()) { + composeStringCore("name", element.getNameElement(), false); + composeStringExtras("name", element.getNameElement(), false); + } + if (element.hasStatusElement()) { + composeEnumerationCore("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); + } + if (element.hasUseContext()) { + openArray("useContext"); + for (UsageContext e : element.getUseContext()) + composeUsageContext(null, e); + closeArray(); + }; + if (element.hasDateElement()) { + composeDateTimeCore("date", element.getDateElement(), false); + composeDateTimeExtras("date", element.getDateElement(), false); + } + if (element.hasNote()) { + openArray("note"); + for (Annotation e : element.getNote()) + composeAnnotation(null, e); + closeArray(); + }; + if (element.hasCopyrightElement()) { + composeMarkdownCore("copyright", element.getCopyrightElement(), false); + composeMarkdownExtras("copyright", element.getCopyrightElement(), false); + } + if (element.hasCiteAs()) { + composeReference("citeAs", element.getCiteAs()); + } + if (element.hasCharacteristic()) { + openArray("characteristic"); + for (EvidenceFocus.EvidenceFocusCharacteristicComponent e : element.getCharacteristic()) + composeEvidenceFocusCharacteristicComponent(null, e); + closeArray(); + }; + if (element.hasRelatedArtifact()) { + openArray("relatedArtifact"); + for (RelatedArtifact e : element.getRelatedArtifact()) + composeRelatedArtifact(null, e); + closeArray(); + }; + } + + protected void composeEvidenceFocusCharacteristicComponent(String name, EvidenceFocus.EvidenceFocusCharacteristicComponent element) throws IOException { + if (element != null) { + open(name); + composeEvidenceFocusCharacteristicComponentProperties(element); + close(); + } + } + + protected void composeEvidenceFocusCharacteristicComponentProperties(EvidenceFocus.EvidenceFocusCharacteristicComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); + } + if (element.hasValue()) { + composeType("value", element.getValue()); + } + if (element.hasExcludeElement()) { + composeBooleanCore("exclude", element.getExcludeElement(), false); + composeBooleanExtras("exclude", element.getExcludeElement(), false); + } + if (element.hasPeriod()) { + composePeriod("period", element.getPeriod()); + } + } + protected void composeEvidenceVariable(String name, EvidenceVariable element) throws IOException { if (element != null) { prop("resourceType", name); @@ -43271,6 +45253,10 @@ public class JsonParser extends JsonParserBase { composeBooleanCore("actual", element.getActualElement(), false); composeBooleanExtras("actual", element.getActualElement(), false); } + if (element.hasCharacteristicCombinationElement()) { + composeEnumerationCore("characteristicCombination", element.getCharacteristicCombinationElement(), new EvidenceVariable.CharacteristicCombinationEnumFactory(), false); + composeEnumerationExtras("characteristicCombination", element.getCharacteristicCombinationElement(), new EvidenceVariable.CharacteristicCombinationEnumFactory(), false); + } if (element.hasCharacteristic()) { openArray("characteristic"); for (EvidenceVariable.EvidenceVariableCharacteristicComponent e : element.getCharacteristic()) @@ -43302,27 +45288,12 @@ public class JsonParser extends JsonParserBase { if (element.hasDevice()) { composeReference("device", element.getDevice()); } - if (element.hasBooleanSet()) { - openArray("booleanSet"); - for (StringType e : element.getBooleanSet()) - composeStringCore(null, e, true); - closeArray(); - if (anyHasExtras(element.getBooleanSet())) { - openArray("_booleanSet"); - for (StringType e : element.getBooleanSet()) - composeStringExtras(null, e, true); - closeArray(); - } - }; if (element.hasExcludeElement()) { composeBooleanCore("exclude", element.getExcludeElement(), false); composeBooleanExtras("exclude", element.getExcludeElement(), false); } - if (element.hasParticipantEffective()) { - composeType("participantEffective", element.getParticipantEffective()); - } if (element.hasTimeFromStart()) { - composeDuration("timeFromStart", element.getTimeFromStart()); + composeEvidenceVariableCharacteristicTimeFromStartComponent("timeFromStart", element.getTimeFromStart()); } if (element.hasGroupMeasureElement()) { composeEnumerationCore("groupMeasure", element.getGroupMeasureElement(), new EvidenceVariable.GroupMeasureEnumFactory(), false); @@ -43330,6 +45301,34 @@ public class JsonParser extends JsonParserBase { } } + protected void composeEvidenceVariableCharacteristicTimeFromStartComponent(String name, EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent element) throws IOException { + if (element != null) { + open(name); + composeEvidenceVariableCharacteristicTimeFromStartComponentProperties(element); + close(); + } + } + + protected void composeEvidenceVariableCharacteristicTimeFromStartComponentProperties(EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasDescriptionElement()) { + composeStringCore("description", element.getDescriptionElement(), false); + composeStringExtras("description", element.getDescriptionElement(), false); + } + if (element.hasQuantity()) { + composeQuantity("quantity", element.getQuantity()); + } + if (element.hasRange()) { + composeRange("range", element.getRange()); + } + if (element.hasNote()) { + openArray("note"); + for (Annotation e : element.getNote()) + composeAnnotation(null, e); + closeArray(); + }; + } + protected void composeExampleScenario(String name, ExampleScenario element) throws IOException { if (element != null) { prop("resourceType", name); @@ -46108,11 +48107,13 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept(null, e); closeArray(); }; - if (element.hasDoseNumber()) { - composeType("doseNumber", element.getDoseNumber()); + if (element.hasDoseNumberElement()) { + composeStringCore("doseNumber", element.getDoseNumberElement(), false); + composeStringExtras("doseNumber", element.getDoseNumberElement(), false); } - if (element.hasSeriesDoses()) { - composeType("seriesDoses", element.getSeriesDoses()); + if (element.hasSeriesDosesElement()) { + composeStringCore("seriesDoses", element.getSeriesDosesElement(), false); + composeStringExtras("seriesDoses", element.getSeriesDosesElement(), false); } } @@ -46168,11 +48169,13 @@ public class JsonParser extends JsonParserBase { composeStringCore("series", element.getSeriesElement(), false); composeStringExtras("series", element.getSeriesElement(), false); } - if (element.hasDoseNumber()) { - composeType("doseNumber", element.getDoseNumber()); + if (element.hasDoseNumberElement()) { + composeStringCore("doseNumber", element.getDoseNumberElement(), false); + composeStringExtras("doseNumber", element.getDoseNumberElement(), false); } - if (element.hasSeriesDoses()) { - composeType("seriesDoses", element.getSeriesDoses()); + if (element.hasSeriesDosesElement()) { + composeStringCore("seriesDoses", element.getSeriesDosesElement(), false); + composeStringExtras("seriesDoses", element.getSeriesDosesElement(), false); } } @@ -46260,11 +48263,13 @@ public class JsonParser extends JsonParserBase { composeStringCore("series", element.getSeriesElement(), false); composeStringExtras("series", element.getSeriesElement(), false); } - if (element.hasDoseNumber()) { - composeType("doseNumber", element.getDoseNumber()); + if (element.hasDoseNumberElement()) { + composeStringCore("doseNumber", element.getDoseNumberElement(), false); + composeStringExtras("doseNumber", element.getDoseNumberElement(), false); } - if (element.hasSeriesDoses()) { - composeType("seriesDoses", element.getSeriesDoses()); + if (element.hasSeriesDosesElement()) { + composeStringCore("seriesDoses", element.getSeriesDosesElement(), false); + composeStringExtras("seriesDoses", element.getSeriesDosesElement(), false); } if (element.hasSupportingImmunization()) { openArray("supportingImmunization"); @@ -46745,6 +48750,16 @@ public class JsonParser extends JsonParserBase { if (element.hasRole()) { composeCodeableConcept("role", element.getRole()); } + if (element.hasFunction()) { + openArray("function"); + for (CodeableConcept e : element.getFunction()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasDescriptionElement()) { + composeMarkdownCore("description", element.getDescriptionElement(), false); + composeMarkdownExtras("description", element.getDescriptionElement(), false); + } if (element.hasAllergenicIndicatorElement()) { composeBooleanCore("allergenicIndicator", element.getAllergenicIndicatorElement(), false); composeBooleanExtras("allergenicIndicator", element.getAllergenicIndicatorElement(), false); @@ -46809,12 +48824,20 @@ public class JsonParser extends JsonParserBase { if (element.hasPresentationHighLimit()) { composeRatio("presentationHighLimit", element.getPresentationHighLimit()); } + if (element.hasPresentationTextElement()) { + composeStringCore("presentationText", element.getPresentationTextElement(), false); + composeStringExtras("presentationText", element.getPresentationTextElement(), false); + } if (element.hasConcentration()) { composeRatio("concentration", element.getConcentration()); } if (element.hasConcentrationHighLimit()) { composeRatio("concentrationHighLimit", element.getConcentrationHighLimit()); } + if (element.hasConcentrationTextElement()) { + composeStringCore("concentrationText", element.getConcentrationTextElement(), false); + composeStringExtras("concentrationText", element.getConcentrationTextElement(), false); + } if (element.hasMeasurementPointElement()) { composeStringCore("measurementPoint", element.getMeasurementPointElement(), false); composeStringExtras("measurementPoint", element.getMeasurementPointElement(), false); @@ -47831,26 +49854,26 @@ public class JsonParser extends JsonParserBase { composeReference(null, e); closeArray(); }; - if (element.hasCharacteristic()) { - openArray("characteristic"); - for (ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent e : element.getCharacteristic()) - composeManufacturedItemDefinitionCharacteristicComponent(null, e); + if (element.hasProperty()) { + openArray("property"); + for (ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent e : element.getProperty()) + composeManufacturedItemDefinitionPropertyComponent(null, e); closeArray(); }; } - protected void composeManufacturedItemDefinitionCharacteristicComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent element) throws IOException { + protected void composeManufacturedItemDefinitionPropertyComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element) throws IOException { if (element != null) { open(name); - composeManufacturedItemDefinitionCharacteristicComponentProperties(element); + composeManufacturedItemDefinitionPropertyComponentProperties(element); close(); } } - protected void composeManufacturedItemDefinitionCharacteristicComponentProperties(ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent element) throws IOException { + protected void composeManufacturedItemDefinitionPropertyComponentProperties(ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element) throws IOException { composeBackboneElementProperties(element); - if (element.hasCode()) { - composeCodeableConcept("code", element.getCode()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { composeType("value", element.getValue()); @@ -48456,7 +50479,7 @@ public class JsonParser extends JsonParserBase { protected void composeMedicationIngredientComponentProperties(Medication.MedicationIngredientComponent element) throws IOException { composeBackboneElementProperties(element); if (element.hasItem()) { - composeType("item", element.getItem()); + composeCodeableReference("item", element.getItem()); } if (element.hasIsActiveElement()) { composeBooleanCore("isActive", element.getIsActiveElement(), false); @@ -48555,7 +50578,7 @@ public class JsonParser extends JsonParserBase { closeArray(); }; if (element.hasMedication()) { - composeType("medication", element.getMedication()); + composeCodeableReference("medication", element.getMedication()); } if (element.hasSubject()) { composeReference("subject", element.getSubject()); @@ -48695,7 +50718,7 @@ public class JsonParser extends JsonParserBase { composeEnumerationExtras("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusCodesEnumFactory(), false); } if (element.hasStatusReason()) { - composeType("statusReason", element.getStatusReason()); + composeCodeableReference("statusReason", element.getStatusReason()); } if (element.hasCategory()) { openArray("category"); @@ -48704,7 +50727,7 @@ public class JsonParser extends JsonParserBase { closeArray(); }; if (element.hasMedication()) { - composeType("medication", element.getMedication()); + composeCodeableReference("medication", element.getMedication()); } if (element.hasSubject()) { composeReference("subject", element.getSubject()); @@ -49030,7 +51053,7 @@ public class JsonParser extends JsonParserBase { protected void composeMedicationKnowledgeIngredientComponentProperties(MedicationKnowledge.MedicationKnowledgeIngredientComponent element) throws IOException { composeBackboneElementProperties(element); if (element.hasItem()) { - composeType("item", element.getItem()); + composeCodeableReference("item", element.getItem()); } if (element.hasIsActiveElement()) { composeBooleanCore("isActive", element.getIsActiveElement(), false); @@ -49099,7 +51122,7 @@ public class JsonParser extends JsonParserBase { closeArray(); }; if (element.hasIndication()) { - composeType("indication", element.getIndication()); + composeCodeableReference("indication", element.getIndication()); } if (element.hasPatientCharacteristic()) { openArray("patientCharacteristic"); @@ -49140,21 +51163,12 @@ public class JsonParser extends JsonParserBase { protected void composeMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponentProperties(MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent element) throws IOException { composeBackboneElementProperties(element); - if (element.hasCharacteristic()) { - composeType("characteristic", element.getCharacteristic()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { - openArray("value"); - for (StringType e : element.getValue()) - composeStringCore(null, e, true); - closeArray(); - if (anyHasExtras(element.getValue())) { - openArray("_value"); - for (StringType e : element.getValue()) - composeStringExtras(null, e, true); - closeArray(); - } - }; + composeType("value", element.getValue()); + } } protected void composeMedicationKnowledgeMedicineClassificationComponent(String name, MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent element) throws IOException { @@ -49359,7 +51373,7 @@ public class JsonParser extends JsonParserBase { composeReference("informationSource", element.getInformationSource()); } if (element.hasMedication()) { - composeType("medication", element.getMedication()); + composeCodeableReference("medication", element.getMedication()); } if (element.hasSubject()) { composeReference("subject", element.getSubject()); @@ -49590,7 +51604,7 @@ public class JsonParser extends JsonParserBase { closeArray(); }; if (element.hasMedication()) { - composeType("medication", element.getMedication()); + composeCodeableReference("medication", element.getMedication()); } if (element.hasSubject()) { composeReference("subject", element.getSubject()); @@ -49661,14 +51675,18 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept("type", element.getType()); } if (element.hasDomain()) { - composeCoding("domain", element.getDomain()); + composeCodeableConcept("domain", element.getDomain()); } if (element.hasVersionElement()) { composeStringCore("version", element.getVersionElement(), false); composeStringExtras("version", element.getVersionElement(), false); } if (element.hasStatus()) { - composeCoding("status", element.getStatus()); + composeCodeableConcept("status", element.getStatus()); + } + if (element.hasStatusDateElement()) { + composeDateTimeCore("statusDate", element.getStatusDateElement(), false); + composeDateTimeExtras("statusDate", element.getStatusDateElement(), false); } if (element.hasDescriptionElement()) { composeMarkdownCore("description", element.getDescriptionElement(), false); @@ -49702,6 +51720,12 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept(null, e); closeArray(); }; + if (element.hasCharacteristic()) { + openArray("characteristic"); + for (CodeableConcept e : element.getCharacteristic()) + composeCodeableConcept(null, e); + closeArray(); + }; if (element.hasMarketingStatus()) { openArray("marketingStatus"); for (MarketingStatus e : element.getMarketingStatus()) @@ -49803,7 +51827,7 @@ public class JsonParser extends JsonParserBase { composeStringExtras("productName", element.getProductNameElement(), false); } if (element.hasType()) { - composeCoding("type", element.getType()); + composeCodeableConcept("type", element.getType()); } if (element.hasNamePart()) { openArray("namePart"); @@ -49834,7 +51858,7 @@ public class JsonParser extends JsonParserBase { composeStringExtras("part", element.getPartElement(), false); } if (element.hasType()) { - composeCoding("type", element.getType()); + composeCodeableConcept("type", element.getType()); } } @@ -49873,7 +51897,7 @@ public class JsonParser extends JsonParserBase { composeType("product", element.getProduct()); } if (element.hasType()) { - composeCoding("type", element.getType()); + composeCodeableConcept("type", element.getType()); } } @@ -49888,7 +51912,7 @@ public class JsonParser extends JsonParserBase { protected void composeMedicinalProductDefinitionManufacturingBusinessOperationComponentProperties(MedicinalProductDefinition.MedicinalProductDefinitionManufacturingBusinessOperationComponent element) throws IOException { composeBackboneElementProperties(element); if (element.hasType()) { - composeType("type", element.getType()); + composeCodeableReference("type", element.getType()); } if (element.hasEffectiveDate()) { composePeriod("effectiveDate", element.getEffectiveDate()); @@ -50782,6 +52806,30 @@ public class JsonParser extends JsonParserBase { composeIdentifier(null, e); closeArray(); }; + if (element.hasInstantiatesCanonical()) { + openArray("instantiatesCanonical"); + for (CanonicalType e : element.getInstantiatesCanonical()) + composeCanonicalCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getInstantiatesCanonical())) { + openArray("_instantiatesCanonical"); + for (CanonicalType e : element.getInstantiatesCanonical()) + composeCanonicalExtras(null, e, true); + closeArray(); + } + }; + if (element.hasInstantiatesUri()) { + openArray("instantiatesUri"); + for (UriType e : element.getInstantiatesUri()) + composeUriCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getInstantiatesUri())) { + openArray("_instantiatesUri"); + for (UriType e : element.getInstantiatesUri()) + composeUriExtras(null, e, true); + closeArray(); + } + }; if (element.hasBasedOn()) { openArray("basedOn"); for (Reference e : element.getBasedOn()) @@ -50795,8 +52843,8 @@ public class JsonParser extends JsonParserBase { closeArray(); }; if (element.hasStatusElement()) { - composeEnumerationCore("status", element.getStatusElement(), new NutritionIntake.NutritionIntakeStatusCodesEnumFactory(), false); - composeEnumerationExtras("status", element.getStatusElement(), new NutritionIntake.NutritionIntakeStatusCodesEnumFactory(), false); + composeEnumerationCore("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory(), false); } if (element.hasStatusReason()) { openArray("statusReason"); @@ -50804,12 +52852,25 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept(null, e); closeArray(); }; - if (element.hasCategory()) { - openArray("category"); - for (CodeableConcept e : element.getCategory()) - composeCodeableConcept(null, e); - closeArray(); - }; + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); + } + if (element.hasSubject()) { + composeReference("subject", element.getSubject()); + } + if (element.hasEncounter()) { + composeReference("encounter", element.getEncounter()); + } + if (element.hasOccurrence()) { + composeType("occurrence", element.getOccurrence()); + } + if (element.hasRecordedElement()) { + composeDateTimeCore("recorded", element.getRecordedElement(), false); + composeDateTimeExtras("recorded", element.getRecordedElement(), false); + } + if (element.hasReported()) { + composeType("reported", element.getReported()); + } if (element.hasConsumedItem()) { openArray("consumedItem"); for (NutritionIntake.NutritionIntakeConsumedItemComponent e : element.getConsumedItem()) @@ -50822,21 +52883,14 @@ public class JsonParser extends JsonParserBase { composeNutritionIntakeIngredientLabelComponent(null, e); closeArray(); }; - if (element.hasSubject()) { - composeReference("subject", element.getSubject()); - } - if (element.hasEncounter()) { - composeReference("encounter", element.getEncounter()); - } - if (element.hasEffective()) { - composeType("effective", element.getEffective()); - } - if (element.hasDateAssertedElement()) { - composeDateTimeCore("dateAsserted", element.getDateAssertedElement(), false); - composeDateTimeExtras("dateAsserted", element.getDateAssertedElement(), false); - } - if (element.hasInformationSource()) { - composeReference("informationSource", element.getInformationSource()); + if (element.hasPerformer()) { + openArray("performer"); + for (NutritionIntake.NutritionIntakePerformerComponent e : element.getPerformer()) + composeNutritionIntakePerformerComponent(null, e); + closeArray(); + }; + if (element.hasLocation()) { + composeReference("location", element.getLocation()); } if (element.hasDerivedFrom()) { openArray("derivedFrom"); @@ -50844,9 +52898,9 @@ public class JsonParser extends JsonParserBase { composeReference(null, e); closeArray(); }; - if (element.hasReasonCode()) { - openArray("reasonCode"); - for (CodeableReference e : element.getReasonCode()) + if (element.hasReason()) { + openArray("reason"); + for (CodeableReference e : element.getReason()) composeCodeableReference(null, e); closeArray(); }; @@ -50872,7 +52926,7 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept("type", element.getType()); } if (element.hasNutritionProduct()) { - composeCodeableConcept("nutritionProduct", element.getNutritionProduct()); + composeCodeableReference("nutritionProduct", element.getNutritionProduct()); } if (element.hasSchedule()) { composeTiming("schedule", element.getSchedule()); @@ -50903,13 +52957,31 @@ public class JsonParser extends JsonParserBase { protected void composeNutritionIntakeIngredientLabelComponentProperties(NutritionIntake.NutritionIntakeIngredientLabelComponent element) throws IOException { composeBackboneElementProperties(element); if (element.hasNutrient()) { - composeCodeableConcept("nutrient", element.getNutrient()); + composeCodeableReference("nutrient", element.getNutrient()); } if (element.hasAmount()) { composeQuantity("amount", element.getAmount()); } } + protected void composeNutritionIntakePerformerComponent(String name, NutritionIntake.NutritionIntakePerformerComponent element) throws IOException { + if (element != null) { + open(name); + composeNutritionIntakePerformerComponentProperties(element); + close(); + } + } + + protected void composeNutritionIntakePerformerComponentProperties(NutritionIntake.NutritionIntakePerformerComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasFunction()) { + composeCodeableConcept("function", element.getFunction()); + } + if (element.hasActor()) { + composeReference("actor", element.getActor()); + } + } + protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { if (element != null) { prop("resourceType", name); @@ -51200,6 +53272,162 @@ public class JsonParser extends JsonParserBase { } } + protected void composeNutritionProduct(String name, NutritionProduct element) throws IOException { + if (element != null) { + prop("resourceType", name); + composeNutritionProductProperties(element); + } + } + + protected void composeNutritionProductProperties(NutritionProduct element) throws IOException { + composeDomainResourceProperties(element); + if (element.hasStatusElement()) { + composeEnumerationCore("status", element.getStatusElement(), new NutritionProduct.NutritionProductStatusEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new NutritionProduct.NutritionProductStatusEnumFactory(), false); + } + if (element.hasCategory()) { + openArray("category"); + for (CodeableConcept e : element.getCategory()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); + } + if (element.hasManufacturer()) { + openArray("manufacturer"); + for (Reference e : element.getManufacturer()) + composeReference(null, e); + closeArray(); + }; + if (element.hasNutrient()) { + openArray("nutrient"); + for (NutritionProduct.NutritionProductNutrientComponent e : element.getNutrient()) + composeNutritionProductNutrientComponent(null, e); + closeArray(); + }; + if (element.hasIngredient()) { + openArray("ingredient"); + for (NutritionProduct.NutritionProductIngredientComponent e : element.getIngredient()) + composeNutritionProductIngredientComponent(null, e); + closeArray(); + }; + if (element.hasKnownAllergen()) { + openArray("knownAllergen"); + for (CodeableReference e : element.getKnownAllergen()) + composeCodeableReference(null, e); + closeArray(); + }; + if (element.hasProductCharacteristic()) { + openArray("productCharacteristic"); + for (NutritionProduct.NutritionProductProductCharacteristicComponent e : element.getProductCharacteristic()) + composeNutritionProductProductCharacteristicComponent(null, e); + closeArray(); + }; + if (element.hasInstance()) { + composeNutritionProductInstanceComponent("instance", element.getInstance()); + } + if (element.hasNote()) { + openArray("note"); + for (Annotation e : element.getNote()) + composeAnnotation(null, e); + closeArray(); + }; + } + + protected void composeNutritionProductNutrientComponent(String name, NutritionProduct.NutritionProductNutrientComponent element) throws IOException { + if (element != null) { + open(name); + composeNutritionProductNutrientComponentProperties(element); + close(); + } + } + + protected void composeNutritionProductNutrientComponentProperties(NutritionProduct.NutritionProductNutrientComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasItem()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasAmount()) { + openArray("amount"); + for (Ratio e : element.getAmount()) + composeRatio(null, e); + closeArray(); + }; + } + + protected void composeNutritionProductIngredientComponent(String name, NutritionProduct.NutritionProductIngredientComponent element) throws IOException { + if (element != null) { + open(name); + composeNutritionProductIngredientComponentProperties(element); + close(); + } + } + + protected void composeNutritionProductIngredientComponentProperties(NutritionProduct.NutritionProductIngredientComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasItem()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasAmount()) { + openArray("amount"); + for (Ratio e : element.getAmount()) + composeRatio(null, e); + closeArray(); + }; + } + + protected void composeNutritionProductProductCharacteristicComponent(String name, NutritionProduct.NutritionProductProductCharacteristicComponent element) throws IOException { + if (element != null) { + open(name); + composeNutritionProductProductCharacteristicComponentProperties(element); + close(); + } + } + + protected void composeNutritionProductProductCharacteristicComponentProperties(NutritionProduct.NutritionProductProductCharacteristicComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasValue()) { + composeType("value", element.getValue()); + } + } + + protected void composeNutritionProductInstanceComponent(String name, NutritionProduct.NutritionProductInstanceComponent element) throws IOException { + if (element != null) { + open(name); + composeNutritionProductInstanceComponentProperties(element); + close(); + } + } + + protected void composeNutritionProductInstanceComponentProperties(NutritionProduct.NutritionProductInstanceComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasQuantity()) { + composeQuantity("quantity", element.getQuantity()); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasLotNumberElement()) { + composeStringCore("lotNumber", element.getLotNumberElement(), false); + composeStringExtras("lotNumber", element.getLotNumberElement(), false); + } + if (element.hasExpiryElement()) { + composeDateTimeCore("expiry", element.getExpiryElement(), false); + composeDateTimeExtras("expiry", element.getExpiryElement(), false); + } + if (element.hasUseByElement()) { + composeDateTimeCore("useBy", element.getUseByElement(), false); + composeDateTimeExtras("useBy", element.getUseByElement(), false); + } + } + protected void composeObservation(String name, Observation element) throws IOException { if (element != null) { prop("resourceType", name); @@ -52198,15 +54426,26 @@ public class JsonParser extends JsonParserBase { composeIdentifier(null, e); closeArray(); }; + if (element.hasNameElement()) { + composeStringCore("name", element.getNameElement(), false); + composeStringExtras("name", element.getNameElement(), false); + } if (element.hasSubject()) { openArray("subject"); for (Reference e : element.getSubject()) composeReference(null, e); closeArray(); }; + if (element.hasStatus()) { + composeCodeableConcept("status", element.getStatus()); + } + if (element.hasStatusDateElement()) { + composeDateTimeCore("statusDate", element.getStatusDateElement(), false); + composeDateTimeExtras("statusDate", element.getStatusDateElement(), false); + } if (element.hasDescriptionElement()) { - composeStringCore("description", element.getDescriptionElement(), false); - composeStringExtras("description", element.getDescriptionElement(), false); + composeMarkdownCore("description", element.getDescriptionElement(), false); + composeMarkdownExtras("description", element.getDescriptionElement(), false); } if (element.hasLegalStatusOfSupply()) { composeCodeableConcept("legalStatusOfSupply", element.getLegalStatusOfSupply()); @@ -52217,6 +54456,12 @@ public class JsonParser extends JsonParserBase { composeMarketingStatus(null, e); closeArray(); }; + if (element.hasCharacteristic()) { + openArray("characteristic"); + for (CodeableConcept e : element.getCharacteristic()) + composeCodeableConcept(null, e); + closeArray(); + }; if (element.hasCopackagedIndicatorElement()) { composeBooleanCore("copackagedIndicator", element.getCopackagedIndicatorElement(), false); composeBooleanExtras("copackagedIndicator", element.getCopackagedIndicatorElement(), false); @@ -52281,8 +54526,9 @@ public class JsonParser extends JsonParserBase { if (element.hasType()) { composeCodeableConcept("type", element.getType()); } - if (element.hasQuantity()) { - composeQuantity("quantity", element.getQuantity()); + if (element.hasQuantityElement()) { + composeIntegerCore("quantity", element.getQuantityElement(), false); + composeIntegerExtras("quantity", element.getQuantityElement(), false); } if (element.hasMaterial()) { openArray("material"); @@ -52308,10 +54554,10 @@ public class JsonParser extends JsonParserBase { composeReference(null, e); closeArray(); }; - if (element.hasCharacteristic()) { - openArray("characteristic"); - for (PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent e : element.getCharacteristic()) - composePackagedProductDefinitionPackageCharacteristicComponent(null, e); + if (element.hasProperty()) { + openArray("property"); + for (PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent e : element.getProperty()) + composePackagedProductDefinitionPackagePropertyComponent(null, e); closeArray(); }; if (element.hasContainedItem()) { @@ -52328,18 +54574,18 @@ public class JsonParser extends JsonParserBase { }; } - protected void composePackagedProductDefinitionPackageCharacteristicComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent element) throws IOException { + protected void composePackagedProductDefinitionPackagePropertyComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent element) throws IOException { if (element != null) { open(name); - composePackagedProductDefinitionPackageCharacteristicComponentProperties(element); + composePackagedProductDefinitionPackagePropertyComponentProperties(element); close(); } } - protected void composePackagedProductDefinitionPackageCharacteristicComponentProperties(PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent element) throws IOException { + protected void composePackagedProductDefinitionPackagePropertyComponentProperties(PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent element) throws IOException { composeBackboneElementProperties(element); - if (element.hasCode()) { - composeCodeableConcept("code", element.getCode()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { composeType("value", element.getValue()); @@ -52767,6 +55013,123 @@ public class JsonParser extends JsonParserBase { } } + protected void composePermission(String name, Permission element) throws IOException { + if (element != null) { + prop("resourceType", name); + composePermissionProperties(element); + } + } + + protected void composePermissionProperties(Permission element) throws IOException { + composeDomainResourceProperties(element); + if (element.hasStatusElement()) { + composeEnumerationCore("status", element.getStatusElement(), new Permission.PermissionStatusEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Permission.PermissionStatusEnumFactory(), false); + } + if (element.hasIntent()) { + composeCodeableConcept("intent", element.getIntent()); + } + if (element.hasAsserter()) { + composeReference("asserter", element.getAsserter()); + } + if (element.hasAssertionDate()) { + openArray("assertionDate"); + for (DateTimeType e : element.getAssertionDate()) + composeDateTimeCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getAssertionDate())) { + openArray("_assertionDate"); + for (DateTimeType e : element.getAssertionDate()) + composeDateTimeExtras(null, e, true); + closeArray(); + } + }; + if (element.hasValidity()) { + composePeriod("validity", element.getValidity()); + } + if (element.hasPurpose()) { + openArray("purpose"); + for (CodeableConcept e : element.getPurpose()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasDataScope()) { + openArray("dataScope"); + for (Expression e : element.getDataScope()) + composeExpression(null, e); + closeArray(); + }; + if (element.hasProcessingActivity()) { + openArray("processingActivity"); + for (Permission.PermissionProcessingActivityComponent e : element.getProcessingActivity()) + composePermissionProcessingActivityComponent(null, e); + closeArray(); + }; + if (element.hasJustification()) { + composePermissionJustificationComponent("justification", element.getJustification()); + } + if (element.hasUsageLimitations()) { + openArray("usageLimitations"); + for (CodeableConcept e : element.getUsageLimitations()) + composeCodeableConcept(null, e); + closeArray(); + }; + } + + protected void composePermissionProcessingActivityComponent(String name, Permission.PermissionProcessingActivityComponent element) throws IOException { + if (element != null) { + open(name); + composePermissionProcessingActivityComponentProperties(element); + close(); + } + } + + protected void composePermissionProcessingActivityComponentProperties(Permission.PermissionProcessingActivityComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasPartyReference()) { + openArray("partyReference"); + for (Reference e : element.getPartyReference()) + composeReference(null, e); + closeArray(); + }; + if (element.hasPartyCodeableConcept()) { + openArray("partyCodeableConcept"); + for (CodeableConcept e : element.getPartyCodeableConcept()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasPurpose()) { + openArray("purpose"); + for (CodeableConcept e : element.getPurpose()) + composeCodeableConcept(null, e); + closeArray(); + }; + } + + protected void composePermissionJustificationComponent(String name, Permission.PermissionJustificationComponent element) throws IOException { + if (element != null) { + open(name); + composePermissionJustificationComponentProperties(element); + close(); + } + } + + protected void composePermissionJustificationComponentProperties(Permission.PermissionJustificationComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasEvidence()) { + openArray("evidence"); + for (Reference e : element.getEvidence()) + composeReference(null, e); + closeArray(); + }; + if (element.hasGrounds()) { + openArray("grounds"); + for (CodeableConcept e : element.getGrounds()) + composeCodeableConcept(null, e); + closeArray(); + }; + } + protected void composePerson(String name, Person element) throws IOException { if (element != null) { prop("resourceType", name); @@ -54261,6 +56624,12 @@ public class JsonParser extends JsonParserBase { if (element.hasValidityPeriod()) { composePeriod("validityPeriod", element.getValidityPeriod()); } + if (element.hasIndication()) { + composeType("indication", element.getIndication()); + } + if (element.hasIntendedUse()) { + composeCodeableConcept("intendedUse", element.getIntendedUse()); + } if (element.hasBasis()) { openArray("basis"); for (CodeableConcept e : element.getBasis()) @@ -56567,8 +58936,8 @@ public class JsonParser extends JsonParserBase { composeStringExtras("name", element.getNameElement(), false); } if (element.hasStatusElement()) { - composeEnumerationCore("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory(), false); - composeEnumerationExtras("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory(), false); + composeEnumerationCore("status", element.getStatusElement(), new Enumerations.SubscriptionStateEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.SubscriptionStateEnumFactory(), false); } if (element.hasTopic()) { composeReference("topic", element.getTopic()); @@ -56599,51 +58968,8 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept(null, e); closeArray(); }; - if (element.hasEventCountElement()) { - composeUnsignedIntCore("eventCount", element.getEventCountElement(), false); - composeUnsignedIntExtras("eventCount", element.getEventCountElement(), false); - } - if (element.hasChannel()) { - composeSubscriptionChannelComponent("channel", element.getChannel()); - } - } - - protected void composeSubscriptionFilterByComponent(String name, Subscription.SubscriptionFilterByComponent element) throws IOException { - if (element != null) { - open(name); - composeSubscriptionFilterByComponentProperties(element); - close(); - } - } - - protected void composeSubscriptionFilterByComponentProperties(Subscription.SubscriptionFilterByComponent element) throws IOException { - composeBackboneElementProperties(element); - if (element.hasNameElement()) { - composeStringCore("name", element.getNameElement(), false); - composeStringExtras("name", element.getNameElement(), false); - } - if (element.hasMatchTypeElement()) { - composeEnumerationCore("matchType", element.getMatchTypeElement(), new Subscription.SubscriptionFilterByMatchTypeEnumFactory(), false); - composeEnumerationExtras("matchType", element.getMatchTypeElement(), new Subscription.SubscriptionFilterByMatchTypeEnumFactory(), false); - } - if (element.hasValueElement()) { - composeStringCore("value", element.getValueElement(), false); - composeStringExtras("value", element.getValueElement(), false); - } - } - - protected void composeSubscriptionChannelComponent(String name, Subscription.SubscriptionChannelComponent element) throws IOException { - if (element != null) { - open(name); - composeSubscriptionChannelComponentProperties(element); - close(); - } - } - - protected void composeSubscriptionChannelComponentProperties(Subscription.SubscriptionChannelComponent element) throws IOException { - composeBackboneElementProperties(element); - if (element.hasType()) { - composeCodeableConcept("type", element.getType()); + if (element.hasChannelType()) { + composeCoding("channelType", element.getChannelType()); } if (element.hasEndpointElement()) { composeUrlCore("endpoint", element.getEndpointElement(), false); @@ -56665,21 +58991,10 @@ public class JsonParser extends JsonParserBase { composeUnsignedIntCore("heartbeatPeriod", element.getHeartbeatPeriodElement(), false); composeUnsignedIntExtras("heartbeatPeriod", element.getHeartbeatPeriodElement(), false); } - if (element.hasPayload()) { - composeSubscriptionChannelPayloadComponent("payload", element.getPayload()); + if (element.hasTimeoutElement()) { + composeUnsignedIntCore("timeout", element.getTimeoutElement(), false); + composeUnsignedIntExtras("timeout", element.getTimeoutElement(), false); } - } - - protected void composeSubscriptionChannelPayloadComponent(String name, Subscription.SubscriptionChannelPayloadComponent element) throws IOException { - if (element != null) { - open(name); - composeSubscriptionChannelPayloadComponentProperties(element); - close(); - } - } - - protected void composeSubscriptionChannelPayloadComponentProperties(Subscription.SubscriptionChannelPayloadComponent element) throws IOException { - composeBackboneElementProperties(element); if (element.hasContentTypeElement()) { composeCodeCore("contentType", element.getContentTypeElement(), false); composeCodeExtras("contentType", element.getContentTypeElement(), false); @@ -56690,6 +59005,292 @@ public class JsonParser extends JsonParserBase { } } + protected void composeSubscriptionFilterByComponent(String name, Subscription.SubscriptionFilterByComponent element) throws IOException { + if (element != null) { + open(name); + composeSubscriptionFilterByComponentProperties(element); + close(); + } + } + + protected void composeSubscriptionFilterByComponentProperties(Subscription.SubscriptionFilterByComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasSearchParamNameElement()) { + composeStringCore("searchParamName", element.getSearchParamNameElement(), false); + composeStringExtras("searchParamName", element.getSearchParamNameElement(), false); + } + if (element.hasSearchModifierElement()) { + composeEnumerationCore("searchModifier", element.getSearchModifierElement(), new Enumerations.SubscriptionSearchModifierEnumFactory(), false); + composeEnumerationExtras("searchModifier", element.getSearchModifierElement(), new Enumerations.SubscriptionSearchModifierEnumFactory(), false); + } + if (element.hasValueElement()) { + composeStringCore("value", element.getValueElement(), false); + composeStringExtras("value", element.getValueElement(), false); + } + } + + protected void composeSubscriptionStatus(String name, SubscriptionStatus element) throws IOException { + if (element != null) { + prop("resourceType", name); + composeSubscriptionStatusProperties(element); + } + } + + protected void composeSubscriptionStatusProperties(SubscriptionStatus element) throws IOException { + composeDomainResourceProperties(element); + if (element.hasNotificationTypeElement()) { + composeEnumerationCore("notificationType", element.getNotificationTypeElement(), new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory(), false); + composeEnumerationExtras("notificationType", element.getNotificationTypeElement(), new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory(), false); + } + if (element.hasEventsSinceSubscriptionStartElement()) { + composeInteger64Core("eventsSinceSubscriptionStart", element.getEventsSinceSubscriptionStartElement(), false); + composeInteger64Extras("eventsSinceSubscriptionStart", element.getEventsSinceSubscriptionStartElement(), false); + } + if (element.hasEventsInNotificationElement()) { + composeIntegerCore("eventsInNotification", element.getEventsInNotificationElement(), false); + composeIntegerExtras("eventsInNotification", element.getEventsInNotificationElement(), false); + } + if (element.hasSubscription()) { + composeReference("subscription", element.getSubscription()); + } + if (element.hasStatusElement()) { + composeEnumerationCore("status", element.getStatusElement(), new Enumerations.SubscriptionStateEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.SubscriptionStateEnumFactory(), false); + } + if (element.hasTopic()) { + composeReference("topic", element.getTopic()); + } + } + + protected void composeSubscriptionTopic(String name, SubscriptionTopic element) throws IOException { + if (element != null) { + prop("resourceType", name); + composeSubscriptionTopicProperties(element); + } + } + + protected void composeSubscriptionTopicProperties(SubscriptionTopic element) throws IOException { + composeDomainResourceProperties(element); + if (element.hasUrlElement()) { + composeUriCore("url", element.getUrlElement(), false); + composeUriExtras("url", element.getUrlElement(), false); + } + if (element.hasIdentifier()) { + openArray("identifier"); + for (Identifier e : element.getIdentifier()) + composeIdentifier(null, e); + closeArray(); + }; + if (element.hasVersionElement()) { + composeStringCore("version", element.getVersionElement(), false); + composeStringExtras("version", element.getVersionElement(), false); + } + if (element.hasTitleElement()) { + composeStringCore("title", element.getTitleElement(), false); + composeStringExtras("title", element.getTitleElement(), false); + } + if (element.hasDerivedFromCanonical()) { + openArray("derivedFromCanonical"); + for (CanonicalType e : element.getDerivedFromCanonical()) + composeCanonicalCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getDerivedFromCanonical())) { + openArray("_derivedFromCanonical"); + for (CanonicalType e : element.getDerivedFromCanonical()) + composeCanonicalExtras(null, e, true); + closeArray(); + } + }; + if (element.hasDerivedFromUri()) { + openArray("derivedFromUri"); + for (UriType e : element.getDerivedFromUri()) + composeUriCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getDerivedFromUri())) { + openArray("_derivedFromUri"); + for (UriType e : element.getDerivedFromUri()) + composeUriExtras(null, e, true); + closeArray(); + } + }; + if (element.hasStatusElement()) { + composeEnumerationCore("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); + composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); + } + if (element.hasExperimentalElement()) { + composeBooleanCore("experimental", element.getExperimentalElement(), false); + composeBooleanExtras("experimental", element.getExperimentalElement(), false); + } + if (element.hasDateElement()) { + composeDateTimeCore("date", element.getDateElement(), false); + composeDateTimeExtras("date", element.getDateElement(), false); + } + if (element.hasPublisher()) { + composeReference("publisher", element.getPublisher()); + } + if (element.hasContact()) { + openArray("contact"); + for (ContactDetail e : element.getContact()) + composeContactDetail(null, e); + closeArray(); + }; + if (element.hasDescriptionElement()) { + composeMarkdownCore("description", element.getDescriptionElement(), false); + composeMarkdownExtras("description", element.getDescriptionElement(), false); + } + if (element.hasUseContext()) { + openArray("useContext"); + for (UsageContext e : element.getUseContext()) + composeUsageContext(null, e); + closeArray(); + }; + if (element.hasJurisdiction()) { + openArray("jurisdiction"); + for (CodeableConcept e : element.getJurisdiction()) + composeCodeableConcept(null, e); + closeArray(); + }; + if (element.hasPurposeElement()) { + composeMarkdownCore("purpose", element.getPurposeElement(), false); + composeMarkdownExtras("purpose", element.getPurposeElement(), false); + } + if (element.hasCopyrightElement()) { + composeMarkdownCore("copyright", element.getCopyrightElement(), false); + composeMarkdownExtras("copyright", element.getCopyrightElement(), false); + } + if (element.hasApprovalDateElement()) { + composeDateCore("approvalDate", element.getApprovalDateElement(), false); + composeDateExtras("approvalDate", element.getApprovalDateElement(), false); + } + if (element.hasLastReviewDateElement()) { + composeDateCore("lastReviewDate", element.getLastReviewDateElement(), false); + composeDateExtras("lastReviewDate", element.getLastReviewDateElement(), false); + } + if (element.hasEffectivePeriod()) { + composePeriod("effectivePeriod", element.getEffectivePeriod()); + } + if (element.hasResourceTrigger()) { + composeSubscriptionTopicResourceTriggerComponent("resourceTrigger", element.getResourceTrigger()); + } + if (element.hasCanFilterBy()) { + openArray("canFilterBy"); + for (SubscriptionTopic.SubscriptionTopicCanFilterByComponent e : element.getCanFilterBy()) + composeSubscriptionTopicCanFilterByComponent(null, e); + closeArray(); + }; + } + + protected void composeSubscriptionTopicResourceTriggerComponent(String name, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element) throws IOException { + if (element != null) { + open(name); + composeSubscriptionTopicResourceTriggerComponentProperties(element); + close(); + } + } + + protected void composeSubscriptionTopicResourceTriggerComponentProperties(SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasDescriptionElement()) { + composeStringCore("description", element.getDescriptionElement(), false); + composeStringExtras("description", element.getDescriptionElement(), false); + } + if (element.hasResourceType()) { + openArray("resourceType"); + for (CodeType e : element.getResourceType()) + composeCodeCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getResourceType())) { + openArray("_resourceType"); + for (CodeType e : element.getResourceType()) + composeCodeExtras(null, e, true); + closeArray(); + } + }; + if (element.hasMethodCriteria()) { + openArray("methodCriteria"); + for (Enumeration e : element.getMethodCriteria()) + composeEnumerationCore(null, e, new SubscriptionTopic.InteractionTriggerEnumFactory(), true); + closeArray(); + if (anyHasExtras(element.getMethodCriteria())) { + openArray("_methodCriteria"); + for (Enumeration e : element.getMethodCriteria()) + composeEnumerationExtras(null, e, new SubscriptionTopic.InteractionTriggerEnumFactory(), true); + closeArray(); + } + }; + if (element.hasQueryCriteria()) { + composeSubscriptionTopicResourceTriggerQueryCriteriaComponent("queryCriteria", element.getQueryCriteria()); + } + if (element.hasFhirPathCriteria()) { + openArray("fhirPathCriteria"); + for (StringType e : element.getFhirPathCriteria()) + composeStringCore(null, e, true); + closeArray(); + if (anyHasExtras(element.getFhirPathCriteria())) { + openArray("_fhirPathCriteria"); + for (StringType e : element.getFhirPathCriteria()) + composeStringExtras(null, e, true); + closeArray(); + } + }; + } + + protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(String name, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element) throws IOException { + if (element != null) { + open(name); + composeSubscriptionTopicResourceTriggerQueryCriteriaComponentProperties(element); + close(); + } + } + + protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponentProperties(SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasPreviousElement()) { + composeStringCore("previous", element.getPreviousElement(), false); + composeStringExtras("previous", element.getPreviousElement(), false); + } + if (element.hasCurrentElement()) { + composeStringCore("current", element.getCurrentElement(), false); + composeStringExtras("current", element.getCurrentElement(), false); + } + if (element.hasRequireBothElement()) { + composeBooleanCore("requireBoth", element.getRequireBothElement(), false); + composeBooleanExtras("requireBoth", element.getRequireBothElement(), false); + } + } + + protected void composeSubscriptionTopicCanFilterByComponent(String name, SubscriptionTopic.SubscriptionTopicCanFilterByComponent element) throws IOException { + if (element != null) { + open(name); + composeSubscriptionTopicCanFilterByComponentProperties(element); + close(); + } + } + + protected void composeSubscriptionTopicCanFilterByComponentProperties(SubscriptionTopic.SubscriptionTopicCanFilterByComponent element) throws IOException { + composeBackboneElementProperties(element); + if (element.hasSearchParamNameElement()) { + composeStringCore("searchParamName", element.getSearchParamNameElement(), false); + composeStringExtras("searchParamName", element.getSearchParamNameElement(), false); + } + if (element.hasSearchModifier()) { + openArray("searchModifier"); + for (Enumeration e : element.getSearchModifier()) + composeEnumerationCore(null, e, new Enumerations.SubscriptionSearchModifierEnumFactory(), true); + closeArray(); + if (anyHasExtras(element.getSearchModifier())) { + openArray("_searchModifier"); + for (Enumeration e : element.getSearchModifier()) + composeEnumerationExtras(null, e, new Enumerations.SubscriptionSearchModifierEnumFactory(), true); + closeArray(); + } + }; + if (element.hasDocumentationElement()) { + composeMarkdownCore("documentation", element.getDocumentationElement(), false); + composeMarkdownExtras("documentation", element.getDocumentationElement(), false); + } + } + protected void composeSubstance(String name, Substance element) throws IOException { if (element != null) { prop("resourceType", name); @@ -56993,10 +59594,10 @@ public class JsonParser extends JsonParserBase { if (element.hasMolecularWeight()) { composeSubstanceDefinitionStructureIsotopeMolecularWeightComponent("molecularWeight", element.getMolecularWeight()); } - if (element.hasSourceCoding()) { - openArray("sourceCoding"); - for (Coding e : element.getSourceCoding()) - composeCoding(null, e); + if (element.hasTechnique()) { + openArray("technique"); + for (CodeableConcept e : element.getTechnique()) + composeCodeableConcept(null, e); closeArray(); }; if (element.hasSourceDocument()) { @@ -57078,6 +59679,9 @@ public class JsonParser extends JsonParserBase { composeStringCore("representation", element.getRepresentationElement(), false); composeStringExtras("representation", element.getRepresentationElement(), false); } + if (element.hasFormat()) { + composeCodeableConcept("format", element.getFormat()); + } if (element.hasAttachment()) { composeAttachment("attachment", element.getAttachment()); } @@ -57379,6 +59983,9 @@ public class JsonParser extends JsonParserBase { protected void composeSubstancePolymerProperties(SubstancePolymer element) throws IOException { composeDomainResourceProperties(element); + if (element.hasIdentifier()) { + composeIdentifier("identifier", element.getIdentifier()); + } if (element.hasClass_()) { composeCodeableConcept("class", element.getClass_()); } @@ -57391,18 +59998,10 @@ public class JsonParser extends JsonParserBase { composeCodeableConcept(null, e); closeArray(); }; - if (element.hasModification()) { - openArray("modification"); - for (StringType e : element.getModification()) - composeStringCore(null, e, true); - closeArray(); - if (anyHasExtras(element.getModification())) { - openArray("_modification"); - for (StringType e : element.getModification()) - composeStringExtras(null, e, true); - closeArray(); - } - }; + if (element.hasModificationElement()) { + composeStringCore("modification", element.getModificationElement(), false); + composeStringExtras("modification", element.getModificationElement(), false); + } if (element.hasMonomerSet()) { openArray("monomerSet"); for (SubstancePolymer.SubstancePolymerMonomerSetComponent e : element.getMonomerSet()) @@ -57448,11 +60047,11 @@ public class JsonParser extends JsonParserBase { protected void composeSubstancePolymerMonomerSetStartingMaterialComponentProperties(SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent element) throws IOException { composeBackboneElementProperties(element); - if (element.hasMaterial()) { - composeCodeableConcept("material", element.getMaterial()); + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); } - if (element.hasType()) { - composeCodeableConcept("type", element.getType()); + if (element.hasCategory()) { + composeCodeableConcept("category", element.getCategory()); } if (element.hasIsDefiningElement()) { composeBooleanCore("isDefining", element.getIsDefiningElement(), false); @@ -57502,12 +60101,12 @@ public class JsonParser extends JsonParserBase { protected void composeSubstancePolymerRepeatRepeatUnitComponentProperties(SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent element) throws IOException { composeBackboneElementProperties(element); - if (element.hasOrientationOfPolymerisation()) { - composeCodeableConcept("orientationOfPolymerisation", element.getOrientationOfPolymerisation()); + if (element.hasUnitElement()) { + composeStringCore("unit", element.getUnitElement(), false); + composeStringExtras("unit", element.getUnitElement(), false); } - if (element.hasRepeatUnitElement()) { - composeStringCore("repeatUnit", element.getRepeatUnitElement(), false); - composeStringExtras("repeatUnit", element.getRepeatUnitElement(), false); + if (element.hasOrientation()) { + composeCodeableConcept("orientation", element.getOrientation()); } if (element.hasAmount()) { composeSubstanceAmount("amount", element.getAmount()); @@ -57561,6 +60160,9 @@ public class JsonParser extends JsonParserBase { composeStringCore("representation", element.getRepresentationElement(), false); composeStringExtras("representation", element.getRepresentationElement(), false); } + if (element.hasFormat()) { + composeCodeableConcept("format", element.getFormat()); + } if (element.hasAttachment()) { composeAttachment("attachment", element.getAttachment()); } @@ -58133,7 +60735,7 @@ public class JsonParser extends JsonParserBase { composeEnumerationExtras("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory(), false); } if (element.hasItem()) { - composeType("item", element.getItem()); + composeCodeableReference("item", element.getItem()); } if (element.hasQuantity()) { composeQuantity("quantity", element.getQuantity()); @@ -59641,227 +62243,6 @@ public class JsonParser extends JsonParserBase { } } - protected void composeTopic(String name, Topic element) throws IOException { - if (element != null) { - prop("resourceType", name); - composeTopicProperties(element); - } - } - - protected void composeTopicProperties(Topic element) throws IOException { - composeDomainResourceProperties(element); - if (element.hasUrlElement()) { - composeUriCore("url", element.getUrlElement(), false); - composeUriExtras("url", element.getUrlElement(), false); - } - if (element.hasIdentifier()) { - openArray("identifier"); - for (Identifier e : element.getIdentifier()) - composeIdentifier(null, e); - closeArray(); - }; - if (element.hasVersionElement()) { - composeStringCore("version", element.getVersionElement(), false); - composeStringExtras("version", element.getVersionElement(), false); - } - if (element.hasTitleElement()) { - composeStringCore("title", element.getTitleElement(), false); - composeStringExtras("title", element.getTitleElement(), false); - } - if (element.hasDerivedFromCanonical()) { - openArray("derivedFromCanonical"); - for (CanonicalType e : element.getDerivedFromCanonical()) - composeCanonicalCore(null, e, true); - closeArray(); - if (anyHasExtras(element.getDerivedFromCanonical())) { - openArray("_derivedFromCanonical"); - for (CanonicalType e : element.getDerivedFromCanonical()) - composeCanonicalExtras(null, e, true); - closeArray(); - } - }; - if (element.hasDerivedFromUri()) { - openArray("derivedFromUri"); - for (UriType e : element.getDerivedFromUri()) - composeUriCore(null, e, true); - closeArray(); - if (anyHasExtras(element.getDerivedFromUri())) { - openArray("_derivedFromUri"); - for (UriType e : element.getDerivedFromUri()) - composeUriExtras(null, e, true); - closeArray(); - } - }; - if (element.hasStatusElement()) { - composeEnumerationCore("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); - composeEnumerationExtras("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory(), false); - } - if (element.hasExperimentalElement()) { - composeBooleanCore("experimental", element.getExperimentalElement(), false); - composeBooleanExtras("experimental", element.getExperimentalElement(), false); - } - if (element.hasDateElement()) { - composeDateTimeCore("date", element.getDateElement(), false); - composeDateTimeExtras("date", element.getDateElement(), false); - } - if (element.hasPublisher()) { - composeReference("publisher", element.getPublisher()); - } - if (element.hasContact()) { - openArray("contact"); - for (ContactDetail e : element.getContact()) - composeContactDetail(null, e); - closeArray(); - }; - if (element.hasDescriptionElement()) { - composeMarkdownCore("description", element.getDescriptionElement(), false); - composeMarkdownExtras("description", element.getDescriptionElement(), false); - } - if (element.hasUseContext()) { - openArray("useContext"); - for (UsageContext e : element.getUseContext()) - composeUsageContext(null, e); - closeArray(); - }; - if (element.hasJurisdiction()) { - openArray("jurisdiction"); - for (CodeableConcept e : element.getJurisdiction()) - composeCodeableConcept(null, e); - closeArray(); - }; - if (element.hasPurposeElement()) { - composeMarkdownCore("purpose", element.getPurposeElement(), false); - composeMarkdownExtras("purpose", element.getPurposeElement(), false); - } - if (element.hasCopyrightElement()) { - composeMarkdownCore("copyright", element.getCopyrightElement(), false); - composeMarkdownExtras("copyright", element.getCopyrightElement(), false); - } - if (element.hasApprovalDateElement()) { - composeDateCore("approvalDate", element.getApprovalDateElement(), false); - composeDateExtras("approvalDate", element.getApprovalDateElement(), false); - } - if (element.hasLastReviewDateElement()) { - composeDateCore("lastReviewDate", element.getLastReviewDateElement(), false); - composeDateExtras("lastReviewDate", element.getLastReviewDateElement(), false); - } - if (element.hasEffectivePeriod()) { - composePeriod("effectivePeriod", element.getEffectivePeriod()); - } - if (element.hasResourceTrigger()) { - composeTopicResourceTriggerComponent("resourceTrigger", element.getResourceTrigger()); - } - if (element.hasCanFilterBy()) { - openArray("canFilterBy"); - for (Topic.TopicCanFilterByComponent e : element.getCanFilterBy()) - composeTopicCanFilterByComponent(null, e); - closeArray(); - }; - } - - protected void composeTopicResourceTriggerComponent(String name, Topic.TopicResourceTriggerComponent element) throws IOException { - if (element != null) { - open(name); - composeTopicResourceTriggerComponentProperties(element); - close(); - } - } - - protected void composeTopicResourceTriggerComponentProperties(Topic.TopicResourceTriggerComponent element) throws IOException { - composeBackboneElementProperties(element); - if (element.hasDescriptionElement()) { - composeStringCore("description", element.getDescriptionElement(), false); - composeStringExtras("description", element.getDescriptionElement(), false); - } - if (element.hasResourceType()) { - openArray("resourceType"); - for (CodeType e : element.getResourceType()) - composeCodeCore(null, e, true); - closeArray(); - if (anyHasExtras(element.getResourceType())) { - openArray("_resourceType"); - for (CodeType e : element.getResourceType()) - composeCodeExtras(null, e, true); - closeArray(); - } - }; - if (element.hasMethodCriteria()) { - openArray("methodCriteria"); - for (Enumeration e : element.getMethodCriteria()) - composeEnumerationCore(null, e, new Topic.InteractionTriggerEnumFactory(), true); - closeArray(); - if (anyHasExtras(element.getMethodCriteria())) { - openArray("_methodCriteria"); - for (Enumeration e : element.getMethodCriteria()) - composeEnumerationExtras(null, e, new Topic.InteractionTriggerEnumFactory(), true); - closeArray(); - } - }; - if (element.hasQueryCriteria()) { - composeTopicResourceTriggerQueryCriteriaComponent("queryCriteria", element.getQueryCriteria()); - } - if (element.hasFhirPathCriteriaElement()) { - composeStringCore("fhirPathCriteria", element.getFhirPathCriteriaElement(), false); - composeStringExtras("fhirPathCriteria", element.getFhirPathCriteriaElement(), false); - } - } - - protected void composeTopicResourceTriggerQueryCriteriaComponent(String name, Topic.TopicResourceTriggerQueryCriteriaComponent element) throws IOException { - if (element != null) { - open(name); - composeTopicResourceTriggerQueryCriteriaComponentProperties(element); - close(); - } - } - - protected void composeTopicResourceTriggerQueryCriteriaComponentProperties(Topic.TopicResourceTriggerQueryCriteriaComponent element) throws IOException { - composeBackboneElementProperties(element); - if (element.hasPreviousElement()) { - composeStringCore("previous", element.getPreviousElement(), false); - composeStringExtras("previous", element.getPreviousElement(), false); - } - if (element.hasCurrentElement()) { - composeStringCore("current", element.getCurrentElement(), false); - composeStringExtras("current", element.getCurrentElement(), false); - } - if (element.hasRequireBothElement()) { - composeBooleanCore("requireBoth", element.getRequireBothElement(), false); - composeBooleanExtras("requireBoth", element.getRequireBothElement(), false); - } - } - - protected void composeTopicCanFilterByComponent(String name, Topic.TopicCanFilterByComponent element) throws IOException { - if (element != null) { - open(name); - composeTopicCanFilterByComponentProperties(element); - close(); - } - } - - protected void composeTopicCanFilterByComponentProperties(Topic.TopicCanFilterByComponent element) throws IOException { - composeBackboneElementProperties(element); - if (element.hasNameElement()) { - composeStringCore("name", element.getNameElement(), false); - composeStringExtras("name", element.getNameElement(), false); - } - if (element.hasMatchType()) { - openArray("matchType"); - for (Enumeration e : element.getMatchType()) - composeEnumerationCore(null, e, new Topic.TopicFilterByMatchTypeEnumFactory(), true); - closeArray(); - if (anyHasExtras(element.getMatchType())) { - openArray("_matchType"); - for (Enumeration e : element.getMatchType()) - composeEnumerationExtras(null, e, new Topic.TopicFilterByMatchTypeEnumFactory(), true); - closeArray(); - } - }; - if (element.hasDocumentationElement()) { - composeMarkdownCore("documentation", element.getDocumentationElement(), false); - composeMarkdownExtras("documentation", element.getDocumentationElement(), false); - } - } - protected void composeValueSet(String name, ValueSet element) throws IOException { if (element != null) { prop("resourceType", name); @@ -60632,6 +63013,8 @@ public class JsonParser extends JsonParserBase { composeChargeItem("ChargeItem", (ChargeItem)resource); } else if (resource instanceof ChargeItemDefinition) { composeChargeItemDefinition("ChargeItemDefinition", (ChargeItemDefinition)resource); + } else if (resource instanceof Citation) { + composeCitation("Citation", (Citation)resource); } else if (resource instanceof Claim) { composeClaim("Claim", (Claim)resource); } else if (resource instanceof ClaimResponse) { @@ -60698,6 +63081,8 @@ public class JsonParser extends JsonParserBase { composeEventDefinition("EventDefinition", (EventDefinition)resource); } else if (resource instanceof Evidence) { composeEvidence("Evidence", (Evidence)resource); + } else if (resource instanceof EvidenceFocus) { + composeEvidenceFocus("EvidenceFocus", (EvidenceFocus)resource); } else if (resource instanceof EvidenceVariable) { composeEvidenceVariable("EvidenceVariable", (EvidenceVariable)resource); } else if (resource instanceof ExampleScenario) { @@ -60774,6 +63159,8 @@ public class JsonParser extends JsonParserBase { composeNutritionIntake("NutritionIntake", (NutritionIntake)resource); } else if (resource instanceof NutritionOrder) { composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); + } else if (resource instanceof NutritionProduct) { + composeNutritionProduct("NutritionProduct", (NutritionProduct)resource); } else if (resource instanceof Observation) { composeObservation("Observation", (Observation)resource); } else if (resource instanceof ObservationDefinition) { @@ -60796,6 +63183,8 @@ public class JsonParser extends JsonParserBase { composePaymentNotice("PaymentNotice", (PaymentNotice)resource); } else if (resource instanceof PaymentReconciliation) { composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); + } else if (resource instanceof Permission) { + composePermission("Permission", (Permission)resource); } else if (resource instanceof Person) { composePerson("Person", (Person)resource); } else if (resource instanceof PlanDefinition) { @@ -60842,6 +63231,10 @@ public class JsonParser extends JsonParserBase { composeStructureMap("StructureMap", (StructureMap)resource); } else if (resource instanceof Subscription) { composeSubscription("Subscription", (Subscription)resource); + } else if (resource instanceof SubscriptionStatus) { + composeSubscriptionStatus("SubscriptionStatus", (SubscriptionStatus)resource); + } else if (resource instanceof SubscriptionTopic) { + composeSubscriptionTopic("SubscriptionTopic", (SubscriptionTopic)resource); } else if (resource instanceof Substance) { composeSubstance("Substance", (Substance)resource); } else if (resource instanceof SubstanceDefinition) { @@ -60868,8 +63261,6 @@ public class JsonParser extends JsonParserBase { composeTestReport("TestReport", (TestReport)resource); } else if (resource instanceof TestScript) { composeTestScript("TestScript", (TestScript)resource); - } else if (resource instanceof Topic) { - composeTopic("Topic", (Topic)resource); } else if (resource instanceof ValueSet) { composeValueSet("ValueSet", (ValueSet)resource); } else if (resource instanceof VerificationResult) { @@ -60924,6 +63315,8 @@ public class JsonParser extends JsonParserBase { composeChargeItem(name, (ChargeItem)resource); } else if (resource instanceof ChargeItemDefinition) { composeChargeItemDefinition(name, (ChargeItemDefinition)resource); + } else if (resource instanceof Citation) { + composeCitation(name, (Citation)resource); } else if (resource instanceof Claim) { composeClaim(name, (Claim)resource); } else if (resource instanceof ClaimResponse) { @@ -60990,6 +63383,8 @@ public class JsonParser extends JsonParserBase { composeEventDefinition(name, (EventDefinition)resource); } else if (resource instanceof Evidence) { composeEvidence(name, (Evidence)resource); + } else if (resource instanceof EvidenceFocus) { + composeEvidenceFocus(name, (EvidenceFocus)resource); } else if (resource instanceof EvidenceVariable) { composeEvidenceVariable(name, (EvidenceVariable)resource); } else if (resource instanceof ExampleScenario) { @@ -61066,6 +63461,8 @@ public class JsonParser extends JsonParserBase { composeNutritionIntake(name, (NutritionIntake)resource); } else if (resource instanceof NutritionOrder) { composeNutritionOrder(name, (NutritionOrder)resource); + } else if (resource instanceof NutritionProduct) { + composeNutritionProduct(name, (NutritionProduct)resource); } else if (resource instanceof Observation) { composeObservation(name, (Observation)resource); } else if (resource instanceof ObservationDefinition) { @@ -61088,6 +63485,8 @@ public class JsonParser extends JsonParserBase { composePaymentNotice(name, (PaymentNotice)resource); } else if (resource instanceof PaymentReconciliation) { composePaymentReconciliation(name, (PaymentReconciliation)resource); + } else if (resource instanceof Permission) { + composePermission(name, (Permission)resource); } else if (resource instanceof Person) { composePerson(name, (Person)resource); } else if (resource instanceof PlanDefinition) { @@ -61134,6 +63533,10 @@ public class JsonParser extends JsonParserBase { composeStructureMap(name, (StructureMap)resource); } else if (resource instanceof Subscription) { composeSubscription(name, (Subscription)resource); + } else if (resource instanceof SubscriptionStatus) { + composeSubscriptionStatus(name, (SubscriptionStatus)resource); + } else if (resource instanceof SubscriptionTopic) { + composeSubscriptionTopic(name, (SubscriptionTopic)resource); } else if (resource instanceof Substance) { composeSubstance(name, (Substance)resource); } else if (resource instanceof SubstanceDefinition) { @@ -61160,8 +63563,6 @@ public class JsonParser extends JsonParserBase { composeTestReport(name, (TestReport)resource); } else if (resource instanceof TestScript) { composeTestScript(name, (TestScript)resource); - } else if (resource instanceof Topic) { - composeTopic(name, (Topic)resource); } else if (resource instanceof ValueSet) { composeValueSet(name, (ValueSet)resource); } else if (resource instanceof VerificationResult) { diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/RdfParser.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/RdfParser.java index f3b4a76e9..209748328 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/RdfParser.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/RdfParser.java @@ -51,7 +51,7 @@ package org.hl7.fhir.r5.formats; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent @@ -1180,7 +1180,7 @@ public class RdfParser extends RdfParserBase { else { t = parent.predicate("fhir:"+parentType+'.'+name); } - composeElement(t, "Meta", name, element, index); + composeDataType(t, "Meta", name, element, index); if (element.hasVersionIdElement()) { composeId(t, "Meta", "versionId", element.getVersionIdElement(), -1); } @@ -2298,15 +2298,15 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getDevice().size(); i++) { composeReference(t, "AdministrableProductDefinition", "device", element.getDevice().get(i), i); } - for (int i = 0; i < element.getCharacteristic().size(); i++) { - composeAdministrableProductDefinitionCharacteristicComponent(t, "AdministrableProductDefinition", "characteristic", element.getCharacteristic().get(i), i); + for (int i = 0; i < element.getProperty().size(); i++) { + composeAdministrableProductDefinitionPropertyComponent(t, "AdministrableProductDefinition", "property", element.getProperty().get(i), i); } for (int i = 0; i < element.getRouteOfAdministration().size(); i++) { composeAdministrableProductDefinitionRouteOfAdministrationComponent(t, "AdministrableProductDefinition", "routeOfAdministration", element.getRouteOfAdministration().get(i), i); } } - protected void composeAdministrableProductDefinitionCharacteristicComponent(Complex parent, String parentType, String name, AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent element, int index) { + protected void composeAdministrableProductDefinitionPropertyComponent(Complex parent, String parentType, String name, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element, int index) { if (element == null) return; Complex t; @@ -2315,15 +2315,15 @@ public class RdfParser extends RdfParserBase { else { t = parent.predicate("fhir:"+parentType+'.'+name); } - composeBackboneElement(t, "characteristic", name, element, index); - if (element.hasCode()) { - composeCodeableConcept(t, "AdministrableProductDefinitionCharacteristicComponent", "code", element.getCode(), -1); + composeBackboneElement(t, "property", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "AdministrableProductDefinitionPropertyComponent", "type", element.getType(), -1); } if (element.hasValue()) { - composeType(t, "AdministrableProductDefinitionCharacteristicComponent", "value", element.getValue(), -1); + composeType(t, "AdministrableProductDefinitionPropertyComponent", "value", element.getValue(), -1); } if (element.hasStatus()) { - composeCodeableConcept(t, "AdministrableProductDefinitionCharacteristicComponent", "status", element.getStatus(), -1); + composeCodeableConcept(t, "AdministrableProductDefinitionPropertyComponent", "status", element.getStatus(), -1); } } @@ -2853,11 +2853,8 @@ public class RdfParser extends RdfParserBase { if (element.hasRecordedElement()) { composeInstant(t, "AuditEvent", "recorded", element.getRecordedElement(), -1); } - if (element.hasOutcomeElement()) { - composeEnum(t, "AuditEvent", "outcome", element.getOutcomeElement(), -1); - } - if (element.hasOutcomeDescElement()) { - composeString(t, "AuditEvent", "outcomeDesc", element.getOutcomeDescElement(), -1); + if (element.hasOutcome()) { + composeCodeableConcept(t, "AuditEvent", "outcome", element.getOutcome(), -1); } for (int i = 0; i < element.getPurposeOfEvent().size(); i++) { composeCodeableConcept(t, "AuditEvent", "purposeOfEvent", element.getPurposeOfEvent().get(i), i); @@ -4216,7 +4213,7 @@ public class RdfParser extends RdfParserBase { composeType(t, "CarePlanActivityDetailComponent", "scheduled", element.getScheduled(), -1); } if (element.hasLocation()) { - composeReference(t, "CarePlanActivityDetailComponent", "location", element.getLocation(), -1); + composeCodeableReference(t, "CarePlanActivityDetailComponent", "location", element.getLocation(), -1); } if (element.hasReported()) { composeType(t, "CarePlanActivityDetailComponent", "reported", element.getReported(), -1); @@ -4637,6 +4634,579 @@ public class RdfParser extends RdfParserBase { } } + protected void composeCitation(Complex parent, String parentType, String name, Citation element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeMetadataResource(t, "Citation", name, element, index); + if (element.hasUrlElement()) { + composeUri(t, "Citation", "url", element.getUrlElement(), -1); + } + if (element.hasVersionElement()) { + composeString(t, "Citation", "version", element.getVersionElement(), -1); + } + if (element.hasStatusElement()) { + composeEnum(t, "Citation", "status", element.getStatusElement(), -1); + } + for (int i = 0; i < element.getUseContext().size(); i++) { + composeUsageContext(t, "Citation", "useContext", element.getUseContext().get(i), i); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "Citation", "identifier", element.getIdentifier().get(i), i); + } + for (int i = 0; i < element.getRelatedIdentifier().size(); i++) { + composeIdentifier(t, "Citation", "relatedIdentifier", element.getRelatedIdentifier().get(i), i); + } + if (element.hasDateCitedElement()) { + composeDateTime(t, "Citation", "dateCited", element.getDateCitedElement(), -1); + } + if (element.hasVariantCitation()) { + composeCitationVariantCitationComponent(t, "Citation", "variantCitation", element.getVariantCitation(), -1); + } + if (element.hasPublishingModel()) { + composeCodeableConcept(t, "Citation", "publishingModel", element.getPublishingModel(), -1); + } + if (element.hasJournal()) { + composeCitationJournalComponent(t, "Citation", "journal", element.getJournal(), -1); + } + if (element.hasArticleTitleElement()) { + composeMarkdown(t, "Citation", "articleTitle", element.getArticleTitleElement(), -1); + } + for (int i = 0; i < element.getAlternativeTitle().size(); i++) { + composeCitationAlternativeTitleComponent(t, "Citation", "alternativeTitle", element.getAlternativeTitle().get(i), i); + } + if (element.hasPagination()) { + composeCitationPaginationComponent(t, "Citation", "pagination", element.getPagination(), -1); + } + for (int i = 0; i < element.getArticleUrl().size(); i++) { + composeCitationArticleUrlComponent(t, "Citation", "articleUrl", element.getArticleUrl().get(i), i); + } + if (element.hasAbstractElement()) { + composeMarkdown(t, "Citation", "abstract", element.getAbstractElement(), -1); + } + if (element.hasAbstractCopyrightElement()) { + composeMarkdown(t, "Citation", "abstractCopyright", element.getAbstractCopyrightElement(), -1); + } + for (int i = 0; i < element.getAlternativeAbstract().size(); i++) { + composeCitationAlternativeAbstractComponent(t, "Citation", "alternativeAbstract", element.getAlternativeAbstract().get(i), i); + } + if (element.hasAuthorList()) { + composeCitationAuthorListComponent(t, "Citation", "authorList", element.getAuthorList(), -1); + } + for (int i = 0; i < element.getAuthorString().size(); i++) { + composeCitationAuthorStringComponent(t, "Citation", "authorString", element.getAuthorString().get(i), i); + } + if (element.hasContributorList()) { + composeCitationContributorListComponent(t, "Citation", "contributorList", element.getContributorList(), -1); + } + if (element.hasArticleLanguage()) { + composeCodeableConcept(t, "Citation", "articleLanguage", element.getArticleLanguage(), -1); + } + for (int i = 0; i < element.getAlternativeForm().size(); i++) { + composeCitationAlternativeFormComponent(t, "Citation", "alternativeForm", element.getAlternativeForm().get(i), i); + } + for (int i = 0; i < element.getClassifier().size(); i++) { + composeCodeableConcept(t, "Citation", "classifier", element.getClassifier().get(i), i); + } + for (int i = 0; i < element.getRelatedArtifact().size(); i++) { + composeRelatedArtifact(t, "Citation", "relatedArtifact", element.getRelatedArtifact().get(i), i); + } + for (int i = 0; i < element.getNote().size(); i++) { + composeAnnotation(t, "Citation", "note", element.getNote().get(i), i); + } + if (element.hasMedlinePubMed()) { + composeCitationMedlinePubMedComponent(t, "Citation", "medlinePubMed", element.getMedlinePubMed(), -1); + } + } + + protected void composeCitationVariantCitationComponent(Complex parent, String parentType, String name, Citation.CitationVariantCitationComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "variantCitation", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "CitationVariantCitationComponent", "type", element.getType(), -1); + } + if (element.hasValueElement()) { + composeString(t, "CitationVariantCitationComponent", "value", element.getValueElement(), -1); + } + if (element.hasBaseCitation()) { + composeReference(t, "CitationVariantCitationComponent", "baseCitation", element.getBaseCitation(), -1); + } + } + + protected void composeCitationJournalComponent(Complex parent, String parentType, String name, Citation.CitationJournalComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "journal", name, element, index); + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "CitationJournalComponent", "identifier", element.getIdentifier().get(i), i); + } + if (element.hasCountryElement()) { + composeString(t, "CitationJournalComponent", "country", element.getCountryElement(), -1); + } + if (element.hasJournalIssue()) { + composeCitationJournalJournalIssueComponent(t, "CitationJournalComponent", "journalIssue", element.getJournalIssue(), -1); + } + if (element.hasTitleElement()) { + composeString(t, "CitationJournalComponent", "title", element.getTitleElement(), -1); + } + } + + protected void composeCitationJournalJournalIssueComponent(Complex parent, String parentType, String name, Citation.CitationJournalJournalIssueComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "journalIssue", name, element, index); + if (element.hasCitedMedium()) { + composeCodeableConcept(t, "CitationJournalJournalIssueComponent", "citedMedium", element.getCitedMedium(), -1); + } + if (element.hasVolumeElement()) { + composeString(t, "CitationJournalJournalIssueComponent", "volume", element.getVolumeElement(), -1); + } + if (element.hasIssueElement()) { + composeString(t, "CitationJournalJournalIssueComponent", "issue", element.getIssueElement(), -1); + } + if (element.hasPublicationDateElement()) { + composeString(t, "CitationJournalJournalIssueComponent", "publicationDate", element.getPublicationDateElement(), -1); + } + } + + protected void composeCitationAlternativeTitleComponent(Complex parent, String parentType, String name, Citation.CitationAlternativeTitleComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "alternativeTitle", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "CitationAlternativeTitleComponent", "type", element.getType(), -1); + } + if (element.hasLanguage()) { + composeCodeableConcept(t, "CitationAlternativeTitleComponent", "language", element.getLanguage(), -1); + } + if (element.hasTitleElement()) { + composeMarkdown(t, "CitationAlternativeTitleComponent", "title", element.getTitleElement(), -1); + } + } + + protected void composeCitationPaginationComponent(Complex parent, String parentType, String name, Citation.CitationPaginationComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "pagination", name, element, index); + if (element.hasPageStringElement()) { + composeString(t, "CitationPaginationComponent", "pageString", element.getPageStringElement(), -1); + } + if (element.hasFirstPageElement()) { + composeString(t, "CitationPaginationComponent", "firstPage", element.getFirstPageElement(), -1); + } + if (element.hasLastPageElement()) { + composeString(t, "CitationPaginationComponent", "lastPage", element.getLastPageElement(), -1); + } + } + + protected void composeCitationArticleUrlComponent(Complex parent, String parentType, String name, Citation.CitationArticleUrlComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "articleUrl", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "CitationArticleUrlComponent", "type", element.getType(), -1); + } + if (element.hasUrlElement()) { + composeUri(t, "CitationArticleUrlComponent", "url", element.getUrlElement(), -1); + } + } + + protected void composeCitationAlternativeAbstractComponent(Complex parent, String parentType, String name, Citation.CitationAlternativeAbstractComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "alternativeAbstract", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "CitationAlternativeAbstractComponent", "type", element.getType(), -1); + } + if (element.hasLanguage()) { + composeCodeableConcept(t, "CitationAlternativeAbstractComponent", "language", element.getLanguage(), -1); + } + if (element.hasAbstractElement()) { + composeMarkdown(t, "CitationAlternativeAbstractComponent", "abstract", element.getAbstractElement(), -1); + } + if (element.hasAbstractCopyrightElement()) { + composeMarkdown(t, "CitationAlternativeAbstractComponent", "abstractCopyright", element.getAbstractCopyrightElement(), -1); + } + } + + protected void composeCitationAuthorListComponent(Complex parent, String parentType, String name, Citation.CitationAuthorListComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "authorList", name, element, index); + if (element.hasCompleteElement()) { + composeBoolean(t, "CitationAuthorListComponent", "complete", element.getCompleteElement(), -1); + } + for (int i = 0; i < element.getAuthor().size(); i++) { + composeCitationAuthorListAuthorComponent(t, "CitationAuthorListComponent", "author", element.getAuthor().get(i), i); + } + } + + protected void composeCitationAuthorListAuthorComponent(Complex parent, String parentType, String name, Citation.CitationAuthorListAuthorComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "author", name, element, index); + if (element.hasLastNameElement()) { + composeString(t, "CitationAuthorListAuthorComponent", "lastName", element.getLastNameElement(), -1); + } + if (element.hasForeNameElement()) { + composeString(t, "CitationAuthorListAuthorComponent", "foreName", element.getForeNameElement(), -1); + } + if (element.hasSuffixElement()) { + composeString(t, "CitationAuthorListAuthorComponent", "suffix", element.getSuffixElement(), -1); + } + if (element.hasInitialsElement()) { + composeString(t, "CitationAuthorListAuthorComponent", "initials", element.getInitialsElement(), -1); + } + if (element.hasCollectiveNameElement()) { + composeString(t, "CitationAuthorListAuthorComponent", "collectiveName", element.getCollectiveNameElement(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "CitationAuthorListAuthorComponent", "identifier", element.getIdentifier().get(i), i); + } + for (int i = 0; i < element.getAffiliationInfo().size(); i++) { + composeCitationAuthorListAuthorAffiliationInfoComponent(t, "CitationAuthorListAuthorComponent", "affiliationInfo", element.getAffiliationInfo().get(i), i); + } + for (int i = 0; i < element.getAddress().size(); i++) { + composeString(t, "CitationAuthorListAuthorComponent", "address", element.getAddress().get(i), i); + } + for (int i = 0; i < element.getTelecom().size(); i++) { + composeContactPoint(t, "CitationAuthorListAuthorComponent", "telecom", element.getTelecom().get(i), i); + } + if (element.hasCorrespondingAuthorElement()) { + composeBoolean(t, "CitationAuthorListAuthorComponent", "correspondingAuthor", element.getCorrespondingAuthorElement(), -1); + } + if (element.hasListOrderElement()) { + composePositiveInt(t, "CitationAuthorListAuthorComponent", "listOrder", element.getListOrderElement(), -1); + } + } + + protected void composeCitationAuthorListAuthorAffiliationInfoComponent(Complex parent, String parentType, String name, Citation.CitationAuthorListAuthorAffiliationInfoComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "affiliationInfo", name, element, index); + if (element.hasAffiliationElement()) { + composeString(t, "CitationAuthorListAuthorAffiliationInfoComponent", "affiliation", element.getAffiliationElement(), -1); + } + if (element.hasRoleElement()) { + composeString(t, "CitationAuthorListAuthorAffiliationInfoComponent", "role", element.getRoleElement(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "CitationAuthorListAuthorAffiliationInfoComponent", "identifier", element.getIdentifier().get(i), i); + } + } + + protected void composeCitationAuthorStringComponent(Complex parent, String parentType, String name, Citation.CitationAuthorStringComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "authorString", name, element, index); + if (element.hasSource()) { + composeCodeableConcept(t, "CitationAuthorStringComponent", "source", element.getSource(), -1); + } + if (element.hasValueElement()) { + composeString(t, "CitationAuthorStringComponent", "value", element.getValueElement(), -1); + } + } + + protected void composeCitationContributorListComponent(Complex parent, String parentType, String name, Citation.CitationContributorListComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "contributorList", name, element, index); + if (element.hasCompleteElement()) { + composeBoolean(t, "CitationContributorListComponent", "complete", element.getCompleteElement(), -1); + } + for (int i = 0; i < element.getContributor().size(); i++) { + composeCitationContributorListContributorComponent(t, "CitationContributorListComponent", "contributor", element.getContributor().get(i), i); + } + } + + protected void composeCitationContributorListContributorComponent(Complex parent, String parentType, String name, Citation.CitationContributorListContributorComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "contributor", name, element, index); + if (element.hasLastNameElement()) { + composeString(t, "CitationContributorListContributorComponent", "lastName", element.getLastNameElement(), -1); + } + if (element.hasForeNameElement()) { + composeString(t, "CitationContributorListContributorComponent", "foreName", element.getForeNameElement(), -1); + } + if (element.hasSuffixElement()) { + composeString(t, "CitationContributorListContributorComponent", "suffix", element.getSuffixElement(), -1); + } + if (element.hasInitialsElement()) { + composeString(t, "CitationContributorListContributorComponent", "initials", element.getInitialsElement(), -1); + } + if (element.hasCollectiveNameElement()) { + composeString(t, "CitationContributorListContributorComponent", "collectiveName", element.getCollectiveNameElement(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "CitationContributorListContributorComponent", "identifier", element.getIdentifier().get(i), i); + } + for (int i = 0; i < element.getContribution().size(); i++) { + composeCodeableConcept(t, "CitationContributorListContributorComponent", "contribution", element.getContribution().get(i), i); + } + for (int i = 0; i < element.getAffiliationInfo().size(); i++) { + composeCitationContributorListContributorAffiliationInfoComponent(t, "CitationContributorListContributorComponent", "affiliationInfo", element.getAffiliationInfo().get(i), i); + } + if (element.hasListOrderElement()) { + composePositiveInt(t, "CitationContributorListContributorComponent", "listOrder", element.getListOrderElement(), -1); + } + } + + protected void composeCitationContributorListContributorAffiliationInfoComponent(Complex parent, String parentType, String name, Citation.CitationContributorListContributorAffiliationInfoComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "affiliationInfo", name, element, index); + if (element.hasAffiliationElement()) { + composeString(t, "CitationContributorListContributorAffiliationInfoComponent", "affiliation", element.getAffiliationElement(), -1); + } + if (element.hasRoleElement()) { + composeString(t, "CitationContributorListContributorAffiliationInfoComponent", "role", element.getRoleElement(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "CitationContributorListContributorAffiliationInfoComponent", "identifier", element.getIdentifier().get(i), i); + } + } + + protected void composeCitationAlternativeFormComponent(Complex parent, String parentType, String name, Citation.CitationAlternativeFormComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "alternativeForm", name, element, index); + if (element.hasPublishingModel()) { + composeCodeableConcept(t, "CitationAlternativeFormComponent", "publishingModel", element.getPublishingModel(), -1); + } + if (element.hasLanguage()) { + composeCodeableConcept(t, "CitationAlternativeFormComponent", "language", element.getLanguage(), -1); + } + if (element.hasJournalIssue()) { + composeCitationAlternativeFormJournalIssueComponent(t, "CitationAlternativeFormComponent", "journalIssue", element.getJournalIssue(), -1); + } + if (element.hasPagination()) { + composeCitationAlternativeFormPaginationComponent(t, "CitationAlternativeFormComponent", "pagination", element.getPagination(), -1); + } + } + + protected void composeCitationAlternativeFormJournalIssueComponent(Complex parent, String parentType, String name, Citation.CitationAlternativeFormJournalIssueComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "journalIssue", name, element, index); + if (element.hasCitedMedium()) { + composeCodeableConcept(t, "CitationAlternativeFormJournalIssueComponent", "citedMedium", element.getCitedMedium(), -1); + } + if (element.hasVolumeElement()) { + composeString(t, "CitationAlternativeFormJournalIssueComponent", "volume", element.getVolumeElement(), -1); + } + if (element.hasIssueElement()) { + composeString(t, "CitationAlternativeFormJournalIssueComponent", "issue", element.getIssueElement(), -1); + } + if (element.hasPublicationDateElement()) { + composeString(t, "CitationAlternativeFormJournalIssueComponent", "publicationDate", element.getPublicationDateElement(), -1); + } + } + + protected void composeCitationAlternativeFormPaginationComponent(Complex parent, String parentType, String name, Citation.CitationAlternativeFormPaginationComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "pagination", name, element, index); + if (element.hasPageStringElement()) { + composeString(t, "CitationAlternativeFormPaginationComponent", "pageString", element.getPageStringElement(), -1); + } + if (element.hasFirstPageElement()) { + composeString(t, "CitationAlternativeFormPaginationComponent", "firstPage", element.getFirstPageElement(), -1); + } + if (element.hasLastPageElement()) { + composeString(t, "CitationAlternativeFormPaginationComponent", "lastPage", element.getLastPageElement(), -1); + } + } + + protected void composeCitationMedlinePubMedComponent(Complex parent, String parentType, String name, Citation.CitationMedlinePubMedComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "medlinePubMed", name, element, index); + if (element.hasMedlineState()) { + composeCodeableConcept(t, "CitationMedlinePubMedComponent", "medlineState", element.getMedlineState(), -1); + } + if (element.hasOwner()) { + composeCodeableConcept(t, "CitationMedlinePubMedComponent", "owner", element.getOwner(), -1); + } + if (element.hasPmidElement()) { + composePositiveInt(t, "CitationMedlinePubMedComponent", "pmid", element.getPmidElement(), -1); + } + if (element.hasPmidVersionElement()) { + composePositiveInt(t, "CitationMedlinePubMedComponent", "pmidVersion", element.getPmidVersionElement(), -1); + } + if (element.hasDateCreatedElement()) { + composeDate(t, "CitationMedlinePubMedComponent", "dateCreated", element.getDateCreatedElement(), -1); + } + if (element.hasDateCompletedElement()) { + composeDate(t, "CitationMedlinePubMedComponent", "dateCompleted", element.getDateCompletedElement(), -1); + } + if (element.hasDateRevisedElement()) { + composeDate(t, "CitationMedlinePubMedComponent", "dateRevised", element.getDateRevisedElement(), -1); + } + for (int i = 0; i < element.getPubMedPubDate().size(); i++) { + composeCitationMedlinePubMedPubMedPubDateComponent(t, "CitationMedlinePubMedComponent", "pubMedPubDate", element.getPubMedPubDate().get(i), i); + } + if (element.hasPublicationState()) { + composeCodeableConcept(t, "CitationMedlinePubMedComponent", "publicationState", element.getPublicationState(), -1); + } + for (int i = 0; i < element.getRelatedArticle().size(); i++) { + composeCitationMedlinePubMedRelatedArticleComponent(t, "CitationMedlinePubMedComponent", "relatedArticle", element.getRelatedArticle().get(i), i); + } + } + + protected void composeCitationMedlinePubMedPubMedPubDateComponent(Complex parent, String parentType, String name, Citation.CitationMedlinePubMedPubMedPubDateComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "pubMedPubDate", name, element, index); + if (element.hasPublicationState()) { + composeCodeableConcept(t, "CitationMedlinePubMedPubMedPubDateComponent", "publicationState", element.getPublicationState(), -1); + } + if (element.hasDateElement()) { + composeDateTime(t, "CitationMedlinePubMedPubMedPubDateComponent", "date", element.getDateElement(), -1); + } + } + + protected void composeCitationMedlinePubMedRelatedArticleComponent(Complex parent, String parentType, String name, Citation.CitationMedlinePubMedRelatedArticleComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "relatedArticle", name, element, index); + if (element.hasCitationReference()) { + composeReference(t, "CitationMedlinePubMedRelatedArticleComponent", "citationReference", element.getCitationReference(), -1); + } + if (element.hasCitationMarkdownElement()) { + composeMarkdown(t, "CitationMedlinePubMedRelatedArticleComponent", "citationMarkdown", element.getCitationMarkdownElement(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "CitationMedlinePubMedRelatedArticleComponent", "identifier", element.getIdentifier().get(i), i); + } + } + protected void composeClaim(Complex parent, String parentType, String name, Claim element, int index) { if (element == null) return; @@ -5652,6 +6222,9 @@ public class RdfParser extends RdfParserBase { if (element.hasTypeElement()) { composeEnum(t, "ClinicalUseIssue", "type", element.getTypeElement(), -1); } + if (element.hasCategory()) { + composeCodeableConcept(t, "ClinicalUseIssue", "category", element.getCategory(), -1); + } for (int i = 0; i < element.getSubject().size(); i++) { composeReference(t, "ClinicalUseIssue", "subject", element.getSubject().get(i), i); } @@ -6954,8 +7527,8 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getCategory().size(); i++) { composeCodeableConcept(t, "Consent", "category", element.getCategory().get(i), i); } - if (element.hasPatient()) { - composeReference(t, "Consent", "patient", element.getPatient(), -1); + if (element.hasSubject()) { + composeReference(t, "Consent", "subject", element.getSubject(), -1); } if (element.hasDateTimeElement()) { composeDateTime(t, "Consent", "dateTime", element.getDateTimeElement(), -1); @@ -8232,6 +8805,9 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getIdentifier().size(); i++) { composeIdentifier(t, "Device", "identifier", element.getIdentifier().get(i), i); } + if (element.hasDisplayNameElement()) { + composeString(t, "Device", "displayName", element.getDisplayNameElement(), -1); + } if (element.hasDefinition()) { composeReference(t, "Device", "definition", element.getDefinition(), -1); } @@ -8271,8 +8847,8 @@ public class RdfParser extends RdfParserBase { if (element.hasPartNumberElement()) { composeString(t, "Device", "partNumber", element.getPartNumberElement(), -1); } - if (element.hasType()) { - composeCodeableConcept(t, "Device", "type", element.getType(), -1); + for (int i = 0; i < element.getType().size(); i++) { + composeCodeableConcept(t, "Device", "type", element.getType().get(i), i); } for (int i = 0; i < element.getSpecialization().size(); i++) { composeDeviceSpecializationComponent(t, "Device", "specialization", element.getSpecialization().get(i), i); @@ -8286,6 +8862,12 @@ public class RdfParser extends RdfParserBase { if (element.hasPatient()) { composeReference(t, "Device", "patient", element.getPatient(), -1); } + if (element.hasOperationalStatus()) { + composeDeviceOperationalStatusComponent(t, "Device", "operationalStatus", element.getOperationalStatus(), -1); + } + if (element.hasAssociationStatus()) { + composeDeviceAssociationStatusComponent(t, "Device", "associationStatus", element.getAssociationStatus(), -1); + } if (element.hasOwner()) { composeReference(t, "Device", "owner", element.getOwner(), -1); } @@ -8417,6 +8999,42 @@ public class RdfParser extends RdfParserBase { } } + protected void composeDeviceOperationalStatusComponent(Complex parent, String parentType, String name, Device.DeviceOperationalStatusComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "operationalStatus", name, element, index); + if (element.hasValue()) { + composeCodeableConcept(t, "DeviceOperationalStatusComponent", "value", element.getValue(), -1); + } + for (int i = 0; i < element.getReason().size(); i++) { + composeCodeableConcept(t, "DeviceOperationalStatusComponent", "reason", element.getReason().get(i), i); + } + } + + protected void composeDeviceAssociationStatusComponent(Complex parent, String parentType, String name, Device.DeviceAssociationStatusComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "associationStatus", name, element, index); + if (element.hasValue()) { + composeCodeableConcept(t, "DeviceAssociationStatusComponent", "value", element.getValue(), -1); + } + for (int i = 0; i < element.getReason().size(); i++) { + composeCodeableConcept(t, "DeviceAssociationStatusComponent", "reason", element.getReason().get(i), i); + } + } + protected void composeDeviceDefinition(Complex parent, String parentType, String name, DeviceDefinition element, int index) { if (element == null) return; @@ -8475,9 +9093,6 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getContact().size(); i++) { composeContactPoint(t, "DeviceDefinition", "contact", element.getContact().get(i), i); } - if (element.hasUrlElement()) { - composeUri(t, "DeviceDefinition", "url", element.getUrlElement(), -1); - } if (element.hasOnlineInformationElement()) { composeUri(t, "DeviceDefinition", "onlineInformation", element.getOnlineInformationElement(), -1); } @@ -8713,7 +9328,7 @@ public class RdfParser extends RdfParserBase { composeEnum(t, "DeviceRequest", "priority", element.getPriorityElement(), -1); } if (element.hasCode()) { - composeType(t, "DeviceRequest", "code", element.getCode(), -1); + composeCodeableReference(t, "DeviceRequest", "code", element.getCode(), -1); } for (int i = 0; i < element.getParameter().size(); i++) { composeDeviceRequestParameterComponent(t, "DeviceRequest", "parameter", element.getParameter().get(i), i); @@ -8793,29 +9408,41 @@ public class RdfParser extends RdfParserBase { if (element.hasStatusElement()) { composeEnum(t, "DeviceUseStatement", "status", element.getStatusElement(), -1); } + for (int i = 0; i < element.getCategory().size(); i++) { + composeCodeableConcept(t, "DeviceUseStatement", "category", element.getCategory().get(i), i); + } if (element.hasSubject()) { composeReference(t, "DeviceUseStatement", "subject", element.getSubject(), -1); } for (int i = 0; i < element.getDerivedFrom().size(); i++) { composeReference(t, "DeviceUseStatement", "derivedFrom", element.getDerivedFrom().get(i), i); } + if (element.hasContext()) { + composeReference(t, "DeviceUseStatement", "context", element.getContext(), -1); + } if (element.hasTiming()) { composeType(t, "DeviceUseStatement", "timing", element.getTiming(), -1); } - if (element.hasRecordedOnElement()) { - composeDateTime(t, "DeviceUseStatement", "recordedOn", element.getRecordedOnElement(), -1); + if (element.hasDateAssertedElement()) { + composeDateTime(t, "DeviceUseStatement", "dateAsserted", element.getDateAssertedElement(), -1); } - if (element.hasSource()) { - composeReference(t, "DeviceUseStatement", "source", element.getSource(), -1); + if (element.hasUsageStatus()) { + composeCodeableConcept(t, "DeviceUseStatement", "usageStatus", element.getUsageStatus(), -1); + } + for (int i = 0; i < element.getUsageReason().size(); i++) { + composeCodeableConcept(t, "DeviceUseStatement", "usageReason", element.getUsageReason().get(i), i); + } + if (element.hasInformationSource()) { + composeReference(t, "DeviceUseStatement", "informationSource", element.getInformationSource(), -1); } if (element.hasDevice()) { - composeReference(t, "DeviceUseStatement", "device", element.getDevice(), -1); + composeCodeableReference(t, "DeviceUseStatement", "device", element.getDevice(), -1); } for (int i = 0; i < element.getReason().size(); i++) { composeCodeableReference(t, "DeviceUseStatement", "reason", element.getReason().get(i), i); } if (element.hasBodySite()) { - composeCodeableConcept(t, "DeviceUseStatement", "bodySite", element.getBodySite(), -1); + composeCodeableReference(t, "DeviceUseStatement", "bodySite", element.getBodySite(), -1); } for (int i = 0; i < element.getNote().size(); i++) { composeAnnotation(t, "DeviceUseStatement", "note", element.getNote().get(i), i); @@ -9675,9 +10302,6 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getNote().size(); i++) { composeAnnotation(t, "Evidence", "note", element.getNote().get(i), i); } - if (element.hasReferentGroup()) { - composeEvidenceReferentGroupComponent(t, "Evidence", "referentGroup", element.getReferentGroup(), -1); - } for (int i = 0; i < element.getVariableDefinition().size(); i++) { composeEvidenceVariableDefinitionComponent(t, "Evidence", "variableDefinition", element.getVariableDefinition().get(i), i); } @@ -9698,33 +10322,6 @@ public class RdfParser extends RdfParserBase { } } - protected void composeEvidenceReferentGroupComponent(Complex parent, String parentType, String name, Evidence.EvidenceReferentGroupComponent element, int index) { - if (element == null) - return; - Complex t; - if (Utilities.noString(parentType)) - t = parent; - else { - t = parent.predicate("fhir:"+parentType+'.'+name); - } - composeBackboneElement(t, "referentGroup", name, element, index); - if (element.hasDescriptionElement()) { - composeMarkdown(t, "EvidenceReferentGroupComponent", "description", element.getDescriptionElement(), -1); - } - for (int i = 0; i < element.getNote().size(); i++) { - composeAnnotation(t, "EvidenceReferentGroupComponent", "note", element.getNote().get(i), i); - } - if (element.hasEvidenceSource()) { - composeReference(t, "EvidenceReferentGroupComponent", "evidenceSource", element.getEvidenceSource(), -1); - } - if (element.hasIntendedGroup()) { - composeReference(t, "EvidenceReferentGroupComponent", "intendedGroup", element.getIntendedGroup(), -1); - } - if (element.hasDirectnessMatch()) { - composeCodeableConcept(t, "EvidenceReferentGroupComponent", "directnessMatch", element.getDirectnessMatch(), -1); - } - } - protected void composeEvidenceVariableDefinitionComponent(Complex parent, String parentType, String name, Evidence.EvidenceVariableDefinitionComponent element, int index) { if (element == null) return; @@ -9744,11 +10341,11 @@ public class RdfParser extends RdfParserBase { if (element.hasVariableRole()) { composeCodeableConcept(t, "EvidenceVariableDefinitionComponent", "variableRole", element.getVariableRole(), -1); } - if (element.hasActualDefinition()) { - composeReference(t, "EvidenceVariableDefinitionComponent", "actualDefinition", element.getActualDefinition(), -1); + if (element.hasObserved()) { + composeReference(t, "EvidenceVariableDefinitionComponent", "observed", element.getObserved(), -1); } - if (element.hasIntendedDefinition()) { - composeReference(t, "EvidenceVariableDefinitionComponent", "intendedDefinition", element.getIntendedDefinition(), -1); + if (element.hasIntended()) { + composeReference(t, "EvidenceVariableDefinitionComponent", "intended", element.getIntended(), -1); } if (element.hasDirectnessMatch()) { composeCodeableConcept(t, "EvidenceVariableDefinitionComponent", "directnessMatch", element.getDirectnessMatch(), -1); @@ -9803,6 +10400,78 @@ public class RdfParser extends RdfParserBase { } } + protected void composeEvidenceFocus(Complex parent, String parentType, String name, EvidenceFocus element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeMetadataResource(t, "EvidenceFocus", name, element, index); + if (element.hasUrlElement()) { + composeUri(t, "EvidenceFocus", "url", element.getUrlElement(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "EvidenceFocus", "identifier", element.getIdentifier().get(i), i); + } + if (element.hasVersionElement()) { + composeString(t, "EvidenceFocus", "version", element.getVersionElement(), -1); + } + if (element.hasNameElement()) { + composeString(t, "EvidenceFocus", "name", element.getNameElement(), -1); + } + if (element.hasStatusElement()) { + composeEnum(t, "EvidenceFocus", "status", element.getStatusElement(), -1); + } + for (int i = 0; i < element.getUseContext().size(); i++) { + composeUsageContext(t, "EvidenceFocus", "useContext", element.getUseContext().get(i), i); + } + if (element.hasDateElement()) { + composeDateTime(t, "EvidenceFocus", "date", element.getDateElement(), -1); + } + for (int i = 0; i < element.getNote().size(); i++) { + composeAnnotation(t, "EvidenceFocus", "note", element.getNote().get(i), i); + } + if (element.hasCopyrightElement()) { + composeMarkdown(t, "EvidenceFocus", "copyright", element.getCopyrightElement(), -1); + } + if (element.hasCiteAs()) { + composeReference(t, "EvidenceFocus", "citeAs", element.getCiteAs(), -1); + } + for (int i = 0; i < element.getCharacteristic().size(); i++) { + composeEvidenceFocusCharacteristicComponent(t, "EvidenceFocus", "characteristic", element.getCharacteristic().get(i), i); + } + for (int i = 0; i < element.getRelatedArtifact().size(); i++) { + composeRelatedArtifact(t, "EvidenceFocus", "relatedArtifact", element.getRelatedArtifact().get(i), i); + } + } + + protected void composeEvidenceFocusCharacteristicComponent(Complex parent, String parentType, String name, EvidenceFocus.EvidenceFocusCharacteristicComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "characteristic", name, element, index); + if (element.hasCode()) { + composeCodeableConcept(t, "EvidenceFocusCharacteristicComponent", "code", element.getCode(), -1); + } + if (element.hasValue()) { + composeType(t, "EvidenceFocusCharacteristicComponent", "value", element.getValue(), -1); + } + if (element.hasExcludeElement()) { + composeBoolean(t, "EvidenceFocusCharacteristicComponent", "exclude", element.getExcludeElement(), -1); + } + if (element.hasPeriod()) { + composePeriod(t, "EvidenceFocusCharacteristicComponent", "period", element.getPeriod(), -1); + } + } + protected void composeEvidenceVariable(Complex parent, String parentType, String name, EvidenceVariable element, int index) { if (element == null) return; @@ -9894,6 +10563,9 @@ public class RdfParser extends RdfParserBase { if (element.hasActualElement()) { composeBoolean(t, "EvidenceVariable", "actual", element.getActualElement(), -1); } + if (element.hasCharacteristicCombinationElement()) { + composeEnum(t, "EvidenceVariable", "characteristicCombination", element.getCharacteristicCombinationElement(), -1); + } for (int i = 0; i < element.getCharacteristic().size(); i++) { composeEvidenceVariableCharacteristicComponent(t, "EvidenceVariable", "characteristic", element.getCharacteristic().get(i), i); } @@ -9921,23 +10593,41 @@ public class RdfParser extends RdfParserBase { if (element.hasDevice()) { composeReference(t, "EvidenceVariableCharacteristicComponent", "device", element.getDevice(), -1); } - for (int i = 0; i < element.getBooleanSet().size(); i++) { - composeString(t, "EvidenceVariableCharacteristicComponent", "booleanSet", element.getBooleanSet().get(i), i); - } if (element.hasExcludeElement()) { composeBoolean(t, "EvidenceVariableCharacteristicComponent", "exclude", element.getExcludeElement(), -1); } - if (element.hasParticipantEffective()) { - composeType(t, "EvidenceVariableCharacteristicComponent", "participantEffective", element.getParticipantEffective(), -1); - } if (element.hasTimeFromStart()) { - composeDuration(t, "EvidenceVariableCharacteristicComponent", "timeFromStart", element.getTimeFromStart(), -1); + composeEvidenceVariableCharacteristicTimeFromStartComponent(t, "EvidenceVariableCharacteristicComponent", "timeFromStart", element.getTimeFromStart(), -1); } if (element.hasGroupMeasureElement()) { composeEnum(t, "EvidenceVariableCharacteristicComponent", "groupMeasure", element.getGroupMeasureElement(), -1); } } + protected void composeEvidenceVariableCharacteristicTimeFromStartComponent(Complex parent, String parentType, String name, EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "timeFromStart", name, element, index); + if (element.hasDescriptionElement()) { + composeString(t, "EvidenceVariableCharacteristicTimeFromStartComponent", "description", element.getDescriptionElement(), -1); + } + if (element.hasQuantity()) { + composeQuantity(t, "EvidenceVariableCharacteristicTimeFromStartComponent", "quantity", element.getQuantity(), -1); + } + if (element.hasRange()) { + composeRange(t, "EvidenceVariableCharacteristicTimeFromStartComponent", "range", element.getRange(), -1); + } + for (int i = 0; i < element.getNote().size(); i++) { + composeAnnotation(t, "EvidenceVariableCharacteristicTimeFromStartComponent", "note", element.getNote().get(i), i); + } + } + protected void composeExampleScenario(Complex parent, String parentType, String name, ExampleScenario element, int index) { if (element == null) return; @@ -12027,11 +12717,11 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getTargetDisease().size(); i++) { composeCodeableConcept(t, "ImmunizationProtocolAppliedComponent", "targetDisease", element.getTargetDisease().get(i), i); } - if (element.hasDoseNumber()) { - composeType(t, "ImmunizationProtocolAppliedComponent", "doseNumber", element.getDoseNumber(), -1); + if (element.hasDoseNumberElement()) { + composeString(t, "ImmunizationProtocolAppliedComponent", "doseNumber", element.getDoseNumberElement(), -1); } - if (element.hasSeriesDoses()) { - composeType(t, "ImmunizationProtocolAppliedComponent", "seriesDoses", element.getSeriesDoses(), -1); + if (element.hasSeriesDosesElement()) { + composeString(t, "ImmunizationProtocolAppliedComponent", "seriesDoses", element.getSeriesDosesElement(), -1); } } @@ -12078,11 +12768,11 @@ public class RdfParser extends RdfParserBase { if (element.hasSeriesElement()) { composeString(t, "ImmunizationEvaluation", "series", element.getSeriesElement(), -1); } - if (element.hasDoseNumber()) { - composeType(t, "ImmunizationEvaluation", "doseNumber", element.getDoseNumber(), -1); + if (element.hasDoseNumberElement()) { + composeString(t, "ImmunizationEvaluation", "doseNumber", element.getDoseNumberElement(), -1); } - if (element.hasSeriesDoses()) { - composeType(t, "ImmunizationEvaluation", "seriesDoses", element.getSeriesDoses(), -1); + if (element.hasSeriesDosesElement()) { + composeString(t, "ImmunizationEvaluation", "seriesDoses", element.getSeriesDosesElement(), -1); } } @@ -12147,11 +12837,11 @@ public class RdfParser extends RdfParserBase { if (element.hasSeriesElement()) { composeString(t, "ImmunizationRecommendationRecommendationComponent", "series", element.getSeriesElement(), -1); } - if (element.hasDoseNumber()) { - composeType(t, "ImmunizationRecommendationRecommendationComponent", "doseNumber", element.getDoseNumber(), -1); + if (element.hasDoseNumberElement()) { + composeString(t, "ImmunizationRecommendationRecommendationComponent", "doseNumber", element.getDoseNumberElement(), -1); } - if (element.hasSeriesDoses()) { - composeType(t, "ImmunizationRecommendationRecommendationComponent", "seriesDoses", element.getSeriesDoses(), -1); + if (element.hasSeriesDosesElement()) { + composeString(t, "ImmunizationRecommendationRecommendationComponent", "seriesDoses", element.getSeriesDosesElement(), -1); } for (int i = 0; i < element.getSupportingImmunization().size(); i++) { composeReference(t, "ImmunizationRecommendationRecommendationComponent", "supportingImmunization", element.getSupportingImmunization().get(i), i); @@ -12513,6 +13203,12 @@ public class RdfParser extends RdfParserBase { if (element.hasRole()) { composeCodeableConcept(t, "Ingredient", "role", element.getRole(), -1); } + for (int i = 0; i < element.getFunction().size(); i++) { + composeCodeableConcept(t, "Ingredient", "function", element.getFunction().get(i), i); + } + if (element.hasDescriptionElement()) { + composeMarkdown(t, "Ingredient", "description", element.getDescriptionElement(), -1); + } if (element.hasAllergenicIndicatorElement()) { composeBoolean(t, "Ingredient", "allergenicIndicator", element.getAllergenicIndicatorElement(), -1); } @@ -12567,12 +13263,18 @@ public class RdfParser extends RdfParserBase { if (element.hasPresentationHighLimit()) { composeRatio(t, "IngredientSpecifiedSubstanceStrengthComponent", "presentationHighLimit", element.getPresentationHighLimit(), -1); } + if (element.hasPresentationTextElement()) { + composeString(t, "IngredientSpecifiedSubstanceStrengthComponent", "presentationText", element.getPresentationTextElement(), -1); + } if (element.hasConcentration()) { composeRatio(t, "IngredientSpecifiedSubstanceStrengthComponent", "concentration", element.getConcentration(), -1); } if (element.hasConcentrationHighLimit()) { composeRatio(t, "IngredientSpecifiedSubstanceStrengthComponent", "concentrationHighLimit", element.getConcentrationHighLimit(), -1); } + if (element.hasConcentrationTextElement()) { + composeString(t, "IngredientSpecifiedSubstanceStrengthComponent", "concentrationText", element.getConcentrationTextElement(), -1); + } if (element.hasMeasurementPointElement()) { composeString(t, "IngredientSpecifiedSubstanceStrengthComponent", "measurementPoint", element.getMeasurementPointElement(), -1); } @@ -13356,12 +14058,12 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getIngredient().size(); i++) { composeReference(t, "ManufacturedItemDefinition", "ingredient", element.getIngredient().get(i), i); } - for (int i = 0; i < element.getCharacteristic().size(); i++) { - composeManufacturedItemDefinitionCharacteristicComponent(t, "ManufacturedItemDefinition", "characteristic", element.getCharacteristic().get(i), i); + for (int i = 0; i < element.getProperty().size(); i++) { + composeManufacturedItemDefinitionPropertyComponent(t, "ManufacturedItemDefinition", "property", element.getProperty().get(i), i); } } - protected void composeManufacturedItemDefinitionCharacteristicComponent(Complex parent, String parentType, String name, ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent element, int index) { + protected void composeManufacturedItemDefinitionPropertyComponent(Complex parent, String parentType, String name, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element, int index) { if (element == null) return; Complex t; @@ -13370,12 +14072,12 @@ public class RdfParser extends RdfParserBase { else { t = parent.predicate("fhir:"+parentType+'.'+name); } - composeBackboneElement(t, "characteristic", name, element, index); - if (element.hasCode()) { - composeCodeableConcept(t, "ManufacturedItemDefinitionCharacteristicComponent", "code", element.getCode(), -1); + composeBackboneElement(t, "property", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "ManufacturedItemDefinitionPropertyComponent", "type", element.getType(), -1); } if (element.hasValue()) { - composeType(t, "ManufacturedItemDefinitionCharacteristicComponent", "value", element.getValue(), -1); + composeType(t, "ManufacturedItemDefinitionPropertyComponent", "value", element.getValue(), -1); } } @@ -13846,7 +14548,7 @@ public class RdfParser extends RdfParserBase { } composeBackboneElement(t, "ingredient", name, element, index); if (element.hasItem()) { - composeType(t, "MedicationIngredientComponent", "item", element.getItem(), -1); + composeCodeableReference(t, "MedicationIngredientComponent", "item", element.getItem(), -1); } if (element.hasIsActiveElement()) { composeBoolean(t, "MedicationIngredientComponent", "isActive", element.getIsActiveElement(), -1); @@ -13909,7 +14611,7 @@ public class RdfParser extends RdfParserBase { composeCodeableConcept(t, "MedicationAdministration", "category", element.getCategory().get(i), i); } if (element.hasMedication()) { - composeType(t, "MedicationAdministration", "medication", element.getMedication(), -1); + composeCodeableReference(t, "MedicationAdministration", "medication", element.getMedication(), -1); } if (element.hasSubject()) { composeReference(t, "MedicationAdministration", "subject", element.getSubject(), -1); @@ -14020,13 +14722,13 @@ public class RdfParser extends RdfParserBase { composeEnum(t, "MedicationDispense", "status", element.getStatusElement(), -1); } if (element.hasStatusReason()) { - composeType(t, "MedicationDispense", "statusReason", element.getStatusReason(), -1); + composeCodeableReference(t, "MedicationDispense", "statusReason", element.getStatusReason(), -1); } for (int i = 0; i < element.getCategory().size(); i++) { composeCodeableConcept(t, "MedicationDispense", "category", element.getCategory().get(i), i); } if (element.hasMedication()) { - composeType(t, "MedicationDispense", "medication", element.getMedication(), -1); + composeCodeableReference(t, "MedicationDispense", "medication", element.getMedication(), -1); } if (element.hasSubject()) { composeReference(t, "MedicationDispense", "subject", element.getSubject(), -1); @@ -14260,7 +14962,7 @@ public class RdfParser extends RdfParserBase { } composeBackboneElement(t, "ingredient", name, element, index); if (element.hasItem()) { - composeType(t, "MedicationKnowledgeIngredientComponent", "item", element.getItem(), -1); + composeCodeableReference(t, "MedicationKnowledgeIngredientComponent", "item", element.getItem(), -1); } if (element.hasIsActiveElement()) { composeBoolean(t, "MedicationKnowledgeIngredientComponent", "isActive", element.getIsActiveElement(), -1); @@ -14323,7 +15025,7 @@ public class RdfParser extends RdfParserBase { composeMedicationKnowledgeAdministrationGuidelineDosageComponent(t, "MedicationKnowledgeAdministrationGuidelineComponent", "dosage", element.getDosage().get(i), i); } if (element.hasIndication()) { - composeType(t, "MedicationKnowledgeAdministrationGuidelineComponent", "indication", element.getIndication(), -1); + composeCodeableReference(t, "MedicationKnowledgeAdministrationGuidelineComponent", "indication", element.getIndication(), -1); } for (int i = 0; i < element.getPatientCharacteristic().size(); i++) { composeMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent(t, "MedicationKnowledgeAdministrationGuidelineComponent", "patientCharacteristic", element.getPatientCharacteristic().get(i), i); @@ -14358,11 +15060,11 @@ public class RdfParser extends RdfParserBase { t = parent.predicate("fhir:"+parentType+'.'+name); } composeBackboneElement(t, "patientCharacteristic", name, element, index); - if (element.hasCharacteristic()) { - composeType(t, "MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent", "characteristic", element.getCharacteristic(), -1); + if (element.hasType()) { + composeCodeableConcept(t, "MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent", "type", element.getType(), -1); } - for (int i = 0; i < element.getValue().size(); i++) { - composeString(t, "MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent", "value", element.getValue().get(i), i); + if (element.hasValue()) { + composeType(t, "MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent", "value", element.getValue(), -1); } } @@ -14545,7 +15247,7 @@ public class RdfParser extends RdfParserBase { composeReference(t, "MedicationRequest", "informationSource", element.getInformationSource(), -1); } if (element.hasMedication()) { - composeType(t, "MedicationRequest", "medication", element.getMedication(), -1); + composeCodeableReference(t, "MedicationRequest", "medication", element.getMedication(), -1); } if (element.hasSubject()) { composeReference(t, "MedicationRequest", "subject", element.getSubject(), -1); @@ -14716,7 +15418,7 @@ public class RdfParser extends RdfParserBase { composeCodeableConcept(t, "MedicationUsage", "category", element.getCategory().get(i), i); } if (element.hasMedication()) { - composeType(t, "MedicationUsage", "medication", element.getMedication(), -1); + composeCodeableReference(t, "MedicationUsage", "medication", element.getMedication(), -1); } if (element.hasSubject()) { composeReference(t, "MedicationUsage", "subject", element.getSubject(), -1); @@ -14770,13 +15472,16 @@ public class RdfParser extends RdfParserBase { composeCodeableConcept(t, "MedicinalProductDefinition", "type", element.getType(), -1); } if (element.hasDomain()) { - composeCoding(t, "MedicinalProductDefinition", "domain", element.getDomain(), -1); + composeCodeableConcept(t, "MedicinalProductDefinition", "domain", element.getDomain(), -1); } if (element.hasVersionElement()) { composeString(t, "MedicinalProductDefinition", "version", element.getVersionElement(), -1); } if (element.hasStatus()) { - composeCoding(t, "MedicinalProductDefinition", "status", element.getStatus(), -1); + composeCodeableConcept(t, "MedicinalProductDefinition", "status", element.getStatus(), -1); + } + if (element.hasStatusDateElement()) { + composeDateTime(t, "MedicinalProductDefinition", "statusDate", element.getStatusDateElement(), -1); } if (element.hasDescriptionElement()) { composeMarkdown(t, "MedicinalProductDefinition", "description", element.getDescriptionElement(), -1); @@ -14802,6 +15507,9 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getProductClassification().size(); i++) { composeCodeableConcept(t, "MedicinalProductDefinition", "productClassification", element.getProductClassification().get(i), i); } + for (int i = 0; i < element.getCharacteristic().size(); i++) { + composeCodeableConcept(t, "MedicinalProductDefinition", "characteristic", element.getCharacteristic().get(i), i); + } for (int i = 0; i < element.getMarketingStatus().size(); i++) { composeMarketingStatus(t, "MedicinalProductDefinition", "marketingStatus", element.getMarketingStatus().get(i), i); } @@ -14869,7 +15577,7 @@ public class RdfParser extends RdfParserBase { composeString(t, "MedicinalProductDefinitionNameComponent", "productName", element.getProductNameElement(), -1); } if (element.hasType()) { - composeCoding(t, "MedicinalProductDefinitionNameComponent", "type", element.getType(), -1); + composeCodeableConcept(t, "MedicinalProductDefinitionNameComponent", "type", element.getType(), -1); } for (int i = 0; i < element.getNamePart().size(); i++) { composeMedicinalProductDefinitionNameNamePartComponent(t, "MedicinalProductDefinitionNameComponent", "namePart", element.getNamePart().get(i), i); @@ -14893,7 +15601,7 @@ public class RdfParser extends RdfParserBase { composeString(t, "MedicinalProductDefinitionNameNamePartComponent", "part", element.getPartElement(), -1); } if (element.hasType()) { - composeCoding(t, "MedicinalProductDefinitionNameNamePartComponent", "type", element.getType(), -1); + composeCodeableConcept(t, "MedicinalProductDefinitionNameNamePartComponent", "type", element.getType(), -1); } } @@ -14932,7 +15640,7 @@ public class RdfParser extends RdfParserBase { composeType(t, "MedicinalProductDefinitionCrossReferenceComponent", "product", element.getProduct(), -1); } if (element.hasType()) { - composeCoding(t, "MedicinalProductDefinitionCrossReferenceComponent", "type", element.getType(), -1); + composeCodeableConcept(t, "MedicinalProductDefinitionCrossReferenceComponent", "type", element.getType(), -1); } } @@ -14947,7 +15655,7 @@ public class RdfParser extends RdfParserBase { } composeBackboneElement(t, "manufacturingBusinessOperation", name, element, index); if (element.hasType()) { - composeType(t, "MedicinalProductDefinitionManufacturingBusinessOperationComponent", "type", element.getType(), -1); + composeCodeableReference(t, "MedicinalProductDefinitionManufacturingBusinessOperationComponent", "type", element.getType(), -1); } if (element.hasEffectiveDate()) { composePeriod(t, "MedicinalProductDefinitionManufacturingBusinessOperationComponent", "effectiveDate", element.getEffectiveDate(), -1); @@ -15615,6 +16323,12 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getIdentifier().size(); i++) { composeIdentifier(t, "NutritionIntake", "identifier", element.getIdentifier().get(i), i); } + for (int i = 0; i < element.getInstantiatesCanonical().size(); i++) { + composeCanonical(t, "NutritionIntake", "instantiatesCanonical", element.getInstantiatesCanonical().get(i), i); + } + for (int i = 0; i < element.getInstantiatesUri().size(); i++) { + composeUri(t, "NutritionIntake", "instantiatesUri", element.getInstantiatesUri().get(i), i); + } for (int i = 0; i < element.getBasedOn().size(); i++) { composeReference(t, "NutritionIntake", "basedOn", element.getBasedOn().get(i), i); } @@ -15627,14 +16341,8 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getStatusReason().size(); i++) { composeCodeableConcept(t, "NutritionIntake", "statusReason", element.getStatusReason().get(i), i); } - for (int i = 0; i < element.getCategory().size(); i++) { - composeCodeableConcept(t, "NutritionIntake", "category", element.getCategory().get(i), i); - } - for (int i = 0; i < element.getConsumedItem().size(); i++) { - composeNutritionIntakeConsumedItemComponent(t, "NutritionIntake", "consumedItem", element.getConsumedItem().get(i), i); - } - for (int i = 0; i < element.getIngredientLabel().size(); i++) { - composeNutritionIntakeIngredientLabelComponent(t, "NutritionIntake", "ingredientLabel", element.getIngredientLabel().get(i), i); + if (element.hasCode()) { + composeCodeableConcept(t, "NutritionIntake", "code", element.getCode(), -1); } if (element.hasSubject()) { composeReference(t, "NutritionIntake", "subject", element.getSubject(), -1); @@ -15642,20 +16350,32 @@ public class RdfParser extends RdfParserBase { if (element.hasEncounter()) { composeReference(t, "NutritionIntake", "encounter", element.getEncounter(), -1); } - if (element.hasEffective()) { - composeType(t, "NutritionIntake", "effective", element.getEffective(), -1); + if (element.hasOccurrence()) { + composeType(t, "NutritionIntake", "occurrence", element.getOccurrence(), -1); } - if (element.hasDateAssertedElement()) { - composeDateTime(t, "NutritionIntake", "dateAsserted", element.getDateAssertedElement(), -1); + if (element.hasRecordedElement()) { + composeDateTime(t, "NutritionIntake", "recorded", element.getRecordedElement(), -1); } - if (element.hasInformationSource()) { - composeReference(t, "NutritionIntake", "informationSource", element.getInformationSource(), -1); + if (element.hasReported()) { + composeType(t, "NutritionIntake", "reported", element.getReported(), -1); + } + for (int i = 0; i < element.getConsumedItem().size(); i++) { + composeNutritionIntakeConsumedItemComponent(t, "NutritionIntake", "consumedItem", element.getConsumedItem().get(i), i); + } + for (int i = 0; i < element.getIngredientLabel().size(); i++) { + composeNutritionIntakeIngredientLabelComponent(t, "NutritionIntake", "ingredientLabel", element.getIngredientLabel().get(i), i); + } + for (int i = 0; i < element.getPerformer().size(); i++) { + composeNutritionIntakePerformerComponent(t, "NutritionIntake", "performer", element.getPerformer().get(i), i); + } + if (element.hasLocation()) { + composeReference(t, "NutritionIntake", "location", element.getLocation(), -1); } for (int i = 0; i < element.getDerivedFrom().size(); i++) { composeReference(t, "NutritionIntake", "derivedFrom", element.getDerivedFrom().get(i), i); } - for (int i = 0; i < element.getReasonCode().size(); i++) { - composeCodeableReference(t, "NutritionIntake", "reasonCode", element.getReasonCode().get(i), i); + for (int i = 0; i < element.getReason().size(); i++) { + composeCodeableReference(t, "NutritionIntake", "reason", element.getReason().get(i), i); } for (int i = 0; i < element.getNote().size(); i++) { composeAnnotation(t, "NutritionIntake", "note", element.getNote().get(i), i); @@ -15676,7 +16396,7 @@ public class RdfParser extends RdfParserBase { composeCodeableConcept(t, "NutritionIntakeConsumedItemComponent", "type", element.getType(), -1); } if (element.hasNutritionProduct()) { - composeCodeableConcept(t, "NutritionIntakeConsumedItemComponent", "nutritionProduct", element.getNutritionProduct(), -1); + composeCodeableReference(t, "NutritionIntakeConsumedItemComponent", "nutritionProduct", element.getNutritionProduct(), -1); } if (element.hasSchedule()) { composeTiming(t, "NutritionIntakeConsumedItemComponent", "schedule", element.getSchedule(), -1); @@ -15706,13 +16426,31 @@ public class RdfParser extends RdfParserBase { } composeBackboneElement(t, "ingredientLabel", name, element, index); if (element.hasNutrient()) { - composeCodeableConcept(t, "NutritionIntakeIngredientLabelComponent", "nutrient", element.getNutrient(), -1); + composeCodeableReference(t, "NutritionIntakeIngredientLabelComponent", "nutrient", element.getNutrient(), -1); } if (element.hasAmount()) { composeQuantity(t, "NutritionIntakeIngredientLabelComponent", "amount", element.getAmount(), -1); } } + protected void composeNutritionIntakePerformerComponent(Complex parent, String parentType, String name, NutritionIntake.NutritionIntakePerformerComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "performer", name, element, index); + if (element.hasFunction()) { + composeCodeableConcept(t, "NutritionIntakePerformerComponent", "function", element.getFunction(), -1); + } + if (element.hasActor()) { + composeReference(t, "NutritionIntakePerformerComponent", "actor", element.getActor(), -1); + } + } + protected void composeNutritionOrder(Complex parent, String parentType, String name, NutritionOrder element, int index) { if (element == null) return; @@ -15929,6 +16667,129 @@ public class RdfParser extends RdfParserBase { } } + protected void composeNutritionProduct(Complex parent, String parentType, String name, NutritionProduct element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeDomainResource(t, "NutritionProduct", name, element, index); + if (element.hasStatusElement()) { + composeEnum(t, "NutritionProduct", "status", element.getStatusElement(), -1); + } + for (int i = 0; i < element.getCategory().size(); i++) { + composeCodeableConcept(t, "NutritionProduct", "category", element.getCategory().get(i), i); + } + if (element.hasCode()) { + composeCodeableConcept(t, "NutritionProduct", "code", element.getCode(), -1); + } + for (int i = 0; i < element.getManufacturer().size(); i++) { + composeReference(t, "NutritionProduct", "manufacturer", element.getManufacturer().get(i), i); + } + for (int i = 0; i < element.getNutrient().size(); i++) { + composeNutritionProductNutrientComponent(t, "NutritionProduct", "nutrient", element.getNutrient().get(i), i); + } + for (int i = 0; i < element.getIngredient().size(); i++) { + composeNutritionProductIngredientComponent(t, "NutritionProduct", "ingredient", element.getIngredient().get(i), i); + } + for (int i = 0; i < element.getKnownAllergen().size(); i++) { + composeCodeableReference(t, "NutritionProduct", "knownAllergen", element.getKnownAllergen().get(i), i); + } + for (int i = 0; i < element.getProductCharacteristic().size(); i++) { + composeNutritionProductProductCharacteristicComponent(t, "NutritionProduct", "productCharacteristic", element.getProductCharacteristic().get(i), i); + } + if (element.hasInstance()) { + composeNutritionProductInstanceComponent(t, "NutritionProduct", "instance", element.getInstance(), -1); + } + for (int i = 0; i < element.getNote().size(); i++) { + composeAnnotation(t, "NutritionProduct", "note", element.getNote().get(i), i); + } + } + + protected void composeNutritionProductNutrientComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductNutrientComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "nutrient", name, element, index); + if (element.hasItem()) { + composeCodeableReference(t, "NutritionProductNutrientComponent", "item", element.getItem(), -1); + } + for (int i = 0; i < element.getAmount().size(); i++) { + composeRatio(t, "NutritionProductNutrientComponent", "amount", element.getAmount().get(i), i); + } + } + + protected void composeNutritionProductIngredientComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductIngredientComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "ingredient", name, element, index); + if (element.hasItem()) { + composeCodeableReference(t, "NutritionProductIngredientComponent", "item", element.getItem(), -1); + } + for (int i = 0; i < element.getAmount().size(); i++) { + composeRatio(t, "NutritionProductIngredientComponent", "amount", element.getAmount().get(i), i); + } + } + + protected void composeNutritionProductProductCharacteristicComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductProductCharacteristicComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "productCharacteristic", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "NutritionProductProductCharacteristicComponent", "type", element.getType(), -1); + } + if (element.hasValue()) { + composeType(t, "NutritionProductProductCharacteristicComponent", "value", element.getValue(), -1); + } + } + + protected void composeNutritionProductInstanceComponent(Complex parent, String parentType, String name, NutritionProduct.NutritionProductInstanceComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "instance", name, element, index); + if (element.hasQuantity()) { + composeQuantity(t, "NutritionProductInstanceComponent", "quantity", element.getQuantity(), -1); + } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "NutritionProductInstanceComponent", "identifier", element.getIdentifier().get(i), i); + } + if (element.hasLotNumberElement()) { + composeString(t, "NutritionProductInstanceComponent", "lotNumber", element.getLotNumberElement(), -1); + } + if (element.hasExpiryElement()) { + composeDateTime(t, "NutritionProductInstanceComponent", "expiry", element.getExpiryElement(), -1); + } + if (element.hasUseByElement()) { + composeDateTime(t, "NutritionProductInstanceComponent", "useBy", element.getUseByElement(), -1); + } + } + protected void composeObservation(Complex parent, String parentType, String name, Observation element, int index) { if (element == null) return; @@ -16641,11 +17502,20 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getIdentifier().size(); i++) { composeIdentifier(t, "PackagedProductDefinition", "identifier", element.getIdentifier().get(i), i); } + if (element.hasNameElement()) { + composeString(t, "PackagedProductDefinition", "name", element.getNameElement(), -1); + } for (int i = 0; i < element.getSubject().size(); i++) { composeReference(t, "PackagedProductDefinition", "subject", element.getSubject().get(i), i); } + if (element.hasStatus()) { + composeCodeableConcept(t, "PackagedProductDefinition", "status", element.getStatus(), -1); + } + if (element.hasStatusDateElement()) { + composeDateTime(t, "PackagedProductDefinition", "statusDate", element.getStatusDateElement(), -1); + } if (element.hasDescriptionElement()) { - composeString(t, "PackagedProductDefinition", "description", element.getDescriptionElement(), -1); + composeMarkdown(t, "PackagedProductDefinition", "description", element.getDescriptionElement(), -1); } if (element.hasLegalStatusOfSupply()) { composeCodeableConcept(t, "PackagedProductDefinition", "legalStatusOfSupply", element.getLegalStatusOfSupply(), -1); @@ -16653,6 +17523,9 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getMarketingStatus().size(); i++) { composeMarketingStatus(t, "PackagedProductDefinition", "marketingStatus", element.getMarketingStatus().get(i), i); } + for (int i = 0; i < element.getCharacteristic().size(); i++) { + composeCodeableConcept(t, "PackagedProductDefinition", "characteristic", element.getCharacteristic().get(i), i); + } if (element.hasCopackagedIndicatorElement()) { composeBoolean(t, "PackagedProductDefinition", "copackagedIndicator", element.getCopackagedIndicatorElement(), -1); } @@ -16704,8 +17577,8 @@ public class RdfParser extends RdfParserBase { if (element.hasType()) { composeCodeableConcept(t, "PackagedProductDefinitionPackageComponent", "type", element.getType(), -1); } - if (element.hasQuantity()) { - composeQuantity(t, "PackagedProductDefinitionPackageComponent", "quantity", element.getQuantity(), -1); + if (element.hasQuantityElement()) { + composeInteger(t, "PackagedProductDefinitionPackageComponent", "quantity", element.getQuantityElement(), -1); } for (int i = 0; i < element.getMaterial().size(); i++) { composeCodeableConcept(t, "PackagedProductDefinitionPackageComponent", "material", element.getMaterial().get(i), i); @@ -16719,8 +17592,8 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getManufacturer().size(); i++) { composeReference(t, "PackagedProductDefinitionPackageComponent", "manufacturer", element.getManufacturer().get(i), i); } - for (int i = 0; i < element.getCharacteristic().size(); i++) { - composePackagedProductDefinitionPackageCharacteristicComponent(t, "PackagedProductDefinitionPackageComponent", "characteristic", element.getCharacteristic().get(i), i); + for (int i = 0; i < element.getProperty().size(); i++) { + composePackagedProductDefinitionPackagePropertyComponent(t, "PackagedProductDefinitionPackageComponent", "property", element.getProperty().get(i), i); } for (int i = 0; i < element.getContainedItem().size(); i++) { composePackagedProductDefinitionPackageContainedItemComponent(t, "PackagedProductDefinitionPackageComponent", "containedItem", element.getContainedItem().get(i), i); @@ -16730,7 +17603,7 @@ public class RdfParser extends RdfParserBase { } } - protected void composePackagedProductDefinitionPackageCharacteristicComponent(Complex parent, String parentType, String name, PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent element, int index) { + protected void composePackagedProductDefinitionPackagePropertyComponent(Complex parent, String parentType, String name, PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent element, int index) { if (element == null) return; Complex t; @@ -16739,12 +17612,12 @@ public class RdfParser extends RdfParserBase { else { t = parent.predicate("fhir:"+parentType+'.'+name); } - composeBackboneElement(t, "characteristic", name, element, index); - if (element.hasCode()) { - composeCodeableConcept(t, "PackagedProductDefinitionPackageCharacteristicComponent", "code", element.getCode(), -1); + composeBackboneElement(t, "property", name, element, index); + if (element.hasType()) { + composeCodeableConcept(t, "PackagedProductDefinitionPackagePropertyComponent", "type", element.getType(), -1); } if (element.hasValue()) { - composeType(t, "PackagedProductDefinitionPackageCharacteristicComponent", "value", element.getValue(), -1); + composeType(t, "PackagedProductDefinitionPackagePropertyComponent", "value", element.getValue(), -1); } } @@ -17099,6 +17972,87 @@ public class RdfParser extends RdfParserBase { } } + protected void composePermission(Complex parent, String parentType, String name, Permission element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeDomainResource(t, "Permission", name, element, index); + if (element.hasStatusElement()) { + composeEnum(t, "Permission", "status", element.getStatusElement(), -1); + } + if (element.hasIntent()) { + composeCodeableConcept(t, "Permission", "intent", element.getIntent(), -1); + } + if (element.hasAsserter()) { + composeReference(t, "Permission", "asserter", element.getAsserter(), -1); + } + for (int i = 0; i < element.getAssertionDate().size(); i++) { + composeDateTime(t, "Permission", "assertionDate", element.getAssertionDate().get(i), i); + } + if (element.hasValidity()) { + composePeriod(t, "Permission", "validity", element.getValidity(), -1); + } + for (int i = 0; i < element.getPurpose().size(); i++) { + composeCodeableConcept(t, "Permission", "purpose", element.getPurpose().get(i), i); + } + for (int i = 0; i < element.getDataScope().size(); i++) { + composeExpression(t, "Permission", "dataScope", element.getDataScope().get(i), i); + } + for (int i = 0; i < element.getProcessingActivity().size(); i++) { + composePermissionProcessingActivityComponent(t, "Permission", "processingActivity", element.getProcessingActivity().get(i), i); + } + if (element.hasJustification()) { + composePermissionJustificationComponent(t, "Permission", "justification", element.getJustification(), -1); + } + for (int i = 0; i < element.getUsageLimitations().size(); i++) { + composeCodeableConcept(t, "Permission", "usageLimitations", element.getUsageLimitations().get(i), i); + } + } + + protected void composePermissionProcessingActivityComponent(Complex parent, String parentType, String name, Permission.PermissionProcessingActivityComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "processingActivity", name, element, index); + for (int i = 0; i < element.getPartyReference().size(); i++) { + composeReference(t, "PermissionProcessingActivityComponent", "partyReference", element.getPartyReference().get(i), i); + } + for (int i = 0; i < element.getPartyCodeableConcept().size(); i++) { + composeCodeableConcept(t, "PermissionProcessingActivityComponent", "partyCodeableConcept", element.getPartyCodeableConcept().get(i), i); + } + for (int i = 0; i < element.getPurpose().size(); i++) { + composeCodeableConcept(t, "PermissionProcessingActivityComponent", "purpose", element.getPurpose().get(i), i); + } + } + + protected void composePermissionJustificationComponent(Complex parent, String parentType, String name, Permission.PermissionJustificationComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "justification", name, element, index); + for (int i = 0; i < element.getEvidence().size(); i++) { + composeReference(t, "PermissionJustificationComponent", "evidence", element.getEvidence().get(i), i); + } + for (int i = 0; i < element.getGrounds().size(); i++) { + composeCodeableConcept(t, "PermissionJustificationComponent", "grounds", element.getGrounds().get(i), i); + } + } + protected void composePerson(Complex parent, String parentType, String name, Person element, int index) { if (element == null) return; @@ -18183,6 +19137,12 @@ public class RdfParser extends RdfParserBase { if (element.hasValidityPeriod()) { composePeriod(t, "RegulatedAuthorization", "validityPeriod", element.getValidityPeriod(), -1); } + if (element.hasIndication()) { + composeType(t, "RegulatedAuthorization", "indication", element.getIndication(), -1); + } + if (element.hasIntendedUse()) { + composeCodeableConcept(t, "RegulatedAuthorization", "intendedUse", element.getIntendedUse(), -1); + } for (int i = 0; i < element.getBasis().size(); i++) { composeCodeableConcept(t, "RegulatedAuthorization", "basis", element.getBasis().get(i), i); } @@ -19890,11 +20850,26 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getError().size(); i++) { composeCodeableConcept(t, "Subscription", "error", element.getError().get(i), i); } - if (element.hasEventCountElement()) { - composeUnsignedInt(t, "Subscription", "eventCount", element.getEventCountElement(), -1); + if (element.hasChannelType()) { + composeCoding(t, "Subscription", "channelType", element.getChannelType(), -1); } - if (element.hasChannel()) { - composeSubscriptionChannelComponent(t, "Subscription", "channel", element.getChannel(), -1); + if (element.hasEndpointElement()) { + composeUrl(t, "Subscription", "endpoint", element.getEndpointElement(), -1); + } + for (int i = 0; i < element.getHeader().size(); i++) { + composeString(t, "Subscription", "header", element.getHeader().get(i), i); + } + if (element.hasHeartbeatPeriodElement()) { + composeUnsignedInt(t, "Subscription", "heartbeatPeriod", element.getHeartbeatPeriodElement(), -1); + } + if (element.hasTimeoutElement()) { + composeUnsignedInt(t, "Subscription", "timeout", element.getTimeoutElement(), -1); + } + if (element.hasContentTypeElement()) { + composeCode(t, "Subscription", "contentType", element.getContentTypeElement(), -1); + } + if (element.hasContentElement()) { + composeEnum(t, "Subscription", "content", element.getContentElement(), -1); } } @@ -19908,18 +20883,18 @@ public class RdfParser extends RdfParserBase { t = parent.predicate("fhir:"+parentType+'.'+name); } composeBackboneElement(t, "filterBy", name, element, index); - if (element.hasNameElement()) { - composeString(t, "SubscriptionFilterByComponent", "name", element.getNameElement(), -1); + if (element.hasSearchParamNameElement()) { + composeString(t, "SubscriptionFilterByComponent", "searchParamName", element.getSearchParamNameElement(), -1); } - if (element.hasMatchTypeElement()) { - composeEnum(t, "SubscriptionFilterByComponent", "matchType", element.getMatchTypeElement(), -1); + if (element.hasSearchModifierElement()) { + composeEnum(t, "SubscriptionFilterByComponent", "searchModifier", element.getSearchModifierElement(), -1); } if (element.hasValueElement()) { composeString(t, "SubscriptionFilterByComponent", "value", element.getValueElement(), -1); } } - protected void composeSubscriptionChannelComponent(Complex parent, String parentType, String name, Subscription.SubscriptionChannelComponent element, int index) { + protected void composeSubscriptionStatus(Complex parent, String parentType, String name, SubscriptionStatus element, int index) { if (element == null) return; Complex t; @@ -19928,25 +20903,28 @@ public class RdfParser extends RdfParserBase { else { t = parent.predicate("fhir:"+parentType+'.'+name); } - composeBackboneElement(t, "channel", name, element, index); - if (element.hasType()) { - composeCodeableConcept(t, "SubscriptionChannelComponent", "type", element.getType(), -1); + composeDomainResource(t, "SubscriptionStatus", name, element, index); + if (element.hasNotificationTypeElement()) { + composeEnum(t, "SubscriptionStatus", "notificationType", element.getNotificationTypeElement(), -1); } - if (element.hasEndpointElement()) { - composeUrl(t, "SubscriptionChannelComponent", "endpoint", element.getEndpointElement(), -1); + if (element.hasEventsSinceSubscriptionStartElement()) { + composeInteger64(t, "SubscriptionStatus", "eventsSinceSubscriptionStart", element.getEventsSinceSubscriptionStartElement(), -1); } - for (int i = 0; i < element.getHeader().size(); i++) { - composeString(t, "SubscriptionChannelComponent", "header", element.getHeader().get(i), i); + if (element.hasEventsInNotificationElement()) { + composeInteger(t, "SubscriptionStatus", "eventsInNotification", element.getEventsInNotificationElement(), -1); } - if (element.hasHeartbeatPeriodElement()) { - composeUnsignedInt(t, "SubscriptionChannelComponent", "heartbeatPeriod", element.getHeartbeatPeriodElement(), -1); + if (element.hasSubscription()) { + composeReference(t, "SubscriptionStatus", "subscription", element.getSubscription(), -1); } - if (element.hasPayload()) { - composeSubscriptionChannelPayloadComponent(t, "SubscriptionChannelComponent", "payload", element.getPayload(), -1); + if (element.hasStatusElement()) { + composeEnum(t, "SubscriptionStatus", "status", element.getStatusElement(), -1); + } + if (element.hasTopic()) { + composeReference(t, "SubscriptionStatus", "topic", element.getTopic(), -1); } } - protected void composeSubscriptionChannelPayloadComponent(Complex parent, String parentType, String name, Subscription.SubscriptionChannelPayloadComponent element, int index) { + protected void composeSubscriptionTopic(Complex parent, String parentType, String name, SubscriptionTopic element, int index) { if (element == null) return; Complex t; @@ -19955,12 +20933,138 @@ public class RdfParser extends RdfParserBase { else { t = parent.predicate("fhir:"+parentType+'.'+name); } - composeBackboneElement(t, "payload", name, element, index); - if (element.hasContentTypeElement()) { - composeCode(t, "SubscriptionChannelPayloadComponent", "contentType", element.getContentTypeElement(), -1); + composeDomainResource(t, "SubscriptionTopic", name, element, index); + if (element.hasUrlElement()) { + composeUri(t, "SubscriptionTopic", "url", element.getUrlElement(), -1); } - if (element.hasContentElement()) { - composeEnum(t, "SubscriptionChannelPayloadComponent", "content", element.getContentElement(), -1); + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "SubscriptionTopic", "identifier", element.getIdentifier().get(i), i); + } + if (element.hasVersionElement()) { + composeString(t, "SubscriptionTopic", "version", element.getVersionElement(), -1); + } + if (element.hasTitleElement()) { + composeString(t, "SubscriptionTopic", "title", element.getTitleElement(), -1); + } + for (int i = 0; i < element.getDerivedFromCanonical().size(); i++) { + composeCanonical(t, "SubscriptionTopic", "derivedFromCanonical", element.getDerivedFromCanonical().get(i), i); + } + for (int i = 0; i < element.getDerivedFromUri().size(); i++) { + composeUri(t, "SubscriptionTopic", "derivedFromUri", element.getDerivedFromUri().get(i), i); + } + if (element.hasStatusElement()) { + composeEnum(t, "SubscriptionTopic", "status", element.getStatusElement(), -1); + } + if (element.hasExperimentalElement()) { + composeBoolean(t, "SubscriptionTopic", "experimental", element.getExperimentalElement(), -1); + } + if (element.hasDateElement()) { + composeDateTime(t, "SubscriptionTopic", "date", element.getDateElement(), -1); + } + if (element.hasPublisher()) { + composeReference(t, "SubscriptionTopic", "publisher", element.getPublisher(), -1); + } + for (int i = 0; i < element.getContact().size(); i++) { + composeContactDetail(t, "SubscriptionTopic", "contact", element.getContact().get(i), i); + } + if (element.hasDescriptionElement()) { + composeMarkdown(t, "SubscriptionTopic", "description", element.getDescriptionElement(), -1); + } + for (int i = 0; i < element.getUseContext().size(); i++) { + composeUsageContext(t, "SubscriptionTopic", "useContext", element.getUseContext().get(i), i); + } + for (int i = 0; i < element.getJurisdiction().size(); i++) { + composeCodeableConcept(t, "SubscriptionTopic", "jurisdiction", element.getJurisdiction().get(i), i); + } + if (element.hasPurposeElement()) { + composeMarkdown(t, "SubscriptionTopic", "purpose", element.getPurposeElement(), -1); + } + if (element.hasCopyrightElement()) { + composeMarkdown(t, "SubscriptionTopic", "copyright", element.getCopyrightElement(), -1); + } + if (element.hasApprovalDateElement()) { + composeDate(t, "SubscriptionTopic", "approvalDate", element.getApprovalDateElement(), -1); + } + if (element.hasLastReviewDateElement()) { + composeDate(t, "SubscriptionTopic", "lastReviewDate", element.getLastReviewDateElement(), -1); + } + if (element.hasEffectivePeriod()) { + composePeriod(t, "SubscriptionTopic", "effectivePeriod", element.getEffectivePeriod(), -1); + } + if (element.hasResourceTrigger()) { + composeSubscriptionTopicResourceTriggerComponent(t, "SubscriptionTopic", "resourceTrigger", element.getResourceTrigger(), -1); + } + for (int i = 0; i < element.getCanFilterBy().size(); i++) { + composeSubscriptionTopicCanFilterByComponent(t, "SubscriptionTopic", "canFilterBy", element.getCanFilterBy().get(i), i); + } + } + + protected void composeSubscriptionTopicResourceTriggerComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "resourceTrigger", name, element, index); + if (element.hasDescriptionElement()) { + composeString(t, "SubscriptionTopicResourceTriggerComponent", "description", element.getDescriptionElement(), -1); + } + for (int i = 0; i < element.getResourceType().size(); i++) { + composeCode(t, "SubscriptionTopicResourceTriggerComponent", "resourceType", element.getResourceType().get(i), i); + } + for (int i = 0; i < element.getMethodCriteria().size(); i++) { + composeEnum(t, "SubscriptionTopicResourceTriggerComponent", "methodCriteria", element.getMethodCriteria().get(i), i); + } + if (element.hasQueryCriteria()) { + composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(t, "SubscriptionTopicResourceTriggerComponent", "queryCriteria", element.getQueryCriteria(), -1); + } + for (int i = 0; i < element.getFhirPathCriteria().size(); i++) { + composeString(t, "SubscriptionTopicResourceTriggerComponent", "fhirPathCriteria", element.getFhirPathCriteria().get(i), i); + } + } + + protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "queryCriteria", name, element, index); + if (element.hasPreviousElement()) { + composeString(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "previous", element.getPreviousElement(), -1); + } + if (element.hasCurrentElement()) { + composeString(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "current", element.getCurrentElement(), -1); + } + if (element.hasRequireBothElement()) { + composeBoolean(t, "SubscriptionTopicResourceTriggerQueryCriteriaComponent", "requireBoth", element.getRequireBothElement(), -1); + } + } + + protected void composeSubscriptionTopicCanFilterByComponent(Complex parent, String parentType, String name, SubscriptionTopic.SubscriptionTopicCanFilterByComponent element, int index) { + if (element == null) + return; + Complex t; + if (Utilities.noString(parentType)) + t = parent; + else { + t = parent.predicate("fhir:"+parentType+'.'+name); + } + composeBackboneElement(t, "canFilterBy", name, element, index); + if (element.hasSearchParamNameElement()) { + composeString(t, "SubscriptionTopicCanFilterByComponent", "searchParamName", element.getSearchParamNameElement(), -1); + } + for (int i = 0; i < element.getSearchModifier().size(); i++) { + composeEnum(t, "SubscriptionTopicCanFilterByComponent", "searchModifier", element.getSearchModifier().get(i), i); + } + if (element.hasDocumentationElement()) { + composeMarkdown(t, "SubscriptionTopicCanFilterByComponent", "documentation", element.getDocumentationElement(), -1); } } @@ -20211,8 +21315,8 @@ public class RdfParser extends RdfParserBase { if (element.hasMolecularWeight()) { composeSubstanceDefinitionStructureIsotopeMolecularWeightComponent(t, "SubstanceDefinitionStructureComponent", "molecularWeight", element.getMolecularWeight(), -1); } - for (int i = 0; i < element.getSourceCoding().size(); i++) { - composeCoding(t, "SubstanceDefinitionStructureComponent", "sourceCoding", element.getSourceCoding().get(i), i); + for (int i = 0; i < element.getTechnique().size(); i++) { + composeCodeableConcept(t, "SubstanceDefinitionStructureComponent", "technique", element.getTechnique().get(i), i); } for (int i = 0; i < element.getSourceDocument().size(); i++) { composeReference(t, "SubstanceDefinitionStructureComponent", "sourceDocument", element.getSourceDocument().get(i), i); @@ -20286,6 +21390,9 @@ public class RdfParser extends RdfParserBase { if (element.hasRepresentationElement()) { composeString(t, "SubstanceDefinitionStructureRepresentationComponent", "representation", element.getRepresentationElement(), -1); } + if (element.hasFormat()) { + composeCodeableConcept(t, "SubstanceDefinitionStructureRepresentationComponent", "format", element.getFormat(), -1); + } if (element.hasAttachment()) { composeAttachment(t, "SubstanceDefinitionStructureRepresentationComponent", "attachment", element.getAttachment(), -1); } @@ -20535,6 +21642,9 @@ public class RdfParser extends RdfParserBase { t = parent.predicate("fhir:"+parentType+'.'+name); } composeDomainResource(t, "SubstancePolymer", name, element, index); + if (element.hasIdentifier()) { + composeIdentifier(t, "SubstancePolymer", "identifier", element.getIdentifier(), -1); + } if (element.hasClass_()) { composeCodeableConcept(t, "SubstancePolymer", "class", element.getClass_(), -1); } @@ -20544,8 +21654,8 @@ public class RdfParser extends RdfParserBase { for (int i = 0; i < element.getCopolymerConnectivity().size(); i++) { composeCodeableConcept(t, "SubstancePolymer", "copolymerConnectivity", element.getCopolymerConnectivity().get(i), i); } - for (int i = 0; i < element.getModification().size(); i++) { - composeString(t, "SubstancePolymer", "modification", element.getModification().get(i), i); + if (element.hasModificationElement()) { + composeString(t, "SubstancePolymer", "modification", element.getModificationElement(), -1); } for (int i = 0; i < element.getMonomerSet().size(); i++) { composeSubstancePolymerMonomerSetComponent(t, "SubstancePolymer", "monomerSet", element.getMonomerSet().get(i), i); @@ -20583,11 +21693,11 @@ public class RdfParser extends RdfParserBase { t = parent.predicate("fhir:"+parentType+'.'+name); } composeBackboneElement(t, "startingMaterial", name, element, index); - if (element.hasMaterial()) { - composeCodeableConcept(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "material", element.getMaterial(), -1); + if (element.hasCode()) { + composeCodeableConcept(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "code", element.getCode(), -1); } - if (element.hasType()) { - composeCodeableConcept(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "type", element.getType(), -1); + if (element.hasCategory()) { + composeCodeableConcept(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "category", element.getCategory(), -1); } if (element.hasIsDefiningElement()) { composeBoolean(t, "SubstancePolymerMonomerSetStartingMaterialComponent", "isDefining", element.getIsDefiningElement(), -1); @@ -20631,11 +21741,11 @@ public class RdfParser extends RdfParserBase { t = parent.predicate("fhir:"+parentType+'.'+name); } composeBackboneElement(t, "repeatUnit", name, element, index); - if (element.hasOrientationOfPolymerisation()) { - composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitComponent", "orientationOfPolymerisation", element.getOrientationOfPolymerisation(), -1); + if (element.hasUnitElement()) { + composeString(t, "SubstancePolymerRepeatRepeatUnitComponent", "unit", element.getUnitElement(), -1); } - if (element.hasRepeatUnitElement()) { - composeString(t, "SubstancePolymerRepeatRepeatUnitComponent", "repeatUnit", element.getRepeatUnitElement(), -1); + if (element.hasOrientation()) { + composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitComponent", "orientation", element.getOrientation(), -1); } if (element.hasAmount()) { composeSubstanceAmount(t, "SubstancePolymerRepeatRepeatUnitComponent", "amount", element.getAmount(), -1); @@ -20682,6 +21792,9 @@ public class RdfParser extends RdfParserBase { if (element.hasRepresentationElement()) { composeString(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "representation", element.getRepresentationElement(), -1); } + if (element.hasFormat()) { + composeCodeableConcept(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "format", element.getFormat(), -1); + } if (element.hasAttachment()) { composeAttachment(t, "SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent", "attachment", element.getAttachment(), -1); } @@ -21154,7 +22267,7 @@ public class RdfParser extends RdfParserBase { composeEnum(t, "SupplyRequest", "priority", element.getPriorityElement(), -1); } if (element.hasItem()) { - composeType(t, "SupplyRequest", "item", element.getItem(), -1); + composeCodeableReference(t, "SupplyRequest", "item", element.getItem(), -1); } if (element.hasQuantity()) { composeQuantity(t, "SupplyRequest", "quantity", element.getQuantity(), -1); @@ -21378,6 +22491,9 @@ public class RdfParser extends RdfParserBase { if (element.hasUrlElement()) { composeUri(t, "TerminologyCapabilities", "url", element.getUrlElement(), -1); } + for (int i = 0; i < element.getIdentifier().size(); i++) { + composeIdentifier(t, "TerminologyCapabilities", "identifier", element.getIdentifier().get(i), i); + } if (element.hasVersionElement()) { composeString(t, "TerminologyCapabilities", "version", element.getVersionElement(), -1); } @@ -22364,150 +23480,6 @@ public class RdfParser extends RdfParserBase { } } - protected void composeTopic(Complex parent, String parentType, String name, Topic element, int index) { - if (element == null) - return; - Complex t; - if (Utilities.noString(parentType)) - t = parent; - else { - t = parent.predicate("fhir:"+parentType+'.'+name); - } - composeDomainResource(t, "Topic", name, element, index); - if (element.hasUrlElement()) { - composeUri(t, "Topic", "url", element.getUrlElement(), -1); - } - for (int i = 0; i < element.getIdentifier().size(); i++) { - composeIdentifier(t, "Topic", "identifier", element.getIdentifier().get(i), i); - } - if (element.hasVersionElement()) { - composeString(t, "Topic", "version", element.getVersionElement(), -1); - } - if (element.hasTitleElement()) { - composeString(t, "Topic", "title", element.getTitleElement(), -1); - } - for (int i = 0; i < element.getDerivedFromCanonical().size(); i++) { - composeCanonical(t, "Topic", "derivedFromCanonical", element.getDerivedFromCanonical().get(i), i); - } - for (int i = 0; i < element.getDerivedFromUri().size(); i++) { - composeUri(t, "Topic", "derivedFromUri", element.getDerivedFromUri().get(i), i); - } - if (element.hasStatusElement()) { - composeEnum(t, "Topic", "status", element.getStatusElement(), -1); - } - if (element.hasExperimentalElement()) { - composeBoolean(t, "Topic", "experimental", element.getExperimentalElement(), -1); - } - if (element.hasDateElement()) { - composeDateTime(t, "Topic", "date", element.getDateElement(), -1); - } - if (element.hasPublisher()) { - composeReference(t, "Topic", "publisher", element.getPublisher(), -1); - } - for (int i = 0; i < element.getContact().size(); i++) { - composeContactDetail(t, "Topic", "contact", element.getContact().get(i), i); - } - if (element.hasDescriptionElement()) { - composeMarkdown(t, "Topic", "description", element.getDescriptionElement(), -1); - } - for (int i = 0; i < element.getUseContext().size(); i++) { - composeUsageContext(t, "Topic", "useContext", element.getUseContext().get(i), i); - } - for (int i = 0; i < element.getJurisdiction().size(); i++) { - composeCodeableConcept(t, "Topic", "jurisdiction", element.getJurisdiction().get(i), i); - } - if (element.hasPurposeElement()) { - composeMarkdown(t, "Topic", "purpose", element.getPurposeElement(), -1); - } - if (element.hasCopyrightElement()) { - composeMarkdown(t, "Topic", "copyright", element.getCopyrightElement(), -1); - } - if (element.hasApprovalDateElement()) { - composeDate(t, "Topic", "approvalDate", element.getApprovalDateElement(), -1); - } - if (element.hasLastReviewDateElement()) { - composeDate(t, "Topic", "lastReviewDate", element.getLastReviewDateElement(), -1); - } - if (element.hasEffectivePeriod()) { - composePeriod(t, "Topic", "effectivePeriod", element.getEffectivePeriod(), -1); - } - if (element.hasResourceTrigger()) { - composeTopicResourceTriggerComponent(t, "Topic", "resourceTrigger", element.getResourceTrigger(), -1); - } - for (int i = 0; i < element.getCanFilterBy().size(); i++) { - composeTopicCanFilterByComponent(t, "Topic", "canFilterBy", element.getCanFilterBy().get(i), i); - } - } - - protected void composeTopicResourceTriggerComponent(Complex parent, String parentType, String name, Topic.TopicResourceTriggerComponent element, int index) { - if (element == null) - return; - Complex t; - if (Utilities.noString(parentType)) - t = parent; - else { - t = parent.predicate("fhir:"+parentType+'.'+name); - } - composeBackboneElement(t, "resourceTrigger", name, element, index); - if (element.hasDescriptionElement()) { - composeString(t, "TopicResourceTriggerComponent", "description", element.getDescriptionElement(), -1); - } - for (int i = 0; i < element.getResourceType().size(); i++) { - composeCode(t, "TopicResourceTriggerComponent", "resourceType", element.getResourceType().get(i), i); - } - for (int i = 0; i < element.getMethodCriteria().size(); i++) { - composeEnum(t, "TopicResourceTriggerComponent", "methodCriteria", element.getMethodCriteria().get(i), i); - } - if (element.hasQueryCriteria()) { - composeTopicResourceTriggerQueryCriteriaComponent(t, "TopicResourceTriggerComponent", "queryCriteria", element.getQueryCriteria(), -1); - } - if (element.hasFhirPathCriteriaElement()) { - composeString(t, "TopicResourceTriggerComponent", "fhirPathCriteria", element.getFhirPathCriteriaElement(), -1); - } - } - - protected void composeTopicResourceTriggerQueryCriteriaComponent(Complex parent, String parentType, String name, Topic.TopicResourceTriggerQueryCriteriaComponent element, int index) { - if (element == null) - return; - Complex t; - if (Utilities.noString(parentType)) - t = parent; - else { - t = parent.predicate("fhir:"+parentType+'.'+name); - } - composeBackboneElement(t, "queryCriteria", name, element, index); - if (element.hasPreviousElement()) { - composeString(t, "TopicResourceTriggerQueryCriteriaComponent", "previous", element.getPreviousElement(), -1); - } - if (element.hasCurrentElement()) { - composeString(t, "TopicResourceTriggerQueryCriteriaComponent", "current", element.getCurrentElement(), -1); - } - if (element.hasRequireBothElement()) { - composeBoolean(t, "TopicResourceTriggerQueryCriteriaComponent", "requireBoth", element.getRequireBothElement(), -1); - } - } - - protected void composeTopicCanFilterByComponent(Complex parent, String parentType, String name, Topic.TopicCanFilterByComponent element, int index) { - if (element == null) - return; - Complex t; - if (Utilities.noString(parentType)) - t = parent; - else { - t = parent.predicate("fhir:"+parentType+'.'+name); - } - composeBackboneElement(t, "canFilterBy", name, element, index); - if (element.hasNameElement()) { - composeString(t, "TopicCanFilterByComponent", "name", element.getNameElement(), -1); - } - for (int i = 0; i < element.getMatchType().size(); i++) { - composeEnum(t, "TopicCanFilterByComponent", "matchType", element.getMatchType().get(i), i); - } - if (element.hasDocumentationElement()) { - composeMarkdown(t, "TopicCanFilterByComponent", "documentation", element.getDocumentationElement(), -1); - } - } - protected void composeValueSet(Complex parent, String parentType, String name, ValueSet element, int index) { if (element == null) return; @@ -23118,6 +24090,8 @@ public class RdfParser extends RdfParserBase { composeChargeItem(parent, null, "ChargeItem", (ChargeItem)resource, -1); } else if (resource instanceof ChargeItemDefinition) { composeChargeItemDefinition(parent, null, "ChargeItemDefinition", (ChargeItemDefinition)resource, -1); + } else if (resource instanceof Citation) { + composeCitation(parent, null, "Citation", (Citation)resource, -1); } else if (resource instanceof Claim) { composeClaim(parent, null, "Claim", (Claim)resource, -1); } else if (resource instanceof ClaimResponse) { @@ -23184,6 +24158,8 @@ public class RdfParser extends RdfParserBase { composeEventDefinition(parent, null, "EventDefinition", (EventDefinition)resource, -1); } else if (resource instanceof Evidence) { composeEvidence(parent, null, "Evidence", (Evidence)resource, -1); + } else if (resource instanceof EvidenceFocus) { + composeEvidenceFocus(parent, null, "EvidenceFocus", (EvidenceFocus)resource, -1); } else if (resource instanceof EvidenceVariable) { composeEvidenceVariable(parent, null, "EvidenceVariable", (EvidenceVariable)resource, -1); } else if (resource instanceof ExampleScenario) { @@ -23260,6 +24236,8 @@ public class RdfParser extends RdfParserBase { composeNutritionIntake(parent, null, "NutritionIntake", (NutritionIntake)resource, -1); } else if (resource instanceof NutritionOrder) { composeNutritionOrder(parent, null, "NutritionOrder", (NutritionOrder)resource, -1); + } else if (resource instanceof NutritionProduct) { + composeNutritionProduct(parent, null, "NutritionProduct", (NutritionProduct)resource, -1); } else if (resource instanceof Observation) { composeObservation(parent, null, "Observation", (Observation)resource, -1); } else if (resource instanceof ObservationDefinition) { @@ -23282,6 +24260,8 @@ public class RdfParser extends RdfParserBase { composePaymentNotice(parent, null, "PaymentNotice", (PaymentNotice)resource, -1); } else if (resource instanceof PaymentReconciliation) { composePaymentReconciliation(parent, null, "PaymentReconciliation", (PaymentReconciliation)resource, -1); + } else if (resource instanceof Permission) { + composePermission(parent, null, "Permission", (Permission)resource, -1); } else if (resource instanceof Person) { composePerson(parent, null, "Person", (Person)resource, -1); } else if (resource instanceof PlanDefinition) { @@ -23328,6 +24308,10 @@ public class RdfParser extends RdfParserBase { composeStructureMap(parent, null, "StructureMap", (StructureMap)resource, -1); } else if (resource instanceof Subscription) { composeSubscription(parent, null, "Subscription", (Subscription)resource, -1); + } else if (resource instanceof SubscriptionStatus) { + composeSubscriptionStatus(parent, null, "SubscriptionStatus", (SubscriptionStatus)resource, -1); + } else if (resource instanceof SubscriptionTopic) { + composeSubscriptionTopic(parent, null, "SubscriptionTopic", (SubscriptionTopic)resource, -1); } else if (resource instanceof Substance) { composeSubstance(parent, null, "Substance", (Substance)resource, -1); } else if (resource instanceof SubstanceDefinition) { @@ -23354,8 +24338,6 @@ public class RdfParser extends RdfParserBase { composeTestReport(parent, null, "TestReport", (TestReport)resource, -1); } else if (resource instanceof TestScript) { composeTestScript(parent, null, "TestScript", (TestScript)resource, -1); - } else if (resource instanceof Topic) { - composeTopic(parent, null, "Topic", (Topic)resource, -1); } else if (resource instanceof ValueSet) { composeValueSet(parent, null, "ValueSet", (ValueSet)resource, -1); } else if (resource instanceof VerificationResult) { diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/XmlParser.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/XmlParser.java index be97cee5b..dd6a5cf4d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/XmlParser.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/formats/XmlParser.java @@ -50,7 +50,7 @@ package org.hl7.fhir.r5.formats; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Mon, Jan 20, 2020 14:31+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent @@ -2692,8 +2692,8 @@ public class XmlParser extends XmlParserBase { res.getIngredient().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { res.getDevice().add(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { - res.getCharacteristic().add(parseAdministrableProductDefinitionCharacteristicComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { + res.getProperty().add(parseAdministrableProductDefinitionPropertyComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("routeOfAdministration")) { res.getRouteOfAdministration().add(parseAdministrableProductDefinitionRouteOfAdministrationComponent(xpp)); } else if (!parseDomainResourceContent(eventType, xpp, res)){ @@ -2702,13 +2702,13 @@ public class XmlParser extends XmlParserBase { return true; } - protected AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent parseAdministrableProductDefinitionCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent(); + protected AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent parseAdministrableProductDefinitionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent res = new AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent(); parseElementAttributes(xpp, res); next(xpp); int eventType = nextNoWhitespace(xpp); while (eventType != XmlPullParser.END_TAG) { - if (!parseAdministrableProductDefinitionCharacteristicComponentContent(eventType, xpp, res)) + if (!parseAdministrableProductDefinitionPropertyComponentContent(eventType, xpp, res)) unknownContent(xpp); eventType = nextNoWhitespace(xpp); } @@ -2717,9 +2717,9 @@ public class XmlParser extends XmlParserBase { return res; } - protected boolean parseAdministrableProductDefinitionCharacteristicComponentContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { - res.setCode(parseCodeableConcept(xpp)); + protected boolean parseAdministrableProductDefinitionPropertyComponentContent(int eventType, XmlPullParser xpp, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { res.setValue(parseType("value", xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { @@ -3315,9 +3315,7 @@ public class XmlParser extends XmlParserBase { } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { res.setRecordedElement(parseInstant(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcome")) { - res.setOutcomeElement(parseEnumeration(xpp, AuditEvent.AuditEventOutcome.NULL, new AuditEvent.AuditEventOutcomeEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("outcomeDesc")) { - res.setOutcomeDescElement(parseString(xpp)); + res.setOutcome(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purposeOfEvent")) { res.getPurposeOfEvent().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("agent")) { @@ -4853,7 +4851,7 @@ public class XmlParser extends XmlParserBase { } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "scheduled")) { res.setScheduled(parseType("scheduled", xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { - res.setLocation(parseReference(xpp)); + res.setLocation(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reported")) { res.setReported(parseType("reported", xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { @@ -5278,6 +5276,682 @@ public class XmlParser extends XmlParserBase { return true; } + protected Citation parseCitation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation res = new Citation(); + parseResourceAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationContent(int eventType, XmlPullParser xpp, Citation res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { + res.setUrlElement(parseUri(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { + res.setVersionElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { + res.getUseContext().add(parseUsageContext(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedIdentifier")) { + res.getRelatedIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCited")) { + res.setDateCitedElement(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variantCitation")) { + res.setVariantCitation(parseCitationVariantCitationComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publishingModel")) { + res.setPublishingModel(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("journal")) { + res.setJournal(parseCitationJournalComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("articleTitle")) { + res.setArticleTitleElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternativeTitle")) { + res.getAlternativeTitle().add(parseCitationAlternativeTitleComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pagination")) { + res.setPagination(parseCitationPaginationComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("articleUrl")) { + res.getArticleUrl().add(parseCitationArticleUrlComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { + res.setAbstractElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstractCopyright")) { + res.setAbstractCopyrightElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternativeAbstract")) { + res.getAlternativeAbstract().add(parseCitationAlternativeAbstractComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorList")) { + res.setAuthorList(parseCitationAuthorListComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("authorString")) { + res.getAuthorString().add(parseCitationAuthorStringComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributorList")) { + res.setContributorList(parseCitationContributorListComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("articleLanguage")) { + res.setArticleLanguage(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternativeForm")) { + res.getAlternativeForm().add(parseCitationAlternativeFormComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("classifier")) { + res.getClassifier().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { + res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { + res.getNote().add(parseAnnotation(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medlinePubMed")) { + res.setMedlinePubMed(parseCitationMedlinePubMedComponent(xpp)); + } else if (!parseMetadataResourceContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationVariantCitationComponent parseCitationVariantCitationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationVariantCitationComponent res = new Citation.CitationVariantCitationComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationVariantCitationComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationVariantCitationComponentContent(int eventType, XmlPullParser xpp, Citation.CitationVariantCitationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { + res.setValueElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("baseCitation")) { + res.setBaseCitation(parseReference(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationJournalComponent parseCitationJournalComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationJournalComponent res = new Citation.CitationJournalComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationJournalComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationJournalComponentContent(int eventType, XmlPullParser xpp, Citation.CitationJournalComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { + res.setCountryElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("journalIssue")) { + res.setJournalIssue(parseCitationJournalJournalIssueComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { + res.setTitleElement(parseString(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationJournalJournalIssueComponent parseCitationJournalJournalIssueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationJournalJournalIssueComponent res = new Citation.CitationJournalJournalIssueComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationJournalJournalIssueComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationJournalJournalIssueComponentContent(int eventType, XmlPullParser xpp, Citation.CitationJournalJournalIssueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citedMedium")) { + res.setCitedMedium(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("volume")) { + res.setVolumeElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { + res.setIssueElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDate")) { + res.setPublicationDateElement(parseString(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAlternativeTitleComponent parseCitationAlternativeTitleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAlternativeTitleComponent res = new Citation.CitationAlternativeTitleComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAlternativeTitleComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAlternativeTitleComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAlternativeTitleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { + res.setLanguage(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { + res.setTitleElement(parseMarkdown(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationPaginationComponent parseCitationPaginationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationPaginationComponent res = new Citation.CitationPaginationComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationPaginationComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationPaginationComponentContent(int eventType, XmlPullParser xpp, Citation.CitationPaginationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pageString")) { + res.setPageStringElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("firstPage")) { + res.setFirstPageElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastPage")) { + res.setLastPageElement(parseString(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationArticleUrlComponent parseCitationArticleUrlComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationArticleUrlComponent res = new Citation.CitationArticleUrlComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationArticleUrlComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationArticleUrlComponentContent(int eventType, XmlPullParser xpp, Citation.CitationArticleUrlComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { + res.setUrlElement(parseUri(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAlternativeAbstractComponent parseCitationAlternativeAbstractComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAlternativeAbstractComponent res = new Citation.CitationAlternativeAbstractComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAlternativeAbstractComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAlternativeAbstractComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAlternativeAbstractComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { + res.setLanguage(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstract")) { + res.setAbstractElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("abstractCopyright")) { + res.setAbstractCopyrightElement(parseMarkdown(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAuthorListComponent parseCitationAuthorListComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAuthorListComponent res = new Citation.CitationAuthorListComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAuthorListComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAuthorListComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAuthorListComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complete")) { + res.setCompleteElement(parseBoolean(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("author")) { + res.getAuthor().add(parseCitationAuthorListAuthorComponent(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAuthorListAuthorComponent parseCitationAuthorListAuthorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAuthorListAuthorComponent res = new Citation.CitationAuthorListAuthorComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAuthorListAuthorComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAuthorListAuthorComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAuthorListAuthorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastName")) { + res.setLastNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foreName")) { + res.setForeNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { + res.setSuffixElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initials")) { + res.setInitialsElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collectiveName")) { + res.setCollectiveNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("affiliationInfo")) { + res.getAffiliationInfo().add(parseCitationAuthorListAuthorAffiliationInfoComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("address")) { + res.getAddress().add(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("telecom")) { + res.getTelecom().add(parseContactPoint(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("correspondingAuthor")) { + res.setCorrespondingAuthorElement(parseBoolean(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listOrder")) { + res.setListOrderElement(parsePositiveInt(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAuthorListAuthorAffiliationInfoComponent parseCitationAuthorListAuthorAffiliationInfoComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAuthorListAuthorAffiliationInfoComponent res = new Citation.CitationAuthorListAuthorAffiliationInfoComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAuthorListAuthorAffiliationInfoComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAuthorListAuthorAffiliationInfoComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAuthorListAuthorAffiliationInfoComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("affiliation")) { + res.setAffiliationElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { + res.setRoleElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAuthorStringComponent parseCitationAuthorStringComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAuthorStringComponent res = new Citation.CitationAuthorStringComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAuthorStringComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAuthorStringComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAuthorStringComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { + res.setSource(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { + res.setValueElement(parseString(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationContributorListComponent parseCitationContributorListComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationContributorListComponent res = new Citation.CitationContributorListComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationContributorListComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationContributorListComponentContent(int eventType, XmlPullParser xpp, Citation.CitationContributorListComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("complete")) { + res.setCompleteElement(parseBoolean(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contributor")) { + res.getContributor().add(parseCitationContributorListContributorComponent(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationContributorListContributorComponent parseCitationContributorListContributorComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationContributorListContributorComponent res = new Citation.CitationContributorListContributorComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationContributorListContributorComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationContributorListContributorComponentContent(int eventType, XmlPullParser xpp, Citation.CitationContributorListContributorComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastName")) { + res.setLastNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("foreName")) { + res.setForeNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("suffix")) { + res.setSuffixElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("initials")) { + res.setInitialsElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("collectiveName")) { + res.setCollectiveNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contribution")) { + res.getContribution().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("affiliationInfo")) { + res.getAffiliationInfo().add(parseCitationContributorListContributorAffiliationInfoComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("listOrder")) { + res.setListOrderElement(parsePositiveInt(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationContributorListContributorAffiliationInfoComponent parseCitationContributorListContributorAffiliationInfoComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationContributorListContributorAffiliationInfoComponent res = new Citation.CitationContributorListContributorAffiliationInfoComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationContributorListContributorAffiliationInfoComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationContributorListContributorAffiliationInfoComponentContent(int eventType, XmlPullParser xpp, Citation.CitationContributorListContributorAffiliationInfoComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("affiliation")) { + res.setAffiliationElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { + res.setRoleElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAlternativeFormComponent parseCitationAlternativeFormComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAlternativeFormComponent res = new Citation.CitationAlternativeFormComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAlternativeFormComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAlternativeFormComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAlternativeFormComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publishingModel")) { + res.setPublishingModel(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("language")) { + res.setLanguage(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("journalIssue")) { + res.setJournalIssue(parseCitationAlternativeFormJournalIssueComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pagination")) { + res.setPagination(parseCitationAlternativeFormPaginationComponent(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAlternativeFormJournalIssueComponent parseCitationAlternativeFormJournalIssueComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAlternativeFormJournalIssueComponent res = new Citation.CitationAlternativeFormJournalIssueComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAlternativeFormJournalIssueComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAlternativeFormJournalIssueComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAlternativeFormJournalIssueComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citedMedium")) { + res.setCitedMedium(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("volume")) { + res.setVolumeElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("issue")) { + res.setIssueElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationDate")) { + res.setPublicationDateElement(parseString(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationAlternativeFormPaginationComponent parseCitationAlternativeFormPaginationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationAlternativeFormPaginationComponent res = new Citation.CitationAlternativeFormPaginationComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationAlternativeFormPaginationComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationAlternativeFormPaginationComponentContent(int eventType, XmlPullParser xpp, Citation.CitationAlternativeFormPaginationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pageString")) { + res.setPageStringElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("firstPage")) { + res.setFirstPageElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastPage")) { + res.setLastPageElement(parseString(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationMedlinePubMedComponent parseCitationMedlinePubMedComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationMedlinePubMedComponent res = new Citation.CitationMedlinePubMedComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationMedlinePubMedComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationMedlinePubMedComponentContent(int eventType, XmlPullParser xpp, Citation.CitationMedlinePubMedComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medlineState")) { + res.setMedlineState(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { + res.setOwner(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pmid")) { + res.setPmidElement(parsePositiveInt(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pmidVersion")) { + res.setPmidVersionElement(parsePositiveInt(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCreated")) { + res.setDateCreatedElement(parseDate(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateCompleted")) { + res.setDateCompletedElement(parseDate(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateRevised")) { + res.setDateRevisedElement(parseDate(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pubMedPubDate")) { + res.getPubMedPubDate().add(parseCitationMedlinePubMedPubMedPubDateComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationState")) { + res.setPublicationState(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArticle")) { + res.getRelatedArticle().add(parseCitationMedlinePubMedRelatedArticleComponent(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationMedlinePubMedPubMedPubDateComponent parseCitationMedlinePubMedPubMedPubDateComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationMedlinePubMedPubMedPubDateComponent res = new Citation.CitationMedlinePubMedPubMedPubDateComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationMedlinePubMedPubMedPubDateComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationMedlinePubMedPubMedPubDateComponentContent(int eventType, XmlPullParser xpp, Citation.CitationMedlinePubMedPubMedPubDateComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publicationState")) { + res.setPublicationState(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { + res.setDateElement(parseDateTime(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Citation.CitationMedlinePubMedRelatedArticleComponent parseCitationMedlinePubMedRelatedArticleComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Citation.CitationMedlinePubMedRelatedArticleComponent res = new Citation.CitationMedlinePubMedRelatedArticleComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseCitationMedlinePubMedRelatedArticleComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseCitationMedlinePubMedRelatedArticleComponentContent(int eventType, XmlPullParser xpp, Citation.CitationMedlinePubMedRelatedArticleComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citationReference")) { + res.setCitationReference(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citationMarkdown")) { + res.setCitationMarkdownElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected Claim parseClaim(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { Claim res = new Claim(); parseResourceAttributes(xpp, res); @@ -6342,6 +7016,8 @@ public class XmlParser extends XmlParserBase { res.getIdentifier().add(parseIdentifier(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { res.setTypeElement(parseEnumeration(xpp, ClinicalUseIssue.ClinicalUseIssueType.NULL, new ClinicalUseIssue.ClinicalUseIssueTypeEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { + res.setCategory(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.getSubject().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { @@ -7756,8 +8432,8 @@ public class XmlParser extends XmlParserBase { res.setScope(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { res.getCategory().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { - res.setPatient(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { + res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateTime")) { res.setDateTimeElement(parseDateTime(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { @@ -9154,6 +9830,8 @@ public class XmlParser extends XmlParserBase { protected boolean parseDeviceContent(int eventType, XmlPullParser xpp, Device res) throws XmlPullParserException, IOException, FHIRFormatError { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("displayName")) { + res.setDisplayNameElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("definition")) { res.setDefinition(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("udiCarrier")) { @@ -9181,7 +9859,7 @@ public class XmlParser extends XmlParserBase { } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partNumber")) { res.setPartNumberElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { - res.setType(parseCodeableConcept(xpp)); + res.getType().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("specialization")) { res.getSpecialization().add(parseDeviceSpecializationComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { @@ -9190,6 +9868,10 @@ public class XmlParser extends XmlParserBase { res.getProperty().add(parseDevicePropertyComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patient")) { res.setPatient(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("operationalStatus")) { + res.setOperationalStatus(parseDeviceOperationalStatusComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("associationStatus")) { + res.setAssociationStatus(parseDeviceAssociationStatusComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("owner")) { res.setOwner(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { @@ -9352,6 +10034,58 @@ public class XmlParser extends XmlParserBase { return true; } + protected Device.DeviceOperationalStatusComponent parseDeviceOperationalStatusComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Device.DeviceOperationalStatusComponent res = new Device.DeviceOperationalStatusComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseDeviceOperationalStatusComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseDeviceOperationalStatusComponentContent(int eventType, XmlPullParser xpp, Device.DeviceOperationalStatusComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { + res.setValue(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { + res.getReason().add(parseCodeableConcept(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Device.DeviceAssociationStatusComponent parseDeviceAssociationStatusComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Device.DeviceAssociationStatusComponent res = new Device.DeviceAssociationStatusComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseDeviceAssociationStatusComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseDeviceAssociationStatusComponentContent(int eventType, XmlPullParser xpp, Device.DeviceAssociationStatusComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { + res.setValue(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { + res.getReason().add(parseCodeableConcept(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected DeviceDefinition parseDeviceDefinition(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { DeviceDefinition res = new DeviceDefinition(); parseResourceAttributes(xpp, res); @@ -9400,8 +10134,6 @@ public class XmlParser extends XmlParserBase { res.setOwner(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { res.getContact().add(parseContactPoint(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { - res.setUrlElement(parseUri(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("onlineInformation")) { res.setOnlineInformationElement(parseUri(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { @@ -9684,8 +10416,8 @@ public class XmlParser extends XmlParserBase { res.setIntentElement(parseEnumeration(xpp, Enumerations.RequestIntent.NULL, new Enumerations.RequestIntentEnumFactory())); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "code")) { - res.setCode(parseType("code", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { + res.setCode(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { res.getParameter().add(parseDeviceRequestParameterComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { @@ -9766,22 +10498,30 @@ public class XmlParser extends XmlParserBase { res.getBasedOn().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { res.setStatusElement(parseEnumeration(xpp, DeviceUseStatement.DeviceUseStatementStatus.NULL, new DeviceUseStatement.DeviceUseStatementStatusEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { + res.getCategory().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { res.getDerivedFrom().add(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("context")) { + res.setContext(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "timing")) { res.setTiming(parseType("timing", xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recordedOn")) { - res.setRecordedOnElement(parseDateTime(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("source")) { - res.setSource(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { + res.setDateAssertedElement(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageStatus")) { + res.setUsageStatus(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageReason")) { + res.getUsageReason().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { + res.setInformationSource(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { - res.setDevice(parseReference(xpp)); + res.setDevice(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { res.getReason().add(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("bodySite")) { - res.setBodySite(parseCodeableConcept(xpp)); + res.setBodySite(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { res.getNote().add(parseAnnotation(xpp)); } else if (!parseDomainResourceContent(eventType, xpp, res)){ @@ -10676,8 +11416,6 @@ public class XmlParser extends XmlParserBase { res.setAssertionElement(parseMarkdown(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { res.getNote().add(parseAnnotation(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("referentGroup")) { - res.setReferentGroup(parseEvidenceReferentGroupComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variableDefinition")) { res.getVariableDefinition().add(parseEvidenceVariableDefinitionComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("synthesisType")) { @@ -10696,38 +11434,6 @@ public class XmlParser extends XmlParserBase { return true; } - protected Evidence.EvidenceReferentGroupComponent parseEvidenceReferentGroupComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Evidence.EvidenceReferentGroupComponent res = new Evidence.EvidenceReferentGroupComponent(); - parseElementAttributes(xpp, res); - next(xpp); - int eventType = nextNoWhitespace(xpp); - while (eventType != XmlPullParser.END_TAG) { - if (!parseEvidenceReferentGroupComponentContent(eventType, xpp, res)) - unknownContent(xpp); - eventType = nextNoWhitespace(xpp); - } - next(xpp); - parseElementClose(res); - return res; - } - - protected boolean parseEvidenceReferentGroupComponentContent(int eventType, XmlPullParser xpp, Evidence.EvidenceReferentGroupComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { - res.setDescriptionElement(parseMarkdown(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { - res.getNote().add(parseAnnotation(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidenceSource")) { - res.setEvidenceSource(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedGroup")) { - res.setIntendedGroup(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("directnessMatch")) { - res.setDirectnessMatch(parseCodeableConcept(xpp)); - } else if (!parseBackboneElementContent(eventType, xpp, res)){ - return false; - } - return true; - } - protected Evidence.EvidenceVariableDefinitionComponent parseEvidenceVariableDefinitionComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { Evidence.EvidenceVariableDefinitionComponent res = new Evidence.EvidenceVariableDefinitionComponent(); parseElementAttributes(xpp, res); @@ -10750,10 +11456,10 @@ public class XmlParser extends XmlParserBase { res.getNote().add(parseAnnotation(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("variableRole")) { res.setVariableRole(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actualDefinition")) { - res.setActualDefinition(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedDefinition")) { - res.setIntendedDefinition(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("observed")) { + res.setObserved(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intended")) { + res.setIntended(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("directnessMatch")) { res.setDirectnessMatch(parseCodeableConcept(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -10822,6 +11528,82 @@ public class XmlParser extends XmlParserBase { return true; } + protected EvidenceFocus parseEvidenceFocus(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + EvidenceFocus res = new EvidenceFocus(); + parseResourceAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseEvidenceFocusContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseEvidenceFocusContent(int eventType, XmlPullParser xpp, EvidenceFocus res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { + res.setUrlElement(parseUri(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { + res.setVersionElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { + res.setNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { + res.getUseContext().add(parseUsageContext(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { + res.setDateElement(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { + res.getNote().add(parseAnnotation(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { + res.setCopyrightElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("citeAs")) { + res.setCiteAs(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { + res.getCharacteristic().add(parseEvidenceFocusCharacteristicComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedArtifact")) { + res.getRelatedArtifact().add(parseRelatedArtifact(xpp)); + } else if (!parseMetadataResourceContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected EvidenceFocus.EvidenceFocusCharacteristicComponent parseEvidenceFocusCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + EvidenceFocus.EvidenceFocusCharacteristicComponent res = new EvidenceFocus.EvidenceFocusCharacteristicComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseEvidenceFocusCharacteristicComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseEvidenceFocusCharacteristicComponentContent(int eventType, XmlPullParser xpp, EvidenceFocus.EvidenceFocusCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { + res.setCode(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { + res.setValue(parseType("value", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { + res.setExcludeElement(parseBoolean(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("period")) { + res.setPeriod(parsePeriod(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected EvidenceVariable parseEvidenceVariable(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { EvidenceVariable res = new EvidenceVariable(); parseResourceAttributes(xpp, res); @@ -10892,6 +11674,8 @@ public class XmlParser extends XmlParserBase { res.setTypeElement(parseEnumeration(xpp, EvidenceVariable.EvidenceVariableType.NULL, new EvidenceVariable.EvidenceVariableTypeEnumFactory())); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actual")) { res.setActualElement(parseBoolean(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristicCombination")) { + res.setCharacteristicCombinationElement(parseEnumeration(xpp, EvidenceVariable.CharacteristicCombination.NULL, new EvidenceVariable.CharacteristicCombinationEnumFactory())); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { res.getCharacteristic().add(parseEvidenceVariableCharacteristicComponent(xpp)); } else if (!parseMetadataResourceContent(eventType, xpp, res)){ @@ -10924,14 +11708,10 @@ public class XmlParser extends XmlParserBase { res.setMethod(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("device")) { res.setDevice(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("booleanSet")) { - res.getBooleanSet().add(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("exclude")) { res.setExcludeElement(parseBoolean(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "participantEffective")) { - res.setParticipantEffective(parseType("participantEffective", xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeFromStart")) { - res.setTimeFromStart(parseDuration(xpp)); + res.setTimeFromStart(parseEvidenceVariableCharacteristicTimeFromStartComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("groupMeasure")) { res.setGroupMeasureElement(parseEnumeration(xpp, EvidenceVariable.GroupMeasure.NULL, new EvidenceVariable.GroupMeasureEnumFactory())); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -10940,6 +11720,36 @@ public class XmlParser extends XmlParserBase { return true; } + protected EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent parseEvidenceVariableCharacteristicTimeFromStartComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent res = new EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseEvidenceVariableCharacteristicTimeFromStartComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseEvidenceVariableCharacteristicTimeFromStartComponentContent(int eventType, XmlPullParser xpp, EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { + res.setDescriptionElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { + res.setQuantity(parseQuantity(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("range")) { + res.setRange(parseRange(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { + res.getNote().add(parseAnnotation(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected ExampleScenario parseExampleScenario(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { ExampleScenario res = new ExampleScenario(); parseResourceAttributes(xpp, res); @@ -13140,10 +13950,10 @@ public class XmlParser extends XmlParserBase { res.setAuthority(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("targetDisease")) { res.getTargetDisease().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "doseNumber")) { - res.setDoseNumber(parseType("doseNumber", xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "seriesDoses")) { - res.setSeriesDoses(parseType("seriesDoses", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { + res.setDoseNumberElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { + res.setSeriesDosesElement(parseString(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ return false; } @@ -13188,10 +13998,10 @@ public class XmlParser extends XmlParserBase { res.setDescriptionElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { res.setSeriesElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "doseNumber")) { - res.setDoseNumber(parseType("doseNumber", xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "seriesDoses")) { - res.setSeriesDoses(parseType("seriesDoses", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { + res.setDoseNumberElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { + res.setSeriesDosesElement(parseString(xpp)); } else if (!parseDomainResourceContent(eventType, xpp, res)){ return false; } @@ -13262,10 +14072,10 @@ public class XmlParser extends XmlParserBase { res.setDescriptionElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("series")) { res.setSeriesElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "doseNumber")) { - res.setDoseNumber(parseType("doseNumber", xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "seriesDoses")) { - res.setSeriesDoses(parseType("seriesDoses", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("doseNumber")) { + res.setDoseNumberElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("seriesDoses")) { + res.setSeriesDosesElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingImmunization")) { res.getSupportingImmunization().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("supportingPatientInformation")) { @@ -13702,6 +14512,10 @@ public class XmlParser extends XmlParserBase { res.setIdentifier(parseIdentifier(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("role")) { res.setRole(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { + res.getFunction().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { + res.setDescriptionElement(parseMarkdown(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("allergenicIndicator")) { res.setAllergenicIndicatorElement(parseBoolean(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { @@ -13766,10 +14580,14 @@ public class XmlParser extends XmlParserBase { res.setPresentation(parseRatio(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentationHighLimit")) { res.setPresentationHighLimit(parseRatio(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("presentationText")) { + res.setPresentationTextElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concentration")) { res.setConcentration(parseRatio(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concentrationHighLimit")) { res.setConcentrationHighLimit(parseRatio(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("concentrationText")) { + res.setConcentrationTextElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("measurementPoint")) { res.setMeasurementPointElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("country")) { @@ -14642,21 +15460,21 @@ public class XmlParser extends XmlParserBase { res.getManufacturer().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { res.getIngredient().add(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { - res.getCharacteristic().add(parseManufacturedItemDefinitionCharacteristicComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { + res.getProperty().add(parseManufacturedItemDefinitionPropertyComponent(xpp)); } else if (!parseDomainResourceContent(eventType, xpp, res)){ return false; } return true; } - protected ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent parseManufacturedItemDefinitionCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent(); + protected ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent parseManufacturedItemDefinitionPropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent res = new ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent(); parseElementAttributes(xpp, res); next(xpp); int eventType = nextNoWhitespace(xpp); while (eventType != XmlPullParser.END_TAG) { - if (!parseManufacturedItemDefinitionCharacteristicComponentContent(eventType, xpp, res)) + if (!parseManufacturedItemDefinitionPropertyComponentContent(eventType, xpp, res)) unknownContent(xpp); eventType = nextNoWhitespace(xpp); } @@ -14665,9 +15483,9 @@ public class XmlParser extends XmlParserBase { return res; } - protected boolean parseManufacturedItemDefinitionCharacteristicComponentContent(int eventType, XmlPullParser xpp, ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { - res.setCode(parseCodeableConcept(xpp)); + protected boolean parseManufacturedItemDefinitionPropertyComponentContent(int eventType, XmlPullParser xpp, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { res.setValue(parseType("value", xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -15192,8 +16010,8 @@ public class XmlParser extends XmlParserBase { } protected boolean parseMedicationIngredientComponentContent(int eventType, XmlPullParser xpp, Medication.MedicationIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { - res.setItem(parseType("item", xpp)); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { + res.setItem(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isActive")) { res.setIsActiveElement(parseBoolean(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "strength")) { @@ -15262,8 +16080,8 @@ public class XmlParser extends XmlParserBase { res.getStatusReason().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { res.getCategory().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { - res.setMedication(parseType("medication", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { + res.setMedication(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { @@ -15378,12 +16196,12 @@ public class XmlParser extends XmlParserBase { res.getPartOf().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { res.setStatusElement(parseEnumeration(xpp, MedicationDispense.MedicationDispenseStatusCodes.NULL, new MedicationDispense.MedicationDispenseStatusCodesEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "statusReason")) { - res.setStatusReason(parseType("statusReason", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { + res.setStatusReason(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { res.getCategory().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { - res.setMedication(parseType("medication", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { + res.setMedication(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { @@ -15622,8 +16440,8 @@ public class XmlParser extends XmlParserBase { } protected boolean parseMedicationKnowledgeIngredientComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { - res.setItem(parseType("item", xpp)); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { + res.setItem(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isActive")) { res.setIsActiveElement(parseBoolean(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "strength")) { @@ -15706,8 +16524,8 @@ public class XmlParser extends XmlParserBase { protected boolean parseMedicationKnowledgeAdministrationGuidelineComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeAdministrationGuidelineComponent res) throws XmlPullParserException, IOException, FHIRFormatError { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dosage")) { res.getDosage().add(parseMedicationKnowledgeAdministrationGuidelineDosageComponent(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "indication")) { - res.setIndication(parseType("indication", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("indication")) { + res.setIndication(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("patientCharacteristic")) { res.getPatientCharacteristic().add(parseMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -15758,10 +16576,10 @@ public class XmlParser extends XmlParserBase { } protected boolean parseMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponentContent(int eventType, XmlPullParser xpp, MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "characteristic")) { - res.setCharacteristic(parseType("characteristic", xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { - res.getValue().add(parseString(xpp)); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { + res.setValue(parseType("value", xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ return false; } @@ -15994,8 +16812,8 @@ public class XmlParser extends XmlParserBase { res.setReportedElement(parseBoolean(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { res.setInformationSource(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { - res.setMedication(parseType("medication", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { + res.setMedication(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { @@ -16164,8 +16982,8 @@ public class XmlParser extends XmlParserBase { res.getStatusReason().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { res.getCategory().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "medication")) { - res.setMedication(parseType("medication", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("medication")) { + res.setMedication(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { @@ -16215,11 +17033,13 @@ public class XmlParser extends XmlParserBase { } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("domain")) { - res.setDomain(parseCoding(xpp)); + res.setDomain(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { res.setVersionElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { - res.setStatus(parseCoding(xpp)); + res.setStatus(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { + res.setStatusDateElement(parseDateTime(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { res.setDescriptionElement(parseMarkdown(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("combinedPharmaceuticalDoseForm")) { @@ -16236,6 +17056,8 @@ public class XmlParser extends XmlParserBase { res.setPaediatricUseIndicator(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productClassification")) { res.getProductClassification().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { + res.getCharacteristic().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingStatus")) { res.getMarketingStatus().add(parseMarketingStatus(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("pharmaceuticalProduct")) { @@ -16309,7 +17131,7 @@ public class XmlParser extends XmlParserBase { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productName")) { res.setProductNameElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { - res.setType(parseCoding(xpp)); + res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("namePart")) { res.getNamePart().add(parseMedicinalProductDefinitionNameNamePartComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("countryLanguage")) { @@ -16339,7 +17161,7 @@ public class XmlParser extends XmlParserBase { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("part")) { res.setPartElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { - res.setType(parseCoding(xpp)); + res.setType(parseCodeableConcept(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ return false; } @@ -16393,7 +17215,7 @@ public class XmlParser extends XmlParserBase { if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "product")) { res.setProduct(parseType("product", xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { - res.setType(parseCoding(xpp)); + res.setType(parseCodeableConcept(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ return false; } @@ -16416,8 +17238,8 @@ public class XmlParser extends XmlParserBase { } protected boolean parseMedicinalProductDefinitionManufacturingBusinessOperationComponentContent(int eventType, XmlPullParser xpp, MedicinalProductDefinition.MedicinalProductDefinitionManufacturingBusinessOperationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "type")) { - res.setType(parseType("type", xpp)); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectiveDate")) { res.setEffectiveDate(parsePeriod(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { @@ -17128,34 +17950,42 @@ public class XmlParser extends XmlParserBase { protected boolean parseNutritionIntakeContent(int eventType, XmlPullParser xpp, NutritionIntake res) throws XmlPullParserException, IOException, FHIRFormatError { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesCanonical")) { + res.getInstantiatesCanonical().add(parseCanonical(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instantiatesUri")) { + res.getInstantiatesUri().add(parseUri(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basedOn")) { res.getBasedOn().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partOf")) { res.getPartOf().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { - res.setStatusElement(parseEnumeration(xpp, NutritionIntake.NutritionIntakeStatusCodes.NULL, new NutritionIntake.NutritionIntakeStatusCodesEnumFactory())); + res.setStatusElement(parseEnumeration(xpp, Enumerations.EventStatus.NULL, new Enumerations.EventStatusEnumFactory())); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusReason")) { res.getStatusReason().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { - res.getCategory().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consumedItem")) { - res.getConsumedItem().add(parseNutritionIntakeConsumedItemComponent(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredientLabel")) { - res.getIngredientLabel().add(parseNutritionIntakeIngredientLabelComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { + res.setCode(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.setSubject(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("encounter")) { res.setEncounter(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "effective")) { - res.setEffective(parseType("effective", xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dateAsserted")) { - res.setDateAssertedElement(parseDateTime(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("informationSource")) { - res.setInformationSource(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "occurrence")) { + res.setOccurrence(parseType("occurrence", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("recorded")) { + res.setRecordedElement(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "reported")) { + res.setReported(parseType("reported", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("consumedItem")) { + res.getConsumedItem().add(parseNutritionIntakeConsumedItemComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredientLabel")) { + res.getIngredientLabel().add(parseNutritionIntakeIngredientLabelComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("performer")) { + res.getPerformer().add(parseNutritionIntakePerformerComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("location")) { + res.setLocation(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFrom")) { res.getDerivedFrom().add(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reasonCode")) { - res.getReasonCode().add(parseCodeableReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("reason")) { + res.getReason().add(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { res.getNote().add(parseAnnotation(xpp)); } else if (!parseDomainResourceContent(eventType, xpp, res)){ @@ -17183,7 +18013,7 @@ public class XmlParser extends XmlParserBase { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutritionProduct")) { - res.setNutritionProduct(parseCodeableConcept(xpp)); + res.setNutritionProduct(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("schedule")) { res.setSchedule(parseTiming(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { @@ -17217,7 +18047,7 @@ public class XmlParser extends XmlParserBase { protected boolean parseNutritionIntakeIngredientLabelComponentContent(int eventType, XmlPullParser xpp, NutritionIntake.NutritionIntakeIngredientLabelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { - res.setNutrient(parseCodeableConcept(xpp)); + res.setNutrient(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { res.setAmount(parseQuantity(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -17226,6 +18056,32 @@ public class XmlParser extends XmlParserBase { return true; } + protected NutritionIntake.NutritionIntakePerformerComponent parseNutritionIntakePerformerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + NutritionIntake.NutritionIntakePerformerComponent res = new NutritionIntake.NutritionIntakePerformerComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseNutritionIntakePerformerComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseNutritionIntakePerformerComponentContent(int eventType, XmlPullParser xpp, NutritionIntake.NutritionIntakePerformerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("function")) { + res.setFunction(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("actor")) { + res.setActor(parseReference(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected NutritionOrder parseNutritionOrder(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { NutritionOrder res = new NutritionOrder(); parseResourceAttributes(xpp, res); @@ -17468,6 +18324,158 @@ public class XmlParser extends XmlParserBase { return true; } + protected NutritionProduct parseNutritionProduct(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + NutritionProduct res = new NutritionProduct(); + parseResourceAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseNutritionProductContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseNutritionProductContent(int eventType, XmlPullParser xpp, NutritionProduct res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatusElement(parseEnumeration(xpp, NutritionProduct.NutritionProductStatus.NULL, new NutritionProduct.NutritionProductStatusEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { + res.getCategory().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { + res.setCode(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { + res.getManufacturer().add(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("nutrient")) { + res.getNutrient().add(parseNutritionProductNutrientComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("ingredient")) { + res.getIngredient().add(parseNutritionProductIngredientComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("knownAllergen")) { + res.getKnownAllergen().add(parseCodeableReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("productCharacteristic")) { + res.getProductCharacteristic().add(parseNutritionProductProductCharacteristicComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("instance")) { + res.setInstance(parseNutritionProductInstanceComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("note")) { + res.getNote().add(parseAnnotation(xpp)); + } else if (!parseDomainResourceContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected NutritionProduct.NutritionProductNutrientComponent parseNutritionProductNutrientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + NutritionProduct.NutritionProductNutrientComponent res = new NutritionProduct.NutritionProductNutrientComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseNutritionProductNutrientComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseNutritionProductNutrientComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductNutrientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { + res.setItem(parseCodeableReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { + res.getAmount().add(parseRatio(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected NutritionProduct.NutritionProductIngredientComponent parseNutritionProductIngredientComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + NutritionProduct.NutritionProductIngredientComponent res = new NutritionProduct.NutritionProductIngredientComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseNutritionProductIngredientComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseNutritionProductIngredientComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductIngredientComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { + res.setItem(parseCodeableReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { + res.getAmount().add(parseRatio(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected NutritionProduct.NutritionProductProductCharacteristicComponent parseNutritionProductProductCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + NutritionProduct.NutritionProductProductCharacteristicComponent res = new NutritionProduct.NutritionProductProductCharacteristicComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseNutritionProductProductCharacteristicComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseNutritionProductProductCharacteristicComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductProductCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { + res.setValue(parseType("value", xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected NutritionProduct.NutritionProductInstanceComponent parseNutritionProductInstanceComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + NutritionProduct.NutritionProductInstanceComponent res = new NutritionProduct.NutritionProductInstanceComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseNutritionProductInstanceComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseNutritionProductInstanceComponentContent(int eventType, XmlPullParser xpp, NutritionProduct.NutritionProductInstanceComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { + res.setQuantity(parseQuantity(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lotNumber")) { + res.setLotNumberElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("expiry")) { + res.setExpiryElement(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useBy")) { + res.setUseByElement(parseDateTime(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected Observation parseObservation(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { Observation res = new Observation(); parseResourceAttributes(xpp, res); @@ -18190,14 +19198,22 @@ public class XmlParser extends XmlParserBase { protected boolean parsePackagedProductDefinitionContent(int eventType, XmlPullParser xpp, PackagedProductDefinition res) throws XmlPullParserException, IOException, FHIRFormatError { if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { + res.setNameElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subject")) { res.getSubject().add(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatus(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("statusDate")) { + res.setStatusDateElement(parseDateTime(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { - res.setDescriptionElement(parseString(xpp)); + res.setDescriptionElement(parseMarkdown(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("legalStatusOfSupply")) { res.setLegalStatusOfSupply(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingStatus")) { res.getMarketingStatus().add(parseMarketingStatus(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { + res.getCharacteristic().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copackagedIndicator")) { res.setCopackagedIndicatorElement(parseBoolean(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("marketingAuthorization")) { @@ -18261,7 +19277,7 @@ public class XmlParser extends XmlParserBase { } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { - res.setQuantity(parseQuantity(xpp)); + res.setQuantityElement(parseInteger(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("material")) { res.getMaterial().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("alternateMaterial")) { @@ -18270,8 +19286,8 @@ public class XmlParser extends XmlParserBase { res.getShelfLifeStorage().add(parseProductShelfLife(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("manufacturer")) { res.getManufacturer().add(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("characteristic")) { - res.getCharacteristic().add(parsePackagedProductDefinitionPackageCharacteristicComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("property")) { + res.getProperty().add(parsePackagedProductDefinitionPackagePropertyComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("containedItem")) { res.getContainedItem().add(parsePackagedProductDefinitionPackageContainedItemComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("package")) { @@ -18282,13 +19298,13 @@ public class XmlParser extends XmlParserBase { return true; } - protected PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent parsePackagedProductDefinitionPackageCharacteristicComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent(); + protected PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent parsePackagedProductDefinitionPackagePropertyComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent res = new PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent(); parseElementAttributes(xpp, res); next(xpp); int eventType = nextNoWhitespace(xpp); while (eventType != XmlPullParser.END_TAG) { - if (!parsePackagedProductDefinitionPackageCharacteristicComponentContent(eventType, xpp, res)) + if (!parsePackagedProductDefinitionPackagePropertyComponentContent(eventType, xpp, res)) unknownContent(xpp); eventType = nextNoWhitespace(xpp); } @@ -18297,9 +19313,9 @@ public class XmlParser extends XmlParserBase { return res; } - protected boolean parsePackagedProductDefinitionPackageCharacteristicComponentContent(int eventType, XmlPullParser xpp, PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { - res.setCode(parseCodeableConcept(xpp)); + protected boolean parsePackagedProductDefinitionPackagePropertyComponentContent(int eventType, XmlPullParser xpp, PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { + res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "value")) { res.setValue(parseType("value", xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -18696,6 +19712,102 @@ public class XmlParser extends XmlParserBase { return true; } + protected Permission parsePermission(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Permission res = new Permission(); + parseResourceAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parsePermissionContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parsePermissionContent(int eventType, XmlPullParser xpp, Permission res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatusElement(parseEnumeration(xpp, Permission.PermissionStatus.NULL, new Permission.PermissionStatusEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intent")) { + res.setIntent(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("asserter")) { + res.setAsserter(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("assertionDate")) { + res.getAssertionDate().add(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validity")) { + res.setValidity(parsePeriod(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { + res.getPurpose().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("dataScope")) { + res.getDataScope().add(parseExpression(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("processingActivity")) { + res.getProcessingActivity().add(parsePermissionProcessingActivityComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("justification")) { + res.setJustification(parsePermissionJustificationComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("usageLimitations")) { + res.getUsageLimitations().add(parseCodeableConcept(xpp)); + } else if (!parseDomainResourceContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Permission.PermissionProcessingActivityComponent parsePermissionProcessingActivityComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Permission.PermissionProcessingActivityComponent res = new Permission.PermissionProcessingActivityComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parsePermissionProcessingActivityComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parsePermissionProcessingActivityComponentContent(int eventType, XmlPullParser xpp, Permission.PermissionProcessingActivityComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partyReference")) { + res.getPartyReference().add(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("partyCodeableConcept")) { + res.getPartyCodeableConcept().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { + res.getPurpose().add(parseCodeableConcept(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected Permission.PermissionJustificationComponent parsePermissionJustificationComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + Permission.PermissionJustificationComponent res = new Permission.PermissionJustificationComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parsePermissionJustificationComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parsePermissionJustificationComponentContent(int eventType, XmlPullParser xpp, Permission.PermissionJustificationComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("evidence")) { + res.getEvidence().add(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("grounds")) { + res.getGrounds().add(parseCodeableConcept(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + protected Person parsePerson(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { Person res = new Person(); parseResourceAttributes(xpp, res); @@ -19834,6 +20946,10 @@ public class XmlParser extends XmlParserBase { res.setStatusDateElement(parseDateTime(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("validityPeriod")) { res.setValidityPeriod(parsePeriod(xpp)); + } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "indication")) { + res.setIndication(parseType("indication", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("intendedUse")) { + res.setIntendedUse(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("basis")) { res.getBasis().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("relatedDate")) { @@ -21575,7 +22691,7 @@ public class XmlParser extends XmlParserBase { } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { res.setNameElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { - res.setStatusElement(parseEnumeration(xpp, Subscription.SubscriptionStatus.NULL, new Subscription.SubscriptionStatusEnumFactory())); + res.setStatusElement(parseEnumeration(xpp, Enumerations.SubscriptionState.NULL, new Enumerations.SubscriptionStateEnumFactory())); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { res.setTopic(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { @@ -21588,10 +22704,20 @@ public class XmlParser extends XmlParserBase { res.getFilterBy().add(parseSubscriptionFilterByComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("error")) { res.getError().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventCount")) { - res.setEventCountElement(parseUnsignedInt(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channel")) { - res.setChannel(parseSubscriptionChannelComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("channelType")) { + res.setChannelType(parseCoding(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { + res.setEndpointElement(parseUrl(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { + res.getHeader().add(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("heartbeatPeriod")) { + res.setHeartbeatPeriodElement(parseUnsignedInt(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("timeout")) { + res.setTimeoutElement(parseUnsignedInt(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { + res.setContentTypeElement(parseCode(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { + res.setContentElement(parseEnumeration(xpp, Subscription.SubscriptionPayloadContent.NULL, new Subscription.SubscriptionPayloadContentEnumFactory())); } else if (!parseDomainResourceContent(eventType, xpp, res)){ return false; } @@ -21614,10 +22740,10 @@ public class XmlParser extends XmlParserBase { } protected boolean parseSubscriptionFilterByComponentContent(int eventType, XmlPullParser xpp, Subscription.SubscriptionFilterByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { - res.setNameElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("matchType")) { - res.setMatchTypeElement(parseEnumeration(xpp, Subscription.SubscriptionFilterByMatchType.NULL, new Subscription.SubscriptionFilterByMatchTypeEnumFactory())); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParamName")) { + res.setSearchParamNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchModifier")) { + res.setSearchModifierElement(parseEnumeration(xpp, Enumerations.SubscriptionSearchModifier.NULL, new Enumerations.SubscriptionSearchModifierEnumFactory())); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("value")) { res.setValueElement(parseString(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -21626,13 +22752,13 @@ public class XmlParser extends XmlParserBase { return true; } - protected Subscription.SubscriptionChannelComponent parseSubscriptionChannelComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Subscription.SubscriptionChannelComponent res = new Subscription.SubscriptionChannelComponent(); - parseElementAttributes(xpp, res); + protected SubscriptionStatus parseSubscriptionStatus(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + SubscriptionStatus res = new SubscriptionStatus(); + parseResourceAttributes(xpp, res); next(xpp); int eventType = nextNoWhitespace(xpp); while (eventType != XmlPullParser.END_TAG) { - if (!parseSubscriptionChannelComponentContent(eventType, xpp, res)) + if (!parseSubscriptionStatusContent(eventType, xpp, res)) unknownContent(xpp); eventType = nextNoWhitespace(xpp); } @@ -21641,30 +22767,128 @@ public class XmlParser extends XmlParserBase { return res; } - protected boolean parseSubscriptionChannelComponentContent(int eventType, XmlPullParser xpp, Subscription.SubscriptionChannelComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { - res.setType(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("endpoint")) { - res.setEndpointElement(parseUrl(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("header")) { - res.getHeader().add(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("heartbeatPeriod")) { - res.setHeartbeatPeriodElement(parseUnsignedInt(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("payload")) { - res.setPayload(parseSubscriptionChannelPayloadComponent(xpp)); + protected boolean parseSubscriptionStatusContent(int eventType, XmlPullParser xpp, SubscriptionStatus res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("notificationType")) { + res.setNotificationTypeElement(parseEnumeration(xpp, SubscriptionStatus.SubscriptionNotificationType.NULL, new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventsSinceSubscriptionStart")) { + res.setEventsSinceSubscriptionStartElement(parseInteger64(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("eventsInNotification")) { + res.setEventsInNotificationElement(parseInteger(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("subscription")) { + res.setSubscription(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatusElement(parseEnumeration(xpp, Enumerations.SubscriptionState.NULL, new Enumerations.SubscriptionStateEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("topic")) { + res.setTopic(parseReference(xpp)); + } else if (!parseDomainResourceContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected SubscriptionTopic parseSubscriptionTopic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + SubscriptionTopic res = new SubscriptionTopic(); + parseResourceAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseSubscriptionTopicContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseSubscriptionTopicContent(int eventType, XmlPullParser xpp, SubscriptionTopic res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { + res.setUrlElement(parseUri(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.getIdentifier().add(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { + res.setVersionElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { + res.setTitleElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromCanonical")) { + res.getDerivedFromCanonical().add(parseCanonical(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromUri")) { + res.getDerivedFromUri().add(parseUri(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { + res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { + res.setExperimentalElement(parseBoolean(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { + res.setDateElement(parseDateTime(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { + res.setPublisher(parseReference(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { + res.getContact().add(parseContactDetail(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { + res.setDescriptionElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { + res.getUseContext().add(parseUsageContext(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { + res.getJurisdiction().add(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { + res.setPurposeElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { + res.setCopyrightElement(parseMarkdown(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { + res.setApprovalDateElement(parseDate(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { + res.setLastReviewDateElement(parseDate(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { + res.setEffectivePeriod(parsePeriod(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceTrigger")) { + res.setResourceTrigger(parseSubscriptionTopicResourceTriggerComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("canFilterBy")) { + res.getCanFilterBy().add(parseSubscriptionTopicCanFilterByComponent(xpp)); + } else if (!parseDomainResourceContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected SubscriptionTopic.SubscriptionTopicResourceTriggerComponent parseSubscriptionTopicResourceTriggerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + SubscriptionTopic.SubscriptionTopicResourceTriggerComponent res = new SubscriptionTopic.SubscriptionTopicResourceTriggerComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseSubscriptionTopicResourceTriggerComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseSubscriptionTopicResourceTriggerComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { + res.setDescriptionElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { + res.getResourceType().add(parseCode(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("methodCriteria")) { + res.getMethodCriteria().add(parseEnumeration(xpp, SubscriptionTopic.InteractionTrigger.NULL, new SubscriptionTopic.InteractionTriggerEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryCriteria")) { + res.setQueryCriteria(parseSubscriptionTopicResourceTriggerQueryCriteriaComponent(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirPathCriteria")) { + res.getFhirPathCriteria().add(parseString(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ return false; } return true; } - protected Subscription.SubscriptionChannelPayloadComponent parseSubscriptionChannelPayloadComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Subscription.SubscriptionChannelPayloadComponent res = new Subscription.SubscriptionChannelPayloadComponent(); + protected SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent parseSubscriptionTopicResourceTriggerQueryCriteriaComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent res = new SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent(); parseElementAttributes(xpp, res); next(xpp); int eventType = nextNoWhitespace(xpp); while (eventType != XmlPullParser.END_TAG) { - if (!parseSubscriptionChannelPayloadComponentContent(eventType, xpp, res)) + if (!parseSubscriptionTopicResourceTriggerQueryCriteriaComponentContent(eventType, xpp, res)) unknownContent(xpp); eventType = nextNoWhitespace(xpp); } @@ -21673,11 +22897,41 @@ public class XmlParser extends XmlParserBase { return res; } - protected boolean parseSubscriptionChannelPayloadComponentContent(int eventType, XmlPullParser xpp, Subscription.SubscriptionChannelPayloadComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contentType")) { - res.setContentTypeElement(parseCode(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("content")) { - res.setContentElement(parseEnumeration(xpp, Subscription.SubscriptionPayloadContent.NULL, new Subscription.SubscriptionPayloadContentEnumFactory())); + protected boolean parseSubscriptionTopicResourceTriggerQueryCriteriaComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { + res.setPreviousElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("current")) { + res.setCurrentElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requireBoth")) { + res.setRequireBothElement(parseBoolean(xpp)); + } else if (!parseBackboneElementContent(eventType, xpp, res)){ + return false; + } + return true; + } + + protected SubscriptionTopic.SubscriptionTopicCanFilterByComponent parseSubscriptionTopicCanFilterByComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { + SubscriptionTopic.SubscriptionTopicCanFilterByComponent res = new SubscriptionTopic.SubscriptionTopicCanFilterByComponent(); + parseElementAttributes(xpp, res); + next(xpp); + int eventType = nextNoWhitespace(xpp); + while (eventType != XmlPullParser.END_TAG) { + if (!parseSubscriptionTopicCanFilterByComponentContent(eventType, xpp, res)) + unknownContent(xpp); + eventType = nextNoWhitespace(xpp); + } + next(xpp); + parseElementClose(res); + return res; + } + + protected boolean parseSubscriptionTopicCanFilterByComponentContent(int eventType, XmlPullParser xpp, SubscriptionTopic.SubscriptionTopicCanFilterByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchParamName")) { + res.setSearchParamNameElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("searchModifier")) { + res.getSearchModifier().add(parseEnumeration(xpp, Enumerations.SubscriptionSearchModifier.NULL, new Enumerations.SubscriptionSearchModifierEnumFactory())); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { + res.setDocumentationElement(parseMarkdown(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ return false; } @@ -21942,8 +23196,8 @@ public class XmlParser extends XmlParserBase { res.getIsotope().add(parseSubstanceDefinitionStructureIsotopeComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("molecularWeight")) { res.setMolecularWeight(parseSubstanceDefinitionStructureIsotopeMolecularWeightComponent(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceCoding")) { - res.getSourceCoding().add(parseCoding(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("technique")) { + res.getTechnique().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("sourceDocument")) { res.getSourceDocument().add(parseReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { @@ -22034,6 +23288,8 @@ public class XmlParser extends XmlParserBase { res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { res.setRepresentationElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { + res.setFormat(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { res.setAttachment(parseAttachment(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -22326,14 +23582,16 @@ public class XmlParser extends XmlParserBase { } protected boolean parseSubstancePolymerContent(int eventType, XmlPullParser xpp, SubstancePolymer res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { + res.setIdentifier(parseIdentifier(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("class")) { res.setClass_(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("geometry")) { res.setGeometry(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copolymerConnectivity")) { res.getCopolymerConnectivity().add(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("modification")) { - res.getModification().add(parseString(xpp)); + res.setModificationElement(parseString(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("monomerSet")) { res.getMonomerSet().add(parseSubstancePolymerMonomerSetComponent(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeat")) { @@ -22386,10 +23644,10 @@ public class XmlParser extends XmlParserBase { } protected boolean parseSubstancePolymerMonomerSetStartingMaterialComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("material")) { - res.setMaterial(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("type")) { - res.setType(parseCodeableConcept(xpp)); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("code")) { + res.setCode(parseCodeableConcept(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("category")) { + res.setCategory(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("isDefining")) { res.setIsDefiningElement(parseBoolean(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { @@ -22446,10 +23704,10 @@ public class XmlParser extends XmlParserBase { } protected boolean parseSubstancePolymerRepeatRepeatUnitComponentContent(int eventType, XmlPullParser xpp, SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orientationOfPolymerisation")) { - res.setOrientationOfPolymerisation(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("repeatUnit")) { - res.setRepeatUnitElement(parseString(xpp)); + if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("unit")) { + res.setUnitElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("orientation")) { + res.setOrientation(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("amount")) { res.setAmount(parseSubstanceAmount(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("degreeOfPolymerisation")) { @@ -22508,6 +23766,8 @@ public class XmlParser extends XmlParserBase { res.setType(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("representation")) { res.setRepresentationElement(parseString(xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("format")) { + res.setFormat(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("attachment")) { res.setAttachment(parseAttachment(xpp)); } else if (!parseBackboneElementContent(eventType, xpp, res)){ @@ -23060,8 +24320,8 @@ public class XmlParser extends XmlParserBase { res.setCategory(parseCodeableConcept(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("priority")) { res.setPriorityElement(parseEnumeration(xpp, Enumerations.RequestPriority.NULL, new Enumerations.RequestPriorityEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && nameIsTypeName(xpp, "item")) { - res.setItem(parseType("item", xpp)); + } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("item")) { + res.setItem(parseCodeableReference(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("quantity")) { res.setQuantity(parseQuantity(xpp)); } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("parameter")) { @@ -24476,158 +25736,6 @@ public class XmlParser extends XmlParserBase { return true; } - protected Topic parseTopic(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Topic res = new Topic(); - parseResourceAttributes(xpp, res); - next(xpp); - int eventType = nextNoWhitespace(xpp); - while (eventType != XmlPullParser.END_TAG) { - if (!parseTopicContent(eventType, xpp, res)) - unknownContent(xpp); - eventType = nextNoWhitespace(xpp); - } - next(xpp); - parseElementClose(res); - return res; - } - - protected boolean parseTopicContent(int eventType, XmlPullParser xpp, Topic res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("url")) { - res.setUrlElement(parseUri(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("identifier")) { - res.getIdentifier().add(parseIdentifier(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("version")) { - res.setVersionElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("title")) { - res.setTitleElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromCanonical")) { - res.getDerivedFromCanonical().add(parseCanonical(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("derivedFromUri")) { - res.getDerivedFromUri().add(parseUri(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("status")) { - res.setStatusElement(parseEnumeration(xpp, Enumerations.PublicationStatus.NULL, new Enumerations.PublicationStatusEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("experimental")) { - res.setExperimentalElement(parseBoolean(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("date")) { - res.setDateElement(parseDateTime(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("publisher")) { - res.setPublisher(parseReference(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("contact")) { - res.getContact().add(parseContactDetail(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { - res.setDescriptionElement(parseMarkdown(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("useContext")) { - res.getUseContext().add(parseUsageContext(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("jurisdiction")) { - res.getJurisdiction().add(parseCodeableConcept(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("purpose")) { - res.setPurposeElement(parseMarkdown(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("copyright")) { - res.setCopyrightElement(parseMarkdown(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("approvalDate")) { - res.setApprovalDateElement(parseDate(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("lastReviewDate")) { - res.setLastReviewDateElement(parseDate(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("effectivePeriod")) { - res.setEffectivePeriod(parsePeriod(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceTrigger")) { - res.setResourceTrigger(parseTopicResourceTriggerComponent(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("canFilterBy")) { - res.getCanFilterBy().add(parseTopicCanFilterByComponent(xpp)); - } else if (!parseDomainResourceContent(eventType, xpp, res)){ - return false; - } - return true; - } - - protected Topic.TopicResourceTriggerComponent parseTopicResourceTriggerComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Topic.TopicResourceTriggerComponent res = new Topic.TopicResourceTriggerComponent(); - parseElementAttributes(xpp, res); - next(xpp); - int eventType = nextNoWhitespace(xpp); - while (eventType != XmlPullParser.END_TAG) { - if (!parseTopicResourceTriggerComponentContent(eventType, xpp, res)) - unknownContent(xpp); - eventType = nextNoWhitespace(xpp); - } - next(xpp); - parseElementClose(res); - return res; - } - - protected boolean parseTopicResourceTriggerComponentContent(int eventType, XmlPullParser xpp, Topic.TopicResourceTriggerComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("description")) { - res.setDescriptionElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("resourceType")) { - res.getResourceType().add(parseCode(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("methodCriteria")) { - res.getMethodCriteria().add(parseEnumeration(xpp, Topic.InteractionTrigger.NULL, new Topic.InteractionTriggerEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("queryCriteria")) { - res.setQueryCriteria(parseTopicResourceTriggerQueryCriteriaComponent(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("fhirPathCriteria")) { - res.setFhirPathCriteriaElement(parseString(xpp)); - } else if (!parseBackboneElementContent(eventType, xpp, res)){ - return false; - } - return true; - } - - protected Topic.TopicResourceTriggerQueryCriteriaComponent parseTopicResourceTriggerQueryCriteriaComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Topic.TopicResourceTriggerQueryCriteriaComponent res = new Topic.TopicResourceTriggerQueryCriteriaComponent(); - parseElementAttributes(xpp, res); - next(xpp); - int eventType = nextNoWhitespace(xpp); - while (eventType != XmlPullParser.END_TAG) { - if (!parseTopicResourceTriggerQueryCriteriaComponentContent(eventType, xpp, res)) - unknownContent(xpp); - eventType = nextNoWhitespace(xpp); - } - next(xpp); - parseElementClose(res); - return res; - } - - protected boolean parseTopicResourceTriggerQueryCriteriaComponentContent(int eventType, XmlPullParser xpp, Topic.TopicResourceTriggerQueryCriteriaComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("previous")) { - res.setPreviousElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("current")) { - res.setCurrentElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("requireBoth")) { - res.setRequireBothElement(parseBoolean(xpp)); - } else if (!parseBackboneElementContent(eventType, xpp, res)){ - return false; - } - return true; - } - - protected Topic.TopicCanFilterByComponent parseTopicCanFilterByComponent(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { - Topic.TopicCanFilterByComponent res = new Topic.TopicCanFilterByComponent(); - parseElementAttributes(xpp, res); - next(xpp); - int eventType = nextNoWhitespace(xpp); - while (eventType != XmlPullParser.END_TAG) { - if (!parseTopicCanFilterByComponentContent(eventType, xpp, res)) - unknownContent(xpp); - eventType = nextNoWhitespace(xpp); - } - next(xpp); - parseElementClose(res); - return res; - } - - protected boolean parseTopicCanFilterByComponentContent(int eventType, XmlPullParser xpp, Topic.TopicCanFilterByComponent res) throws XmlPullParserException, IOException, FHIRFormatError { - if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("name")) { - res.setNameElement(parseString(xpp)); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("matchType")) { - res.getMatchType().add(parseEnumeration(xpp, Topic.TopicFilterByMatchType.NULL, new Topic.TopicFilterByMatchTypeEnumFactory())); - } else if (eventType == XmlPullParser.START_TAG && xpp.getName().equals("documentation")) { - res.setDocumentationElement(parseMarkdown(xpp)); - } else if (!parseBackboneElementContent(eventType, xpp, res)){ - return false; - } - return true; - } - protected ValueSet parseValueSet(XmlPullParser xpp) throws XmlPullParserException, IOException, FHIRFormatError { ValueSet res = new ValueSet(); parseResourceAttributes(xpp, res); @@ -25300,6 +26408,8 @@ public class XmlParser extends XmlParserBase { return parseChargeItem(xpp); } else if (xpp.getName().equals("ChargeItemDefinition")) { return parseChargeItemDefinition(xpp); + } else if (xpp.getName().equals("Citation")) { + return parseCitation(xpp); } else if (xpp.getName().equals("Claim")) { return parseClaim(xpp); } else if (xpp.getName().equals("ClaimResponse")) { @@ -25366,6 +26476,8 @@ public class XmlParser extends XmlParserBase { return parseEventDefinition(xpp); } else if (xpp.getName().equals("Evidence")) { return parseEvidence(xpp); + } else if (xpp.getName().equals("EvidenceFocus")) { + return parseEvidenceFocus(xpp); } else if (xpp.getName().equals("EvidenceVariable")) { return parseEvidenceVariable(xpp); } else if (xpp.getName().equals("ExampleScenario")) { @@ -25442,6 +26554,8 @@ public class XmlParser extends XmlParserBase { return parseNutritionIntake(xpp); } else if (xpp.getName().equals("NutritionOrder")) { return parseNutritionOrder(xpp); + } else if (xpp.getName().equals("NutritionProduct")) { + return parseNutritionProduct(xpp); } else if (xpp.getName().equals("Observation")) { return parseObservation(xpp); } else if (xpp.getName().equals("ObservationDefinition")) { @@ -25464,6 +26578,8 @@ public class XmlParser extends XmlParserBase { return parsePaymentNotice(xpp); } else if (xpp.getName().equals("PaymentReconciliation")) { return parsePaymentReconciliation(xpp); + } else if (xpp.getName().equals("Permission")) { + return parsePermission(xpp); } else if (xpp.getName().equals("Person")) { return parsePerson(xpp); } else if (xpp.getName().equals("PlanDefinition")) { @@ -25510,6 +26626,10 @@ public class XmlParser extends XmlParserBase { return parseStructureMap(xpp); } else if (xpp.getName().equals("Subscription")) { return parseSubscription(xpp); + } else if (xpp.getName().equals("SubscriptionStatus")) { + return parseSubscriptionStatus(xpp); + } else if (xpp.getName().equals("SubscriptionTopic")) { + return parseSubscriptionTopic(xpp); } else if (xpp.getName().equals("Substance")) { return parseSubstance(xpp); } else if (xpp.getName().equals("SubstanceDefinition")) { @@ -25536,8 +26656,6 @@ public class XmlParser extends XmlParserBase { return parseTestReport(xpp); } else if (xpp.getName().equals("TestScript")) { return parseTestScript(xpp); - } else if (xpp.getName().equals("Topic")) { - return parseTopic(xpp); } else if (xpp.getName().equals("ValueSet")) { return parseValueSet(xpp); } else if (xpp.getName().equals("VerificationResult")) { @@ -25949,6 +27067,8 @@ public class XmlParser extends XmlParserBase { return parseChargeItem(xpp); } else if (type.equals("ChargeItemDefinition")) { return parseChargeItemDefinition(xpp); + } else if (type.equals("Citation")) { + return parseCitation(xpp); } else if (type.equals("Claim")) { return parseClaim(xpp); } else if (type.equals("ClaimResponse")) { @@ -26015,6 +27135,8 @@ public class XmlParser extends XmlParserBase { return parseEventDefinition(xpp); } else if (type.equals("Evidence")) { return parseEvidence(xpp); + } else if (type.equals("EvidenceFocus")) { + return parseEvidenceFocus(xpp); } else if (type.equals("EvidenceVariable")) { return parseEvidenceVariable(xpp); } else if (type.equals("ExampleScenario")) { @@ -26091,6 +27213,8 @@ public class XmlParser extends XmlParserBase { return parseNutritionIntake(xpp); } else if (type.equals("NutritionOrder")) { return parseNutritionOrder(xpp); + } else if (type.equals("NutritionProduct")) { + return parseNutritionProduct(xpp); } else if (type.equals("Observation")) { return parseObservation(xpp); } else if (type.equals("ObservationDefinition")) { @@ -26113,6 +27237,8 @@ public class XmlParser extends XmlParserBase { return parsePaymentNotice(xpp); } else if (type.equals("PaymentReconciliation")) { return parsePaymentReconciliation(xpp); + } else if (type.equals("Permission")) { + return parsePermission(xpp); } else if (type.equals("Person")) { return parsePerson(xpp); } else if (type.equals("PlanDefinition")) { @@ -26159,6 +27285,10 @@ public class XmlParser extends XmlParserBase { return parseStructureMap(xpp); } else if (type.equals("Subscription")) { return parseSubscription(xpp); + } else if (type.equals("SubscriptionStatus")) { + return parseSubscriptionStatus(xpp); + } else if (type.equals("SubscriptionTopic")) { + return parseSubscriptionTopic(xpp); } else if (type.equals("Substance")) { return parseSubstance(xpp); } else if (type.equals("SubstanceDefinition")) { @@ -26185,8 +27315,6 @@ public class XmlParser extends XmlParserBase { return parseTestReport(xpp); } else if (type.equals("TestScript")) { return parseTestScript(xpp); - } else if (type.equals("Topic")) { - return parseTopic(xpp); } else if (type.equals("ValueSet")) { return parseValueSet(xpp); } else if (type.equals("VerificationResult")) { @@ -26368,6 +27496,8 @@ public class XmlParser extends XmlParserBase { return true; } else if (xpp.getName().equals(prefix+"ChargeItemDefinition")) { return true; + } else if (xpp.getName().equals(prefix+"Citation")) { + return true; } else if (xpp.getName().equals(prefix+"Claim")) { return true; } else if (xpp.getName().equals(prefix+"ClaimResponse")) { @@ -26434,6 +27564,8 @@ public class XmlParser extends XmlParserBase { return true; } else if (xpp.getName().equals(prefix+"Evidence")) { return true; + } else if (xpp.getName().equals(prefix+"EvidenceFocus")) { + return true; } else if (xpp.getName().equals(prefix+"EvidenceVariable")) { return true; } else if (xpp.getName().equals(prefix+"ExampleScenario")) { @@ -26510,6 +27642,8 @@ public class XmlParser extends XmlParserBase { return true; } else if (xpp.getName().equals(prefix+"NutritionOrder")) { return true; + } else if (xpp.getName().equals(prefix+"NutritionProduct")) { + return true; } else if (xpp.getName().equals(prefix+"Observation")) { return true; } else if (xpp.getName().equals(prefix+"ObservationDefinition")) { @@ -26532,6 +27666,8 @@ public class XmlParser extends XmlParserBase { return true; } else if (xpp.getName().equals(prefix+"PaymentReconciliation")) { return true; + } else if (xpp.getName().equals(prefix+"Permission")) { + return true; } else if (xpp.getName().equals(prefix+"Person")) { return true; } else if (xpp.getName().equals(prefix+"PlanDefinition")) { @@ -26578,6 +27714,10 @@ public class XmlParser extends XmlParserBase { return true; } else if (xpp.getName().equals(prefix+"Subscription")) { return true; + } else if (xpp.getName().equals(prefix+"SubscriptionStatus")) { + return true; + } else if (xpp.getName().equals(prefix+"SubscriptionTopic")) { + return true; } else if (xpp.getName().equals(prefix+"Substance")) { return true; } else if (xpp.getName().equals(prefix+"SubstanceDefinition")) { @@ -26604,8 +27744,6 @@ public class XmlParser extends XmlParserBase { return true; } else if (xpp.getName().equals(prefix+"TestScript")) { return true; - } else if (xpp.getName().equals(prefix+"Topic")) { - return true; } else if (xpp.getName().equals(prefix+"ValueSet")) { return true; } else if (xpp.getName().equals(prefix+"VerificationResult")) { @@ -29100,9 +30238,9 @@ public class XmlParser extends XmlParserBase { for (Reference e : element.getDevice()) composeReference("device", e); } - if (element.hasCharacteristic()) { - for (AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent e : element.getCharacteristic()) - composeAdministrableProductDefinitionCharacteristicComponent("characteristic", e); + if (element.hasProperty()) { + for (AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent e : element.getProperty()) + composeAdministrableProductDefinitionPropertyComponent("property", e); } if (element.hasRouteOfAdministration()) { for (AdministrableProductDefinition.AdministrableProductDefinitionRouteOfAdministrationComponent e : element.getRouteOfAdministration()) @@ -29110,20 +30248,20 @@ public class XmlParser extends XmlParserBase { } } - protected void composeAdministrableProductDefinitionCharacteristicComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent element) throws IOException { + protected void composeAdministrableProductDefinitionPropertyComponent(String name, AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element) throws IOException { if (element != null) { composeElementAttributes(element); xml.enter(FHIR_NS, name); - composeAdministrableProductDefinitionCharacteristicComponentElements(element); + composeAdministrableProductDefinitionPropertyComponentElements(element); composeElementClose(element); xml.exit(FHIR_NS, name); } } - protected void composeAdministrableProductDefinitionCharacteristicComponentElements(AdministrableProductDefinition.AdministrableProductDefinitionCharacteristicComponent element) throws IOException { + protected void composeAdministrableProductDefinitionPropertyComponentElements(AdministrableProductDefinition.AdministrableProductDefinitionPropertyComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasCode()) { - composeCodeableConcept("code", element.getCode()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { composeType("value", element.getValue()); @@ -29705,10 +30843,8 @@ public class XmlParser extends XmlParserBase { if (element.hasRecordedElement()) { composeInstant("recorded", element.getRecordedElement()); } - if (element.hasOutcomeElement()) - composeEnumeration("outcome", element.getOutcomeElement(), new AuditEvent.AuditEventOutcomeEnumFactory()); - if (element.hasOutcomeDescElement()) { - composeString("outcomeDesc", element.getOutcomeDescElement()); + if (element.hasOutcome()) { + composeCodeableConcept("outcome", element.getOutcome()); } if (element.hasPurposeOfEvent()) { for (CodeableConcept e : element.getPurposeOfEvent()) @@ -31210,7 +32346,7 @@ public class XmlParser extends XmlParserBase { if (element.hasScheduled()) { composeType("scheduled", element.getScheduled()); } if (element.hasLocation()) { - composeReference("location", element.getLocation()); + composeCodeableReference("location", element.getLocation()); } if (element.hasReported()) { composeType("reported", element.getReported()); @@ -31674,6 +32810,646 @@ public class XmlParser extends XmlParserBase { } } + protected void composeCitation(String name, Citation element) throws IOException { + if (element != null) { + composeResourceAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationElements(Citation element) throws IOException { + composeMetadataResourceElements(element); + if (element.hasUrlElement()) { + composeUri("url", element.getUrlElement()); + } + if (element.hasVersionElement()) { + composeString("version", element.getVersionElement()); + } + if (element.hasStatusElement()) + composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); + if (element.hasUseContext()) { + for (UsageContext e : element.getUseContext()) + composeUsageContext("useContext", e); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasRelatedIdentifier()) { + for (Identifier e : element.getRelatedIdentifier()) + composeIdentifier("relatedIdentifier", e); + } + if (element.hasDateCitedElement()) { + composeDateTime("dateCited", element.getDateCitedElement()); + } + if (element.hasVariantCitation()) { + composeCitationVariantCitationComponent("variantCitation", element.getVariantCitation()); + } + if (element.hasPublishingModel()) { + composeCodeableConcept("publishingModel", element.getPublishingModel()); + } + if (element.hasJournal()) { + composeCitationJournalComponent("journal", element.getJournal()); + } + if (element.hasArticleTitleElement()) { + composeMarkdown("articleTitle", element.getArticleTitleElement()); + } + if (element.hasAlternativeTitle()) { + for (Citation.CitationAlternativeTitleComponent e : element.getAlternativeTitle()) + composeCitationAlternativeTitleComponent("alternativeTitle", e); + } + if (element.hasPagination()) { + composeCitationPaginationComponent("pagination", element.getPagination()); + } + if (element.hasArticleUrl()) { + for (Citation.CitationArticleUrlComponent e : element.getArticleUrl()) + composeCitationArticleUrlComponent("articleUrl", e); + } + if (element.hasAbstractElement()) { + composeMarkdown("abstract", element.getAbstractElement()); + } + if (element.hasAbstractCopyrightElement()) { + composeMarkdown("abstractCopyright", element.getAbstractCopyrightElement()); + } + if (element.hasAlternativeAbstract()) { + for (Citation.CitationAlternativeAbstractComponent e : element.getAlternativeAbstract()) + composeCitationAlternativeAbstractComponent("alternativeAbstract", e); + } + if (element.hasAuthorList()) { + composeCitationAuthorListComponent("authorList", element.getAuthorList()); + } + if (element.hasAuthorString()) { + for (Citation.CitationAuthorStringComponent e : element.getAuthorString()) + composeCitationAuthorStringComponent("authorString", e); + } + if (element.hasContributorList()) { + composeCitationContributorListComponent("contributorList", element.getContributorList()); + } + if (element.hasArticleLanguage()) { + composeCodeableConcept("articleLanguage", element.getArticleLanguage()); + } + if (element.hasAlternativeForm()) { + for (Citation.CitationAlternativeFormComponent e : element.getAlternativeForm()) + composeCitationAlternativeFormComponent("alternativeForm", e); + } + if (element.hasClassifier()) { + for (CodeableConcept e : element.getClassifier()) + composeCodeableConcept("classifier", e); + } + if (element.hasRelatedArtifact()) { + for (RelatedArtifact e : element.getRelatedArtifact()) + composeRelatedArtifact("relatedArtifact", e); + } + if (element.hasNote()) { + for (Annotation e : element.getNote()) + composeAnnotation("note", e); + } + if (element.hasMedlinePubMed()) { + composeCitationMedlinePubMedComponent("medlinePubMed", element.getMedlinePubMed()); + } + } + + protected void composeCitationVariantCitationComponent(String name, Citation.CitationVariantCitationComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationVariantCitationComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationVariantCitationComponentElements(Citation.CitationVariantCitationComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasValueElement()) { + composeString("value", element.getValueElement()); + } + if (element.hasBaseCitation()) { + composeReference("baseCitation", element.getBaseCitation()); + } + } + + protected void composeCitationJournalComponent(String name, Citation.CitationJournalComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationJournalComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationJournalComponentElements(Citation.CitationJournalComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasCountryElement()) { + composeString("country", element.getCountryElement()); + } + if (element.hasJournalIssue()) { + composeCitationJournalJournalIssueComponent("journalIssue", element.getJournalIssue()); + } + if (element.hasTitleElement()) { + composeString("title", element.getTitleElement()); + } + } + + protected void composeCitationJournalJournalIssueComponent(String name, Citation.CitationJournalJournalIssueComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationJournalJournalIssueComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationJournalJournalIssueComponentElements(Citation.CitationJournalJournalIssueComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasCitedMedium()) { + composeCodeableConcept("citedMedium", element.getCitedMedium()); + } + if (element.hasVolumeElement()) { + composeString("volume", element.getVolumeElement()); + } + if (element.hasIssueElement()) { + composeString("issue", element.getIssueElement()); + } + if (element.hasPublicationDateElement()) { + composeString("publicationDate", element.getPublicationDateElement()); + } + } + + protected void composeCitationAlternativeTitleComponent(String name, Citation.CitationAlternativeTitleComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAlternativeTitleComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAlternativeTitleComponentElements(Citation.CitationAlternativeTitleComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasLanguage()) { + composeCodeableConcept("language", element.getLanguage()); + } + if (element.hasTitleElement()) { + composeMarkdown("title", element.getTitleElement()); + } + } + + protected void composeCitationPaginationComponent(String name, Citation.CitationPaginationComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationPaginationComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationPaginationComponentElements(Citation.CitationPaginationComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasPageStringElement()) { + composeString("pageString", element.getPageStringElement()); + } + if (element.hasFirstPageElement()) { + composeString("firstPage", element.getFirstPageElement()); + } + if (element.hasLastPageElement()) { + composeString("lastPage", element.getLastPageElement()); + } + } + + protected void composeCitationArticleUrlComponent(String name, Citation.CitationArticleUrlComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationArticleUrlComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationArticleUrlComponentElements(Citation.CitationArticleUrlComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasUrlElement()) { + composeUri("url", element.getUrlElement()); + } + } + + protected void composeCitationAlternativeAbstractComponent(String name, Citation.CitationAlternativeAbstractComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAlternativeAbstractComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAlternativeAbstractComponentElements(Citation.CitationAlternativeAbstractComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasLanguage()) { + composeCodeableConcept("language", element.getLanguage()); + } + if (element.hasAbstractElement()) { + composeMarkdown("abstract", element.getAbstractElement()); + } + if (element.hasAbstractCopyrightElement()) { + composeMarkdown("abstractCopyright", element.getAbstractCopyrightElement()); + } + } + + protected void composeCitationAuthorListComponent(String name, Citation.CitationAuthorListComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAuthorListComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAuthorListComponentElements(Citation.CitationAuthorListComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasCompleteElement()) { + composeBoolean("complete", element.getCompleteElement()); + } + if (element.hasAuthor()) { + for (Citation.CitationAuthorListAuthorComponent e : element.getAuthor()) + composeCitationAuthorListAuthorComponent("author", e); + } + } + + protected void composeCitationAuthorListAuthorComponent(String name, Citation.CitationAuthorListAuthorComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAuthorListAuthorComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAuthorListAuthorComponentElements(Citation.CitationAuthorListAuthorComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasLastNameElement()) { + composeString("lastName", element.getLastNameElement()); + } + if (element.hasForeNameElement()) { + composeString("foreName", element.getForeNameElement()); + } + if (element.hasSuffixElement()) { + composeString("suffix", element.getSuffixElement()); + } + if (element.hasInitialsElement()) { + composeString("initials", element.getInitialsElement()); + } + if (element.hasCollectiveNameElement()) { + composeString("collectiveName", element.getCollectiveNameElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasAffiliationInfo()) { + for (Citation.CitationAuthorListAuthorAffiliationInfoComponent e : element.getAffiliationInfo()) + composeCitationAuthorListAuthorAffiliationInfoComponent("affiliationInfo", e); + } + if (element.hasAddress()) { + for (StringType e : element.getAddress()) + composeString("address", e); + } + if (element.hasTelecom()) { + for (ContactPoint e : element.getTelecom()) + composeContactPoint("telecom", e); + } + if (element.hasCorrespondingAuthorElement()) { + composeBoolean("correspondingAuthor", element.getCorrespondingAuthorElement()); + } + if (element.hasListOrderElement()) { + composePositiveInt("listOrder", element.getListOrderElement()); + } + } + + protected void composeCitationAuthorListAuthorAffiliationInfoComponent(String name, Citation.CitationAuthorListAuthorAffiliationInfoComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAuthorListAuthorAffiliationInfoComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAuthorListAuthorAffiliationInfoComponentElements(Citation.CitationAuthorListAuthorAffiliationInfoComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasAffiliationElement()) { + composeString("affiliation", element.getAffiliationElement()); + } + if (element.hasRoleElement()) { + composeString("role", element.getRoleElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + } + + protected void composeCitationAuthorStringComponent(String name, Citation.CitationAuthorStringComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAuthorStringComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAuthorStringComponentElements(Citation.CitationAuthorStringComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasSource()) { + composeCodeableConcept("source", element.getSource()); + } + if (element.hasValueElement()) { + composeString("value", element.getValueElement()); + } + } + + protected void composeCitationContributorListComponent(String name, Citation.CitationContributorListComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationContributorListComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationContributorListComponentElements(Citation.CitationContributorListComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasCompleteElement()) { + composeBoolean("complete", element.getCompleteElement()); + } + if (element.hasContributor()) { + for (Citation.CitationContributorListContributorComponent e : element.getContributor()) + composeCitationContributorListContributorComponent("contributor", e); + } + } + + protected void composeCitationContributorListContributorComponent(String name, Citation.CitationContributorListContributorComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationContributorListContributorComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationContributorListContributorComponentElements(Citation.CitationContributorListContributorComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasLastNameElement()) { + composeString("lastName", element.getLastNameElement()); + } + if (element.hasForeNameElement()) { + composeString("foreName", element.getForeNameElement()); + } + if (element.hasSuffixElement()) { + composeString("suffix", element.getSuffixElement()); + } + if (element.hasInitialsElement()) { + composeString("initials", element.getInitialsElement()); + } + if (element.hasCollectiveNameElement()) { + composeString("collectiveName", element.getCollectiveNameElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasContribution()) { + for (CodeableConcept e : element.getContribution()) + composeCodeableConcept("contribution", e); + } + if (element.hasAffiliationInfo()) { + for (Citation.CitationContributorListContributorAffiliationInfoComponent e : element.getAffiliationInfo()) + composeCitationContributorListContributorAffiliationInfoComponent("affiliationInfo", e); + } + if (element.hasListOrderElement()) { + composePositiveInt("listOrder", element.getListOrderElement()); + } + } + + protected void composeCitationContributorListContributorAffiliationInfoComponent(String name, Citation.CitationContributorListContributorAffiliationInfoComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationContributorListContributorAffiliationInfoComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationContributorListContributorAffiliationInfoComponentElements(Citation.CitationContributorListContributorAffiliationInfoComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasAffiliationElement()) { + composeString("affiliation", element.getAffiliationElement()); + } + if (element.hasRoleElement()) { + composeString("role", element.getRoleElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + } + + protected void composeCitationAlternativeFormComponent(String name, Citation.CitationAlternativeFormComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAlternativeFormComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAlternativeFormComponentElements(Citation.CitationAlternativeFormComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasPublishingModel()) { + composeCodeableConcept("publishingModel", element.getPublishingModel()); + } + if (element.hasLanguage()) { + composeCodeableConcept("language", element.getLanguage()); + } + if (element.hasJournalIssue()) { + composeCitationAlternativeFormJournalIssueComponent("journalIssue", element.getJournalIssue()); + } + if (element.hasPagination()) { + composeCitationAlternativeFormPaginationComponent("pagination", element.getPagination()); + } + } + + protected void composeCitationAlternativeFormJournalIssueComponent(String name, Citation.CitationAlternativeFormJournalIssueComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAlternativeFormJournalIssueComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAlternativeFormJournalIssueComponentElements(Citation.CitationAlternativeFormJournalIssueComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasCitedMedium()) { + composeCodeableConcept("citedMedium", element.getCitedMedium()); + } + if (element.hasVolumeElement()) { + composeString("volume", element.getVolumeElement()); + } + if (element.hasIssueElement()) { + composeString("issue", element.getIssueElement()); + } + if (element.hasPublicationDateElement()) { + composeString("publicationDate", element.getPublicationDateElement()); + } + } + + protected void composeCitationAlternativeFormPaginationComponent(String name, Citation.CitationAlternativeFormPaginationComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationAlternativeFormPaginationComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationAlternativeFormPaginationComponentElements(Citation.CitationAlternativeFormPaginationComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasPageStringElement()) { + composeString("pageString", element.getPageStringElement()); + } + if (element.hasFirstPageElement()) { + composeString("firstPage", element.getFirstPageElement()); + } + if (element.hasLastPageElement()) { + composeString("lastPage", element.getLastPageElement()); + } + } + + protected void composeCitationMedlinePubMedComponent(String name, Citation.CitationMedlinePubMedComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationMedlinePubMedComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationMedlinePubMedComponentElements(Citation.CitationMedlinePubMedComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasMedlineState()) { + composeCodeableConcept("medlineState", element.getMedlineState()); + } + if (element.hasOwner()) { + composeCodeableConcept("owner", element.getOwner()); + } + if (element.hasPmidElement()) { + composePositiveInt("pmid", element.getPmidElement()); + } + if (element.hasPmidVersionElement()) { + composePositiveInt("pmidVersion", element.getPmidVersionElement()); + } + if (element.hasDateCreatedElement()) { + composeDate("dateCreated", element.getDateCreatedElement()); + } + if (element.hasDateCompletedElement()) { + composeDate("dateCompleted", element.getDateCompletedElement()); + } + if (element.hasDateRevisedElement()) { + composeDate("dateRevised", element.getDateRevisedElement()); + } + if (element.hasPubMedPubDate()) { + for (Citation.CitationMedlinePubMedPubMedPubDateComponent e : element.getPubMedPubDate()) + composeCitationMedlinePubMedPubMedPubDateComponent("pubMedPubDate", e); + } + if (element.hasPublicationState()) { + composeCodeableConcept("publicationState", element.getPublicationState()); + } + if (element.hasRelatedArticle()) { + for (Citation.CitationMedlinePubMedRelatedArticleComponent e : element.getRelatedArticle()) + composeCitationMedlinePubMedRelatedArticleComponent("relatedArticle", e); + } + } + + protected void composeCitationMedlinePubMedPubMedPubDateComponent(String name, Citation.CitationMedlinePubMedPubMedPubDateComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationMedlinePubMedPubMedPubDateComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationMedlinePubMedPubMedPubDateComponentElements(Citation.CitationMedlinePubMedPubMedPubDateComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasPublicationState()) { + composeCodeableConcept("publicationState", element.getPublicationState()); + } + if (element.hasDateElement()) { + composeDateTime("date", element.getDateElement()); + } + } + + protected void composeCitationMedlinePubMedRelatedArticleComponent(String name, Citation.CitationMedlinePubMedRelatedArticleComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeCitationMedlinePubMedRelatedArticleComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeCitationMedlinePubMedRelatedArticleComponentElements(Citation.CitationMedlinePubMedRelatedArticleComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasCitationReference()) { + composeReference("citationReference", element.getCitationReference()); + } + if (element.hasCitationMarkdownElement()) { + composeMarkdown("citationMarkdown", element.getCitationMarkdownElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + } + protected void composeClaim(String name, Claim element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -32799,6 +34575,9 @@ public class XmlParser extends XmlParserBase { } if (element.hasTypeElement()) composeEnumeration("type", element.getTypeElement(), new ClinicalUseIssue.ClinicalUseIssueTypeEnumFactory()); + if (element.hasCategory()) { + composeCodeableConcept("category", element.getCategory()); + } if (element.hasSubject()) { for (Reference e : element.getSubject()) composeReference("subject", e); @@ -34233,8 +36012,8 @@ public class XmlParser extends XmlParserBase { for (CodeableConcept e : element.getCategory()) composeCodeableConcept("category", e); } - if (element.hasPatient()) { - composeReference("patient", element.getPatient()); + if (element.hasSubject()) { + composeReference("subject", element.getSubject()); } if (element.hasDateTimeElement()) { composeDateTime("dateTime", element.getDateTimeElement()); @@ -35661,6 +37440,9 @@ public class XmlParser extends XmlParserBase { for (Identifier e : element.getIdentifier()) composeIdentifier("identifier", e); } + if (element.hasDisplayNameElement()) { + composeString("displayName", element.getDisplayNameElement()); + } if (element.hasDefinition()) { composeReference("definition", element.getDefinition()); } @@ -35702,8 +37484,9 @@ public class XmlParser extends XmlParserBase { if (element.hasPartNumberElement()) { composeString("partNumber", element.getPartNumberElement()); } - if (element.hasType()) { - composeCodeableConcept("type", element.getType()); + if (element.hasType()) { + for (CodeableConcept e : element.getType()) + composeCodeableConcept("type", e); } if (element.hasSpecialization()) { for (Device.DeviceSpecializationComponent e : element.getSpecialization()) @@ -35720,6 +37503,12 @@ public class XmlParser extends XmlParserBase { if (element.hasPatient()) { composeReference("patient", element.getPatient()); } + if (element.hasOperationalStatus()) { + composeDeviceOperationalStatusComponent("operationalStatus", element.getOperationalStatus()); + } + if (element.hasAssociationStatus()) { + composeDeviceAssociationStatusComponent("associationStatus", element.getAssociationStatus()); + } if (element.hasOwner()) { composeReference("owner", element.getOwner()); } @@ -35864,6 +37653,48 @@ public class XmlParser extends XmlParserBase { } } + protected void composeDeviceOperationalStatusComponent(String name, Device.DeviceOperationalStatusComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeDeviceOperationalStatusComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeDeviceOperationalStatusComponentElements(Device.DeviceOperationalStatusComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasValue()) { + composeCodeableConcept("value", element.getValue()); + } + if (element.hasReason()) { + for (CodeableConcept e : element.getReason()) + composeCodeableConcept("reason", e); + } + } + + protected void composeDeviceAssociationStatusComponent(String name, Device.DeviceAssociationStatusComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeDeviceAssociationStatusComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeDeviceAssociationStatusComponentElements(Device.DeviceAssociationStatusComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasValue()) { + composeCodeableConcept("value", element.getValue()); + } + if (element.hasReason()) { + for (CodeableConcept e : element.getReason()) + composeCodeableConcept("reason", e); + } + } + protected void composeDeviceDefinition(String name, DeviceDefinition element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -35934,9 +37765,6 @@ public class XmlParser extends XmlParserBase { for (ContactPoint e : element.getContact()) composeContactPoint("contact", e); } - if (element.hasUrlElement()) { - composeUri("url", element.getUrlElement()); - } if (element.hasOnlineInformationElement()) { composeUri("onlineInformation", element.getOnlineInformationElement()); } @@ -36193,8 +38021,9 @@ public class XmlParser extends XmlParserBase { if (element.hasPriorityElement()) composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); if (element.hasCode()) { - composeType("code", element.getCode()); - } if (element.hasParameter()) { + composeCodeableReference("code", element.getCode()); + } + if (element.hasParameter()) { for (DeviceRequest.DeviceRequestParameterComponent e : element.getParameter()) composeDeviceRequestParameterComponent("parameter", e); } @@ -36281,6 +38110,10 @@ public class XmlParser extends XmlParserBase { } if (element.hasStatusElement()) composeEnumeration("status", element.getStatusElement(), new DeviceUseStatement.DeviceUseStatementStatusEnumFactory()); + if (element.hasCategory()) { + for (CodeableConcept e : element.getCategory()) + composeCodeableConcept("category", e); + } if (element.hasSubject()) { composeReference("subject", element.getSubject()); } @@ -36288,23 +38121,33 @@ public class XmlParser extends XmlParserBase { for (Reference e : element.getDerivedFrom()) composeReference("derivedFrom", e); } + if (element.hasContext()) { + composeReference("context", element.getContext()); + } if (element.hasTiming()) { composeType("timing", element.getTiming()); - } if (element.hasRecordedOnElement()) { - composeDateTime("recordedOn", element.getRecordedOnElement()); + } if (element.hasDateAssertedElement()) { + composeDateTime("dateAsserted", element.getDateAssertedElement()); } - if (element.hasSource()) { - composeReference("source", element.getSource()); + if (element.hasUsageStatus()) { + composeCodeableConcept("usageStatus", element.getUsageStatus()); + } + if (element.hasUsageReason()) { + for (CodeableConcept e : element.getUsageReason()) + composeCodeableConcept("usageReason", e); + } + if (element.hasInformationSource()) { + composeReference("informationSource", element.getInformationSource()); } if (element.hasDevice()) { - composeReference("device", element.getDevice()); + composeCodeableReference("device", element.getDevice()); } if (element.hasReason()) { for (CodeableReference e : element.getReason()) composeCodeableReference("reason", e); } if (element.hasBodySite()) { - composeCodeableConcept("bodySite", element.getBodySite()); + composeCodeableReference("bodySite", element.getBodySite()); } if (element.hasNote()) { for (Annotation e : element.getNote()) @@ -37265,9 +39108,6 @@ public class XmlParser extends XmlParserBase { for (Annotation e : element.getNote()) composeAnnotation("note", e); } - if (element.hasReferentGroup()) { - composeEvidenceReferentGroupComponent("referentGroup", element.getReferentGroup()); - } if (element.hasVariableDefinition()) { for (Evidence.EvidenceVariableDefinitionComponent e : element.getVariableDefinition()) composeEvidenceVariableDefinitionComponent("variableDefinition", e); @@ -37292,36 +39132,6 @@ public class XmlParser extends XmlParserBase { } } - protected void composeEvidenceReferentGroupComponent(String name, Evidence.EvidenceReferentGroupComponent element) throws IOException { - if (element != null) { - composeElementAttributes(element); - xml.enter(FHIR_NS, name); - composeEvidenceReferentGroupComponentElements(element); - composeElementClose(element); - xml.exit(FHIR_NS, name); - } - } - - protected void composeEvidenceReferentGroupComponentElements(Evidence.EvidenceReferentGroupComponent element) throws IOException { - composeBackboneElementElements(element); - if (element.hasDescriptionElement()) { - composeMarkdown("description", element.getDescriptionElement()); - } - if (element.hasNote()) { - for (Annotation e : element.getNote()) - composeAnnotation("note", e); - } - if (element.hasEvidenceSource()) { - composeReference("evidenceSource", element.getEvidenceSource()); - } - if (element.hasIntendedGroup()) { - composeReference("intendedGroup", element.getIntendedGroup()); - } - if (element.hasDirectnessMatch()) { - composeCodeableConcept("directnessMatch", element.getDirectnessMatch()); - } - } - protected void composeEvidenceVariableDefinitionComponent(String name, Evidence.EvidenceVariableDefinitionComponent element) throws IOException { if (element != null) { composeElementAttributes(element); @@ -37344,11 +39154,11 @@ public class XmlParser extends XmlParserBase { if (element.hasVariableRole()) { composeCodeableConcept("variableRole", element.getVariableRole()); } - if (element.hasActualDefinition()) { - composeReference("actualDefinition", element.getActualDefinition()); + if (element.hasObserved()) { + composeReference("observed", element.getObserved()); } - if (element.hasIntendedDefinition()) { - composeReference("intendedDefinition", element.getIntendedDefinition()); + if (element.hasIntended()) { + composeReference("intended", element.getIntended()); } if (element.hasDirectnessMatch()) { composeCodeableConcept("directnessMatch", element.getDirectnessMatch()); @@ -37411,6 +39221,85 @@ public class XmlParser extends XmlParserBase { } } + protected void composeEvidenceFocus(String name, EvidenceFocus element) throws IOException { + if (element != null) { + composeResourceAttributes(element); + xml.enter(FHIR_NS, name); + composeEvidenceFocusElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeEvidenceFocusElements(EvidenceFocus element) throws IOException { + composeMetadataResourceElements(element); + if (element.hasUrlElement()) { + composeUri("url", element.getUrlElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasVersionElement()) { + composeString("version", element.getVersionElement()); + } + if (element.hasNameElement()) { + composeString("name", element.getNameElement()); + } + if (element.hasStatusElement()) + composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); + if (element.hasUseContext()) { + for (UsageContext e : element.getUseContext()) + composeUsageContext("useContext", e); + } + if (element.hasDateElement()) { + composeDateTime("date", element.getDateElement()); + } + if (element.hasNote()) { + for (Annotation e : element.getNote()) + composeAnnotation("note", e); + } + if (element.hasCopyrightElement()) { + composeMarkdown("copyright", element.getCopyrightElement()); + } + if (element.hasCiteAs()) { + composeReference("citeAs", element.getCiteAs()); + } + if (element.hasCharacteristic()) { + for (EvidenceFocus.EvidenceFocusCharacteristicComponent e : element.getCharacteristic()) + composeEvidenceFocusCharacteristicComponent("characteristic", e); + } + if (element.hasRelatedArtifact()) { + for (RelatedArtifact e : element.getRelatedArtifact()) + composeRelatedArtifact("relatedArtifact", e); + } + } + + protected void composeEvidenceFocusCharacteristicComponent(String name, EvidenceFocus.EvidenceFocusCharacteristicComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeEvidenceFocusCharacteristicComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeEvidenceFocusCharacteristicComponentElements(EvidenceFocus.EvidenceFocusCharacteristicComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); + } + if (element.hasValue()) { + composeType("value", element.getValue()); + } if (element.hasExcludeElement()) { + composeBoolean("exclude", element.getExcludeElement()); + } + if (element.hasPeriod()) { + composePeriod("period", element.getPeriod()); + } + } + protected void composeEvidenceVariable(String name, EvidenceVariable element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -37513,6 +39402,8 @@ public class XmlParser extends XmlParserBase { if (element.hasActualElement()) { composeBoolean("actual", element.getActualElement()); } + if (element.hasCharacteristicCombinationElement()) + composeEnumeration("characteristicCombination", element.getCharacteristicCombinationElement(), new EvidenceVariable.CharacteristicCombinationEnumFactory()); if (element.hasCharacteristic()) { for (EvidenceVariable.EvidenceVariableCharacteristicComponent e : element.getCharacteristic()) composeEvidenceVariableCharacteristicComponent("characteristic", e); @@ -37542,22 +39433,43 @@ public class XmlParser extends XmlParserBase { if (element.hasDevice()) { composeReference("device", element.getDevice()); } - if (element.hasBooleanSet()) { - for (StringType e : element.getBooleanSet()) - composeString("booleanSet", e); - } if (element.hasExcludeElement()) { composeBoolean("exclude", element.getExcludeElement()); } - if (element.hasParticipantEffective()) { - composeType("participantEffective", element.getParticipantEffective()); - } if (element.hasTimeFromStart()) { - composeDuration("timeFromStart", element.getTimeFromStart()); + if (element.hasTimeFromStart()) { + composeEvidenceVariableCharacteristicTimeFromStartComponent("timeFromStart", element.getTimeFromStart()); } if (element.hasGroupMeasureElement()) composeEnumeration("groupMeasure", element.getGroupMeasureElement(), new EvidenceVariable.GroupMeasureEnumFactory()); } + protected void composeEvidenceVariableCharacteristicTimeFromStartComponent(String name, EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeEvidenceVariableCharacteristicTimeFromStartComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeEvidenceVariableCharacteristicTimeFromStartComponentElements(EvidenceVariable.EvidenceVariableCharacteristicTimeFromStartComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasDescriptionElement()) { + composeString("description", element.getDescriptionElement()); + } + if (element.hasQuantity()) { + composeQuantity("quantity", element.getQuantity()); + } + if (element.hasRange()) { + composeRange("range", element.getRange()); + } + if (element.hasNote()) { + for (Annotation e : element.getNote()) + composeAnnotation("note", e); + } + } + protected void composeExampleScenario(String name, ExampleScenario element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -39867,11 +41779,13 @@ public class XmlParser extends XmlParserBase { for (CodeableConcept e : element.getTargetDisease()) composeCodeableConcept("targetDisease", e); } - if (element.hasDoseNumber()) { - composeType("doseNumber", element.getDoseNumber()); - } if (element.hasSeriesDoses()) { - composeType("seriesDoses", element.getSeriesDoses()); - } } + if (element.hasDoseNumberElement()) { + composeString("doseNumber", element.getDoseNumberElement()); + } + if (element.hasSeriesDosesElement()) { + composeString("seriesDoses", element.getSeriesDosesElement()); + } + } protected void composeImmunizationEvaluation(String name, ImmunizationEvaluation element) throws IOException { if (element != null) { @@ -39919,11 +41833,13 @@ public class XmlParser extends XmlParserBase { if (element.hasSeriesElement()) { composeString("series", element.getSeriesElement()); } - if (element.hasDoseNumber()) { - composeType("doseNumber", element.getDoseNumber()); - } if (element.hasSeriesDoses()) { - composeType("seriesDoses", element.getSeriesDoses()); - } } + if (element.hasDoseNumberElement()) { + composeString("doseNumber", element.getDoseNumberElement()); + } + if (element.hasSeriesDosesElement()) { + composeString("seriesDoses", element.getSeriesDosesElement()); + } + } protected void composeImmunizationRecommendation(String name, ImmunizationRecommendation element) throws IOException { if (element != null) { @@ -39997,11 +41913,13 @@ public class XmlParser extends XmlParserBase { if (element.hasSeriesElement()) { composeString("series", element.getSeriesElement()); } - if (element.hasDoseNumber()) { - composeType("doseNumber", element.getDoseNumber()); - } if (element.hasSeriesDoses()) { - composeType("seriesDoses", element.getSeriesDoses()); - } if (element.hasSupportingImmunization()) { + if (element.hasDoseNumberElement()) { + composeString("doseNumber", element.getDoseNumberElement()); + } + if (element.hasSeriesDosesElement()) { + composeString("seriesDoses", element.getSeriesDosesElement()); + } + if (element.hasSupportingImmunization()) { for (Reference e : element.getSupportingImmunization()) composeReference("supportingImmunization", e); } @@ -40400,6 +42318,13 @@ public class XmlParser extends XmlParserBase { if (element.hasRole()) { composeCodeableConcept("role", element.getRole()); } + if (element.hasFunction()) { + for (CodeableConcept e : element.getFunction()) + composeCodeableConcept("function", e); + } + if (element.hasDescriptionElement()) { + composeMarkdown("description", element.getDescriptionElement()); + } if (element.hasAllergenicIndicatorElement()) { composeBoolean("allergenicIndicator", element.getAllergenicIndicatorElement()); } @@ -40460,12 +42385,18 @@ public class XmlParser extends XmlParserBase { if (element.hasPresentationHighLimit()) { composeRatio("presentationHighLimit", element.getPresentationHighLimit()); } + if (element.hasPresentationTextElement()) { + composeString("presentationText", element.getPresentationTextElement()); + } if (element.hasConcentration()) { composeRatio("concentration", element.getConcentration()); } if (element.hasConcentrationHighLimit()) { composeRatio("concentrationHighLimit", element.getConcentrationHighLimit()); } + if (element.hasConcentrationTextElement()) { + composeString("concentrationText", element.getConcentrationTextElement()); + } if (element.hasMeasurementPointElement()) { composeString("measurementPoint", element.getMeasurementPointElement()); } @@ -41343,26 +43274,26 @@ public class XmlParser extends XmlParserBase { for (Reference e : element.getIngredient()) composeReference("ingredient", e); } - if (element.hasCharacteristic()) { - for (ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent e : element.getCharacteristic()) - composeManufacturedItemDefinitionCharacteristicComponent("characteristic", e); + if (element.hasProperty()) { + for (ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent e : element.getProperty()) + composeManufacturedItemDefinitionPropertyComponent("property", e); } } - protected void composeManufacturedItemDefinitionCharacteristicComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent element) throws IOException { + protected void composeManufacturedItemDefinitionPropertyComponent(String name, ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element) throws IOException { if (element != null) { composeElementAttributes(element); xml.enter(FHIR_NS, name); - composeManufacturedItemDefinitionCharacteristicComponentElements(element); + composeManufacturedItemDefinitionPropertyComponentElements(element); composeElementClose(element); xml.exit(FHIR_NS, name); } } - protected void composeManufacturedItemDefinitionCharacteristicComponentElements(ManufacturedItemDefinition.ManufacturedItemDefinitionCharacteristicComponent element) throws IOException { + protected void composeManufacturedItemDefinitionPropertyComponentElements(ManufacturedItemDefinition.ManufacturedItemDefinitionPropertyComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasCode()) { - composeCodeableConcept("code", element.getCode()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { composeType("value", element.getValue()); @@ -41890,8 +43821,9 @@ public class XmlParser extends XmlParserBase { protected void composeMedicationIngredientComponentElements(Medication.MedicationIngredientComponent element) throws IOException { composeBackboneElementElements(element); if (element.hasItem()) { - composeType("item", element.getItem()); - } if (element.hasIsActiveElement()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasIsActiveElement()) { composeBoolean("isActive", element.getIsActiveElement()); } if (element.hasStrength()) { @@ -41961,8 +43893,9 @@ public class XmlParser extends XmlParserBase { composeCodeableConcept("category", e); } if (element.hasMedication()) { - composeType("medication", element.getMedication()); - } if (element.hasSubject()) { + composeCodeableReference("medication", element.getMedication()); + } + if (element.hasSubject()) { composeReference("subject", element.getSubject()); } if (element.hasEncounter()) { @@ -42083,14 +44016,16 @@ public class XmlParser extends XmlParserBase { if (element.hasStatusElement()) composeEnumeration("status", element.getStatusElement(), new MedicationDispense.MedicationDispenseStatusCodesEnumFactory()); if (element.hasStatusReason()) { - composeType("statusReason", element.getStatusReason()); - } if (element.hasCategory()) { + composeCodeableReference("statusReason", element.getStatusReason()); + } + if (element.hasCategory()) { for (CodeableConcept e : element.getCategory()) composeCodeableConcept("category", e); } if (element.hasMedication()) { - composeType("medication", element.getMedication()); - } if (element.hasSubject()) { + composeCodeableReference("medication", element.getMedication()); + } + if (element.hasSubject()) { composeReference("subject", element.getSubject()); } if (element.hasEncounter()) { @@ -42360,8 +44295,9 @@ public class XmlParser extends XmlParserBase { protected void composeMedicationKnowledgeIngredientComponentElements(MedicationKnowledge.MedicationKnowledgeIngredientComponent element) throws IOException { composeBackboneElementElements(element); if (element.hasItem()) { - composeType("item", element.getItem()); - } if (element.hasIsActiveElement()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasIsActiveElement()) { composeBoolean("isActive", element.getIsActiveElement()); } if (element.hasStrength()) { @@ -42428,8 +44364,9 @@ public class XmlParser extends XmlParserBase { composeMedicationKnowledgeAdministrationGuidelineDosageComponent("dosage", e); } if (element.hasIndication()) { - composeType("indication", element.getIndication()); - } if (element.hasPatientCharacteristic()) { + composeCodeableReference("indication", element.getIndication()); + } + if (element.hasPatientCharacteristic()) { for (MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent e : element.getPatientCharacteristic()) composeMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent("patientCharacteristic", e); } @@ -42468,13 +44405,12 @@ public class XmlParser extends XmlParserBase { protected void composeMedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponentElements(MedicationKnowledge.MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasCharacteristic()) { - composeType("characteristic", element.getCharacteristic()); - } if (element.hasValue()) { - for (StringType e : element.getValue()) - composeString("value", e); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } - } + if (element.hasValue()) { + composeType("value", element.getValue()); + } } protected void composeMedicationKnowledgeMedicineClassificationComponent(String name, MedicationKnowledge.MedicationKnowledgeMedicineClassificationComponent element) throws IOException { if (element != null) { @@ -42672,8 +44608,9 @@ public class XmlParser extends XmlParserBase { composeReference("informationSource", element.getInformationSource()); } if (element.hasMedication()) { - composeType("medication", element.getMedication()); - } if (element.hasSubject()) { + composeCodeableReference("medication", element.getMedication()); + } + if (element.hasSubject()) { composeReference("subject", element.getSubject()); } if (element.hasEncounter()) { @@ -42863,8 +44800,9 @@ public class XmlParser extends XmlParserBase { composeCodeableConcept("category", e); } if (element.hasMedication()) { - composeType("medication", element.getMedication()); - } if (element.hasSubject()) { + composeCodeableReference("medication", element.getMedication()); + } + if (element.hasSubject()) { composeReference("subject", element.getSubject()); } if (element.hasEncounter()) { @@ -42922,13 +44860,16 @@ public class XmlParser extends XmlParserBase { composeCodeableConcept("type", element.getType()); } if (element.hasDomain()) { - composeCoding("domain", element.getDomain()); + composeCodeableConcept("domain", element.getDomain()); } if (element.hasVersionElement()) { composeString("version", element.getVersionElement()); } if (element.hasStatus()) { - composeCoding("status", element.getStatus()); + composeCodeableConcept("status", element.getStatus()); + } + if (element.hasStatusDateElement()) { + composeDateTime("statusDate", element.getStatusDateElement()); } if (element.hasDescriptionElement()) { composeMarkdown("description", element.getDescriptionElement()); @@ -42956,6 +44897,10 @@ public class XmlParser extends XmlParserBase { for (CodeableConcept e : element.getProductClassification()) composeCodeableConcept("productClassification", e); } + if (element.hasCharacteristic()) { + for (CodeableConcept e : element.getCharacteristic()) + composeCodeableConcept("characteristic", e); + } if (element.hasMarketingStatus()) { for (MarketingStatus e : element.getMarketingStatus()) composeMarketingStatus("marketingStatus", e); @@ -43038,7 +44983,7 @@ public class XmlParser extends XmlParserBase { composeString("productName", element.getProductNameElement()); } if (element.hasType()) { - composeCoding("type", element.getType()); + composeCodeableConcept("type", element.getType()); } if (element.hasNamePart()) { for (MedicinalProductDefinition.MedicinalProductDefinitionNameNamePartComponent e : element.getNamePart()) @@ -43066,7 +45011,7 @@ public class XmlParser extends XmlParserBase { composeString("part", element.getPartElement()); } if (element.hasType()) { - composeCoding("type", element.getType()); + composeCodeableConcept("type", element.getType()); } } @@ -43108,7 +45053,7 @@ public class XmlParser extends XmlParserBase { if (element.hasProduct()) { composeType("product", element.getProduct()); } if (element.hasType()) { - composeCoding("type", element.getType()); + composeCodeableConcept("type", element.getType()); } } @@ -43125,8 +45070,9 @@ public class XmlParser extends XmlParserBase { protected void composeMedicinalProductDefinitionManufacturingBusinessOperationComponentElements(MedicinalProductDefinition.MedicinalProductDefinitionManufacturingBusinessOperationComponent element) throws IOException { composeBackboneElementElements(element); if (element.hasType()) { - composeType("type", element.getType()); - } if (element.hasEffectiveDate()) { + composeCodeableReference("type", element.getType()); + } + if (element.hasEffectiveDate()) { composePeriod("effectiveDate", element.getEffectiveDate()); } if (element.hasManufacturer()) { @@ -43846,6 +45792,14 @@ public class XmlParser extends XmlParserBase { for (Identifier e : element.getIdentifier()) composeIdentifier("identifier", e); } + if (element.hasInstantiatesCanonical()) { + for (CanonicalType e : element.getInstantiatesCanonical()) + composeCanonical("instantiatesCanonical", e); + } + if (element.hasInstantiatesUri()) { + for (UriType e : element.getInstantiatesUri()) + composeUri("instantiatesUri", e); + } if (element.hasBasedOn()) { for (Reference e : element.getBasedOn()) composeReference("basedOn", e); @@ -43855,22 +45809,13 @@ public class XmlParser extends XmlParserBase { composeReference("partOf", e); } if (element.hasStatusElement()) - composeEnumeration("status", element.getStatusElement(), new NutritionIntake.NutritionIntakeStatusCodesEnumFactory()); + composeEnumeration("status", element.getStatusElement(), new Enumerations.EventStatusEnumFactory()); if (element.hasStatusReason()) { for (CodeableConcept e : element.getStatusReason()) composeCodeableConcept("statusReason", e); } - if (element.hasCategory()) { - for (CodeableConcept e : element.getCategory()) - composeCodeableConcept("category", e); - } - if (element.hasConsumedItem()) { - for (NutritionIntake.NutritionIntakeConsumedItemComponent e : element.getConsumedItem()) - composeNutritionIntakeConsumedItemComponent("consumedItem", e); - } - if (element.hasIngredientLabel()) { - for (NutritionIntake.NutritionIntakeIngredientLabelComponent e : element.getIngredientLabel()) - composeNutritionIntakeIngredientLabelComponent("ingredientLabel", e); + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); } if (element.hasSubject()) { composeReference("subject", element.getSubject()); @@ -43878,21 +45823,35 @@ public class XmlParser extends XmlParserBase { if (element.hasEncounter()) { composeReference("encounter", element.getEncounter()); } - if (element.hasEffective()) { - composeType("effective", element.getEffective()); - } if (element.hasDateAssertedElement()) { - composeDateTime("dateAsserted", element.getDateAssertedElement()); + if (element.hasOccurrence()) { + composeType("occurrence", element.getOccurrence()); + } if (element.hasRecordedElement()) { + composeDateTime("recorded", element.getRecordedElement()); } - if (element.hasInformationSource()) { - composeReference("informationSource", element.getInformationSource()); + if (element.hasReported()) { + composeType("reported", element.getReported()); + } if (element.hasConsumedItem()) { + for (NutritionIntake.NutritionIntakeConsumedItemComponent e : element.getConsumedItem()) + composeNutritionIntakeConsumedItemComponent("consumedItem", e); + } + if (element.hasIngredientLabel()) { + for (NutritionIntake.NutritionIntakeIngredientLabelComponent e : element.getIngredientLabel()) + composeNutritionIntakeIngredientLabelComponent("ingredientLabel", e); + } + if (element.hasPerformer()) { + for (NutritionIntake.NutritionIntakePerformerComponent e : element.getPerformer()) + composeNutritionIntakePerformerComponent("performer", e); + } + if (element.hasLocation()) { + composeReference("location", element.getLocation()); } if (element.hasDerivedFrom()) { for (Reference e : element.getDerivedFrom()) composeReference("derivedFrom", e); } - if (element.hasReasonCode()) { - for (CodeableReference e : element.getReasonCode()) - composeCodeableReference("reasonCode", e); + if (element.hasReason()) { + for (CodeableReference e : element.getReason()) + composeCodeableReference("reason", e); } if (element.hasNote()) { for (Annotation e : element.getNote()) @@ -43916,7 +45875,7 @@ public class XmlParser extends XmlParserBase { composeCodeableConcept("type", element.getType()); } if (element.hasNutritionProduct()) { - composeCodeableConcept("nutritionProduct", element.getNutritionProduct()); + composeCodeableReference("nutritionProduct", element.getNutritionProduct()); } if (element.hasSchedule()) { composeTiming("schedule", element.getSchedule()); @@ -43948,13 +45907,33 @@ public class XmlParser extends XmlParserBase { protected void composeNutritionIntakeIngredientLabelComponentElements(NutritionIntake.NutritionIntakeIngredientLabelComponent element) throws IOException { composeBackboneElementElements(element); if (element.hasNutrient()) { - composeCodeableConcept("nutrient", element.getNutrient()); + composeCodeableReference("nutrient", element.getNutrient()); } if (element.hasAmount()) { composeQuantity("amount", element.getAmount()); } } + protected void composeNutritionIntakePerformerComponent(String name, NutritionIntake.NutritionIntakePerformerComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeNutritionIntakePerformerComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeNutritionIntakePerformerComponentElements(NutritionIntake.NutritionIntakePerformerComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasFunction()) { + composeCodeableConcept("function", element.getFunction()); + } + if (element.hasActor()) { + composeReference("actor", element.getActor()); + } + } + protected void composeNutritionOrder(String name, NutritionOrder element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -44198,6 +46177,147 @@ public class XmlParser extends XmlParserBase { composeType("rate", element.getRate()); } } + protected void composeNutritionProduct(String name, NutritionProduct element) throws IOException { + if (element != null) { + composeResourceAttributes(element); + xml.enter(FHIR_NS, name); + composeNutritionProductElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeNutritionProductElements(NutritionProduct element) throws IOException { + composeDomainResourceElements(element); + if (element.hasStatusElement()) + composeEnumeration("status", element.getStatusElement(), new NutritionProduct.NutritionProductStatusEnumFactory()); + if (element.hasCategory()) { + for (CodeableConcept e : element.getCategory()) + composeCodeableConcept("category", e); + } + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); + } + if (element.hasManufacturer()) { + for (Reference e : element.getManufacturer()) + composeReference("manufacturer", e); + } + if (element.hasNutrient()) { + for (NutritionProduct.NutritionProductNutrientComponent e : element.getNutrient()) + composeNutritionProductNutrientComponent("nutrient", e); + } + if (element.hasIngredient()) { + for (NutritionProduct.NutritionProductIngredientComponent e : element.getIngredient()) + composeNutritionProductIngredientComponent("ingredient", e); + } + if (element.hasKnownAllergen()) { + for (CodeableReference e : element.getKnownAllergen()) + composeCodeableReference("knownAllergen", e); + } + if (element.hasProductCharacteristic()) { + for (NutritionProduct.NutritionProductProductCharacteristicComponent e : element.getProductCharacteristic()) + composeNutritionProductProductCharacteristicComponent("productCharacteristic", e); + } + if (element.hasInstance()) { + composeNutritionProductInstanceComponent("instance", element.getInstance()); + } + if (element.hasNote()) { + for (Annotation e : element.getNote()) + composeAnnotation("note", e); + } + } + + protected void composeNutritionProductNutrientComponent(String name, NutritionProduct.NutritionProductNutrientComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeNutritionProductNutrientComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeNutritionProductNutrientComponentElements(NutritionProduct.NutritionProductNutrientComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasItem()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasAmount()) { + for (Ratio e : element.getAmount()) + composeRatio("amount", e); + } + } + + protected void composeNutritionProductIngredientComponent(String name, NutritionProduct.NutritionProductIngredientComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeNutritionProductIngredientComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeNutritionProductIngredientComponentElements(NutritionProduct.NutritionProductIngredientComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasItem()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasAmount()) { + for (Ratio e : element.getAmount()) + composeRatio("amount", e); + } + } + + protected void composeNutritionProductProductCharacteristicComponent(String name, NutritionProduct.NutritionProductProductCharacteristicComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeNutritionProductProductCharacteristicComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeNutritionProductProductCharacteristicComponentElements(NutritionProduct.NutritionProductProductCharacteristicComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); + } + if (element.hasValue()) { + composeType("value", element.getValue()); + } } + + protected void composeNutritionProductInstanceComponent(String name, NutritionProduct.NutritionProductInstanceComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeNutritionProductInstanceComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeNutritionProductInstanceComponentElements(NutritionProduct.NutritionProductInstanceComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasQuantity()) { + composeQuantity("quantity", element.getQuantity()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasLotNumberElement()) { + composeString("lotNumber", element.getLotNumberElement()); + } + if (element.hasExpiryElement()) { + composeDateTime("expiry", element.getExpiryElement()); + } + if (element.hasUseByElement()) { + composeDateTime("useBy", element.getUseByElement()); + } + } + protected void composeObservation(String name, Observation element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -44986,12 +47106,21 @@ public class XmlParser extends XmlParserBase { for (Identifier e : element.getIdentifier()) composeIdentifier("identifier", e); } + if (element.hasNameElement()) { + composeString("name", element.getNameElement()); + } if (element.hasSubject()) { for (Reference e : element.getSubject()) composeReference("subject", e); } + if (element.hasStatus()) { + composeCodeableConcept("status", element.getStatus()); + } + if (element.hasStatusDateElement()) { + composeDateTime("statusDate", element.getStatusDateElement()); + } if (element.hasDescriptionElement()) { - composeString("description", element.getDescriptionElement()); + composeMarkdown("description", element.getDescriptionElement()); } if (element.hasLegalStatusOfSupply()) { composeCodeableConcept("legalStatusOfSupply", element.getLegalStatusOfSupply()); @@ -45000,6 +47129,10 @@ public class XmlParser extends XmlParserBase { for (MarketingStatus e : element.getMarketingStatus()) composeMarketingStatus("marketingStatus", e); } + if (element.hasCharacteristic()) { + for (CodeableConcept e : element.getCharacteristic()) + composeCodeableConcept("characteristic", e); + } if (element.hasCopackagedIndicatorElement()) { composeBoolean("copackagedIndicator", element.getCopackagedIndicatorElement()); } @@ -45059,8 +47192,8 @@ public class XmlParser extends XmlParserBase { if (element.hasType()) { composeCodeableConcept("type", element.getType()); } - if (element.hasQuantity()) { - composeQuantity("quantity", element.getQuantity()); + if (element.hasQuantityElement()) { + composeInteger("quantity", element.getQuantityElement()); } if (element.hasMaterial()) { for (CodeableConcept e : element.getMaterial()) @@ -45078,9 +47211,9 @@ public class XmlParser extends XmlParserBase { for (Reference e : element.getManufacturer()) composeReference("manufacturer", e); } - if (element.hasCharacteristic()) { - for (PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent e : element.getCharacteristic()) - composePackagedProductDefinitionPackageCharacteristicComponent("characteristic", e); + if (element.hasProperty()) { + for (PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent e : element.getProperty()) + composePackagedProductDefinitionPackagePropertyComponent("property", e); } if (element.hasContainedItem()) { for (PackagedProductDefinition.PackagedProductDefinitionPackageContainedItemComponent e : element.getContainedItem()) @@ -45092,20 +47225,20 @@ public class XmlParser extends XmlParserBase { } } - protected void composePackagedProductDefinitionPackageCharacteristicComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent element) throws IOException { + protected void composePackagedProductDefinitionPackagePropertyComponent(String name, PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent element) throws IOException { if (element != null) { composeElementAttributes(element); xml.enter(FHIR_NS, name); - composePackagedProductDefinitionPackageCharacteristicComponentElements(element); + composePackagedProductDefinitionPackagePropertyComponentElements(element); composeElementClose(element); xml.exit(FHIR_NS, name); } } - protected void composePackagedProductDefinitionPackageCharacteristicComponentElements(PackagedProductDefinition.PackagedProductDefinitionPackageCharacteristicComponent element) throws IOException { + protected void composePackagedProductDefinitionPackagePropertyComponentElements(PackagedProductDefinition.PackagedProductDefinitionPackagePropertyComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasCode()) { - composeCodeableConcept("code", element.getCode()); + if (element.hasType()) { + composeCodeableConcept("type", element.getType()); } if (element.hasValue()) { composeType("value", element.getValue()); @@ -45493,6 +47626,102 @@ public class XmlParser extends XmlParserBase { } } + protected void composePermission(String name, Permission element) throws IOException { + if (element != null) { + composeResourceAttributes(element); + xml.enter(FHIR_NS, name); + composePermissionElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composePermissionElements(Permission element) throws IOException { + composeDomainResourceElements(element); + if (element.hasStatusElement()) + composeEnumeration("status", element.getStatusElement(), new Permission.PermissionStatusEnumFactory()); + if (element.hasIntent()) { + composeCodeableConcept("intent", element.getIntent()); + } + if (element.hasAsserter()) { + composeReference("asserter", element.getAsserter()); + } + if (element.hasAssertionDate()) { + for (DateTimeType e : element.getAssertionDate()) + composeDateTime("assertionDate", e); + } + if (element.hasValidity()) { + composePeriod("validity", element.getValidity()); + } + if (element.hasPurpose()) { + for (CodeableConcept e : element.getPurpose()) + composeCodeableConcept("purpose", e); + } + if (element.hasDataScope()) { + for (Expression e : element.getDataScope()) + composeExpression("dataScope", e); + } + if (element.hasProcessingActivity()) { + for (Permission.PermissionProcessingActivityComponent e : element.getProcessingActivity()) + composePermissionProcessingActivityComponent("processingActivity", e); + } + if (element.hasJustification()) { + composePermissionJustificationComponent("justification", element.getJustification()); + } + if (element.hasUsageLimitations()) { + for (CodeableConcept e : element.getUsageLimitations()) + composeCodeableConcept("usageLimitations", e); + } + } + + protected void composePermissionProcessingActivityComponent(String name, Permission.PermissionProcessingActivityComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composePermissionProcessingActivityComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composePermissionProcessingActivityComponentElements(Permission.PermissionProcessingActivityComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasPartyReference()) { + for (Reference e : element.getPartyReference()) + composeReference("partyReference", e); + } + if (element.hasPartyCodeableConcept()) { + for (CodeableConcept e : element.getPartyCodeableConcept()) + composeCodeableConcept("partyCodeableConcept", e); + } + if (element.hasPurpose()) { + for (CodeableConcept e : element.getPurpose()) + composeCodeableConcept("purpose", e); + } + } + + protected void composePermissionJustificationComponent(String name, Permission.PermissionJustificationComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composePermissionJustificationComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composePermissionJustificationComponentElements(Permission.PermissionJustificationComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasEvidence()) { + for (Reference e : element.getEvidence()) + composeReference("evidence", e); + } + if (element.hasGrounds()) { + for (CodeableConcept e : element.getGrounds()) + composeCodeableConcept("grounds", e); + } + } + protected void composePerson(String name, Person element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -46699,6 +48928,11 @@ public class XmlParser extends XmlParserBase { if (element.hasValidityPeriod()) { composePeriod("validityPeriod", element.getValidityPeriod()); } + if (element.hasIndication()) { + composeType("indication", element.getIndication()); + } if (element.hasIntendedUse()) { + composeCodeableConcept("intendedUse", element.getIntendedUse()); + } if (element.hasBasis()) { for (CodeableConcept e : element.getBasis()) composeCodeableConcept("basis", e); @@ -48544,7 +50778,7 @@ public class XmlParser extends XmlParserBase { composeString("name", element.getNameElement()); } if (element.hasStatusElement()) - composeEnumeration("status", element.getStatusElement(), new Subscription.SubscriptionStatusEnumFactory()); + composeEnumeration("status", element.getStatusElement(), new Enumerations.SubscriptionStateEnumFactory()); if (element.hasTopic()) { composeReference("topic", element.getTopic()); } @@ -48566,12 +50800,27 @@ public class XmlParser extends XmlParserBase { for (CodeableConcept e : element.getError()) composeCodeableConcept("error", e); } - if (element.hasEventCountElement()) { - composeUnsignedInt("eventCount", element.getEventCountElement()); + if (element.hasChannelType()) { + composeCoding("channelType", element.getChannelType()); } - if (element.hasChannel()) { - composeSubscriptionChannelComponent("channel", element.getChannel()); + if (element.hasEndpointElement()) { + composeUrl("endpoint", element.getEndpointElement()); } + if (element.hasHeader()) { + for (StringType e : element.getHeader()) + composeString("header", e); + } + if (element.hasHeartbeatPeriodElement()) { + composeUnsignedInt("heartbeatPeriod", element.getHeartbeatPeriodElement()); + } + if (element.hasTimeoutElement()) { + composeUnsignedInt("timeout", element.getTimeoutElement()); + } + if (element.hasContentTypeElement()) { + composeCode("contentType", element.getContentTypeElement()); + } + if (element.hasContentElement()) + composeEnumeration("content", element.getContentElement(), new Subscription.SubscriptionPayloadContentEnumFactory()); } protected void composeSubscriptionFilterByComponent(String name, Subscription.SubscriptionFilterByComponent element) throws IOException { @@ -48586,63 +50835,204 @@ public class XmlParser extends XmlParserBase { protected void composeSubscriptionFilterByComponentElements(Subscription.SubscriptionFilterByComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasNameElement()) { - composeString("name", element.getNameElement()); + if (element.hasSearchParamNameElement()) { + composeString("searchParamName", element.getSearchParamNameElement()); } - if (element.hasMatchTypeElement()) - composeEnumeration("matchType", element.getMatchTypeElement(), new Subscription.SubscriptionFilterByMatchTypeEnumFactory()); + if (element.hasSearchModifierElement()) + composeEnumeration("searchModifier", element.getSearchModifierElement(), new Enumerations.SubscriptionSearchModifierEnumFactory()); if (element.hasValueElement()) { composeString("value", element.getValueElement()); } } - protected void composeSubscriptionChannelComponent(String name, Subscription.SubscriptionChannelComponent element) throws IOException { + protected void composeSubscriptionStatus(String name, SubscriptionStatus element) throws IOException { if (element != null) { - composeElementAttributes(element); + composeResourceAttributes(element); xml.enter(FHIR_NS, name); - composeSubscriptionChannelComponentElements(element); + composeSubscriptionStatusElements(element); composeElementClose(element); xml.exit(FHIR_NS, name); } } - protected void composeSubscriptionChannelComponentElements(Subscription.SubscriptionChannelComponent element) throws IOException { - composeBackboneElementElements(element); - if (element.hasType()) { - composeCodeableConcept("type", element.getType()); + protected void composeSubscriptionStatusElements(SubscriptionStatus element) throws IOException { + composeDomainResourceElements(element); + if (element.hasNotificationTypeElement()) + composeEnumeration("notificationType", element.getNotificationTypeElement(), new SubscriptionStatus.SubscriptionNotificationTypeEnumFactory()); + if (element.hasEventsSinceSubscriptionStartElement()) { + composeInteger64("eventsSinceSubscriptionStart", element.getEventsSinceSubscriptionStartElement()); } - if (element.hasEndpointElement()) { - composeUrl("endpoint", element.getEndpointElement()); + if (element.hasEventsInNotificationElement()) { + composeInteger("eventsInNotification", element.getEventsInNotificationElement()); } - if (element.hasHeader()) { - for (StringType e : element.getHeader()) - composeString("header", e); + if (element.hasSubscription()) { + composeReference("subscription", element.getSubscription()); } - if (element.hasHeartbeatPeriodElement()) { - composeUnsignedInt("heartbeatPeriod", element.getHeartbeatPeriodElement()); - } - if (element.hasPayload()) { - composeSubscriptionChannelPayloadComponent("payload", element.getPayload()); + if (element.hasStatusElement()) + composeEnumeration("status", element.getStatusElement(), new Enumerations.SubscriptionStateEnumFactory()); + if (element.hasTopic()) { + composeReference("topic", element.getTopic()); } } - protected void composeSubscriptionChannelPayloadComponent(String name, Subscription.SubscriptionChannelPayloadComponent element) throws IOException { + protected void composeSubscriptionTopic(String name, SubscriptionTopic element) throws IOException { if (element != null) { - composeElementAttributes(element); + composeResourceAttributes(element); xml.enter(FHIR_NS, name); - composeSubscriptionChannelPayloadComponentElements(element); + composeSubscriptionTopicElements(element); composeElementClose(element); xml.exit(FHIR_NS, name); } } - protected void composeSubscriptionChannelPayloadComponentElements(Subscription.SubscriptionChannelPayloadComponent element) throws IOException { - composeBackboneElementElements(element); - if (element.hasContentTypeElement()) { - composeCode("contentType", element.getContentTypeElement()); + protected void composeSubscriptionTopicElements(SubscriptionTopic element) throws IOException { + composeDomainResourceElements(element); + if (element.hasUrlElement()) { + composeUri("url", element.getUrlElement()); + } + if (element.hasIdentifier()) { + for (Identifier e : element.getIdentifier()) + composeIdentifier("identifier", e); + } + if (element.hasVersionElement()) { + composeString("version", element.getVersionElement()); + } + if (element.hasTitleElement()) { + composeString("title", element.getTitleElement()); + } + if (element.hasDerivedFromCanonical()) { + for (CanonicalType e : element.getDerivedFromCanonical()) + composeCanonical("derivedFromCanonical", e); + } + if (element.hasDerivedFromUri()) { + for (UriType e : element.getDerivedFromUri()) + composeUri("derivedFromUri", e); + } + if (element.hasStatusElement()) + composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); + if (element.hasExperimentalElement()) { + composeBoolean("experimental", element.getExperimentalElement()); + } + if (element.hasDateElement()) { + composeDateTime("date", element.getDateElement()); + } + if (element.hasPublisher()) { + composeReference("publisher", element.getPublisher()); + } + if (element.hasContact()) { + for (ContactDetail e : element.getContact()) + composeContactDetail("contact", e); + } + if (element.hasDescriptionElement()) { + composeMarkdown("description", element.getDescriptionElement()); + } + if (element.hasUseContext()) { + for (UsageContext e : element.getUseContext()) + composeUsageContext("useContext", e); + } + if (element.hasJurisdiction()) { + for (CodeableConcept e : element.getJurisdiction()) + composeCodeableConcept("jurisdiction", e); + } + if (element.hasPurposeElement()) { + composeMarkdown("purpose", element.getPurposeElement()); + } + if (element.hasCopyrightElement()) { + composeMarkdown("copyright", element.getCopyrightElement()); + } + if (element.hasApprovalDateElement()) { + composeDate("approvalDate", element.getApprovalDateElement()); + } + if (element.hasLastReviewDateElement()) { + composeDate("lastReviewDate", element.getLastReviewDateElement()); + } + if (element.hasEffectivePeriod()) { + composePeriod("effectivePeriod", element.getEffectivePeriod()); + } + if (element.hasResourceTrigger()) { + composeSubscriptionTopicResourceTriggerComponent("resourceTrigger", element.getResourceTrigger()); + } + if (element.hasCanFilterBy()) { + for (SubscriptionTopic.SubscriptionTopicCanFilterByComponent e : element.getCanFilterBy()) + composeSubscriptionTopicCanFilterByComponent("canFilterBy", e); + } + } + + protected void composeSubscriptionTopicResourceTriggerComponent(String name, SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeSubscriptionTopicResourceTriggerComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeSubscriptionTopicResourceTriggerComponentElements(SubscriptionTopic.SubscriptionTopicResourceTriggerComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasDescriptionElement()) { + composeString("description", element.getDescriptionElement()); + } + if (element.hasResourceType()) { + for (CodeType e : element.getResourceType()) + composeCode("resourceType", e); + } + if (element.hasMethodCriteria()) + for (Enumeration e : element.getMethodCriteria()) + composeEnumeration("methodCriteria", e, new SubscriptionTopic.InteractionTriggerEnumFactory()); + if (element.hasQueryCriteria()) { + composeSubscriptionTopicResourceTriggerQueryCriteriaComponent("queryCriteria", element.getQueryCriteria()); + } + if (element.hasFhirPathCriteria()) { + for (StringType e : element.getFhirPathCriteria()) + composeString("fhirPathCriteria", e); + } + } + + protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponent(String name, SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeSubscriptionTopicResourceTriggerQueryCriteriaComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeSubscriptionTopicResourceTriggerQueryCriteriaComponentElements(SubscriptionTopic.SubscriptionTopicResourceTriggerQueryCriteriaComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasPreviousElement()) { + composeString("previous", element.getPreviousElement()); + } + if (element.hasCurrentElement()) { + composeString("current", element.getCurrentElement()); + } + if (element.hasRequireBothElement()) { + composeBoolean("requireBoth", element.getRequireBothElement()); + } + } + + protected void composeSubscriptionTopicCanFilterByComponent(String name, SubscriptionTopic.SubscriptionTopicCanFilterByComponent element) throws IOException { + if (element != null) { + composeElementAttributes(element); + xml.enter(FHIR_NS, name); + composeSubscriptionTopicCanFilterByComponentElements(element); + composeElementClose(element); + xml.exit(FHIR_NS, name); + } + } + + protected void composeSubscriptionTopicCanFilterByComponentElements(SubscriptionTopic.SubscriptionTopicCanFilterByComponent element) throws IOException { + composeBackboneElementElements(element); + if (element.hasSearchParamNameElement()) { + composeString("searchParamName", element.getSearchParamNameElement()); + } + if (element.hasSearchModifier()) + for (Enumeration e : element.getSearchModifier()) + composeEnumeration("searchModifier", e, new Enumerations.SubscriptionSearchModifierEnumFactory()); + if (element.hasDocumentationElement()) { + composeMarkdown("documentation", element.getDocumentationElement()); } - if (element.hasContentElement()) - composeEnumeration("content", element.getContentElement(), new Subscription.SubscriptionPayloadContentEnumFactory()); } protected void composeSubstance(String name, Substance element) throws IOException { @@ -48917,9 +51307,9 @@ public class XmlParser extends XmlParserBase { if (element.hasMolecularWeight()) { composeSubstanceDefinitionStructureIsotopeMolecularWeightComponent("molecularWeight", element.getMolecularWeight()); } - if (element.hasSourceCoding()) { - for (Coding e : element.getSourceCoding()) - composeCoding("sourceCoding", e); + if (element.hasTechnique()) { + for (CodeableConcept e : element.getTechnique()) + composeCodeableConcept("technique", e); } if (element.hasSourceDocument()) { for (Reference e : element.getSourceDocument()) @@ -49001,6 +51391,9 @@ public class XmlParser extends XmlParserBase { if (element.hasRepresentationElement()) { composeString("representation", element.getRepresentationElement()); } + if (element.hasFormat()) { + composeCodeableConcept("format", element.getFormat()); + } if (element.hasAttachment()) { composeAttachment("attachment", element.getAttachment()); } @@ -49279,6 +51672,9 @@ public class XmlParser extends XmlParserBase { protected void composeSubstancePolymerElements(SubstancePolymer element) throws IOException { composeDomainResourceElements(element); + if (element.hasIdentifier()) { + composeIdentifier("identifier", element.getIdentifier()); + } if (element.hasClass_()) { composeCodeableConcept("class", element.getClass_()); } @@ -49289,9 +51685,8 @@ public class XmlParser extends XmlParserBase { for (CodeableConcept e : element.getCopolymerConnectivity()) composeCodeableConcept("copolymerConnectivity", e); } - if (element.hasModification()) { - for (StringType e : element.getModification()) - composeString("modification", e); + if (element.hasModificationElement()) { + composeString("modification", element.getModificationElement()); } if (element.hasMonomerSet()) { for (SubstancePolymer.SubstancePolymerMonomerSetComponent e : element.getMonomerSet()) @@ -49336,11 +51731,11 @@ public class XmlParser extends XmlParserBase { protected void composeSubstancePolymerMonomerSetStartingMaterialComponentElements(SubstancePolymer.SubstancePolymerMonomerSetStartingMaterialComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasMaterial()) { - composeCodeableConcept("material", element.getMaterial()); + if (element.hasCode()) { + composeCodeableConcept("code", element.getCode()); } - if (element.hasType()) { - composeCodeableConcept("type", element.getType()); + if (element.hasCategory()) { + composeCodeableConcept("category", element.getCategory()); } if (element.hasIsDefiningElement()) { composeBoolean("isDefining", element.getIsDefiningElement()); @@ -49389,11 +51784,11 @@ public class XmlParser extends XmlParserBase { protected void composeSubstancePolymerRepeatRepeatUnitComponentElements(SubstancePolymer.SubstancePolymerRepeatRepeatUnitComponent element) throws IOException { composeBackboneElementElements(element); - if (element.hasOrientationOfPolymerisation()) { - composeCodeableConcept("orientationOfPolymerisation", element.getOrientationOfPolymerisation()); + if (element.hasUnitElement()) { + composeString("unit", element.getUnitElement()); } - if (element.hasRepeatUnitElement()) { - composeString("repeatUnit", element.getRepeatUnitElement()); + if (element.hasOrientation()) { + composeCodeableConcept("orientation", element.getOrientation()); } if (element.hasAmount()) { composeSubstanceAmount("amount", element.getAmount()); @@ -49446,6 +51841,9 @@ public class XmlParser extends XmlParserBase { if (element.hasRepresentationElement()) { composeString("representation", element.getRepresentationElement()); } + if (element.hasFormat()) { + composeCodeableConcept("format", element.getFormat()); + } if (element.hasAttachment()) { composeAttachment("attachment", element.getAttachment()); } @@ -49969,8 +52367,9 @@ public class XmlParser extends XmlParserBase { if (element.hasPriorityElement()) composeEnumeration("priority", element.getPriorityElement(), new Enumerations.RequestPriorityEnumFactory()); if (element.hasItem()) { - composeType("item", element.getItem()); - } if (element.hasQuantity()) { + composeCodeableReference("item", element.getItem()); + } + if (element.hasQuantity()) { composeQuantity("quantity", element.getQuantity()); } if (element.hasParameter()) { @@ -51290,165 +53689,6 @@ public class XmlParser extends XmlParserBase { } } - protected void composeTopic(String name, Topic element) throws IOException { - if (element != null) { - composeResourceAttributes(element); - xml.enter(FHIR_NS, name); - composeTopicElements(element); - composeElementClose(element); - xml.exit(FHIR_NS, name); - } - } - - protected void composeTopicElements(Topic element) throws IOException { - composeDomainResourceElements(element); - if (element.hasUrlElement()) { - composeUri("url", element.getUrlElement()); - } - if (element.hasIdentifier()) { - for (Identifier e : element.getIdentifier()) - composeIdentifier("identifier", e); - } - if (element.hasVersionElement()) { - composeString("version", element.getVersionElement()); - } - if (element.hasTitleElement()) { - composeString("title", element.getTitleElement()); - } - if (element.hasDerivedFromCanonical()) { - for (CanonicalType e : element.getDerivedFromCanonical()) - composeCanonical("derivedFromCanonical", e); - } - if (element.hasDerivedFromUri()) { - for (UriType e : element.getDerivedFromUri()) - composeUri("derivedFromUri", e); - } - if (element.hasStatusElement()) - composeEnumeration("status", element.getStatusElement(), new Enumerations.PublicationStatusEnumFactory()); - if (element.hasExperimentalElement()) { - composeBoolean("experimental", element.getExperimentalElement()); - } - if (element.hasDateElement()) { - composeDateTime("date", element.getDateElement()); - } - if (element.hasPublisher()) { - composeReference("publisher", element.getPublisher()); - } - if (element.hasContact()) { - for (ContactDetail e : element.getContact()) - composeContactDetail("contact", e); - } - if (element.hasDescriptionElement()) { - composeMarkdown("description", element.getDescriptionElement()); - } - if (element.hasUseContext()) { - for (UsageContext e : element.getUseContext()) - composeUsageContext("useContext", e); - } - if (element.hasJurisdiction()) { - for (CodeableConcept e : element.getJurisdiction()) - composeCodeableConcept("jurisdiction", e); - } - if (element.hasPurposeElement()) { - composeMarkdown("purpose", element.getPurposeElement()); - } - if (element.hasCopyrightElement()) { - composeMarkdown("copyright", element.getCopyrightElement()); - } - if (element.hasApprovalDateElement()) { - composeDate("approvalDate", element.getApprovalDateElement()); - } - if (element.hasLastReviewDateElement()) { - composeDate("lastReviewDate", element.getLastReviewDateElement()); - } - if (element.hasEffectivePeriod()) { - composePeriod("effectivePeriod", element.getEffectivePeriod()); - } - if (element.hasResourceTrigger()) { - composeTopicResourceTriggerComponent("resourceTrigger", element.getResourceTrigger()); - } - if (element.hasCanFilterBy()) { - for (Topic.TopicCanFilterByComponent e : element.getCanFilterBy()) - composeTopicCanFilterByComponent("canFilterBy", e); - } - } - - protected void composeTopicResourceTriggerComponent(String name, Topic.TopicResourceTriggerComponent element) throws IOException { - if (element != null) { - composeElementAttributes(element); - xml.enter(FHIR_NS, name); - composeTopicResourceTriggerComponentElements(element); - composeElementClose(element); - xml.exit(FHIR_NS, name); - } - } - - protected void composeTopicResourceTriggerComponentElements(Topic.TopicResourceTriggerComponent element) throws IOException { - composeBackboneElementElements(element); - if (element.hasDescriptionElement()) { - composeString("description", element.getDescriptionElement()); - } - if (element.hasResourceType()) { - for (CodeType e : element.getResourceType()) - composeCode("resourceType", e); - } - if (element.hasMethodCriteria()) - for (Enumeration e : element.getMethodCriteria()) - composeEnumeration("methodCriteria", e, new Topic.InteractionTriggerEnumFactory()); - if (element.hasQueryCriteria()) { - composeTopicResourceTriggerQueryCriteriaComponent("queryCriteria", element.getQueryCriteria()); - } - if (element.hasFhirPathCriteriaElement()) { - composeString("fhirPathCriteria", element.getFhirPathCriteriaElement()); - } - } - - protected void composeTopicResourceTriggerQueryCriteriaComponent(String name, Topic.TopicResourceTriggerQueryCriteriaComponent element) throws IOException { - if (element != null) { - composeElementAttributes(element); - xml.enter(FHIR_NS, name); - composeTopicResourceTriggerQueryCriteriaComponentElements(element); - composeElementClose(element); - xml.exit(FHIR_NS, name); - } - } - - protected void composeTopicResourceTriggerQueryCriteriaComponentElements(Topic.TopicResourceTriggerQueryCriteriaComponent element) throws IOException { - composeBackboneElementElements(element); - if (element.hasPreviousElement()) { - composeString("previous", element.getPreviousElement()); - } - if (element.hasCurrentElement()) { - composeString("current", element.getCurrentElement()); - } - if (element.hasRequireBothElement()) { - composeBoolean("requireBoth", element.getRequireBothElement()); - } - } - - protected void composeTopicCanFilterByComponent(String name, Topic.TopicCanFilterByComponent element) throws IOException { - if (element != null) { - composeElementAttributes(element); - xml.enter(FHIR_NS, name); - composeTopicCanFilterByComponentElements(element); - composeElementClose(element); - xml.exit(FHIR_NS, name); - } - } - - protected void composeTopicCanFilterByComponentElements(Topic.TopicCanFilterByComponent element) throws IOException { - composeBackboneElementElements(element); - if (element.hasNameElement()) { - composeString("name", element.getNameElement()); - } - if (element.hasMatchType()) - for (Enumeration e : element.getMatchType()) - composeEnumeration("matchType", e, new Topic.TopicFilterByMatchTypeEnumFactory()); - if (element.hasDocumentationElement()) { - composeMarkdown("documentation", element.getDocumentationElement()); - } - } - protected void composeValueSet(String name, ValueSet element) throws IOException { if (element != null) { composeResourceAttributes(element); @@ -52113,6 +54353,8 @@ public class XmlParser extends XmlParserBase { composeChargeItem("ChargeItem", (ChargeItem)resource); } else if (resource instanceof ChargeItemDefinition) { composeChargeItemDefinition("ChargeItemDefinition", (ChargeItemDefinition)resource); + } else if (resource instanceof Citation) { + composeCitation("Citation", (Citation)resource); } else if (resource instanceof Claim) { composeClaim("Claim", (Claim)resource); } else if (resource instanceof ClaimResponse) { @@ -52179,6 +54421,8 @@ public class XmlParser extends XmlParserBase { composeEventDefinition("EventDefinition", (EventDefinition)resource); } else if (resource instanceof Evidence) { composeEvidence("Evidence", (Evidence)resource); + } else if (resource instanceof EvidenceFocus) { + composeEvidenceFocus("EvidenceFocus", (EvidenceFocus)resource); } else if (resource instanceof EvidenceVariable) { composeEvidenceVariable("EvidenceVariable", (EvidenceVariable)resource); } else if (resource instanceof ExampleScenario) { @@ -52255,6 +54499,8 @@ public class XmlParser extends XmlParserBase { composeNutritionIntake("NutritionIntake", (NutritionIntake)resource); } else if (resource instanceof NutritionOrder) { composeNutritionOrder("NutritionOrder", (NutritionOrder)resource); + } else if (resource instanceof NutritionProduct) { + composeNutritionProduct("NutritionProduct", (NutritionProduct)resource); } else if (resource instanceof Observation) { composeObservation("Observation", (Observation)resource); } else if (resource instanceof ObservationDefinition) { @@ -52277,6 +54523,8 @@ public class XmlParser extends XmlParserBase { composePaymentNotice("PaymentNotice", (PaymentNotice)resource); } else if (resource instanceof PaymentReconciliation) { composePaymentReconciliation("PaymentReconciliation", (PaymentReconciliation)resource); + } else if (resource instanceof Permission) { + composePermission("Permission", (Permission)resource); } else if (resource instanceof Person) { composePerson("Person", (Person)resource); } else if (resource instanceof PlanDefinition) { @@ -52323,6 +54571,10 @@ public class XmlParser extends XmlParserBase { composeStructureMap("StructureMap", (StructureMap)resource); } else if (resource instanceof Subscription) { composeSubscription("Subscription", (Subscription)resource); + } else if (resource instanceof SubscriptionStatus) { + composeSubscriptionStatus("SubscriptionStatus", (SubscriptionStatus)resource); + } else if (resource instanceof SubscriptionTopic) { + composeSubscriptionTopic("SubscriptionTopic", (SubscriptionTopic)resource); } else if (resource instanceof Substance) { composeSubstance("Substance", (Substance)resource); } else if (resource instanceof SubstanceDefinition) { @@ -52349,8 +54601,6 @@ public class XmlParser extends XmlParserBase { composeTestReport("TestReport", (TestReport)resource); } else if (resource instanceof TestScript) { composeTestScript("TestScript", (TestScript)resource); - } else if (resource instanceof Topic) { - composeTopic("Topic", (Topic)resource); } else if (resource instanceof ValueSet) { composeValueSet("ValueSet", (ValueSet)resource); } else if (resource instanceof VerificationResult) { @@ -52408,6 +54658,8 @@ public class XmlParser extends XmlParserBase { composeChargeItem(name, (ChargeItem)resource); } else if (resource instanceof ChargeItemDefinition) { composeChargeItemDefinition(name, (ChargeItemDefinition)resource); + } else if (resource instanceof Citation) { + composeCitation(name, (Citation)resource); } else if (resource instanceof Claim) { composeClaim(name, (Claim)resource); } else if (resource instanceof ClaimResponse) { @@ -52474,6 +54726,8 @@ public class XmlParser extends XmlParserBase { composeEventDefinition(name, (EventDefinition)resource); } else if (resource instanceof Evidence) { composeEvidence(name, (Evidence)resource); + } else if (resource instanceof EvidenceFocus) { + composeEvidenceFocus(name, (EvidenceFocus)resource); } else if (resource instanceof EvidenceVariable) { composeEvidenceVariable(name, (EvidenceVariable)resource); } else if (resource instanceof ExampleScenario) { @@ -52550,6 +54804,8 @@ public class XmlParser extends XmlParserBase { composeNutritionIntake(name, (NutritionIntake)resource); } else if (resource instanceof NutritionOrder) { composeNutritionOrder(name, (NutritionOrder)resource); + } else if (resource instanceof NutritionProduct) { + composeNutritionProduct(name, (NutritionProduct)resource); } else if (resource instanceof Observation) { composeObservation(name, (Observation)resource); } else if (resource instanceof ObservationDefinition) { @@ -52572,6 +54828,8 @@ public class XmlParser extends XmlParserBase { composePaymentNotice(name, (PaymentNotice)resource); } else if (resource instanceof PaymentReconciliation) { composePaymentReconciliation(name, (PaymentReconciliation)resource); + } else if (resource instanceof Permission) { + composePermission(name, (Permission)resource); } else if (resource instanceof Person) { composePerson(name, (Person)resource); } else if (resource instanceof PlanDefinition) { @@ -52618,6 +54876,10 @@ public class XmlParser extends XmlParserBase { composeStructureMap(name, (StructureMap)resource); } else if (resource instanceof Subscription) { composeSubscription(name, (Subscription)resource); + } else if (resource instanceof SubscriptionStatus) { + composeSubscriptionStatus(name, (SubscriptionStatus)resource); + } else if (resource instanceof SubscriptionTopic) { + composeSubscriptionTopic(name, (SubscriptionTopic)resource); } else if (resource instanceof Substance) { composeSubstance(name, (Substance)resource); } else if (resource instanceof SubstanceDefinition) { @@ -52644,8 +54906,6 @@ public class XmlParser extends XmlParserBase { composeTestReport(name, (TestReport)resource); } else if (resource instanceof TestScript) { composeTestScript(name, (TestScript)resource); - } else if (resource instanceof Topic) { - composeTopic(name, (Topic)resource); } else if (resource instanceof ValueSet) { composeValueSet(name, (ValueSet)resource); } else if (resource instanceof VerificationResult) { diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Account.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Account.java index 0bc33ab29..d0a8e0e6d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Account.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Account.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ActivityDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ActivityDefinition.java index b8670908d..1d8213771 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ActivityDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ActivityDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -4392,7 +4392,7 @@ public class ActivityDefinition extends MetadataResource { * Path: ActivityDefinition.relatedArtifact.where(type='composed-of').resource
*

*/ - @SearchParamDefinition(name="composed-of", path="ActivityDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="composed-of", path="ActivityDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_COMPOSED_OF = "composed-of"; /** * Fluent Client search parameter constant for composed-of @@ -4538,7 +4538,7 @@ public class ActivityDefinition extends MetadataResource { * Path: ActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library
*

*/ - @SearchParamDefinition(name="depends-on", path="ActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="depends-on", path="ActivityDefinition.relatedArtifact.where(type='depends-on').resource | ActivityDefinition.library", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DEPENDS_ON = "depends-on"; /** * Fluent Client search parameter constant for depends-on @@ -4564,7 +4564,7 @@ public class ActivityDefinition extends MetadataResource { * Path: ActivityDefinition.relatedArtifact.where(type='derived-from').resource
*

*/ - @SearchParamDefinition(name="derived-from", path="ActivityDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="derived-from", path="ActivityDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DERIVED_FROM = "derived-from"; /** * Fluent Client search parameter constant for derived-from @@ -4690,7 +4690,7 @@ public class ActivityDefinition extends MetadataResource { * Path: ActivityDefinition.relatedArtifact.where(type='predecessor').resource
*

*/ - @SearchParamDefinition(name="predecessor", path="ActivityDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="predecessor", path="ActivityDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PREDECESSOR = "predecessor"; /** * Fluent Client search parameter constant for predecessor @@ -4756,7 +4756,7 @@ public class ActivityDefinition extends MetadataResource { * Path: ActivityDefinition.relatedArtifact.where(type='successor').resource
*

*/ - @SearchParamDefinition(name="successor", path="ActivityDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="successor", path="ActivityDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUCCESSOR = "successor"; /** * Fluent Client search parameter constant for successor diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Address.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Address.java index e8404c46d..098bb3585 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Address.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Address.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdministrableProductDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdministrableProductDefinition.java index afe465e65..0509bde4a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdministrableProductDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdministrableProductDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -74,18 +74,18 @@ import ca.uhn.fhir.model.api.annotation.Block; public class AdministrableProductDefinition extends DomainResource { @Block() - public static class AdministrableProductDefinitionCharacteristicComponent extends BackboneElement implements IBaseBackboneElement { + public static class AdministrableProductDefinitionPropertyComponent extends BackboneElement implements IBaseBackboneElement { /** * A code expressing the type of characteristic. */ - @Child(name = "code", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="A code expressing the type of characteristic", formalDefinition="A code expressing the type of characteristic." ) - protected CodeableConcept code; + protected CodeableConcept type; /** * A value for the characteristic. */ - @Child(name = "value", type = {Coding.class, Quantity.class, StringType.class, DateType.class, BooleanType.class, Attachment.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "value", type = {CodeableConcept.class, Quantity.class, DateType.class, BooleanType.class, Attachment.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="A value for the characteristic", formalDefinition="A value for the characteristic." ) protected DataType value; @@ -96,44 +96,44 @@ public class AdministrableProductDefinition extends DomainResource { @Description(shortDefinition="The status of characteristic e.g. assigned or pending", formalDefinition="The status of characteristic e.g. assigned or pending." ) protected CodeableConcept status; - private static final long serialVersionUID = -343249058L; + private static final long serialVersionUID = -872048207L; /** * Constructor */ - public AdministrableProductDefinitionCharacteristicComponent() { + public AdministrableProductDefinitionPropertyComponent() { super(); } /** * Constructor */ - public AdministrableProductDefinitionCharacteristicComponent(CodeableConcept code) { + public AdministrableProductDefinitionPropertyComponent(CodeableConcept type) { super(); - this.setCode(code); + this.setType(type); } /** - * @return {@link #code} (A code expressing the type of characteristic.) + * @return {@link #type} (A code expressing the type of characteristic.) */ - public CodeableConcept getCode() { - if (this.code == null) + public CodeableConcept getType() { + if (this.type == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create AdministrableProductDefinitionCharacteristicComponent.code"); + throw new Error("Attempt to auto-create AdministrableProductDefinitionPropertyComponent.type"); else if (Configuration.doAutoCreate()) - this.code = new CodeableConcept(); // cc - return this.code; + this.type = new CodeableConcept(); // cc + return this.type; } - public boolean hasCode() { - return this.code != null && !this.code.isEmpty(); + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); } /** - * @param value {@link #code} (A code expressing the type of characteristic.) + * @param value {@link #type} (A code expressing the type of characteristic.) */ - public AdministrableProductDefinitionCharacteristicComponent setCode(CodeableConcept value) { - this.code = value; + public AdministrableProductDefinitionPropertyComponent setType(CodeableConcept value) { + this.type = value; return this; } @@ -147,16 +147,16 @@ public class AdministrableProductDefinition extends DomainResource { /** * @return {@link #value} (A value for the characteristic.) */ - public Coding getValueCoding() throws FHIRException { + public CodeableConcept getValueCodeableConcept() throws FHIRException { if (this.value == null) - this.value = new Coding(); - if (!(this.value instanceof Coding)) - throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); - return (Coding) this.value; + this.value = new CodeableConcept(); + if (!(this.value instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); + return (CodeableConcept) this.value; } - public boolean hasValueCoding() { - return this != null && this.value instanceof Coding; + public boolean hasValueCodeableConcept() { + return this != null && this.value instanceof CodeableConcept; } /** @@ -174,21 +174,6 @@ public class AdministrableProductDefinition extends DomainResource { return this != null && this.value instanceof Quantity; } - /** - * @return {@link #value} (A value for the characteristic.) - */ - public StringType getValueStringType() throws FHIRException { - if (this.value == null) - this.value = new StringType(); - if (!(this.value instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); - return (StringType) this.value; - } - - public boolean hasValueStringType() { - return this != null && this.value instanceof StringType; - } - /** * @return {@link #value} (A value for the characteristic.) */ @@ -241,9 +226,9 @@ public class AdministrableProductDefinition extends DomainResource { /** * @param value {@link #value} (A value for the characteristic.) */ - public AdministrableProductDefinitionCharacteristicComponent setValue(DataType value) { - if (value != null && !(value instanceof Coding || value instanceof Quantity || value instanceof StringType || value instanceof DateType || value instanceof BooleanType || value instanceof Attachment)) - throw new Error("Not the right type for AdministrableProductDefinition.characteristic.value[x]: "+value.fhirType()); + public AdministrableProductDefinitionPropertyComponent setValue(DataType value) { + if (value != null && !(value instanceof CodeableConcept || value instanceof Quantity || value instanceof DateType || value instanceof BooleanType || value instanceof Attachment)) + throw new Error("Not the right type for AdministrableProductDefinition.property.value[x]: "+value.fhirType()); this.value = value; return this; } @@ -254,7 +239,7 @@ public class AdministrableProductDefinition extends DomainResource { public CodeableConcept getStatus() { if (this.status == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create AdministrableProductDefinitionCharacteristicComponent.status"); + throw new Error("Attempt to auto-create AdministrableProductDefinitionPropertyComponent.status"); else if (Configuration.doAutoCreate()) this.status = new CodeableConcept(); // cc return this.status; @@ -267,27 +252,26 @@ public class AdministrableProductDefinition extends DomainResource { /** * @param value {@link #status} (The status of characteristic e.g. assigned or pending.) */ - public AdministrableProductDefinitionCharacteristicComponent setStatus(CodeableConcept value) { + public AdministrableProductDefinitionPropertyComponent setStatus(CodeableConcept value) { this.status = value; return this; } protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("code", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, code)); - children.add(new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value)); + children.add(new Property("type", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, type)); + children.add(new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value)); children.add(new Property("status", "CodeableConcept", "The status of characteristic e.g. assigned or pending.", 0, 1, status)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, code); - case -1410166417: /*value[x]*/ return new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); - case 111972721: /*value*/ return new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); - case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "A value for the characteristic.", 0, 1, value); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, type); + case -1410166417: /*value[x]*/ return new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); + case 111972721: /*value*/ return new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); + case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "A value for the characteristic.", 0, 1, value); case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "A value for the characteristic.", 0, 1, value); - case -1424603934: /*valueString*/ return new Property("value[x]", "string", "A value for the characteristic.", 0, 1, value); case -766192449: /*valueDate*/ return new Property("value[x]", "date", "A value for the characteristic.", 0, 1, value); case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "A value for the characteristic.", 0, 1, value); case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "A value for the characteristic.", 0, 1, value); @@ -300,7 +284,7 @@ public class AdministrableProductDefinition extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // CodeableConcept default: return super.getProperty(hash, name, checkValid); @@ -311,8 +295,8 @@ public class AdministrableProductDefinition extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 3059181: // code - this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case 111972721: // value this.value = TypeConvertor.castToType(value); // DataType @@ -327,8 +311,8 @@ public class AdministrableProductDefinition extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("code")) { - this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("value[x]")) { this.value = TypeConvertor.castToType(value); // DataType } else if (name.equals("status")) { @@ -341,7 +325,7 @@ public class AdministrableProductDefinition extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3059181: return getCode(); + case 3575610: return getType(); case -1410166417: return getValue(); case 111972721: return getValue(); case -892481550: return getStatus(); @@ -353,8 +337,8 @@ public class AdministrableProductDefinition extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3059181: /*code*/ return new String[] {"CodeableConcept"}; - case 111972721: /*value*/ return new String[] {"Coding", "Quantity", "string", "date", "boolean", "Attachment"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"CodeableConcept", "Quantity", "date", "boolean", "Attachment"}; case -892481550: /*status*/ return new String[] {"CodeableConcept"}; default: return super.getTypesForProperty(hash, name); } @@ -363,22 +347,18 @@ public class AdministrableProductDefinition extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("code")) { - this.code = new CodeableConcept(); - return this.code; + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; } - else if (name.equals("valueCoding")) { - this.value = new Coding(); + else if (name.equals("valueCodeableConcept")) { + this.value = new CodeableConcept(); return this.value; } else if (name.equals("valueQuantity")) { this.value = new Quantity(); return this.value; } - else if (name.equals("valueString")) { - this.value = new StringType(); - return this.value; - } else if (name.equals("valueDate")) { this.value = new DateType(); return this.value; @@ -399,15 +379,15 @@ public class AdministrableProductDefinition extends DomainResource { return super.addChild(name); } - public AdministrableProductDefinitionCharacteristicComponent copy() { - AdministrableProductDefinitionCharacteristicComponent dst = new AdministrableProductDefinitionCharacteristicComponent(); + public AdministrableProductDefinitionPropertyComponent copy() { + AdministrableProductDefinitionPropertyComponent dst = new AdministrableProductDefinitionPropertyComponent(); copyValues(dst); return dst; } - public void copyValues(AdministrableProductDefinitionCharacteristicComponent dst) { + public void copyValues(AdministrableProductDefinitionPropertyComponent dst) { super.copyValues(dst); - dst.code = code == null ? null : code.copy(); + dst.type = type == null ? null : type.copy(); dst.value = value == null ? null : value.copy(); dst.status = status == null ? null : status.copy(); } @@ -416,10 +396,10 @@ public class AdministrableProductDefinition extends DomainResource { public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof AdministrableProductDefinitionCharacteristicComponent)) + if (!(other_ instanceof AdministrableProductDefinitionPropertyComponent)) return false; - AdministrableProductDefinitionCharacteristicComponent o = (AdministrableProductDefinitionCharacteristicComponent) other_; - return compareDeep(code, o.code, true) && compareDeep(value, o.value, true) && compareDeep(status, o.status, true) + AdministrableProductDefinitionPropertyComponent o = (AdministrableProductDefinitionPropertyComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(value, o.value, true) && compareDeep(status, o.status, true) ; } @@ -427,18 +407,18 @@ public class AdministrableProductDefinition extends DomainResource { public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof AdministrableProductDefinitionCharacteristicComponent)) + if (!(other_ instanceof AdministrableProductDefinitionPropertyComponent)) return false; - AdministrableProductDefinitionCharacteristicComponent o = (AdministrableProductDefinitionCharacteristicComponent) other_; + AdministrableProductDefinitionPropertyComponent o = (AdministrableProductDefinitionPropertyComponent) other_; return true; } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, value, status); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value, status); } public String fhirType() { - return "AdministrableProductDefinition.characteristic"; + return "AdministrableProductDefinition.property"; } @@ -1495,9 +1475,9 @@ public class AdministrableProductDefinition extends DomainResource { /** * Characteristics e.g. a products onset of action. */ - @Child(name = "characteristic", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "property", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Characteristics e.g. a products onset of action", formalDefinition="Characteristics e.g. a products onset of action." ) - protected List characteristic; + protected List property; /** * The path by which the pharmaceutical product is taken into or makes contact with the body. @@ -1506,7 +1486,7 @@ public class AdministrableProductDefinition extends DomainResource { @Description(shortDefinition="The path by which the pharmaceutical product is taken into or makes contact with the body", formalDefinition="The path by which the pharmaceutical product is taken into or makes contact with the body." ) protected List routeOfAdministration; - private static final long serialVersionUID = 1618278928L; + private static final long serialVersionUID = -1072766896L; /** * Constructor @@ -1838,56 +1818,56 @@ public class AdministrableProductDefinition extends DomainResource { } /** - * @return {@link #characteristic} (Characteristics e.g. a products onset of action.) + * @return {@link #property} (Characteristics e.g. a products onset of action.) */ - public List getCharacteristic() { - if (this.characteristic == null) - this.characteristic = new ArrayList(); - return this.characteristic; + public List getProperty() { + if (this.property == null) + this.property = new ArrayList(); + return this.property; } /** * @return Returns a reference to this for easy method chaining */ - public AdministrableProductDefinition setCharacteristic(List theCharacteristic) { - this.characteristic = theCharacteristic; + public AdministrableProductDefinition setProperty(List theProperty) { + this.property = theProperty; return this; } - public boolean hasCharacteristic() { - if (this.characteristic == null) + public boolean hasProperty() { + if (this.property == null) return false; - for (AdministrableProductDefinitionCharacteristicComponent item : this.characteristic) + for (AdministrableProductDefinitionPropertyComponent item : this.property) if (!item.isEmpty()) return true; return false; } - public AdministrableProductDefinitionCharacteristicComponent addCharacteristic() { //3 - AdministrableProductDefinitionCharacteristicComponent t = new AdministrableProductDefinitionCharacteristicComponent(); - if (this.characteristic == null) - this.characteristic = new ArrayList(); - this.characteristic.add(t); + public AdministrableProductDefinitionPropertyComponent addProperty() { //3 + AdministrableProductDefinitionPropertyComponent t = new AdministrableProductDefinitionPropertyComponent(); + if (this.property == null) + this.property = new ArrayList(); + this.property.add(t); return t; } - public AdministrableProductDefinition addCharacteristic(AdministrableProductDefinitionCharacteristicComponent t) { //3 + public AdministrableProductDefinition addProperty(AdministrableProductDefinitionPropertyComponent t) { //3 if (t == null) return this; - if (this.characteristic == null) - this.characteristic = new ArrayList(); - this.characteristic.add(t); + if (this.property == null) + this.property = new ArrayList(); + this.property.add(t); return this; } /** - * @return The first repetition of repeating field {@link #characteristic}, creating it if it does not already exist {3} + * @return The first repetition of repeating field {@link #property}, creating it if it does not already exist {3} */ - public AdministrableProductDefinitionCharacteristicComponent getCharacteristicFirstRep() { - if (getCharacteristic().isEmpty()) { - addCharacteristic(); + public AdministrableProductDefinitionPropertyComponent getPropertyFirstRep() { + if (getProperty().isEmpty()) { + addProperty(); } - return getCharacteristic().get(0); + return getProperty().get(0); } /** @@ -1952,7 +1932,7 @@ public class AdministrableProductDefinition extends DomainResource { children.add(new Property("producedFrom", "Reference(ManufacturedItemDefinition)", "The manufactured item(s) that this administrable product is produced from. Either a single item, or several that are mixed before administration (e.g. a power item and a solution item). Note that these are not raw ingredients.", 0, java.lang.Integer.MAX_VALUE, producedFrom)); children.add(new Property("ingredient", "Reference(Ingredient)", "The ingredients of this administrable pharmaceutical product.", 0, java.lang.Integer.MAX_VALUE, ingredient)); children.add(new Property("device", "Reference(DeviceDefinition)", "Accompanying device.", 0, java.lang.Integer.MAX_VALUE, device)); - children.add(new Property("characteristic", "", "Characteristics e.g. a products onset of action.", 0, java.lang.Integer.MAX_VALUE, characteristic)); + children.add(new Property("property", "", "Characteristics e.g. a products onset of action.", 0, java.lang.Integer.MAX_VALUE, property)); children.add(new Property("routeOfAdministration", "", "The path by which the pharmaceutical product is taken into or makes contact with the body.", 0, java.lang.Integer.MAX_VALUE, routeOfAdministration)); } @@ -1966,7 +1946,7 @@ public class AdministrableProductDefinition extends DomainResource { case 588380494: /*producedFrom*/ return new Property("producedFrom", "Reference(ManufacturedItemDefinition)", "The manufactured item(s) that this administrable product is produced from. Either a single item, or several that are mixed before administration (e.g. a power item and a solution item). Note that these are not raw ingredients.", 0, java.lang.Integer.MAX_VALUE, producedFrom); case -206409263: /*ingredient*/ return new Property("ingredient", "Reference(Ingredient)", "The ingredients of this administrable pharmaceutical product.", 0, java.lang.Integer.MAX_VALUE, ingredient); case -1335157162: /*device*/ return new Property("device", "Reference(DeviceDefinition)", "Accompanying device.", 0, java.lang.Integer.MAX_VALUE, device); - case 366313883: /*characteristic*/ return new Property("characteristic", "", "Characteristics e.g. a products onset of action.", 0, java.lang.Integer.MAX_VALUE, characteristic); + case -993141291: /*property*/ return new Property("property", "", "Characteristics e.g. a products onset of action.", 0, java.lang.Integer.MAX_VALUE, property); case 1742084734: /*routeOfAdministration*/ return new Property("routeOfAdministration", "", "The path by which the pharmaceutical product is taken into or makes contact with the body.", 0, java.lang.Integer.MAX_VALUE, routeOfAdministration); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1983,7 +1963,7 @@ public class AdministrableProductDefinition extends DomainResource { case 588380494: /*producedFrom*/ return this.producedFrom == null ? new Base[0] : this.producedFrom.toArray(new Base[this.producedFrom.size()]); // Reference case -206409263: /*ingredient*/ return this.ingredient == null ? new Base[0] : this.ingredient.toArray(new Base[this.ingredient.size()]); // Reference case -1335157162: /*device*/ return this.device == null ? new Base[0] : this.device.toArray(new Base[this.device.size()]); // Reference - case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // AdministrableProductDefinitionCharacteristicComponent + case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // AdministrableProductDefinitionPropertyComponent case 1742084734: /*routeOfAdministration*/ return this.routeOfAdministration == null ? new Base[0] : this.routeOfAdministration.toArray(new Base[this.routeOfAdministration.size()]); // AdministrableProductDefinitionRouteOfAdministrationComponent default: return super.getProperty(hash, name, checkValid); } @@ -2014,8 +1994,8 @@ public class AdministrableProductDefinition extends DomainResource { case -1335157162: // device this.getDevice().add(TypeConvertor.castToReference(value)); // Reference return value; - case 366313883: // characteristic - this.getCharacteristic().add((AdministrableProductDefinitionCharacteristicComponent) value); // AdministrableProductDefinitionCharacteristicComponent + case -993141291: // property + this.getProperty().add((AdministrableProductDefinitionPropertyComponent) value); // AdministrableProductDefinitionPropertyComponent return value; case 1742084734: // routeOfAdministration this.getRouteOfAdministration().add((AdministrableProductDefinitionRouteOfAdministrationComponent) value); // AdministrableProductDefinitionRouteOfAdministrationComponent @@ -2041,8 +2021,8 @@ public class AdministrableProductDefinition extends DomainResource { this.getIngredient().add(TypeConvertor.castToReference(value)); } else if (name.equals("device")) { this.getDevice().add(TypeConvertor.castToReference(value)); - } else if (name.equals("characteristic")) { - this.getCharacteristic().add((AdministrableProductDefinitionCharacteristicComponent) value); + } else if (name.equals("property")) { + this.getProperty().add((AdministrableProductDefinitionPropertyComponent) value); } else if (name.equals("routeOfAdministration")) { this.getRouteOfAdministration().add((AdministrableProductDefinitionRouteOfAdministrationComponent) value); } else @@ -2060,7 +2040,7 @@ public class AdministrableProductDefinition extends DomainResource { case 588380494: return addProducedFrom(); case -206409263: return addIngredient(); case -1335157162: return addDevice(); - case 366313883: return addCharacteristic(); + case -993141291: return addProperty(); case 1742084734: return addRouteOfAdministration(); default: return super.makeProperty(hash, name); } @@ -2077,7 +2057,7 @@ public class AdministrableProductDefinition extends DomainResource { case 588380494: /*producedFrom*/ return new String[] {"Reference"}; case -206409263: /*ingredient*/ return new String[] {"Reference"}; case -1335157162: /*device*/ return new String[] {"Reference"}; - case 366313883: /*characteristic*/ return new String[] {}; + case -993141291: /*property*/ return new String[] {}; case 1742084734: /*routeOfAdministration*/ return new String[] {}; default: return super.getTypesForProperty(hash, name); } @@ -2109,8 +2089,8 @@ public class AdministrableProductDefinition extends DomainResource { else if (name.equals("device")) { return addDevice(); } - else if (name.equals("characteristic")) { - return addCharacteristic(); + else if (name.equals("property")) { + return addProperty(); } else if (name.equals("routeOfAdministration")) { return addRouteOfAdministration(); @@ -2159,10 +2139,10 @@ public class AdministrableProductDefinition extends DomainResource { for (Reference i : device) dst.device.add(i.copy()); }; - if (characteristic != null) { - dst.characteristic = new ArrayList(); - for (AdministrableProductDefinitionCharacteristicComponent i : characteristic) - dst.characteristic.add(i.copy()); + if (property != null) { + dst.property = new ArrayList(); + for (AdministrableProductDefinitionPropertyComponent i : property) + dst.property.add(i.copy()); }; if (routeOfAdministration != null) { dst.routeOfAdministration = new ArrayList(); @@ -2184,7 +2164,7 @@ public class AdministrableProductDefinition extends DomainResource { AdministrableProductDefinition o = (AdministrableProductDefinition) other_; return compareDeep(identifier, o.identifier, true) && compareDeep(subject, o.subject, true) && compareDeep(administrableDoseForm, o.administrableDoseForm, true) && compareDeep(unitOfPresentation, o.unitOfPresentation, true) && compareDeep(producedFrom, o.producedFrom, true) - && compareDeep(ingredient, o.ingredient, true) && compareDeep(device, o.device, true) && compareDeep(characteristic, o.characteristic, true) + && compareDeep(ingredient, o.ingredient, true) && compareDeep(device, o.device, true) && compareDeep(property, o.property, true) && compareDeep(routeOfAdministration, o.routeOfAdministration, true); } @@ -2200,7 +2180,7 @@ public class AdministrableProductDefinition extends DomainResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, subject, administrableDoseForm - , unitOfPresentation, producedFrom, ingredient, device, characteristic, routeOfAdministration + , unitOfPresentation, producedFrom, ingredient, device, property, routeOfAdministration ); } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdverseEvent.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdverseEvent.java index b93dfb37d..4caa070b2 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdverseEvent.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AdverseEvent.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1798,10 +1798,10 @@ public class AdverseEvent extends DomainResource { protected List identifier; /** - * The current state of the data entry of the adverse event or potential adverse event. + * The current state of the adverse event or potential adverse event. */ @Child(name = "status", type = {CodeType.class}, order=1, min=1, max=1, modifier=true, summary=true) - @Description(shortDefinition="in-progress | completed | entered-in-error | unknown", formalDefinition="The current state of the data entry of the adverse event or potential adverse event." ) + @Description(shortDefinition="in-progress | completed | entered-in-error | unknown", formalDefinition="The current state of the adverse event or potential adverse event." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/adverse-event-status") protected Enumeration status; @@ -1817,7 +1817,7 @@ public class AdverseEvent extends DomainResource { * The overall type of event, intended for search and filtering purposes. */ @Child(name = "category", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="product-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment", formalDefinition="The overall type of event, intended for search and filtering purposes." ) + @Description(shortDefinition="wrong-patient | procedure-mishap | medication-mishap | device | unsafe-physical-environment | hospital-aquired-infection | wrong-body-site", formalDefinition="The overall type of event, intended for search and filtering purposes." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/adverse-event-category") protected List category; @@ -1837,10 +1837,10 @@ public class AdverseEvent extends DomainResource { protected Reference subject; /** - * The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated. + * The Encounter associated with the start of the AdverseEvent. */ @Child(name = "encounter", type = {Encounter.class}, order=6, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The Encounter during which this AdverseEvent was created", formalDefinition="The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated." ) + @Description(shortDefinition="The Encounter associated with the start of the AdverseEvent", formalDefinition="The Encounter associated with the start of the AdverseEvent." ) protected Reference encounter; /** @@ -2023,7 +2023,7 @@ public class AdverseEvent extends DomainResource { } /** - * @return {@link #status} (The current state of the data entry of the adverse event or potential adverse event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + * @return {@link #status} (The current state of the adverse event or potential adverse event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ public Enumeration getStatusElement() { if (this.status == null) @@ -2043,7 +2043,7 @@ public class AdverseEvent extends DomainResource { } /** - * @param value {@link #status} (The current state of the data entry of the adverse event or potential adverse event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + * @param value {@link #status} (The current state of the adverse event or potential adverse event.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ public AdverseEvent setStatusElement(Enumeration value) { this.status = value; @@ -2051,14 +2051,14 @@ public class AdverseEvent extends DomainResource { } /** - * @return The current state of the data entry of the adverse event or potential adverse event. + * @return The current state of the adverse event or potential adverse event. */ public AdverseEventStatus getStatus() { return this.status == null ? null : this.status.getValue(); } /** - * @param value The current state of the data entry of the adverse event or potential adverse event. + * @param value The current state of the adverse event or potential adverse event. */ public AdverseEvent setStatus(AdverseEventStatus value) { if (this.status == null) @@ -2214,7 +2214,7 @@ public class AdverseEvent extends DomainResource { } /** - * @return {@link #encounter} (The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated.) + * @return {@link #encounter} (The Encounter associated with the start of the AdverseEvent.) */ public Reference getEncounter() { if (this.encounter == null) @@ -2230,7 +2230,7 @@ public class AdverseEvent extends DomainResource { } /** - * @param value {@link #encounter} (The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated.) + * @param value {@link #encounter} (The Encounter associated with the start of the AdverseEvent.) */ public AdverseEvent setEncounter(Reference value) { this.encounter = value; @@ -2924,12 +2924,12 @@ public class AdverseEvent extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Business identifiers assigned to this adverse event by the performer or other systems which remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier)); - children.add(new Property("status", "code", "The current state of the data entry of the adverse event or potential adverse event.", 0, 1, status)); + children.add(new Property("status", "code", "The current state of the adverse event or potential adverse event.", 0, 1, status)); children.add(new Property("actuality", "code", "Whether the event actually happened, or just had the potential to. Note that this is independent of whether anyone was affected or harmed or how severely.", 0, 1, actuality)); children.add(new Property("category", "CodeableConcept", "The overall type of event, intended for search and filtering purposes.", 0, java.lang.Integer.MAX_VALUE, category)); children.add(new Property("code", "CodeableConcept", "Specific event that occurred or that was averted, such as patient fall, wrong organ removed, or wrong blood transfused.", 0, 1, code)); children.add(new Property("subject", "Reference(Patient|Group|Practitioner|RelatedPerson)", "This subject or group impacted by the event.", 0, 1, subject)); - children.add(new Property("encounter", "Reference(Encounter)", "The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated.", 0, 1, encounter)); + children.add(new Property("encounter", "Reference(Encounter)", "The Encounter associated with the start of the AdverseEvent.", 0, 1, encounter)); children.add(new Property("occurrence[x]", "dateTime|Period|Timing", "The date (and perhaps time) when the adverse event occurred.", 0, 1, occurrence)); children.add(new Property("detected", "dateTime", "Estimated or actual date the AdverseEvent began, in the opinion of the reporter.", 0, 1, detected)); children.add(new Property("recordedDate", "dateTime", "The date on which the existence of the AdverseEvent was first recorded.", 0, 1, recordedDate)); @@ -2951,12 +2951,12 @@ public class AdverseEvent extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifiers assigned to this adverse event by the performer or other systems which remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier); - case -892481550: /*status*/ return new Property("status", "code", "The current state of the data entry of the adverse event or potential adverse event.", 0, 1, status); + case -892481550: /*status*/ return new Property("status", "code", "The current state of the adverse event or potential adverse event.", 0, 1, status); case 528866400: /*actuality*/ return new Property("actuality", "code", "Whether the event actually happened, or just had the potential to. Note that this is independent of whether anyone was affected or harmed or how severely.", 0, 1, actuality); case 50511102: /*category*/ return new Property("category", "CodeableConcept", "The overall type of event, intended for search and filtering purposes.", 0, java.lang.Integer.MAX_VALUE, category); case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Specific event that occurred or that was averted, such as patient fall, wrong organ removed, or wrong blood transfused.", 0, 1, code); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group|Practitioner|RelatedPerson)", "This subject or group impacted by the event.", 0, 1, subject); - case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The Encounter during which AdverseEvent was created or to which the creation of this record is tightly associated.", 0, 1, encounter); + case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The Encounter associated with the start of the AdverseEvent.", 0, 1, encounter); case -2022646513: /*occurrence[x]*/ return new Property("occurrence[x]", "dateTime|Period|Timing", "The date (and perhaps time) when the adverse event occurred.", 0, 1, occurrence); case 1687874001: /*occurrence*/ return new Property("occurrence[x]", "dateTime|Period|Timing", "The date (and perhaps time) when the adverse event occurred.", 0, 1, occurrence); case -298443636: /*occurrenceDateTime*/ return new Property("occurrence[x]", "dateTime", "The date (and perhaps time) when the adverse event occurred.", 0, 1, occurrence); @@ -3434,17 +3434,17 @@ public class AdverseEvent extends DomainResource { /** * Search parameter: category *

- * Description: product-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
+ * Description: wrong-patient | procedure-mishap | medication-mishap | device | unsafe-physical-environment | hospital-aquired-infection | wrong-body-site
* Type: token
* Path: AdverseEvent.category
*

*/ - @SearchParamDefinition(name="category", path="AdverseEvent.category", description="product-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment", type="token" ) + @SearchParamDefinition(name="category", path="AdverseEvent.category", description="wrong-patient | procedure-mishap | medication-mishap | device | unsafe-physical-environment | hospital-aquired-infection | wrong-body-site", type="token" ) public static final String SP_CATEGORY = "category"; /** * Fluent Client search parameter constant for category *

- * Description: product-problem | product-quality | product-use-error | wrong-dose | incorrect-prescribing-information | wrong-technique | wrong-route-of-administration | wrong-rate | wrong-duration | wrong-time | expired-drug | medical-device-use-error | problem-different-manufacturer | unsafe-physical-environment
+ * Description: wrong-patient | procedure-mishap | medication-mishap | device | unsafe-physical-environment | hospital-aquired-infection | wrong-body-site
* Type: token
* Path: AdverseEvent.category
*

diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Age.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Age.java index 1a3c18949..50aa795d4 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Age.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Age.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AllergyIntolerance.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AllergyIntolerance.java index e6fbb3dc3..2b34dc88a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AllergyIntolerance.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AllergyIntolerance.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2530,10 +2530,10 @@ public class AllergyIntolerance extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2556,7 +2556,7 @@ public class AllergyIntolerance extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2585,10 +2585,10 @@ public class AllergyIntolerance extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -2614,7 +2614,7 @@ public class AllergyIntolerance extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -2742,10 +2742,10 @@ public class AllergyIntolerance extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2786,7 +2786,7 @@ public class AllergyIntolerance extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Annotation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Annotation.java index e0f020ac2..bf85a7d61 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Annotation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Annotation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Appointment.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Appointment.java index f82eb6190..ee09c0755 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Appointment.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Appointment.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2843,7 +2843,7 @@ The duration (usually in minutes) could also be provided to indicate the length * Path: Appointment.supportingInformation
*

*/ - @SearchParamDefinition(name="supporting-info", path="Appointment.supportingInformation", description="Additional information to support the appointment", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="supporting-info", path="Appointment.supportingInformation", description="Additional information to support the appointment", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUPPORTING_INFO = "supporting-info"; /** * Fluent Client search parameter constant for supporting-info diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AppointmentResponse.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AppointmentResponse.java index 4da09bbbb..01c2bb280 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AppointmentResponse.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AppointmentResponse.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Attachment.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Attachment.java index 3d074c2e5..35a597cf1 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Attachment.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Attachment.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AuditEvent.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AuditEvent.java index fad5a3d6b..8b6f3bdc1 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AuditEvent.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/AuditEvent.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -353,130 +353,6 @@ public class AuditEvent extends DomainResource { } } - public enum AuditEventOutcome { - /** - * The operation completed successfully (whether with warnings or not). - */ - _0, - /** - * The action was not successful due to some kind of minor failure (often equivalent to an HTTP 400 response). - */ - _4, - /** - * The action was not successful due to some kind of unexpected error (often equivalent to an HTTP 500 response). - */ - _8, - /** - * An error of such magnitude occurred that the system is no longer available for use (i.e. the system died). - */ - _12, - /** - * added to help the parsers with the generic types - */ - NULL; - public static AuditEventOutcome fromCode(String codeString) throws FHIRException { - if (codeString == null || "".equals(codeString)) - return null; - if ("0".equals(codeString)) - return _0; - if ("4".equals(codeString)) - return _4; - if ("8".equals(codeString)) - return _8; - if ("12".equals(codeString)) - return _12; - if (Configuration.isAcceptInvalidEnums()) - return null; - else - throw new FHIRException("Unknown AuditEventOutcome code '"+codeString+"'"); - } - public String toCode() { - switch (this) { - case _0: return "0"; - case _4: return "4"; - case _8: return "8"; - case _12: return "12"; - default: return "?"; - } - } - public String getSystem() { - switch (this) { - case _0: return "http://hl7.org/fhir/audit-event-outcome"; - case _4: return "http://hl7.org/fhir/audit-event-outcome"; - case _8: return "http://hl7.org/fhir/audit-event-outcome"; - case _12: return "http://hl7.org/fhir/audit-event-outcome"; - default: return "?"; - } - } - public String getDefinition() { - switch (this) { - case _0: return "The operation completed successfully (whether with warnings or not)."; - case _4: return "The action was not successful due to some kind of minor failure (often equivalent to an HTTP 400 response)."; - case _8: return "The action was not successful due to some kind of unexpected error (often equivalent to an HTTP 500 response)."; - case _12: return "An error of such magnitude occurred that the system is no longer available for use (i.e. the system died)."; - default: return "?"; - } - } - public String getDisplay() { - switch (this) { - case _0: return "Success"; - case _4: return "Minor failure"; - case _8: return "Serious failure"; - case _12: return "Major failure"; - default: return "?"; - } - } - } - - public static class AuditEventOutcomeEnumFactory implements EnumFactory { - public AuditEventOutcome fromCode(String codeString) throws IllegalArgumentException { - if (codeString == null || "".equals(codeString)) - if (codeString == null || "".equals(codeString)) - return null; - if ("0".equals(codeString)) - return AuditEventOutcome._0; - if ("4".equals(codeString)) - return AuditEventOutcome._4; - if ("8".equals(codeString)) - return AuditEventOutcome._8; - if ("12".equals(codeString)) - return AuditEventOutcome._12; - throw new IllegalArgumentException("Unknown AuditEventOutcome code '"+codeString+"'"); - } - public Enumeration fromType(Base code) throws FHIRException { - if (code == null) - return null; - if (code.isEmpty()) - return new Enumeration(this); - String codeString = ((PrimitiveType) code).asStringValue(); - if (codeString == null || "".equals(codeString)) - return null; - if ("0".equals(codeString)) - return new Enumeration(this, AuditEventOutcome._0); - if ("4".equals(codeString)) - return new Enumeration(this, AuditEventOutcome._4); - if ("8".equals(codeString)) - return new Enumeration(this, AuditEventOutcome._8); - if ("12".equals(codeString)) - return new Enumeration(this, AuditEventOutcome._12); - throw new FHIRException("Unknown AuditEventOutcome code '"+codeString+"'"); - } - public String toCode(AuditEventOutcome code) { - if (code == AuditEventOutcome._0) - return "0"; - if (code == AuditEventOutcome._4) - return "4"; - if (code == AuditEventOutcome._8) - return "8"; - if (code == AuditEventOutcome._12) - return "12"; - return "?"; - } - public String toSystem(AuditEventOutcome code) { - return code.getSystem(); - } - } - public enum AuditEventSeverity { /** * System is unusable. @@ -2943,24 +2819,17 @@ public class AuditEvent extends DomainResource { protected InstantType recorded; /** - * Indicates whether the event succeeded or failed. + * Indicates whether the event succeeded or failed. A free text descripiton can be given in outcome.text. */ - @Child(name = "outcome", type = {CodeType.class}, order=6, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Whether the event succeeded or failed", formalDefinition="Indicates whether the event succeeded or failed." ) + @Child(name = "outcome", type = {CodeableConcept.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Whether the event succeeded or failed", formalDefinition="Indicates whether the event succeeded or failed. A free text descripiton can be given in outcome.text." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/audit-event-outcome") - protected Enumeration outcome; - - /** - * A free text description of the outcome of the event. - */ - @Child(name = "outcomeDesc", type = {StringType.class}, order=7, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Description of the event outcome", formalDefinition="A free text description of the outcome of the event." ) - protected StringType outcomeDesc; + protected CodeableConcept outcome; /** * The purposeOfUse (reason) that was used during the event being recorded. */ - @Child(name = "purposeOfEvent", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "purposeOfEvent", type = {CodeableConcept.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The purposeOfUse of the event", formalDefinition="The purposeOfUse (reason) that was used during the event being recorded." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://terminology.hl7.org/ValueSet/v3-PurposeOfUse") protected List purposeOfEvent; @@ -2968,25 +2837,25 @@ public class AuditEvent extends DomainResource { /** * An actor taking an active role in the event or activity that is logged. */ - @Child(name = "agent", type = {}, order=9, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "agent", type = {}, order=8, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Actor involved in the event", formalDefinition="An actor taking an active role in the event or activity that is logged." ) protected List agent; /** * The system that is reporting the event. */ - @Child(name = "source", type = {}, order=10, min=1, max=1, modifier=false, summary=false) + @Child(name = "source", type = {}, order=9, min=1, max=1, modifier=false, summary=false) @Description(shortDefinition="Audit Event Reporter", formalDefinition="The system that is reporting the event." ) protected AuditEventSourceComponent source; /** * Specific instances of data or objects that have been accessed. */ - @Child(name = "entity", type = {}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "entity", type = {}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Data or objects used", formalDefinition="Specific instances of data or objects that have been accessed." ) protected List entity; - private static final long serialVersionUID = 778790159L; + private static final long serialVersionUID = -446219294L; /** * Constructor @@ -3251,103 +3120,29 @@ public class AuditEvent extends DomainResource { } /** - * @return {@link #outcome} (Indicates whether the event succeeded or failed.). This is the underlying object with id, value and extensions. The accessor "getOutcome" gives direct access to the value + * @return {@link #outcome} (Indicates whether the event succeeded or failed. A free text descripiton can be given in outcome.text.) */ - public Enumeration getOutcomeElement() { + public CodeableConcept getOutcome() { if (this.outcome == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create AuditEvent.outcome"); else if (Configuration.doAutoCreate()) - this.outcome = new Enumeration(new AuditEventOutcomeEnumFactory()); // bb + this.outcome = new CodeableConcept(); // cc return this.outcome; } - public boolean hasOutcomeElement() { - return this.outcome != null && !this.outcome.isEmpty(); - } - public boolean hasOutcome() { return this.outcome != null && !this.outcome.isEmpty(); } /** - * @param value {@link #outcome} (Indicates whether the event succeeded or failed.). This is the underlying object with id, value and extensions. The accessor "getOutcome" gives direct access to the value + * @param value {@link #outcome} (Indicates whether the event succeeded or failed. A free text descripiton can be given in outcome.text.) */ - public AuditEvent setOutcomeElement(Enumeration value) { + public AuditEvent setOutcome(CodeableConcept value) { this.outcome = value; return this; } - /** - * @return Indicates whether the event succeeded or failed. - */ - public AuditEventOutcome getOutcome() { - return this.outcome == null ? null : this.outcome.getValue(); - } - - /** - * @param value Indicates whether the event succeeded or failed. - */ - public AuditEvent setOutcome(AuditEventOutcome value) { - if (value == null) - this.outcome = null; - else { - if (this.outcome == null) - this.outcome = new Enumeration(new AuditEventOutcomeEnumFactory()); - this.outcome.setValue(value); - } - return this; - } - - /** - * @return {@link #outcomeDesc} (A free text description of the outcome of the event.). This is the underlying object with id, value and extensions. The accessor "getOutcomeDesc" gives direct access to the value - */ - public StringType getOutcomeDescElement() { - if (this.outcomeDesc == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create AuditEvent.outcomeDesc"); - else if (Configuration.doAutoCreate()) - this.outcomeDesc = new StringType(); // bb - return this.outcomeDesc; - } - - public boolean hasOutcomeDescElement() { - return this.outcomeDesc != null && !this.outcomeDesc.isEmpty(); - } - - public boolean hasOutcomeDesc() { - return this.outcomeDesc != null && !this.outcomeDesc.isEmpty(); - } - - /** - * @param value {@link #outcomeDesc} (A free text description of the outcome of the event.). This is the underlying object with id, value and extensions. The accessor "getOutcomeDesc" gives direct access to the value - */ - public AuditEvent setOutcomeDescElement(StringType value) { - this.outcomeDesc = value; - return this; - } - - /** - * @return A free text description of the outcome of the event. - */ - public String getOutcomeDesc() { - return this.outcomeDesc == null ? null : this.outcomeDesc.getValue(); - } - - /** - * @param value A free text description of the outcome of the event. - */ - public AuditEvent setOutcomeDesc(String value) { - if (Utilities.noString(value)) - this.outcomeDesc = null; - else { - if (this.outcomeDesc == null) - this.outcomeDesc = new StringType(); - this.outcomeDesc.setValue(value); - } - return this; - } - /** * @return {@link #purposeOfEvent} (The purposeOfUse (reason) that was used during the event being recorded.) */ @@ -3539,8 +3334,7 @@ public class AuditEvent extends DomainResource { children.add(new Property("severity", "code", "Indicates and enables segmentation of various severity including debugging from critical.", 0, 1, severity)); children.add(new Property("period", "Period", "The period during which the activity occurred.", 0, 1, period)); children.add(new Property("recorded", "instant", "The time when the event was recorded.", 0, 1, recorded)); - children.add(new Property("outcome", "code", "Indicates whether the event succeeded or failed.", 0, 1, outcome)); - children.add(new Property("outcomeDesc", "string", "A free text description of the outcome of the event.", 0, 1, outcomeDesc)); + children.add(new Property("outcome", "CodeableConcept", "Indicates whether the event succeeded or failed. A free text descripiton can be given in outcome.text.", 0, 1, outcome)); children.add(new Property("purposeOfEvent", "CodeableConcept", "The purposeOfUse (reason) that was used during the event being recorded.", 0, java.lang.Integer.MAX_VALUE, purposeOfEvent)); children.add(new Property("agent", "", "An actor taking an active role in the event or activity that is logged.", 0, java.lang.Integer.MAX_VALUE, agent)); children.add(new Property("source", "", "The system that is reporting the event.", 0, 1, source)); @@ -3556,8 +3350,7 @@ public class AuditEvent extends DomainResource { case 1478300413: /*severity*/ return new Property("severity", "code", "Indicates and enables segmentation of various severity including debugging from critical.", 0, 1, severity); case -991726143: /*period*/ return new Property("period", "Period", "The period during which the activity occurred.", 0, 1, period); case -799233872: /*recorded*/ return new Property("recorded", "instant", "The time when the event was recorded.", 0, 1, recorded); - case -1106507950: /*outcome*/ return new Property("outcome", "code", "Indicates whether the event succeeded or failed.", 0, 1, outcome); - case 1062502659: /*outcomeDesc*/ return new Property("outcomeDesc", "string", "A free text description of the outcome of the event.", 0, 1, outcomeDesc); + case -1106507950: /*outcome*/ return new Property("outcome", "CodeableConcept", "Indicates whether the event succeeded or failed. A free text descripiton can be given in outcome.text.", 0, 1, outcome); case -341917691: /*purposeOfEvent*/ return new Property("purposeOfEvent", "CodeableConcept", "The purposeOfUse (reason) that was used during the event being recorded.", 0, java.lang.Integer.MAX_VALUE, purposeOfEvent); case 92750597: /*agent*/ return new Property("agent", "", "An actor taking an active role in the event or activity that is logged.", 0, java.lang.Integer.MAX_VALUE, agent); case -896505829: /*source*/ return new Property("source", "", "The system that is reporting the event.", 0, 1, source); @@ -3576,8 +3369,7 @@ public class AuditEvent extends DomainResource { case 1478300413: /*severity*/ return this.severity == null ? new Base[0] : new Base[] {this.severity}; // Enumeration case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period case -799233872: /*recorded*/ return this.recorded == null ? new Base[0] : new Base[] {this.recorded}; // InstantType - case -1106507950: /*outcome*/ return this.outcome == null ? new Base[0] : new Base[] {this.outcome}; // Enumeration - case 1062502659: /*outcomeDesc*/ return this.outcomeDesc == null ? new Base[0] : new Base[] {this.outcomeDesc}; // StringType + case -1106507950: /*outcome*/ return this.outcome == null ? new Base[0] : new Base[] {this.outcome}; // CodeableConcept case -341917691: /*purposeOfEvent*/ return this.purposeOfEvent == null ? new Base[0] : this.purposeOfEvent.toArray(new Base[this.purposeOfEvent.size()]); // CodeableConcept case 92750597: /*agent*/ return this.agent == null ? new Base[0] : this.agent.toArray(new Base[this.agent.size()]); // AuditEventAgentComponent case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // AuditEventSourceComponent @@ -3611,11 +3403,7 @@ public class AuditEvent extends DomainResource { this.recorded = TypeConvertor.castToInstant(value); // InstantType return value; case -1106507950: // outcome - value = new AuditEventOutcomeEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.outcome = (Enumeration) value; // Enumeration - return value; - case 1062502659: // outcomeDesc - this.outcomeDesc = TypeConvertor.castToString(value); // StringType + this.outcome = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -341917691: // purposeOfEvent this.getPurposeOfEvent().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept @@ -3651,10 +3439,7 @@ public class AuditEvent extends DomainResource { } else if (name.equals("recorded")) { this.recorded = TypeConvertor.castToInstant(value); // InstantType } else if (name.equals("outcome")) { - value = new AuditEventOutcomeEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.outcome = (Enumeration) value; // Enumeration - } else if (name.equals("outcomeDesc")) { - this.outcomeDesc = TypeConvertor.castToString(value); // StringType + this.outcome = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("purposeOfEvent")) { this.getPurposeOfEvent().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("agent")) { @@ -3677,8 +3462,7 @@ public class AuditEvent extends DomainResource { case 1478300413: return getSeverityElement(); case -991726143: return getPeriod(); case -799233872: return getRecordedElement(); - case -1106507950: return getOutcomeElement(); - case 1062502659: return getOutcomeDescElement(); + case -1106507950: return getOutcome(); case -341917691: return addPurposeOfEvent(); case 92750597: return addAgent(); case -896505829: return getSource(); @@ -3697,8 +3481,7 @@ public class AuditEvent extends DomainResource { case 1478300413: /*severity*/ return new String[] {"code"}; case -991726143: /*period*/ return new String[] {"Period"}; case -799233872: /*recorded*/ return new String[] {"instant"}; - case -1106507950: /*outcome*/ return new String[] {"code"}; - case 1062502659: /*outcomeDesc*/ return new String[] {"string"}; + case -1106507950: /*outcome*/ return new String[] {"CodeableConcept"}; case -341917691: /*purposeOfEvent*/ return new String[] {"CodeableConcept"}; case 92750597: /*agent*/ return new String[] {}; case -896505829: /*source*/ return new String[] {}; @@ -3731,10 +3514,8 @@ public class AuditEvent extends DomainResource { throw new FHIRException("Cannot call addChild on a primitive type AuditEvent.recorded"); } else if (name.equals("outcome")) { - throw new FHIRException("Cannot call addChild on a primitive type AuditEvent.outcome"); - } - else if (name.equals("outcomeDesc")) { - throw new FHIRException("Cannot call addChild on a primitive type AuditEvent.outcomeDesc"); + this.outcome = new CodeableConcept(); + return this.outcome; } else if (name.equals("purposeOfEvent")) { return addPurposeOfEvent(); @@ -3777,7 +3558,6 @@ public class AuditEvent extends DomainResource { dst.period = period == null ? null : period.copy(); dst.recorded = recorded == null ? null : recorded.copy(); dst.outcome = outcome == null ? null : outcome.copy(); - dst.outcomeDesc = outcomeDesc == null ? null : outcomeDesc.copy(); if (purposeOfEvent != null) { dst.purposeOfEvent = new ArrayList(); for (CodeableConcept i : purposeOfEvent) @@ -3809,7 +3589,7 @@ public class AuditEvent extends DomainResource { AuditEvent o = (AuditEvent) other_; return compareDeep(type, o.type, true) && compareDeep(subtype, o.subtype, true) && compareDeep(action, o.action, true) && compareDeep(severity, o.severity, true) && compareDeep(period, o.period, true) && compareDeep(recorded, o.recorded, true) - && compareDeep(outcome, o.outcome, true) && compareDeep(outcomeDesc, o.outcomeDesc, true) && compareDeep(purposeOfEvent, o.purposeOfEvent, true) + && compareDeep(outcome, o.outcome, true) && compareDeep(purposeOfEvent, o.purposeOfEvent, true) && compareDeep(agent, o.agent, true) && compareDeep(source, o.source, true) && compareDeep(entity, o.entity, true) ; } @@ -3822,13 +3602,12 @@ public class AuditEvent extends DomainResource { return false; AuditEvent o = (AuditEvent) other_; return compareValues(action, o.action, true) && compareValues(severity, o.severity, true) && compareValues(recorded, o.recorded, true) - && compareValues(outcome, o.outcome, true) && compareValues(outcomeDesc, o.outcomeDesc, true); + ; } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, subtype, action, severity - , period, recorded, outcome, outcomeDesc, purposeOfEvent, agent, source, entity - ); + , period, recorded, outcome, purposeOfEvent, agent, source, entity); } @Override @@ -4050,7 +3829,7 @@ public class AuditEvent extends DomainResource { * Path: AuditEvent.entity.what
*

*/ - @SearchParamDefinition(name="entity", path="AuditEvent.entity.what", description="Specific instance of resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="entity", path="AuditEvent.entity.what", description="Specific instance of resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_ENTITY = "entity"; /** * Fluent Client search parameter constant for entity diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneElement.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneElement.java index e1358639b..782d7a4f1 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneElement.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneElement.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneType.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneType.java index a8d557f71..e4dc1d2d4 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneType.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BackboneType.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Basic.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Basic.java index 14c625004..291608df7 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Basic.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Basic.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -603,7 +603,7 @@ public class Basic extends DomainResource { * Path: Basic.subject
*

*/ - @SearchParamDefinition(name="subject", path="Basic.subject", description="Identifies the focus of this resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="subject", path="Basic.subject", description="Identifies the focus of this resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUBJECT = "subject"; /** * Fluent Client search parameter constant for subject diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Binary.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Binary.java index 424f11dff..19c351114 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Binary.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Binary.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BiologicallyDerivedProduct.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BiologicallyDerivedProduct.java index 410338858..cb06c593e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BiologicallyDerivedProduct.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BiologicallyDerivedProduct.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BodyStructure.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BodyStructure.java index e9c9f8f05..15caa2474 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BodyStructure.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/BodyStructure.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Bundle.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Bundle.java index 0979f9a58..ada559351 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Bundle.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Bundle.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -112,6 +112,10 @@ public class Bundle extends Resource implements IBaseBundle { * The bundle is a set of resources collected into a single package for ease of distribution that imposes no processing obligations or behavioral rules beyond persistence. */ COLLECTION, + /** + * The bundle has been generated by a Subscription to communicate information to a client. + */ + SUBSCRIPTIONNOTIFICATION, /** * added to help the parsers with the generic types */ @@ -137,6 +141,8 @@ public class Bundle extends Resource implements IBaseBundle { return SEARCHSET; if ("collection".equals(codeString)) return COLLECTION; + if ("subscription-notification".equals(codeString)) + return SUBSCRIPTIONNOTIFICATION; if (Configuration.isAcceptInvalidEnums()) return null; else @@ -153,6 +159,7 @@ public class Bundle extends Resource implements IBaseBundle { case HISTORY: return "history"; case SEARCHSET: return "searchset"; case COLLECTION: return "collection"; + case SUBSCRIPTIONNOTIFICATION: return "subscription-notification"; default: return "?"; } } @@ -167,6 +174,7 @@ public class Bundle extends Resource implements IBaseBundle { case HISTORY: return "http://hl7.org/fhir/bundle-type"; case SEARCHSET: return "http://hl7.org/fhir/bundle-type"; case COLLECTION: return "http://hl7.org/fhir/bundle-type"; + case SUBSCRIPTIONNOTIFICATION: return "http://hl7.org/fhir/bundle-type"; default: return "?"; } } @@ -181,6 +189,7 @@ public class Bundle extends Resource implements IBaseBundle { case HISTORY: return "The bundle is a list of resources from a history interaction on a server."; case SEARCHSET: return "The bundle is a list of resources returned as a result of a search/query interaction, operation, or message."; case COLLECTION: return "The bundle is a set of resources collected into a single package for ease of distribution that imposes no processing obligations or behavioral rules beyond persistence."; + case SUBSCRIPTIONNOTIFICATION: return "The bundle has been generated by a Subscription to communicate information to a client."; default: return "?"; } } @@ -195,6 +204,7 @@ public class Bundle extends Resource implements IBaseBundle { case HISTORY: return "History List"; case SEARCHSET: return "Search Results"; case COLLECTION: return "Collection"; + case SUBSCRIPTIONNOTIFICATION: return "Subscription Notification"; default: return "?"; } } @@ -223,6 +233,8 @@ public class Bundle extends Resource implements IBaseBundle { return BundleType.SEARCHSET; if ("collection".equals(codeString)) return BundleType.COLLECTION; + if ("subscription-notification".equals(codeString)) + return BundleType.SUBSCRIPTIONNOTIFICATION; throw new IllegalArgumentException("Unknown BundleType code '"+codeString+"'"); } public Enumeration fromType(Base code) throws FHIRException { @@ -251,6 +263,8 @@ public class Bundle extends Resource implements IBaseBundle { return new Enumeration(this, BundleType.SEARCHSET); if ("collection".equals(codeString)) return new Enumeration(this, BundleType.COLLECTION); + if ("subscription-notification".equals(codeString)) + return new Enumeration(this, BundleType.SUBSCRIPTIONNOTIFICATION); throw new FHIRException("Unknown BundleType code '"+codeString+"'"); } public String toCode(BundleType code) { @@ -272,6 +286,8 @@ public class Bundle extends Resource implements IBaseBundle { return "searchset"; if (code == BundleType.COLLECTION) return "collection"; + if (code == BundleType.SUBSCRIPTIONNOTIFICATION) + return "subscription-notification"; return "?"; } public String toSystem(BundleType code) { @@ -2547,7 +2563,7 @@ public class Bundle extends Resource implements IBaseBundle { * Indicates the purpose of this bundle - how it is intended to be used. */ @Child(name = "type", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection", formalDefinition="Indicates the purpose of this bundle - how it is intended to be used." ) + @Description(shortDefinition="document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification", formalDefinition="Indicates the purpose of this bundle - how it is intended to be used." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/bundle-type") protected Enumeration type; @@ -3210,17 +3226,17 @@ public class Bundle extends Resource implements IBaseBundle { /** * Search parameter: type *

- * Description: document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
+ * Description: document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
* Type: token
* Path: Bundle.type
*

*/ - @SearchParamDefinition(name="type", path="Bundle.type", description="document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection", type="token" ) + @SearchParamDefinition(name="type", path="Bundle.type", description="document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification", type="token" ) public static final String SP_TYPE = "type"; /** * Fluent Client search parameter constant for type *

- * Description: document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection
+ * Description: document | message | transaction | transaction-response | batch | batch-response | history | searchset | collection | subscription-notification
* Type: token
* Path: Bundle.type
*

diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CanonicalResource.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CanonicalResource.java index 9adf51299..d3bc10453 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CanonicalResource.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CanonicalResource.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement.java index 4b4a74410..051d0d7e8 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement2.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement2.java index efc0d4f52..976d345d6 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement2.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CapabilityStatement2.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CarePlan.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CarePlan.java index e033926cd..aae9ad081 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CarePlan.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CarePlan.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1045,9 +1045,10 @@ public class CarePlan extends DomainResource { /** * Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc. */ - @Child(name = "location", type = {Location.class}, order=11, min=0, max=1, modifier=false, summary=false) + @Child(name = "location", type = {CodeableReference.class}, order=11, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Where it should happen", formalDefinition="Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc." ) - protected Reference location; + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://terminology.hl7.org/ValueSet/v3-ServiceDeliveryLocationRoleType") + protected CodeableReference location; /** * Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report. @@ -1092,7 +1093,7 @@ public class CarePlan extends DomainResource { @Description(shortDefinition="Extra info describing activity to perform", formalDefinition="This provides a textual description of constraints on the intended activity occurrence, including relation to other activities. It may also include objectives, pre-conditions and end-conditions. Finally, it may convey specifics about the activity such as body site, method, route, etc." ) protected StringType description; - private static final long serialVersionUID = 24430165L; + private static final long serialVersionUID = -1258570436L; /** * Constructor @@ -1593,12 +1594,12 @@ public class CarePlan extends DomainResource { /** * @return {@link #location} (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) */ - public Reference getLocation() { + public CodeableReference getLocation() { if (this.location == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create CarePlanActivityDetailComponent.location"); else if (Configuration.doAutoCreate()) - this.location = new Reference(); // cc + this.location = new CodeableReference(); // cc return this.location; } @@ -1609,7 +1610,7 @@ public class CarePlan extends DomainResource { /** * @param value {@link #location} (Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.) */ - public CarePlanActivityDetailComponent setLocation(Reference value) { + public CarePlanActivityDetailComponent setLocation(CodeableReference value) { this.location = value; return this; } @@ -1878,7 +1879,7 @@ public class CarePlan extends DomainResource { children.add(new Property("statusReason", "CodeableConcept", "Provides reason why the activity isn't yet started, is on hold, was cancelled, etc.", 0, 1, statusReason)); children.add(new Property("doNotPerform", "boolean", "If true, indicates that the described activity is one that must NOT be engaged in when following the plan. If false, or missing, indicates that the described activity is one that should be engaged in when following the plan.", 0, 1, doNotPerform)); children.add(new Property("scheduled[x]", "Timing|Period|string", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, scheduled)); - children.add(new Property("location", "Reference(Location)", "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, location)); + children.add(new Property("location", "CodeableReference(Location)", "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, location)); children.add(new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported)); children.add(new Property("performer", "Reference(Practitioner|PractitionerRole|Organization|RelatedPerson|Patient|CareTeam|HealthcareService|Device)", "Identifies who's expected to be involved in the activity.", 0, java.lang.Integer.MAX_VALUE, performer)); children.add(new Property("product[x]", "CodeableConcept|Reference(Medication|Substance)", "Identifies the food, drug or other product to be consumed or supplied in the activity.", 0, 1, product)); @@ -1904,7 +1905,7 @@ public class CarePlan extends DomainResource { case 998483799: /*scheduledTiming*/ return new Property("scheduled[x]", "Timing", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, scheduled); case 880422094: /*scheduledPeriod*/ return new Property("scheduled[x]", "Period", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, scheduled); case 980162334: /*scheduledString*/ return new Property("scheduled[x]", "string", "The period, timing or frequency upon which the described activity is to occur.", 0, 1, scheduled); - case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, location); + case 1901043637: /*location*/ return new Property("location", "CodeableReference(Location)", "Identifies the facility where the activity will occur; e.g. home, hospital, specific clinic, etc.", 0, 1, location); case -241505587: /*reported[x]*/ return new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported); case -427039533: /*reported*/ return new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported); case 1219992533: /*reportedBoolean*/ return new Property("reported[x]", "boolean", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported); @@ -1935,7 +1936,7 @@ public class CarePlan extends DomainResource { case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : new Base[] {this.statusReason}; // CodeableConcept case -1788508167: /*doNotPerform*/ return this.doNotPerform == null ? new Base[0] : new Base[] {this.doNotPerform}; // BooleanType case -160710483: /*scheduled*/ return this.scheduled == null ? new Base[0] : new Base[] {this.scheduled}; // DataType - case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference + case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // CodeableReference case -427039533: /*reported*/ return this.reported == null ? new Base[0] : new Base[] {this.reported}; // DataType case 481140686: /*performer*/ return this.performer == null ? new Base[0] : this.performer.toArray(new Base[this.performer.size()]); // Reference case -309474065: /*product*/ return this.product == null ? new Base[0] : new Base[] {this.product}; // DataType @@ -1983,7 +1984,7 @@ public class CarePlan extends DomainResource { this.scheduled = TypeConvertor.castToType(value); // DataType return value; case 1901043637: // location - this.location = TypeConvertor.castToReference(value); // Reference + this.location = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -427039533: // reported this.reported = TypeConvertor.castToType(value); // DataType @@ -2033,7 +2034,7 @@ public class CarePlan extends DomainResource { } else if (name.equals("scheduled[x]")) { this.scheduled = TypeConvertor.castToType(value); // DataType } else if (name.equals("location")) { - this.location = TypeConvertor.castToReference(value); // Reference + this.location = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("reported[x]")) { this.reported = TypeConvertor.castToType(value); // DataType } else if (name.equals("performer")) { @@ -2092,7 +2093,7 @@ public class CarePlan extends DomainResource { case 2051346646: /*statusReason*/ return new String[] {"CodeableConcept"}; case -1788508167: /*doNotPerform*/ return new String[] {"boolean"}; case -160710483: /*scheduled*/ return new String[] {"Timing", "Period", "string"}; - case 1901043637: /*location*/ return new String[] {"Reference"}; + case 1901043637: /*location*/ return new String[] {"CodeableReference"}; case -427039533: /*reported*/ return new String[] {"boolean", "Reference"}; case 481140686: /*performer*/ return new String[] {"Reference"}; case -309474065: /*product*/ return new String[] {"CodeableConcept", "Reference"}; @@ -2148,7 +2149,7 @@ public class CarePlan extends DomainResource { return this.scheduled; } else if (name.equals("location")) { - this.location = new Reference(); + this.location = new CodeableReference(); return this.location; } else if (name.equals("reportedBoolean")) { @@ -4073,26 +4074,6 @@ public class CarePlan extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.TokenClientParam ACTIVITY_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_ACTIVITY_CODE); - /** - * Search parameter: activity-date - *

- * Description: Specified date occurs within period specified by CarePlan.activity.detail.scheduled[x]
- * Type: date
- * Path: CarePlan.activity.detail.scheduled
- *

- */ - @SearchParamDefinition(name="activity-date", path="CarePlan.activity.detail.scheduled", description="Specified date occurs within period specified by CarePlan.activity.detail.scheduled[x]", type="date" ) - public static final String SP_ACTIVITY_DATE = "activity-date"; - /** - * Fluent Client search parameter constant for activity-date - *

- * Description: Specified date occurs within period specified by CarePlan.activity.detail.scheduled[x]
- * Type: date
- * Path: CarePlan.activity.detail.scheduled
- *

- */ - public static final ca.uhn.fhir.rest.gclient.DateClientParam ACTIVITY_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_ACTIVITY_DATE); - /** * Search parameter: activity-reference *

@@ -4119,6 +4100,46 @@ public class CarePlan extends DomainResource { */ public static final ca.uhn.fhir.model.api.Include INCLUDE_ACTIVITY_REFERENCE = new ca.uhn.fhir.model.api.Include("CarePlan:activity-reference").toLocked(); + /** + * Search parameter: activity-scheduled-date + *

+ * Description: Specified date occurs within period specified by CarePlan.activity.detail.scheduled[x]
+ * Type: date
+ * Path: CarePlan.activity.detail.scheduled.as(Timing) | CarePlan.activity.detail.scheduled.as(Period)
+ *

+ */ + @SearchParamDefinition(name="activity-scheduled-date", path="CarePlan.activity.detail.scheduled.as(Timing) | CarePlan.activity.detail.scheduled.as(Period)", description="Specified date occurs within period specified by CarePlan.activity.detail.scheduled[x]", type="date" ) + public static final String SP_ACTIVITY_SCHEDULED_DATE = "activity-scheduled-date"; + /** + * Fluent Client search parameter constant for activity-scheduled-date + *

+ * Description: Specified date occurs within period specified by CarePlan.activity.detail.scheduled[x]
+ * Type: date
+ * Path: CarePlan.activity.detail.scheduled.as(Timing) | CarePlan.activity.detail.scheduled.as(Period)
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.DateClientParam ACTIVITY_SCHEDULED_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_ACTIVITY_SCHEDULED_DATE); + + /** + * Search parameter: activity-scheduled-string + *

+ * Description: When activity is to occur
+ * Type: string
+ * Path: CarePlan.activity.detail.scheduled.as(string)
+ *

+ */ + @SearchParamDefinition(name="activity-scheduled-string", path="CarePlan.activity.detail.scheduled.as(string)", description="When activity is to occur", type="string" ) + public static final String SP_ACTIVITY_SCHEDULED_STRING = "activity-scheduled-string"; + /** + * Fluent Client search parameter constant for activity-scheduled-string + *

+ * Description: When activity is to occur
+ * Type: string
+ * Path: CarePlan.activity.detail.scheduled.as(string)
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.StringClientParam ACTIVITY_SCHEDULED_STRING = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_ACTIVITY_SCHEDULED_STRING); + /** * Search parameter: based-on *

@@ -4483,10 +4504,10 @@ public class CarePlan extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -4512,7 +4533,7 @@ public class CarePlan extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -4640,10 +4661,10 @@ public class CarePlan extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -4684,7 +4705,7 @@ public class CarePlan extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CareTeam.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CareTeam.java index 9eb2cb0c2..589855740 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CareTeam.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CareTeam.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1582,10 +1582,10 @@ public class CareTeam extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -1611,7 +1611,7 @@ public class CareTeam extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -1739,10 +1739,10 @@ public class CareTeam extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1783,7 +1783,7 @@ public class CareTeam extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CatalogEntry.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CatalogEntry.java index b88b502b8..6c4959d57 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CatalogEntry.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CatalogEntry.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItem.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItem.java index f8dc21bb9..96f39bbc3 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItem.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItem.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItemDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItemDefinition.java index 6c87371e8..50705fd3b 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItemDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ChargeItemDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Citation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Citation.java new file mode 100644 index 000000000..841ab059d --- /dev/null +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Citation.java @@ -0,0 +1,10139 @@ +package org.hl7.fhir.r5.model; + + +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.r5.model.Enumerations.*; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.instance.model.api.ICompositeType; +import ca.uhn.fhir.model.api.annotation.ResourceDef; +import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import ca.uhn.fhir.model.api.annotation.Child; +import ca.uhn.fhir.model.api.annotation.ChildOrder; +import ca.uhn.fhir.model.api.annotation.Description; +import ca.uhn.fhir.model.api.annotation.Block; + +/** + * The Citation. + */ +@ResourceDef(name="Citation", profile="http://hl7.org/fhir/StructureDefinition/Citation") +public class Citation extends MetadataResource { + + @Block() + public static class CitationVariantCitationComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used to describe the reason for the variant citation, such as version or subpart specification. + */ + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to describe the reason for the variant citation, such as version or subpart specification", formalDefinition="Used to describe the reason for the variant citation, such as version or subpart specification." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/citation-variant-type") + protected CodeableConcept type; + + /** + * Used to describe the specific variation, such as version number or subpart specification. + */ + @Child(name = "value", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to describe the specific variation, such as version number or subpart specification", formalDefinition="Used to describe the specific variation, such as version number or subpart specification." ) + protected StringType value; + + /** + * Base citation. + */ + @Child(name = "baseCitation", type = {Citation.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Base citation", formalDefinition="Base citation." ) + protected Reference baseCitation; + + private static final long serialVersionUID = -765350500L; + + /** + * Constructor + */ + public CitationVariantCitationComponent() { + super(); + } + + /** + * @return {@link #type} (Used to describe the reason for the variant citation, such as version or subpart specification.) + */ + public CodeableConcept getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationVariantCitationComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableConcept(); // cc + return this.type; + } + + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); + } + + /** + * @param value {@link #type} (Used to describe the reason for the variant citation, such as version or subpart specification.) + */ + public CitationVariantCitationComponent setType(CodeableConcept value) { + this.type = value; + return this; + } + + /** + * @return {@link #value} (Used to describe the specific variation, such as version number or subpart specification.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value + */ + public StringType getValueElement() { + if (this.value == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationVariantCitationComponent.value"); + else if (Configuration.doAutoCreate()) + this.value = new StringType(); // bb + return this.value; + } + + public boolean hasValueElement() { + return this.value != null && !this.value.isEmpty(); + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); + } + + /** + * @param value {@link #value} (Used to describe the specific variation, such as version number or subpart specification.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value + */ + public CitationVariantCitationComponent setValueElement(StringType value) { + this.value = value; + return this; + } + + /** + * @return Used to describe the specific variation, such as version number or subpart specification. + */ + public String getValue() { + return this.value == null ? null : this.value.getValue(); + } + + /** + * @param value Used to describe the specific variation, such as version number or subpart specification. + */ + public CitationVariantCitationComponent setValue(String value) { + if (Utilities.noString(value)) + this.value = null; + else { + if (this.value == null) + this.value = new StringType(); + this.value.setValue(value); + } + return this; + } + + /** + * @return {@link #baseCitation} (Base citation.) + */ + public Reference getBaseCitation() { + if (this.baseCitation == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationVariantCitationComponent.baseCitation"); + else if (Configuration.doAutoCreate()) + this.baseCitation = new Reference(); // cc + return this.baseCitation; + } + + public boolean hasBaseCitation() { + return this.baseCitation != null && !this.baseCitation.isEmpty(); + } + + /** + * @param value {@link #baseCitation} (Base citation.) + */ + public CitationVariantCitationComponent setBaseCitation(Reference value) { + this.baseCitation = value; + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("type", "CodeableConcept", "Used to describe the reason for the variant citation, such as version or subpart specification.", 0, 1, type)); + children.add(new Property("value", "string", "Used to describe the specific variation, such as version number or subpart specification.", 0, 1, value)); + children.add(new Property("baseCitation", "Reference(Citation)", "Base citation.", 0, 1, baseCitation)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Used to describe the reason for the variant citation, such as version or subpart specification.", 0, 1, type); + case 111972721: /*value*/ return new Property("value", "string", "Used to describe the specific variation, such as version number or subpart specification.", 0, 1, value); + case 1182995672: /*baseCitation*/ return new Property("baseCitation", "Reference(Citation)", "Base citation.", 0, 1, baseCitation); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // StringType + case 1182995672: /*baseCitation*/ return this.baseCitation == null ? new Base[0] : new Base[] {this.baseCitation}; // Reference + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 111972721: // value + this.value = TypeConvertor.castToString(value); // StringType + return value; + case 1182995672: // baseCitation + this.baseCitation = TypeConvertor.castToReference(value); // Reference + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("value")) { + this.value = TypeConvertor.castToString(value); // StringType + } else if (name.equals("baseCitation")) { + this.baseCitation = TypeConvertor.castToReference(value); // Reference + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: return getType(); + case 111972721: return getValueElement(); + case 1182995672: return getBaseCitation(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"string"}; + case 1182995672: /*baseCitation*/ return new String[] {"Reference"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; + } + else if (name.equals("value")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.variantCitation.value"); + } + else if (name.equals("baseCitation")) { + this.baseCitation = new Reference(); + return this.baseCitation; + } + else + return super.addChild(name); + } + + public CitationVariantCitationComponent copy() { + CitationVariantCitationComponent dst = new CitationVariantCitationComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationVariantCitationComponent dst) { + super.copyValues(dst); + dst.type = type == null ? null : type.copy(); + dst.value = value == null ? null : value.copy(); + dst.baseCitation = baseCitation == null ? null : baseCitation.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationVariantCitationComponent)) + return false; + CitationVariantCitationComponent o = (CitationVariantCitationComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(value, o.value, true) && compareDeep(baseCitation, o.baseCitation, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationVariantCitationComponent)) + return false; + CitationVariantCitationComponent o = (CitationVariantCitationComponent) other_; + return compareValues(value, o.value, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value, baseCitation + ); + } + + public String fhirType() { + return "Citation.variantCitation"; + + } + + } + + @Block() + public static class CitationJournalComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Journal identifiers include ISSN, ISO Abbreviation and NLMuniqueID. + */ + @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Journal identifiers include ISSN, ISO Abbreviation and NLMuniqueID", formalDefinition="Journal identifiers include ISSN, ISO Abbreviation and NLMuniqueID." ) + protected List identifier; + + /** + * Place of publication of the journal. + */ + @Child(name = "country", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Place of publication of the journal", formalDefinition="Place of publication of the journal." ) + protected StringType country; + + /** + * The specific issue in which the cited article resides. + */ + @Child(name = "journalIssue", type = {}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The specific issue in which the cited article resides", formalDefinition="The specific issue in which the cited article resides." ) + protected CitationJournalJournalIssueComponent journalIssue; + + /** + * Journal title. + */ + @Child(name = "title", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Journal title", formalDefinition="Journal title." ) + protected StringType title; + + private static final long serialVersionUID = 565129283L; + + /** + * Constructor + */ + public CitationJournalComponent() { + super(); + } + + /** + * @return {@link #identifier} (Journal identifiers include ISSN, ISO Abbreviation and NLMuniqueID.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationJournalComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public CitationJournalComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + /** + * @return {@link #country} (Place of publication of the journal.). This is the underlying object with id, value and extensions. The accessor "getCountry" gives direct access to the value + */ + public StringType getCountryElement() { + if (this.country == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalComponent.country"); + else if (Configuration.doAutoCreate()) + this.country = new StringType(); // bb + return this.country; + } + + public boolean hasCountryElement() { + return this.country != null && !this.country.isEmpty(); + } + + public boolean hasCountry() { + return this.country != null && !this.country.isEmpty(); + } + + /** + * @param value {@link #country} (Place of publication of the journal.). This is the underlying object with id, value and extensions. The accessor "getCountry" gives direct access to the value + */ + public CitationJournalComponent setCountryElement(StringType value) { + this.country = value; + return this; + } + + /** + * @return Place of publication of the journal. + */ + public String getCountry() { + return this.country == null ? null : this.country.getValue(); + } + + /** + * @param value Place of publication of the journal. + */ + public CitationJournalComponent setCountry(String value) { + if (Utilities.noString(value)) + this.country = null; + else { + if (this.country == null) + this.country = new StringType(); + this.country.setValue(value); + } + return this; + } + + /** + * @return {@link #journalIssue} (The specific issue in which the cited article resides.) + */ + public CitationJournalJournalIssueComponent getJournalIssue() { + if (this.journalIssue == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalComponent.journalIssue"); + else if (Configuration.doAutoCreate()) + this.journalIssue = new CitationJournalJournalIssueComponent(); // cc + return this.journalIssue; + } + + public boolean hasJournalIssue() { + return this.journalIssue != null && !this.journalIssue.isEmpty(); + } + + /** + * @param value {@link #journalIssue} (The specific issue in which the cited article resides.) + */ + public CitationJournalComponent setJournalIssue(CitationJournalJournalIssueComponent value) { + this.journalIssue = value; + return this; + } + + /** + * @return {@link #title} (Journal title.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public StringType getTitleElement() { + if (this.title == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalComponent.title"); + else if (Configuration.doAutoCreate()) + this.title = new StringType(); // bb + return this.title; + } + + public boolean hasTitleElement() { + return this.title != null && !this.title.isEmpty(); + } + + public boolean hasTitle() { + return this.title != null && !this.title.isEmpty(); + } + + /** + * @param value {@link #title} (Journal title.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public CitationJournalComponent setTitleElement(StringType value) { + this.title = value; + return this; + } + + /** + * @return Journal title. + */ + public String getTitle() { + return this.title == null ? null : this.title.getValue(); + } + + /** + * @param value Journal title. + */ + public CitationJournalComponent setTitle(String value) { + if (Utilities.noString(value)) + this.title = null; + else { + if (this.title == null) + this.title = new StringType(); + this.title.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("identifier", "Identifier", "Journal identifiers include ISSN, ISO Abbreviation and NLMuniqueID.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("country", "string", "Place of publication of the journal.", 0, 1, country)); + children.add(new Property("journalIssue", "", "The specific issue in which the cited article resides.", 0, 1, journalIssue)); + children.add(new Property("title", "string", "Journal title.", 0, 1, title)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Journal identifiers include ISSN, ISO Abbreviation and NLMuniqueID.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 957831062: /*country*/ return new Property("country", "string", "Place of publication of the journal.", 0, 1, country); + case -716835870: /*journalIssue*/ return new Property("journalIssue", "", "The specific issue in which the cited article resides.", 0, 1, journalIssue); + case 110371416: /*title*/ return new Property("title", "string", "Journal title.", 0, 1, title); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 957831062: /*country*/ return this.country == null ? new Base[0] : new Base[] {this.country}; // StringType + case -716835870: /*journalIssue*/ return this.journalIssue == null ? new Base[0] : new Base[] {this.journalIssue}; // CitationJournalJournalIssueComponent + case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // StringType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case 957831062: // country + this.country = TypeConvertor.castToString(value); // StringType + return value; + case -716835870: // journalIssue + this.journalIssue = (CitationJournalJournalIssueComponent) value; // CitationJournalJournalIssueComponent + return value; + case 110371416: // title + this.title = TypeConvertor.castToString(value); // StringType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("country")) { + this.country = TypeConvertor.castToString(value); // StringType + } else if (name.equals("journalIssue")) { + this.journalIssue = (CitationJournalJournalIssueComponent) value; // CitationJournalJournalIssueComponent + } else if (name.equals("title")) { + this.title = TypeConvertor.castToString(value); // StringType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1618432855: return addIdentifier(); + case 957831062: return getCountryElement(); + case -716835870: return getJournalIssue(); + case 110371416: return getTitleElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 957831062: /*country*/ return new String[] {"string"}; + case -716835870: /*journalIssue*/ return new String[] {}; + case 110371416: /*title*/ return new String[] {"string"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("identifier")) { + return addIdentifier(); + } + else if (name.equals("country")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.journal.country"); + } + else if (name.equals("journalIssue")) { + this.journalIssue = new CitationJournalJournalIssueComponent(); + return this.journalIssue; + } + else if (name.equals("title")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.journal.title"); + } + else + return super.addChild(name); + } + + public CitationJournalComponent copy() { + CitationJournalComponent dst = new CitationJournalComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationJournalComponent dst) { + super.copyValues(dst); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + dst.country = country == null ? null : country.copy(); + dst.journalIssue = journalIssue == null ? null : journalIssue.copy(); + dst.title = title == null ? null : title.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationJournalComponent)) + return false; + CitationJournalComponent o = (CitationJournalComponent) other_; + return compareDeep(identifier, o.identifier, true) && compareDeep(country, o.country, true) && compareDeep(journalIssue, o.journalIssue, true) + && compareDeep(title, o.title, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationJournalComponent)) + return false; + CitationJournalComponent o = (CitationJournalComponent) other_; + return compareValues(country, o.country, true) && compareValues(title, o.title, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, country, journalIssue + , title); + } + + public String fhirType() { + return "Citation.journal"; + + } + + } + + @Block() + public static class CitationJournalJournalIssueComponent extends BackboneElement implements IBaseBackboneElement { + /** + * NLM codes Internet or Print. + */ + @Child(name = "citedMedium", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="NLM codes Internet or Print", formalDefinition="NLM codes Internet or Print." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/journal-issue-medium") + protected CodeableConcept citedMedium; + + /** + * Volume number of journal in which the article is published. + */ + @Child(name = "volume", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Volume number of journal in which the article is published", formalDefinition="Volume number of journal in which the article is published." ) + protected StringType volume; + + /** + * Issue, part or supplement of journal in which the article is published. + */ + @Child(name = "issue", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Issue, part or supplement of journal in which the article is published", formalDefinition="Issue, part or supplement of journal in which the article is published." ) + protected StringType issue; + + /** + * Date on which the issue of the journal was published. + */ + @Child(name = "publicationDate", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Date on which the issue of the journal was published", formalDefinition="Date on which the issue of the journal was published." ) + protected StringType publicationDate; + + private static final long serialVersionUID = -1343937439L; + + /** + * Constructor + */ + public CitationJournalJournalIssueComponent() { + super(); + } + + /** + * @return {@link #citedMedium} (NLM codes Internet or Print.) + */ + public CodeableConcept getCitedMedium() { + if (this.citedMedium == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalJournalIssueComponent.citedMedium"); + else if (Configuration.doAutoCreate()) + this.citedMedium = new CodeableConcept(); // cc + return this.citedMedium; + } + + public boolean hasCitedMedium() { + return this.citedMedium != null && !this.citedMedium.isEmpty(); + } + + /** + * @param value {@link #citedMedium} (NLM codes Internet or Print.) + */ + public CitationJournalJournalIssueComponent setCitedMedium(CodeableConcept value) { + this.citedMedium = value; + return this; + } + + /** + * @return {@link #volume} (Volume number of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getVolume" gives direct access to the value + */ + public StringType getVolumeElement() { + if (this.volume == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalJournalIssueComponent.volume"); + else if (Configuration.doAutoCreate()) + this.volume = new StringType(); // bb + return this.volume; + } + + public boolean hasVolumeElement() { + return this.volume != null && !this.volume.isEmpty(); + } + + public boolean hasVolume() { + return this.volume != null && !this.volume.isEmpty(); + } + + /** + * @param value {@link #volume} (Volume number of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getVolume" gives direct access to the value + */ + public CitationJournalJournalIssueComponent setVolumeElement(StringType value) { + this.volume = value; + return this; + } + + /** + * @return Volume number of journal in which the article is published. + */ + public String getVolume() { + return this.volume == null ? null : this.volume.getValue(); + } + + /** + * @param value Volume number of journal in which the article is published. + */ + public CitationJournalJournalIssueComponent setVolume(String value) { + if (Utilities.noString(value)) + this.volume = null; + else { + if (this.volume == null) + this.volume = new StringType(); + this.volume.setValue(value); + } + return this; + } + + /** + * @return {@link #issue} (Issue, part or supplement of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getIssue" gives direct access to the value + */ + public StringType getIssueElement() { + if (this.issue == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalJournalIssueComponent.issue"); + else if (Configuration.doAutoCreate()) + this.issue = new StringType(); // bb + return this.issue; + } + + public boolean hasIssueElement() { + return this.issue != null && !this.issue.isEmpty(); + } + + public boolean hasIssue() { + return this.issue != null && !this.issue.isEmpty(); + } + + /** + * @param value {@link #issue} (Issue, part or supplement of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getIssue" gives direct access to the value + */ + public CitationJournalJournalIssueComponent setIssueElement(StringType value) { + this.issue = value; + return this; + } + + /** + * @return Issue, part or supplement of journal in which the article is published. + */ + public String getIssue() { + return this.issue == null ? null : this.issue.getValue(); + } + + /** + * @param value Issue, part or supplement of journal in which the article is published. + */ + public CitationJournalJournalIssueComponent setIssue(String value) { + if (Utilities.noString(value)) + this.issue = null; + else { + if (this.issue == null) + this.issue = new StringType(); + this.issue.setValue(value); + } + return this; + } + + /** + * @return {@link #publicationDate} (Date on which the issue of the journal was published.). This is the underlying object with id, value and extensions. The accessor "getPublicationDate" gives direct access to the value + */ + public StringType getPublicationDateElement() { + if (this.publicationDate == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationJournalJournalIssueComponent.publicationDate"); + else if (Configuration.doAutoCreate()) + this.publicationDate = new StringType(); // bb + return this.publicationDate; + } + + public boolean hasPublicationDateElement() { + return this.publicationDate != null && !this.publicationDate.isEmpty(); + } + + public boolean hasPublicationDate() { + return this.publicationDate != null && !this.publicationDate.isEmpty(); + } + + /** + * @param value {@link #publicationDate} (Date on which the issue of the journal was published.). This is the underlying object with id, value and extensions. The accessor "getPublicationDate" gives direct access to the value + */ + public CitationJournalJournalIssueComponent setPublicationDateElement(StringType value) { + this.publicationDate = value; + return this; + } + + /** + * @return Date on which the issue of the journal was published. + */ + public String getPublicationDate() { + return this.publicationDate == null ? null : this.publicationDate.getValue(); + } + + /** + * @param value Date on which the issue of the journal was published. + */ + public CitationJournalJournalIssueComponent setPublicationDate(String value) { + if (Utilities.noString(value)) + this.publicationDate = null; + else { + if (this.publicationDate == null) + this.publicationDate = new StringType(); + this.publicationDate.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("citedMedium", "CodeableConcept", "NLM codes Internet or Print.", 0, 1, citedMedium)); + children.add(new Property("volume", "string", "Volume number of journal in which the article is published.", 0, 1, volume)); + children.add(new Property("issue", "string", "Issue, part or supplement of journal in which the article is published.", 0, 1, issue)); + children.add(new Property("publicationDate", "string", "Date on which the issue of the journal was published.", 0, 1, publicationDate)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 612116418: /*citedMedium*/ return new Property("citedMedium", "CodeableConcept", "NLM codes Internet or Print.", 0, 1, citedMedium); + case -810883302: /*volume*/ return new Property("volume", "string", "Volume number of journal in which the article is published.", 0, 1, volume); + case 100509913: /*issue*/ return new Property("issue", "string", "Issue, part or supplement of journal in which the article is published.", 0, 1, issue); + case 1470566394: /*publicationDate*/ return new Property("publicationDate", "string", "Date on which the issue of the journal was published.", 0, 1, publicationDate); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 612116418: /*citedMedium*/ return this.citedMedium == null ? new Base[0] : new Base[] {this.citedMedium}; // CodeableConcept + case -810883302: /*volume*/ return this.volume == null ? new Base[0] : new Base[] {this.volume}; // StringType + case 100509913: /*issue*/ return this.issue == null ? new Base[0] : new Base[] {this.issue}; // StringType + case 1470566394: /*publicationDate*/ return this.publicationDate == null ? new Base[0] : new Base[] {this.publicationDate}; // StringType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 612116418: // citedMedium + this.citedMedium = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -810883302: // volume + this.volume = TypeConvertor.castToString(value); // StringType + return value; + case 100509913: // issue + this.issue = TypeConvertor.castToString(value); // StringType + return value; + case 1470566394: // publicationDate + this.publicationDate = TypeConvertor.castToString(value); // StringType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("citedMedium")) { + this.citedMedium = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("volume")) { + this.volume = TypeConvertor.castToString(value); // StringType + } else if (name.equals("issue")) { + this.issue = TypeConvertor.castToString(value); // StringType + } else if (name.equals("publicationDate")) { + this.publicationDate = TypeConvertor.castToString(value); // StringType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 612116418: return getCitedMedium(); + case -810883302: return getVolumeElement(); + case 100509913: return getIssueElement(); + case 1470566394: return getPublicationDateElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 612116418: /*citedMedium*/ return new String[] {"CodeableConcept"}; + case -810883302: /*volume*/ return new String[] {"string"}; + case 100509913: /*issue*/ return new String[] {"string"}; + case 1470566394: /*publicationDate*/ return new String[] {"string"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("citedMedium")) { + this.citedMedium = new CodeableConcept(); + return this.citedMedium; + } + else if (name.equals("volume")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.journal.journalIssue.volume"); + } + else if (name.equals("issue")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.journal.journalIssue.issue"); + } + else if (name.equals("publicationDate")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.journal.journalIssue.publicationDate"); + } + else + return super.addChild(name); + } + + public CitationJournalJournalIssueComponent copy() { + CitationJournalJournalIssueComponent dst = new CitationJournalJournalIssueComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationJournalJournalIssueComponent dst) { + super.copyValues(dst); + dst.citedMedium = citedMedium == null ? null : citedMedium.copy(); + dst.volume = volume == null ? null : volume.copy(); + dst.issue = issue == null ? null : issue.copy(); + dst.publicationDate = publicationDate == null ? null : publicationDate.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationJournalJournalIssueComponent)) + return false; + CitationJournalJournalIssueComponent o = (CitationJournalJournalIssueComponent) other_; + return compareDeep(citedMedium, o.citedMedium, true) && compareDeep(volume, o.volume, true) && compareDeep(issue, o.issue, true) + && compareDeep(publicationDate, o.publicationDate, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationJournalJournalIssueComponent)) + return false; + CitationJournalJournalIssueComponent o = (CitationJournalJournalIssueComponent) other_; + return compareValues(volume, o.volume, true) && compareValues(issue, o.issue, true) && compareValues(publicationDate, o.publicationDate, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(citedMedium, volume, issue + , publicationDate); + } + + public String fhirType() { + return "Citation.journal.journalIssue"; + + } + + } + + @Block() + public static class CitationAlternativeTitleComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used to express the reason and specific aspect for the variant title, such as language and specific language. + */ + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to express the reason and specific aspect for the variant title, such as language", formalDefinition="Used to express the reason and specific aspect for the variant title, such as language and specific language." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/alternative-title-type") + protected CodeableConcept type; + + /** + * Used to express the specific language. + */ + @Child(name = "language", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to express the specific language", formalDefinition="Used to express the specific language." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/languages") + protected CodeableConcept language; + + /** + * Full variant title of the article. + */ + @Child(name = "title", type = {MarkdownType.class}, order=3, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="Full variant title of the article", formalDefinition="Full variant title of the article." ) + protected MarkdownType title; + + private static final long serialVersionUID = -552795869L; + + /** + * Constructor + */ + public CitationAlternativeTitleComponent() { + super(); + } + + /** + * Constructor + */ + public CitationAlternativeTitleComponent(String title) { + super(); + this.setTitle(title); + } + + /** + * @return {@link #type} (Used to express the reason and specific aspect for the variant title, such as language and specific language.) + */ + public CodeableConcept getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeTitleComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableConcept(); // cc + return this.type; + } + + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); + } + + /** + * @param value {@link #type} (Used to express the reason and specific aspect for the variant title, such as language and specific language.) + */ + public CitationAlternativeTitleComponent setType(CodeableConcept value) { + this.type = value; + return this; + } + + /** + * @return {@link #language} (Used to express the specific language.) + */ + public CodeableConcept getLanguage() { + if (this.language == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeTitleComponent.language"); + else if (Configuration.doAutoCreate()) + this.language = new CodeableConcept(); // cc + return this.language; + } + + public boolean hasLanguage() { + return this.language != null && !this.language.isEmpty(); + } + + /** + * @param value {@link #language} (Used to express the specific language.) + */ + public CitationAlternativeTitleComponent setLanguage(CodeableConcept value) { + this.language = value; + return this; + } + + /** + * @return {@link #title} (Full variant title of the article.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public MarkdownType getTitleElement() { + if (this.title == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeTitleComponent.title"); + else if (Configuration.doAutoCreate()) + this.title = new MarkdownType(); // bb + return this.title; + } + + public boolean hasTitleElement() { + return this.title != null && !this.title.isEmpty(); + } + + public boolean hasTitle() { + return this.title != null && !this.title.isEmpty(); + } + + /** + * @param value {@link #title} (Full variant title of the article.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public CitationAlternativeTitleComponent setTitleElement(MarkdownType value) { + this.title = value; + return this; + } + + /** + * @return Full variant title of the article. + */ + public String getTitle() { + return this.title == null ? null : this.title.getValue(); + } + + /** + * @param value Full variant title of the article. + */ + public CitationAlternativeTitleComponent setTitle(String value) { + if (this.title == null) + this.title = new MarkdownType(); + this.title.setValue(value); + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("type", "CodeableConcept", "Used to express the reason and specific aspect for the variant title, such as language and specific language.", 0, 1, type)); + children.add(new Property("language", "CodeableConcept", "Used to express the specific language.", 0, 1, language)); + children.add(new Property("title", "markdown", "Full variant title of the article.", 0, 1, title)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Used to express the reason and specific aspect for the variant title, such as language and specific language.", 0, 1, type); + case -1613589672: /*language*/ return new Property("language", "CodeableConcept", "Used to express the specific language.", 0, 1, language); + case 110371416: /*title*/ return new Property("title", "markdown", "Full variant title of the article.", 0, 1, title); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case -1613589672: /*language*/ return this.language == null ? new Base[0] : new Base[] {this.language}; // CodeableConcept + case 110371416: /*title*/ return this.title == null ? new Base[0] : new Base[] {this.title}; // MarkdownType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -1613589672: // language + this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 110371416: // title + this.title = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("language")) { + this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("title")) { + this.title = TypeConvertor.castToMarkdown(value); // MarkdownType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: return getType(); + case -1613589672: return getLanguage(); + case 110371416: return getTitleElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case -1613589672: /*language*/ return new String[] {"CodeableConcept"}; + case 110371416: /*title*/ return new String[] {"markdown"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; + } + else if (name.equals("language")) { + this.language = new CodeableConcept(); + return this.language; + } + else if (name.equals("title")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeTitle.title"); + } + else + return super.addChild(name); + } + + public CitationAlternativeTitleComponent copy() { + CitationAlternativeTitleComponent dst = new CitationAlternativeTitleComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAlternativeTitleComponent dst) { + super.copyValues(dst); + dst.type = type == null ? null : type.copy(); + dst.language = language == null ? null : language.copy(); + dst.title = title == null ? null : title.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAlternativeTitleComponent)) + return false; + CitationAlternativeTitleComponent o = (CitationAlternativeTitleComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(language, o.language, true) && compareDeep(title, o.title, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAlternativeTitleComponent)) + return false; + CitationAlternativeTitleComponent o = (CitationAlternativeTitleComponent) other_; + return compareValues(title, o.title, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, language, title); + } + + public String fhirType() { + return "Citation.alternativeTitle"; + + } + + } + + @Block() + public static class CitationPaginationComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used for full display of pagination. + */ + @Child(name = "pageString", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for full display of pagination", formalDefinition="Used for full display of pagination." ) + protected StringType pageString; + + /** + * Used for isolated representation of first page. + */ + @Child(name = "firstPage", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for isolated representation of first page", formalDefinition="Used for isolated representation of first page." ) + protected StringType firstPage; + + /** + * Used for isolated representation of last page. + */ + @Child(name = "lastPage", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for isolated representation of last page", formalDefinition="Used for isolated representation of last page." ) + protected StringType lastPage; + + private static final long serialVersionUID = -690699049L; + + /** + * Constructor + */ + public CitationPaginationComponent() { + super(); + } + + /** + * @return {@link #pageString} (Used for full display of pagination.). This is the underlying object with id, value and extensions. The accessor "getPageString" gives direct access to the value + */ + public StringType getPageStringElement() { + if (this.pageString == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationPaginationComponent.pageString"); + else if (Configuration.doAutoCreate()) + this.pageString = new StringType(); // bb + return this.pageString; + } + + public boolean hasPageStringElement() { + return this.pageString != null && !this.pageString.isEmpty(); + } + + public boolean hasPageString() { + return this.pageString != null && !this.pageString.isEmpty(); + } + + /** + * @param value {@link #pageString} (Used for full display of pagination.). This is the underlying object with id, value and extensions. The accessor "getPageString" gives direct access to the value + */ + public CitationPaginationComponent setPageStringElement(StringType value) { + this.pageString = value; + return this; + } + + /** + * @return Used for full display of pagination. + */ + public String getPageString() { + return this.pageString == null ? null : this.pageString.getValue(); + } + + /** + * @param value Used for full display of pagination. + */ + public CitationPaginationComponent setPageString(String value) { + if (Utilities.noString(value)) + this.pageString = null; + else { + if (this.pageString == null) + this.pageString = new StringType(); + this.pageString.setValue(value); + } + return this; + } + + /** + * @return {@link #firstPage} (Used for isolated representation of first page.). This is the underlying object with id, value and extensions. The accessor "getFirstPage" gives direct access to the value + */ + public StringType getFirstPageElement() { + if (this.firstPage == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationPaginationComponent.firstPage"); + else if (Configuration.doAutoCreate()) + this.firstPage = new StringType(); // bb + return this.firstPage; + } + + public boolean hasFirstPageElement() { + return this.firstPage != null && !this.firstPage.isEmpty(); + } + + public boolean hasFirstPage() { + return this.firstPage != null && !this.firstPage.isEmpty(); + } + + /** + * @param value {@link #firstPage} (Used for isolated representation of first page.). This is the underlying object with id, value and extensions. The accessor "getFirstPage" gives direct access to the value + */ + public CitationPaginationComponent setFirstPageElement(StringType value) { + this.firstPage = value; + return this; + } + + /** + * @return Used for isolated representation of first page. + */ + public String getFirstPage() { + return this.firstPage == null ? null : this.firstPage.getValue(); + } + + /** + * @param value Used for isolated representation of first page. + */ + public CitationPaginationComponent setFirstPage(String value) { + if (Utilities.noString(value)) + this.firstPage = null; + else { + if (this.firstPage == null) + this.firstPage = new StringType(); + this.firstPage.setValue(value); + } + return this; + } + + /** + * @return {@link #lastPage} (Used for isolated representation of last page.). This is the underlying object with id, value and extensions. The accessor "getLastPage" gives direct access to the value + */ + public StringType getLastPageElement() { + if (this.lastPage == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationPaginationComponent.lastPage"); + else if (Configuration.doAutoCreate()) + this.lastPage = new StringType(); // bb + return this.lastPage; + } + + public boolean hasLastPageElement() { + return this.lastPage != null && !this.lastPage.isEmpty(); + } + + public boolean hasLastPage() { + return this.lastPage != null && !this.lastPage.isEmpty(); + } + + /** + * @param value {@link #lastPage} (Used for isolated representation of last page.). This is the underlying object with id, value and extensions. The accessor "getLastPage" gives direct access to the value + */ + public CitationPaginationComponent setLastPageElement(StringType value) { + this.lastPage = value; + return this; + } + + /** + * @return Used for isolated representation of last page. + */ + public String getLastPage() { + return this.lastPage == null ? null : this.lastPage.getValue(); + } + + /** + * @param value Used for isolated representation of last page. + */ + public CitationPaginationComponent setLastPage(String value) { + if (Utilities.noString(value)) + this.lastPage = null; + else { + if (this.lastPage == null) + this.lastPage = new StringType(); + this.lastPage.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("pageString", "string", "Used for full display of pagination.", 0, 1, pageString)); + children.add(new Property("firstPage", "string", "Used for isolated representation of first page.", 0, 1, firstPage)); + children.add(new Property("lastPage", "string", "Used for isolated representation of last page.", 0, 1, lastPage)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 1287145344: /*pageString*/ return new Property("pageString", "string", "Used for full display of pagination.", 0, 1, pageString); + case 132895071: /*firstPage*/ return new Property("firstPage", "string", "Used for isolated representation of first page.", 0, 1, firstPage); + case -1459540411: /*lastPage*/ return new Property("lastPage", "string", "Used for isolated representation of last page.", 0, 1, lastPage); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 1287145344: /*pageString*/ return this.pageString == null ? new Base[0] : new Base[] {this.pageString}; // StringType + case 132895071: /*firstPage*/ return this.firstPage == null ? new Base[0] : new Base[] {this.firstPage}; // StringType + case -1459540411: /*lastPage*/ return this.lastPage == null ? new Base[0] : new Base[] {this.lastPage}; // StringType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 1287145344: // pageString + this.pageString = TypeConvertor.castToString(value); // StringType + return value; + case 132895071: // firstPage + this.firstPage = TypeConvertor.castToString(value); // StringType + return value; + case -1459540411: // lastPage + this.lastPage = TypeConvertor.castToString(value); // StringType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("pageString")) { + this.pageString = TypeConvertor.castToString(value); // StringType + } else if (name.equals("firstPage")) { + this.firstPage = TypeConvertor.castToString(value); // StringType + } else if (name.equals("lastPage")) { + this.lastPage = TypeConvertor.castToString(value); // StringType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1287145344: return getPageStringElement(); + case 132895071: return getFirstPageElement(); + case -1459540411: return getLastPageElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1287145344: /*pageString*/ return new String[] {"string"}; + case 132895071: /*firstPage*/ return new String[] {"string"}; + case -1459540411: /*lastPage*/ return new String[] {"string"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("pageString")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.pagination.pageString"); + } + else if (name.equals("firstPage")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.pagination.firstPage"); + } + else if (name.equals("lastPage")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.pagination.lastPage"); + } + else + return super.addChild(name); + } + + public CitationPaginationComponent copy() { + CitationPaginationComponent dst = new CitationPaginationComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationPaginationComponent dst) { + super.copyValues(dst); + dst.pageString = pageString == null ? null : pageString.copy(); + dst.firstPage = firstPage == null ? null : firstPage.copy(); + dst.lastPage = lastPage == null ? null : lastPage.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationPaginationComponent)) + return false; + CitationPaginationComponent o = (CitationPaginationComponent) other_; + return compareDeep(pageString, o.pageString, true) && compareDeep(firstPage, o.firstPage, true) + && compareDeep(lastPage, o.lastPage, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationPaginationComponent)) + return false; + CitationPaginationComponent o = (CitationPaginationComponent) other_; + return compareValues(pageString, o.pageString, true) && compareValues(firstPage, o.firstPage, true) + && compareValues(lastPage, o.lastPage, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(pageString, firstPage, lastPage + ); + } + + public String fhirType() { + return "Citation.pagination"; + + } + + } + + @Block() + public static class CitationArticleUrlComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Code the reason for different URLs, eg abstract and full-text. + */ + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Code the reason for different URLs, eg abstract and full-text", formalDefinition="Code the reason for different URLs, eg abstract and full-text." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/article-url-type") + protected CodeableConcept type; + + /** + * The specific URL. + */ + @Child(name = "url", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The specific URL", formalDefinition="The specific URL." ) + protected UriType url; + + private static final long serialVersionUID = 397204034L; + + /** + * Constructor + */ + public CitationArticleUrlComponent() { + super(); + } + + /** + * @return {@link #type} (Code the reason for different URLs, eg abstract and full-text.) + */ + public CodeableConcept getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationArticleUrlComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableConcept(); // cc + return this.type; + } + + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); + } + + /** + * @param value {@link #type} (Code the reason for different URLs, eg abstract and full-text.) + */ + public CitationArticleUrlComponent setType(CodeableConcept value) { + this.type = value; + return this; + } + + /** + * @return {@link #url} (The specific URL.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + */ + public UriType getUrlElement() { + if (this.url == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationArticleUrlComponent.url"); + else if (Configuration.doAutoCreate()) + this.url = new UriType(); // bb + return this.url; + } + + public boolean hasUrlElement() { + return this.url != null && !this.url.isEmpty(); + } + + public boolean hasUrl() { + return this.url != null && !this.url.isEmpty(); + } + + /** + * @param value {@link #url} (The specific URL.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + */ + public CitationArticleUrlComponent setUrlElement(UriType value) { + this.url = value; + return this; + } + + /** + * @return The specific URL. + */ + public String getUrl() { + return this.url == null ? null : this.url.getValue(); + } + + /** + * @param value The specific URL. + */ + public CitationArticleUrlComponent setUrl(String value) { + if (Utilities.noString(value)) + this.url = null; + else { + if (this.url == null) + this.url = new UriType(); + this.url.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("type", "CodeableConcept", "Code the reason for different URLs, eg abstract and full-text.", 0, 1, type)); + children.add(new Property("url", "uri", "The specific URL.", 0, 1, url)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Code the reason for different URLs, eg abstract and full-text.", 0, 1, type); + case 116079: /*url*/ return new Property("url", "uri", "The specific URL.", 0, 1, url); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 116079: // url + this.url = TypeConvertor.castToUri(value); // UriType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("url")) { + this.url = TypeConvertor.castToUri(value); // UriType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: return getType(); + case 116079: return getUrlElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 116079: /*url*/ return new String[] {"uri"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; + } + else if (name.equals("url")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.articleUrl.url"); + } + else + return super.addChild(name); + } + + public CitationArticleUrlComponent copy() { + CitationArticleUrlComponent dst = new CitationArticleUrlComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationArticleUrlComponent dst) { + super.copyValues(dst); + dst.type = type == null ? null : type.copy(); + dst.url = url == null ? null : url.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationArticleUrlComponent)) + return false; + CitationArticleUrlComponent o = (CitationArticleUrlComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(url, o.url, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationArticleUrlComponent)) + return false; + CitationArticleUrlComponent o = (CitationArticleUrlComponent) other_; + return compareValues(url, o.url, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, url); + } + + public String fhirType() { + return "Citation.articleUrl"; + + } + + } + + @Block() + public static class CitationAlternativeAbstractComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used to express the reason for the variant abstract, such as language. + */ + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to express the reason for the variant abstract, such as language", formalDefinition="Used to express the reason for the variant abstract, such as language." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/alternative-title-type") + protected CodeableConcept type; + + /** + * Used to express the specific language. + */ + @Child(name = "language", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to express the specific language", formalDefinition="Used to express the specific language." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/languages") + protected CodeableConcept language; + + /** + * Full variant abstract of the article. + */ + @Child(name = "abstract", type = {MarkdownType.class}, order=3, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="Full variant abstract of the article", formalDefinition="Full variant abstract of the article." ) + protected MarkdownType abstract_; + + /** + * Copyright information for the abstract text. + */ + @Child(name = "abstractCopyright", type = {MarkdownType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Variant abstract copyright", formalDefinition="Copyright information for the abstract text." ) + protected MarkdownType abstractCopyright; + + private static final long serialVersionUID = 1805874682L; + + /** + * Constructor + */ + public CitationAlternativeAbstractComponent() { + super(); + } + + /** + * Constructor + */ + public CitationAlternativeAbstractComponent(String abstract_) { + super(); + this.setAbstract(abstract_); + } + + /** + * @return {@link #type} (Used to express the reason for the variant abstract, such as language.) + */ + public CodeableConcept getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeAbstractComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableConcept(); // cc + return this.type; + } + + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); + } + + /** + * @param value {@link #type} (Used to express the reason for the variant abstract, such as language.) + */ + public CitationAlternativeAbstractComponent setType(CodeableConcept value) { + this.type = value; + return this; + } + + /** + * @return {@link #language} (Used to express the specific language.) + */ + public CodeableConcept getLanguage() { + if (this.language == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeAbstractComponent.language"); + else if (Configuration.doAutoCreate()) + this.language = new CodeableConcept(); // cc + return this.language; + } + + public boolean hasLanguage() { + return this.language != null && !this.language.isEmpty(); + } + + /** + * @param value {@link #language} (Used to express the specific language.) + */ + public CitationAlternativeAbstractComponent setLanguage(CodeableConcept value) { + this.language = value; + return this; + } + + /** + * @return {@link #abstract_} (Full variant abstract of the article.). This is the underlying object with id, value and extensions. The accessor "getAbstract" gives direct access to the value + */ + public MarkdownType getAbstractElement() { + if (this.abstract_ == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeAbstractComponent.abstract_"); + else if (Configuration.doAutoCreate()) + this.abstract_ = new MarkdownType(); // bb + return this.abstract_; + } + + public boolean hasAbstractElement() { + return this.abstract_ != null && !this.abstract_.isEmpty(); + } + + public boolean hasAbstract() { + return this.abstract_ != null && !this.abstract_.isEmpty(); + } + + /** + * @param value {@link #abstract_} (Full variant abstract of the article.). This is the underlying object with id, value and extensions. The accessor "getAbstract" gives direct access to the value + */ + public CitationAlternativeAbstractComponent setAbstractElement(MarkdownType value) { + this.abstract_ = value; + return this; + } + + /** + * @return Full variant abstract of the article. + */ + public String getAbstract() { + return this.abstract_ == null ? null : this.abstract_.getValue(); + } + + /** + * @param value Full variant abstract of the article. + */ + public CitationAlternativeAbstractComponent setAbstract(String value) { + if (this.abstract_ == null) + this.abstract_ = new MarkdownType(); + this.abstract_.setValue(value); + return this; + } + + /** + * @return {@link #abstractCopyright} (Copyright information for the abstract text.). This is the underlying object with id, value and extensions. The accessor "getAbstractCopyright" gives direct access to the value + */ + public MarkdownType getAbstractCopyrightElement() { + if (this.abstractCopyright == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeAbstractComponent.abstractCopyright"); + else if (Configuration.doAutoCreate()) + this.abstractCopyright = new MarkdownType(); // bb + return this.abstractCopyright; + } + + public boolean hasAbstractCopyrightElement() { + return this.abstractCopyright != null && !this.abstractCopyright.isEmpty(); + } + + public boolean hasAbstractCopyright() { + return this.abstractCopyright != null && !this.abstractCopyright.isEmpty(); + } + + /** + * @param value {@link #abstractCopyright} (Copyright information for the abstract text.). This is the underlying object with id, value and extensions. The accessor "getAbstractCopyright" gives direct access to the value + */ + public CitationAlternativeAbstractComponent setAbstractCopyrightElement(MarkdownType value) { + this.abstractCopyright = value; + return this; + } + + /** + * @return Copyright information for the abstract text. + */ + public String getAbstractCopyright() { + return this.abstractCopyright == null ? null : this.abstractCopyright.getValue(); + } + + /** + * @param value Copyright information for the abstract text. + */ + public CitationAlternativeAbstractComponent setAbstractCopyright(String value) { + if (value == null) + this.abstractCopyright = null; + else { + if (this.abstractCopyright == null) + this.abstractCopyright = new MarkdownType(); + this.abstractCopyright.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("type", "CodeableConcept", "Used to express the reason for the variant abstract, such as language.", 0, 1, type)); + children.add(new Property("language", "CodeableConcept", "Used to express the specific language.", 0, 1, language)); + children.add(new Property("abstract", "markdown", "Full variant abstract of the article.", 0, 1, abstract_)); + children.add(new Property("abstractCopyright", "markdown", "Copyright information for the abstract text.", 0, 1, abstractCopyright)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Used to express the reason for the variant abstract, such as language.", 0, 1, type); + case -1613589672: /*language*/ return new Property("language", "CodeableConcept", "Used to express the specific language.", 0, 1, language); + case 1732898850: /*abstract*/ return new Property("abstract", "markdown", "Full variant abstract of the article.", 0, 1, abstract_); + case -656627259: /*abstractCopyright*/ return new Property("abstractCopyright", "markdown", "Copyright information for the abstract text.", 0, 1, abstractCopyright); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case -1613589672: /*language*/ return this.language == null ? new Base[0] : new Base[] {this.language}; // CodeableConcept + case 1732898850: /*abstract*/ return this.abstract_ == null ? new Base[0] : new Base[] {this.abstract_}; // MarkdownType + case -656627259: /*abstractCopyright*/ return this.abstractCopyright == null ? new Base[0] : new Base[] {this.abstractCopyright}; // MarkdownType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -1613589672: // language + this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 1732898850: // abstract + this.abstract_ = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + case -656627259: // abstractCopyright + this.abstractCopyright = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("language")) { + this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("abstract")) { + this.abstract_ = TypeConvertor.castToMarkdown(value); // MarkdownType + } else if (name.equals("abstractCopyright")) { + this.abstractCopyright = TypeConvertor.castToMarkdown(value); // MarkdownType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: return getType(); + case -1613589672: return getLanguage(); + case 1732898850: return getAbstractElement(); + case -656627259: return getAbstractCopyrightElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case -1613589672: /*language*/ return new String[] {"CodeableConcept"}; + case 1732898850: /*abstract*/ return new String[] {"markdown"}; + case -656627259: /*abstractCopyright*/ return new String[] {"markdown"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; + } + else if (name.equals("language")) { + this.language = new CodeableConcept(); + return this.language; + } + else if (name.equals("abstract")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeAbstract.abstract"); + } + else if (name.equals("abstractCopyright")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeAbstract.abstractCopyright"); + } + else + return super.addChild(name); + } + + public CitationAlternativeAbstractComponent copy() { + CitationAlternativeAbstractComponent dst = new CitationAlternativeAbstractComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAlternativeAbstractComponent dst) { + super.copyValues(dst); + dst.type = type == null ? null : type.copy(); + dst.language = language == null ? null : language.copy(); + dst.abstract_ = abstract_ == null ? null : abstract_.copy(); + dst.abstractCopyright = abstractCopyright == null ? null : abstractCopyright.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAlternativeAbstractComponent)) + return false; + CitationAlternativeAbstractComponent o = (CitationAlternativeAbstractComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(language, o.language, true) && compareDeep(abstract_, o.abstract_, true) + && compareDeep(abstractCopyright, o.abstractCopyright, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAlternativeAbstractComponent)) + return false; + CitationAlternativeAbstractComponent o = (CitationAlternativeAbstractComponent) other_; + return compareValues(abstract_, o.abstract_, true) && compareValues(abstractCopyright, o.abstractCopyright, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, language, abstract_ + , abstractCopyright); + } + + public String fhirType() { + return "Citation.alternativeAbstract"; + + } + + } + + @Block() + public static class CitationAuthorListComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Indicates if the list includes all authors, else “et al” should be appended for display. + */ + @Child(name = "complete", type = {BooleanType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Indicates if the list includes all authors, else “et al” should be appended for display", formalDefinition="Indicates if the list includes all authors, else “et al” should be appended for display." ) + protected BooleanType complete; + + /** + * An individual entity named in the author list. + */ + @Child(name = "author", type = {}, order=2, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="An individual entity named in the author list", formalDefinition="An individual entity named in the author list." ) + protected List author; + + private static final long serialVersionUID = -204175482L; + + /** + * Constructor + */ + public CitationAuthorListComponent() { + super(); + } + + /** + * Constructor + */ + public CitationAuthorListComponent(CitationAuthorListAuthorComponent author) { + super(); + this.addAuthor(author); + } + + /** + * @return {@link #complete} (Indicates if the list includes all authors, else “et al” should be appended for display.). This is the underlying object with id, value and extensions. The accessor "getComplete" gives direct access to the value + */ + public BooleanType getCompleteElement() { + if (this.complete == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListComponent.complete"); + else if (Configuration.doAutoCreate()) + this.complete = new BooleanType(); // bb + return this.complete; + } + + public boolean hasCompleteElement() { + return this.complete != null && !this.complete.isEmpty(); + } + + public boolean hasComplete() { + return this.complete != null && !this.complete.isEmpty(); + } + + /** + * @param value {@link #complete} (Indicates if the list includes all authors, else “et al” should be appended for display.). This is the underlying object with id, value and extensions. The accessor "getComplete" gives direct access to the value + */ + public CitationAuthorListComponent setCompleteElement(BooleanType value) { + this.complete = value; + return this; + } + + /** + * @return Indicates if the list includes all authors, else “et al” should be appended for display. + */ + public boolean getComplete() { + return this.complete == null || this.complete.isEmpty() ? false : this.complete.getValue(); + } + + /** + * @param value Indicates if the list includes all authors, else “et al” should be appended for display. + */ + public CitationAuthorListComponent setComplete(boolean value) { + if (this.complete == null) + this.complete = new BooleanType(); + this.complete.setValue(value); + return this; + } + + /** + * @return {@link #author} (An individual entity named in the author list.) + */ + public List getAuthor() { + if (this.author == null) + this.author = new ArrayList(); + return this.author; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationAuthorListComponent setAuthor(List theAuthor) { + this.author = theAuthor; + return this; + } + + public boolean hasAuthor() { + if (this.author == null) + return false; + for (CitationAuthorListAuthorComponent item : this.author) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationAuthorListAuthorComponent addAuthor() { //3 + CitationAuthorListAuthorComponent t = new CitationAuthorListAuthorComponent(); + if (this.author == null) + this.author = new ArrayList(); + this.author.add(t); + return t; + } + + public CitationAuthorListComponent addAuthor(CitationAuthorListAuthorComponent t) { //3 + if (t == null) + return this; + if (this.author == null) + this.author = new ArrayList(); + this.author.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #author}, creating it if it does not already exist {3} + */ + public CitationAuthorListAuthorComponent getAuthorFirstRep() { + if (getAuthor().isEmpty()) { + addAuthor(); + } + return getAuthor().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("complete", "boolean", "Indicates if the list includes all authors, else “et al” should be appended for display.", 0, 1, complete)); + children.add(new Property("author", "", "An individual entity named in the author list.", 0, java.lang.Integer.MAX_VALUE, author)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -599445191: /*complete*/ return new Property("complete", "boolean", "Indicates if the list includes all authors, else “et al” should be appended for display.", 0, 1, complete); + case -1406328437: /*author*/ return new Property("author", "", "An individual entity named in the author list.", 0, java.lang.Integer.MAX_VALUE, author); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -599445191: /*complete*/ return this.complete == null ? new Base[0] : new Base[] {this.complete}; // BooleanType + case -1406328437: /*author*/ return this.author == null ? new Base[0] : this.author.toArray(new Base[this.author.size()]); // CitationAuthorListAuthorComponent + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -599445191: // complete + this.complete = TypeConvertor.castToBoolean(value); // BooleanType + return value; + case -1406328437: // author + this.getAuthor().add((CitationAuthorListAuthorComponent) value); // CitationAuthorListAuthorComponent + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("complete")) { + this.complete = TypeConvertor.castToBoolean(value); // BooleanType + } else if (name.equals("author")) { + this.getAuthor().add((CitationAuthorListAuthorComponent) value); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -599445191: return getCompleteElement(); + case -1406328437: return addAuthor(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -599445191: /*complete*/ return new String[] {"boolean"}; + case -1406328437: /*author*/ return new String[] {}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("complete")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.complete"); + } + else if (name.equals("author")) { + return addAuthor(); + } + else + return super.addChild(name); + } + + public CitationAuthorListComponent copy() { + CitationAuthorListComponent dst = new CitationAuthorListComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAuthorListComponent dst) { + super.copyValues(dst); + dst.complete = complete == null ? null : complete.copy(); + if (author != null) { + dst.author = new ArrayList(); + for (CitationAuthorListAuthorComponent i : author) + dst.author.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAuthorListComponent)) + return false; + CitationAuthorListComponent o = (CitationAuthorListComponent) other_; + return compareDeep(complete, o.complete, true) && compareDeep(author, o.author, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAuthorListComponent)) + return false; + CitationAuthorListComponent o = (CitationAuthorListComponent) other_; + return compareValues(complete, o.complete, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(complete, author); + } + + public String fhirType() { + return "Citation.authorList"; + + } + + } + + @Block() + public static class CitationAuthorListAuthorComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Surname or single name. + */ + @Child(name = "lastName", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Surname or single name", formalDefinition="Surname or single name." ) + protected StringType lastName; + + /** + * Remainder of name except for suffix. + */ + @Child(name = "foreName", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Remainder of name except for suffix", formalDefinition="Remainder of name except for suffix." ) + protected StringType foreName; + + /** + * Eg 2nd, 3rd, Jr, Sr. + */ + @Child(name = "suffix", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Eg 2nd, 3rd, Jr, Sr", formalDefinition="Eg 2nd, 3rd, Jr, Sr." ) + protected StringType suffix; + + /** + * Initials for forename. + */ + @Child(name = "initials", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Initials for forename", formalDefinition="Initials for forename." ) + protected StringType initials; + + /** + * Used for collective or corporate name as an author. + */ + @Child(name = "collectiveName", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for collective or corporate name as an author", formalDefinition="Used for collective or corporate name as an author." ) + protected StringType collectiveName; + + /** + * Author identifier, eg ORCID. + */ + @Child(name = "identifier", type = {Identifier.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Author identifier, eg ORCID", formalDefinition="Author identifier, eg ORCID." ) + protected List identifier; + + /** + * Organizational affiliation. + */ + @Child(name = "affiliationInfo", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Organizational affiliation", formalDefinition="Organizational affiliation." ) + protected List affiliationInfo; + + /** + * Physical mailing address for the author. + */ + @Child(name = "address", type = {StringType.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Physical mailing address for the author", formalDefinition="Physical mailing address for the author." ) + protected List address; + + /** + * Email or telephone contact methods for the author. + */ + @Child(name = "telecom", type = {ContactPoint.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Email or telephone contact methods for the author", formalDefinition="Email or telephone contact methods for the author." ) + protected List telecom; + + /** + * Indication of which author is the corresponding author for the article cited. + */ + @Child(name = "correspondingAuthor", type = {BooleanType.class}, order=10, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Indication of which author is the corresponding author for the article cited", formalDefinition="Indication of which author is the corresponding author for the article cited." ) + protected BooleanType correspondingAuthor; + + /** + * Used to code order of authors. + */ + @Child(name = "listOrder", type = {PositiveIntType.class}, order=11, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to code order of authors", formalDefinition="Used to code order of authors." ) + protected PositiveIntType listOrder; + + private static final long serialVersionUID = 1461164632L; + + /** + * Constructor + */ + public CitationAuthorListAuthorComponent() { + super(); + } + + /** + * @return {@link #lastName} (Surname or single name.). This is the underlying object with id, value and extensions. The accessor "getLastName" gives direct access to the value + */ + public StringType getLastNameElement() { + if (this.lastName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.lastName"); + else if (Configuration.doAutoCreate()) + this.lastName = new StringType(); // bb + return this.lastName; + } + + public boolean hasLastNameElement() { + return this.lastName != null && !this.lastName.isEmpty(); + } + + public boolean hasLastName() { + return this.lastName != null && !this.lastName.isEmpty(); + } + + /** + * @param value {@link #lastName} (Surname or single name.). This is the underlying object with id, value and extensions. The accessor "getLastName" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setLastNameElement(StringType value) { + this.lastName = value; + return this; + } + + /** + * @return Surname or single name. + */ + public String getLastName() { + return this.lastName == null ? null : this.lastName.getValue(); + } + + /** + * @param value Surname or single name. + */ + public CitationAuthorListAuthorComponent setLastName(String value) { + if (Utilities.noString(value)) + this.lastName = null; + else { + if (this.lastName == null) + this.lastName = new StringType(); + this.lastName.setValue(value); + } + return this; + } + + /** + * @return {@link #foreName} (Remainder of name except for suffix.). This is the underlying object with id, value and extensions. The accessor "getForeName" gives direct access to the value + */ + public StringType getForeNameElement() { + if (this.foreName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.foreName"); + else if (Configuration.doAutoCreate()) + this.foreName = new StringType(); // bb + return this.foreName; + } + + public boolean hasForeNameElement() { + return this.foreName != null && !this.foreName.isEmpty(); + } + + public boolean hasForeName() { + return this.foreName != null && !this.foreName.isEmpty(); + } + + /** + * @param value {@link #foreName} (Remainder of name except for suffix.). This is the underlying object with id, value and extensions. The accessor "getForeName" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setForeNameElement(StringType value) { + this.foreName = value; + return this; + } + + /** + * @return Remainder of name except for suffix. + */ + public String getForeName() { + return this.foreName == null ? null : this.foreName.getValue(); + } + + /** + * @param value Remainder of name except for suffix. + */ + public CitationAuthorListAuthorComponent setForeName(String value) { + if (Utilities.noString(value)) + this.foreName = null; + else { + if (this.foreName == null) + this.foreName = new StringType(); + this.foreName.setValue(value); + } + return this; + } + + /** + * @return {@link #suffix} (Eg 2nd, 3rd, Jr, Sr.). This is the underlying object with id, value and extensions. The accessor "getSuffix" gives direct access to the value + */ + public StringType getSuffixElement() { + if (this.suffix == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.suffix"); + else if (Configuration.doAutoCreate()) + this.suffix = new StringType(); // bb + return this.suffix; + } + + public boolean hasSuffixElement() { + return this.suffix != null && !this.suffix.isEmpty(); + } + + public boolean hasSuffix() { + return this.suffix != null && !this.suffix.isEmpty(); + } + + /** + * @param value {@link #suffix} (Eg 2nd, 3rd, Jr, Sr.). This is the underlying object with id, value and extensions. The accessor "getSuffix" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setSuffixElement(StringType value) { + this.suffix = value; + return this; + } + + /** + * @return Eg 2nd, 3rd, Jr, Sr. + */ + public String getSuffix() { + return this.suffix == null ? null : this.suffix.getValue(); + } + + /** + * @param value Eg 2nd, 3rd, Jr, Sr. + */ + public CitationAuthorListAuthorComponent setSuffix(String value) { + if (Utilities.noString(value)) + this.suffix = null; + else { + if (this.suffix == null) + this.suffix = new StringType(); + this.suffix.setValue(value); + } + return this; + } + + /** + * @return {@link #initials} (Initials for forename.). This is the underlying object with id, value and extensions. The accessor "getInitials" gives direct access to the value + */ + public StringType getInitialsElement() { + if (this.initials == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.initials"); + else if (Configuration.doAutoCreate()) + this.initials = new StringType(); // bb + return this.initials; + } + + public boolean hasInitialsElement() { + return this.initials != null && !this.initials.isEmpty(); + } + + public boolean hasInitials() { + return this.initials != null && !this.initials.isEmpty(); + } + + /** + * @param value {@link #initials} (Initials for forename.). This is the underlying object with id, value and extensions. The accessor "getInitials" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setInitialsElement(StringType value) { + this.initials = value; + return this; + } + + /** + * @return Initials for forename. + */ + public String getInitials() { + return this.initials == null ? null : this.initials.getValue(); + } + + /** + * @param value Initials for forename. + */ + public CitationAuthorListAuthorComponent setInitials(String value) { + if (Utilities.noString(value)) + this.initials = null; + else { + if (this.initials == null) + this.initials = new StringType(); + this.initials.setValue(value); + } + return this; + } + + /** + * @return {@link #collectiveName} (Used for collective or corporate name as an author.). This is the underlying object with id, value and extensions. The accessor "getCollectiveName" gives direct access to the value + */ + public StringType getCollectiveNameElement() { + if (this.collectiveName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.collectiveName"); + else if (Configuration.doAutoCreate()) + this.collectiveName = new StringType(); // bb + return this.collectiveName; + } + + public boolean hasCollectiveNameElement() { + return this.collectiveName != null && !this.collectiveName.isEmpty(); + } + + public boolean hasCollectiveName() { + return this.collectiveName != null && !this.collectiveName.isEmpty(); + } + + /** + * @param value {@link #collectiveName} (Used for collective or corporate name as an author.). This is the underlying object with id, value and extensions. The accessor "getCollectiveName" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setCollectiveNameElement(StringType value) { + this.collectiveName = value; + return this; + } + + /** + * @return Used for collective or corporate name as an author. + */ + public String getCollectiveName() { + return this.collectiveName == null ? null : this.collectiveName.getValue(); + } + + /** + * @param value Used for collective or corporate name as an author. + */ + public CitationAuthorListAuthorComponent setCollectiveName(String value) { + if (Utilities.noString(value)) + this.collectiveName = null; + else { + if (this.collectiveName == null) + this.collectiveName = new StringType(); + this.collectiveName.setValue(value); + } + return this; + } + + /** + * @return {@link #identifier} (Author identifier, eg ORCID.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationAuthorListAuthorComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public CitationAuthorListAuthorComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + /** + * @return {@link #affiliationInfo} (Organizational affiliation.) + */ + public List getAffiliationInfo() { + if (this.affiliationInfo == null) + this.affiliationInfo = new ArrayList(); + return this.affiliationInfo; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationAuthorListAuthorComponent setAffiliationInfo(List theAffiliationInfo) { + this.affiliationInfo = theAffiliationInfo; + return this; + } + + public boolean hasAffiliationInfo() { + if (this.affiliationInfo == null) + return false; + for (CitationAuthorListAuthorAffiliationInfoComponent item : this.affiliationInfo) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationAuthorListAuthorAffiliationInfoComponent addAffiliationInfo() { //3 + CitationAuthorListAuthorAffiliationInfoComponent t = new CitationAuthorListAuthorAffiliationInfoComponent(); + if (this.affiliationInfo == null) + this.affiliationInfo = new ArrayList(); + this.affiliationInfo.add(t); + return t; + } + + public CitationAuthorListAuthorComponent addAffiliationInfo(CitationAuthorListAuthorAffiliationInfoComponent t) { //3 + if (t == null) + return this; + if (this.affiliationInfo == null) + this.affiliationInfo = new ArrayList(); + this.affiliationInfo.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #affiliationInfo}, creating it if it does not already exist {3} + */ + public CitationAuthorListAuthorAffiliationInfoComponent getAffiliationInfoFirstRep() { + if (getAffiliationInfo().isEmpty()) { + addAffiliationInfo(); + } + return getAffiliationInfo().get(0); + } + + /** + * @return {@link #address} (Physical mailing address for the author.) + */ + public List getAddress() { + if (this.address == null) + this.address = new ArrayList(); + return this.address; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationAuthorListAuthorComponent setAddress(List theAddress) { + this.address = theAddress; + return this; + } + + public boolean hasAddress() { + if (this.address == null) + return false; + for (StringType item : this.address) + if (!item.isEmpty()) + return true; + return false; + } + + /** + * @return {@link #address} (Physical mailing address for the author.) + */ + public StringType addAddressElement() {//2 + StringType t = new StringType(); + if (this.address == null) + this.address = new ArrayList(); + this.address.add(t); + return t; + } + + /** + * @param value {@link #address} (Physical mailing address for the author.) + */ + public CitationAuthorListAuthorComponent addAddress(String value) { //1 + StringType t = new StringType(); + t.setValue(value); + if (this.address == null) + this.address = new ArrayList(); + this.address.add(t); + return this; + } + + /** + * @param value {@link #address} (Physical mailing address for the author.) + */ + public boolean hasAddress(String value) { + if (this.address == null) + return false; + for (StringType v : this.address) + if (v.getValue().equals(value)) // string + return true; + return false; + } + + /** + * @return {@link #telecom} (Email or telephone contact methods for the author.) + */ + public List getTelecom() { + if (this.telecom == null) + this.telecom = new ArrayList(); + return this.telecom; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationAuthorListAuthorComponent setTelecom(List theTelecom) { + this.telecom = theTelecom; + return this; + } + + public boolean hasTelecom() { + if (this.telecom == null) + return false; + for (ContactPoint item : this.telecom) + if (!item.isEmpty()) + return true; + return false; + } + + public ContactPoint addTelecom() { //3 + ContactPoint t = new ContactPoint(); + if (this.telecom == null) + this.telecom = new ArrayList(); + this.telecom.add(t); + return t; + } + + public CitationAuthorListAuthorComponent addTelecom(ContactPoint t) { //3 + if (t == null) + return this; + if (this.telecom == null) + this.telecom = new ArrayList(); + this.telecom.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #telecom}, creating it if it does not already exist {3} + */ + public ContactPoint getTelecomFirstRep() { + if (getTelecom().isEmpty()) { + addTelecom(); + } + return getTelecom().get(0); + } + + /** + * @return {@link #correspondingAuthor} (Indication of which author is the corresponding author for the article cited.). This is the underlying object with id, value and extensions. The accessor "getCorrespondingAuthor" gives direct access to the value + */ + public BooleanType getCorrespondingAuthorElement() { + if (this.correspondingAuthor == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.correspondingAuthor"); + else if (Configuration.doAutoCreate()) + this.correspondingAuthor = new BooleanType(); // bb + return this.correspondingAuthor; + } + + public boolean hasCorrespondingAuthorElement() { + return this.correspondingAuthor != null && !this.correspondingAuthor.isEmpty(); + } + + public boolean hasCorrespondingAuthor() { + return this.correspondingAuthor != null && !this.correspondingAuthor.isEmpty(); + } + + /** + * @param value {@link #correspondingAuthor} (Indication of which author is the corresponding author for the article cited.). This is the underlying object with id, value and extensions. The accessor "getCorrespondingAuthor" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setCorrespondingAuthorElement(BooleanType value) { + this.correspondingAuthor = value; + return this; + } + + /** + * @return Indication of which author is the corresponding author for the article cited. + */ + public boolean getCorrespondingAuthor() { + return this.correspondingAuthor == null || this.correspondingAuthor.isEmpty() ? false : this.correspondingAuthor.getValue(); + } + + /** + * @param value Indication of which author is the corresponding author for the article cited. + */ + public CitationAuthorListAuthorComponent setCorrespondingAuthor(boolean value) { + if (this.correspondingAuthor == null) + this.correspondingAuthor = new BooleanType(); + this.correspondingAuthor.setValue(value); + return this; + } + + /** + * @return {@link #listOrder} (Used to code order of authors.). This is the underlying object with id, value and extensions. The accessor "getListOrder" gives direct access to the value + */ + public PositiveIntType getListOrderElement() { + if (this.listOrder == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorComponent.listOrder"); + else if (Configuration.doAutoCreate()) + this.listOrder = new PositiveIntType(); // bb + return this.listOrder; + } + + public boolean hasListOrderElement() { + return this.listOrder != null && !this.listOrder.isEmpty(); + } + + public boolean hasListOrder() { + return this.listOrder != null && !this.listOrder.isEmpty(); + } + + /** + * @param value {@link #listOrder} (Used to code order of authors.). This is the underlying object with id, value and extensions. The accessor "getListOrder" gives direct access to the value + */ + public CitationAuthorListAuthorComponent setListOrderElement(PositiveIntType value) { + this.listOrder = value; + return this; + } + + /** + * @return Used to code order of authors. + */ + public int getListOrder() { + return this.listOrder == null || this.listOrder.isEmpty() ? 0 : this.listOrder.getValue(); + } + + /** + * @param value Used to code order of authors. + */ + public CitationAuthorListAuthorComponent setListOrder(int value) { + if (this.listOrder == null) + this.listOrder = new PositiveIntType(); + this.listOrder.setValue(value); + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("lastName", "string", "Surname or single name.", 0, 1, lastName)); + children.add(new Property("foreName", "string", "Remainder of name except for suffix.", 0, 1, foreName)); + children.add(new Property("suffix", "string", "Eg 2nd, 3rd, Jr, Sr.", 0, 1, suffix)); + children.add(new Property("initials", "string", "Initials for forename.", 0, 1, initials)); + children.add(new Property("collectiveName", "string", "Used for collective or corporate name as an author.", 0, 1, collectiveName)); + children.add(new Property("identifier", "Identifier", "Author identifier, eg ORCID.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("affiliationInfo", "", "Organizational affiliation.", 0, java.lang.Integer.MAX_VALUE, affiliationInfo)); + children.add(new Property("address", "string", "Physical mailing address for the author.", 0, java.lang.Integer.MAX_VALUE, address)); + children.add(new Property("telecom", "ContactPoint", "Email or telephone contact methods for the author.", 0, java.lang.Integer.MAX_VALUE, telecom)); + children.add(new Property("correspondingAuthor", "boolean", "Indication of which author is the corresponding author for the article cited.", 0, 1, correspondingAuthor)); + children.add(new Property("listOrder", "positiveInt", "Used to code order of authors.", 0, 1, listOrder)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1459599807: /*lastName*/ return new Property("lastName", "string", "Surname or single name.", 0, 1, lastName); + case 466107751: /*foreName*/ return new Property("foreName", "string", "Remainder of name except for suffix.", 0, 1, foreName); + case -891422895: /*suffix*/ return new Property("suffix", "string", "Eg 2nd, 3rd, Jr, Sr.", 0, 1, suffix); + case 269062575: /*initials*/ return new Property("initials", "string", "Initials for forename.", 0, 1, initials); + case 502871833: /*collectiveName*/ return new Property("collectiveName", "string", "Used for collective or corporate name as an author.", 0, 1, collectiveName); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Author identifier, eg ORCID.", 0, java.lang.Integer.MAX_VALUE, identifier); + case -215129154: /*affiliationInfo*/ return new Property("affiliationInfo", "", "Organizational affiliation.", 0, java.lang.Integer.MAX_VALUE, affiliationInfo); + case -1147692044: /*address*/ return new Property("address", "string", "Physical mailing address for the author.", 0, java.lang.Integer.MAX_VALUE, address); + case -1429363305: /*telecom*/ return new Property("telecom", "ContactPoint", "Email or telephone contact methods for the author.", 0, java.lang.Integer.MAX_VALUE, telecom); + case 1413890206: /*correspondingAuthor*/ return new Property("correspondingAuthor", "boolean", "Indication of which author is the corresponding author for the article cited.", 0, 1, correspondingAuthor); + case -1238918832: /*listOrder*/ return new Property("listOrder", "positiveInt", "Used to code order of authors.", 0, 1, listOrder); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1459599807: /*lastName*/ return this.lastName == null ? new Base[0] : new Base[] {this.lastName}; // StringType + case 466107751: /*foreName*/ return this.foreName == null ? new Base[0] : new Base[] {this.foreName}; // StringType + case -891422895: /*suffix*/ return this.suffix == null ? new Base[0] : new Base[] {this.suffix}; // StringType + case 269062575: /*initials*/ return this.initials == null ? new Base[0] : new Base[] {this.initials}; // StringType + case 502871833: /*collectiveName*/ return this.collectiveName == null ? new Base[0] : new Base[] {this.collectiveName}; // StringType + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case -215129154: /*affiliationInfo*/ return this.affiliationInfo == null ? new Base[0] : this.affiliationInfo.toArray(new Base[this.affiliationInfo.size()]); // CitationAuthorListAuthorAffiliationInfoComponent + case -1147692044: /*address*/ return this.address == null ? new Base[0] : this.address.toArray(new Base[this.address.size()]); // StringType + case -1429363305: /*telecom*/ return this.telecom == null ? new Base[0] : this.telecom.toArray(new Base[this.telecom.size()]); // ContactPoint + case 1413890206: /*correspondingAuthor*/ return this.correspondingAuthor == null ? new Base[0] : new Base[] {this.correspondingAuthor}; // BooleanType + case -1238918832: /*listOrder*/ return this.listOrder == null ? new Base[0] : new Base[] {this.listOrder}; // PositiveIntType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1459599807: // lastName + this.lastName = TypeConvertor.castToString(value); // StringType + return value; + case 466107751: // foreName + this.foreName = TypeConvertor.castToString(value); // StringType + return value; + case -891422895: // suffix + this.suffix = TypeConvertor.castToString(value); // StringType + return value; + case 269062575: // initials + this.initials = TypeConvertor.castToString(value); // StringType + return value; + case 502871833: // collectiveName + this.collectiveName = TypeConvertor.castToString(value); // StringType + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case -215129154: // affiliationInfo + this.getAffiliationInfo().add((CitationAuthorListAuthorAffiliationInfoComponent) value); // CitationAuthorListAuthorAffiliationInfoComponent + return value; + case -1147692044: // address + this.getAddress().add(TypeConvertor.castToString(value)); // StringType + return value; + case -1429363305: // telecom + this.getTelecom().add(TypeConvertor.castToContactPoint(value)); // ContactPoint + return value; + case 1413890206: // correspondingAuthor + this.correspondingAuthor = TypeConvertor.castToBoolean(value); // BooleanType + return value; + case -1238918832: // listOrder + this.listOrder = TypeConvertor.castToPositiveInt(value); // PositiveIntType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("lastName")) { + this.lastName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("foreName")) { + this.foreName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("suffix")) { + this.suffix = TypeConvertor.castToString(value); // StringType + } else if (name.equals("initials")) { + this.initials = TypeConvertor.castToString(value); // StringType + } else if (name.equals("collectiveName")) { + this.collectiveName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("affiliationInfo")) { + this.getAffiliationInfo().add((CitationAuthorListAuthorAffiliationInfoComponent) value); + } else if (name.equals("address")) { + this.getAddress().add(TypeConvertor.castToString(value)); + } else if (name.equals("telecom")) { + this.getTelecom().add(TypeConvertor.castToContactPoint(value)); + } else if (name.equals("correspondingAuthor")) { + this.correspondingAuthor = TypeConvertor.castToBoolean(value); // BooleanType + } else if (name.equals("listOrder")) { + this.listOrder = TypeConvertor.castToPositiveInt(value); // PositiveIntType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1459599807: return getLastNameElement(); + case 466107751: return getForeNameElement(); + case -891422895: return getSuffixElement(); + case 269062575: return getInitialsElement(); + case 502871833: return getCollectiveNameElement(); + case -1618432855: return addIdentifier(); + case -215129154: return addAffiliationInfo(); + case -1147692044: return addAddressElement(); + case -1429363305: return addTelecom(); + case 1413890206: return getCorrespondingAuthorElement(); + case -1238918832: return getListOrderElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1459599807: /*lastName*/ return new String[] {"string"}; + case 466107751: /*foreName*/ return new String[] {"string"}; + case -891422895: /*suffix*/ return new String[] {"string"}; + case 269062575: /*initials*/ return new String[] {"string"}; + case 502871833: /*collectiveName*/ return new String[] {"string"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case -215129154: /*affiliationInfo*/ return new String[] {}; + case -1147692044: /*address*/ return new String[] {"string"}; + case -1429363305: /*telecom*/ return new String[] {"ContactPoint"}; + case 1413890206: /*correspondingAuthor*/ return new String[] {"boolean"}; + case -1238918832: /*listOrder*/ return new String[] {"positiveInt"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("lastName")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.lastName"); + } + else if (name.equals("foreName")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.foreName"); + } + else if (name.equals("suffix")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.suffix"); + } + else if (name.equals("initials")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.initials"); + } + else if (name.equals("collectiveName")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.collectiveName"); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else if (name.equals("affiliationInfo")) { + return addAffiliationInfo(); + } + else if (name.equals("address")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.address"); + } + else if (name.equals("telecom")) { + return addTelecom(); + } + else if (name.equals("correspondingAuthor")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.correspondingAuthor"); + } + else if (name.equals("listOrder")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.listOrder"); + } + else + return super.addChild(name); + } + + public CitationAuthorListAuthorComponent copy() { + CitationAuthorListAuthorComponent dst = new CitationAuthorListAuthorComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAuthorListAuthorComponent dst) { + super.copyValues(dst); + dst.lastName = lastName == null ? null : lastName.copy(); + dst.foreName = foreName == null ? null : foreName.copy(); + dst.suffix = suffix == null ? null : suffix.copy(); + dst.initials = initials == null ? null : initials.copy(); + dst.collectiveName = collectiveName == null ? null : collectiveName.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + if (affiliationInfo != null) { + dst.affiliationInfo = new ArrayList(); + for (CitationAuthorListAuthorAffiliationInfoComponent i : affiliationInfo) + dst.affiliationInfo.add(i.copy()); + }; + if (address != null) { + dst.address = new ArrayList(); + for (StringType i : address) + dst.address.add(i.copy()); + }; + if (telecom != null) { + dst.telecom = new ArrayList(); + for (ContactPoint i : telecom) + dst.telecom.add(i.copy()); + }; + dst.correspondingAuthor = correspondingAuthor == null ? null : correspondingAuthor.copy(); + dst.listOrder = listOrder == null ? null : listOrder.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAuthorListAuthorComponent)) + return false; + CitationAuthorListAuthorComponent o = (CitationAuthorListAuthorComponent) other_; + return compareDeep(lastName, o.lastName, true) && compareDeep(foreName, o.foreName, true) && compareDeep(suffix, o.suffix, true) + && compareDeep(initials, o.initials, true) && compareDeep(collectiveName, o.collectiveName, true) + && compareDeep(identifier, o.identifier, true) && compareDeep(affiliationInfo, o.affiliationInfo, true) + && compareDeep(address, o.address, true) && compareDeep(telecom, o.telecom, true) && compareDeep(correspondingAuthor, o.correspondingAuthor, true) + && compareDeep(listOrder, o.listOrder, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAuthorListAuthorComponent)) + return false; + CitationAuthorListAuthorComponent o = (CitationAuthorListAuthorComponent) other_; + return compareValues(lastName, o.lastName, true) && compareValues(foreName, o.foreName, true) && compareValues(suffix, o.suffix, true) + && compareValues(initials, o.initials, true) && compareValues(collectiveName, o.collectiveName, true) + && compareValues(address, o.address, true) && compareValues(correspondingAuthor, o.correspondingAuthor, true) + && compareValues(listOrder, o.listOrder, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(lastName, foreName, suffix + , initials, collectiveName, identifier, affiliationInfo, address, telecom, correspondingAuthor + , listOrder); + } + + public String fhirType() { + return "Citation.authorList.author"; + + } + + } + + @Block() + public static class CitationAuthorListAuthorAffiliationInfoComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Display for the organization. + */ + @Child(name = "affiliation", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Display for the organization", formalDefinition="Display for the organization." ) + protected StringType affiliation; + + /** + * Role. + */ + @Child(name = "role", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Role", formalDefinition="Role." ) + protected StringType role; + + /** + * Identifier for the organization. + */ + @Child(name = "identifier", type = {Identifier.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Identifier for the organization", formalDefinition="Identifier for the organization." ) + protected List identifier; + + private static final long serialVersionUID = 548335522L; + + /** + * Constructor + */ + public CitationAuthorListAuthorAffiliationInfoComponent() { + super(); + } + + /** + * @return {@link #affiliation} (Display for the organization.). This is the underlying object with id, value and extensions. The accessor "getAffiliation" gives direct access to the value + */ + public StringType getAffiliationElement() { + if (this.affiliation == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorAffiliationInfoComponent.affiliation"); + else if (Configuration.doAutoCreate()) + this.affiliation = new StringType(); // bb + return this.affiliation; + } + + public boolean hasAffiliationElement() { + return this.affiliation != null && !this.affiliation.isEmpty(); + } + + public boolean hasAffiliation() { + return this.affiliation != null && !this.affiliation.isEmpty(); + } + + /** + * @param value {@link #affiliation} (Display for the organization.). This is the underlying object with id, value and extensions. The accessor "getAffiliation" gives direct access to the value + */ + public CitationAuthorListAuthorAffiliationInfoComponent setAffiliationElement(StringType value) { + this.affiliation = value; + return this; + } + + /** + * @return Display for the organization. + */ + public String getAffiliation() { + return this.affiliation == null ? null : this.affiliation.getValue(); + } + + /** + * @param value Display for the organization. + */ + public CitationAuthorListAuthorAffiliationInfoComponent setAffiliation(String value) { + if (Utilities.noString(value)) + this.affiliation = null; + else { + if (this.affiliation == null) + this.affiliation = new StringType(); + this.affiliation.setValue(value); + } + return this; + } + + /** + * @return {@link #role} (Role.). This is the underlying object with id, value and extensions. The accessor "getRole" gives direct access to the value + */ + public StringType getRoleElement() { + if (this.role == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorListAuthorAffiliationInfoComponent.role"); + else if (Configuration.doAutoCreate()) + this.role = new StringType(); // bb + return this.role; + } + + public boolean hasRoleElement() { + return this.role != null && !this.role.isEmpty(); + } + + public boolean hasRole() { + return this.role != null && !this.role.isEmpty(); + } + + /** + * @param value {@link #role} (Role.). This is the underlying object with id, value and extensions. The accessor "getRole" gives direct access to the value + */ + public CitationAuthorListAuthorAffiliationInfoComponent setRoleElement(StringType value) { + this.role = value; + return this; + } + + /** + * @return Role. + */ + public String getRole() { + return this.role == null ? null : this.role.getValue(); + } + + /** + * @param value Role. + */ + public CitationAuthorListAuthorAffiliationInfoComponent setRole(String value) { + if (Utilities.noString(value)) + this.role = null; + else { + if (this.role == null) + this.role = new StringType(); + this.role.setValue(value); + } + return this; + } + + /** + * @return {@link #identifier} (Identifier for the organization.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationAuthorListAuthorAffiliationInfoComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public CitationAuthorListAuthorAffiliationInfoComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("affiliation", "string", "Display for the organization.", 0, 1, affiliation)); + children.add(new Property("role", "string", "Role.", 0, 1, role)); + children.add(new Property("identifier", "Identifier", "Identifier for the organization.", 0, java.lang.Integer.MAX_VALUE, identifier)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 2019918576: /*affiliation*/ return new Property("affiliation", "string", "Display for the organization.", 0, 1, affiliation); + case 3506294: /*role*/ return new Property("role", "string", "Role.", 0, 1, role); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for the organization.", 0, java.lang.Integer.MAX_VALUE, identifier); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 2019918576: /*affiliation*/ return this.affiliation == null ? new Base[0] : new Base[] {this.affiliation}; // StringType + case 3506294: /*role*/ return this.role == null ? new Base[0] : new Base[] {this.role}; // StringType + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 2019918576: // affiliation + this.affiliation = TypeConvertor.castToString(value); // StringType + return value; + case 3506294: // role + this.role = TypeConvertor.castToString(value); // StringType + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("affiliation")) { + this.affiliation = TypeConvertor.castToString(value); // StringType + } else if (name.equals("role")) { + this.role = TypeConvertor.castToString(value); // StringType + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 2019918576: return getAffiliationElement(); + case 3506294: return getRoleElement(); + case -1618432855: return addIdentifier(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 2019918576: /*affiliation*/ return new String[] {"string"}; + case 3506294: /*role*/ return new String[] {"string"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("affiliation")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.affiliationInfo.affiliation"); + } + else if (name.equals("role")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorList.author.affiliationInfo.role"); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else + return super.addChild(name); + } + + public CitationAuthorListAuthorAffiliationInfoComponent copy() { + CitationAuthorListAuthorAffiliationInfoComponent dst = new CitationAuthorListAuthorAffiliationInfoComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAuthorListAuthorAffiliationInfoComponent dst) { + super.copyValues(dst); + dst.affiliation = affiliation == null ? null : affiliation.copy(); + dst.role = role == null ? null : role.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAuthorListAuthorAffiliationInfoComponent)) + return false; + CitationAuthorListAuthorAffiliationInfoComponent o = (CitationAuthorListAuthorAffiliationInfoComponent) other_; + return compareDeep(affiliation, o.affiliation, true) && compareDeep(role, o.role, true) && compareDeep(identifier, o.identifier, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAuthorListAuthorAffiliationInfoComponent)) + return false; + CitationAuthorListAuthorAffiliationInfoComponent o = (CitationAuthorListAuthorAffiliationInfoComponent) other_; + return compareValues(affiliation, o.affiliation, true) && compareValues(role, o.role, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(affiliation, role, identifier + ); + } + + public String fhirType() { + return "Citation.authorList.author.affiliationInfo"; + + } + + } + + @Block() + public static class CitationAuthorStringComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used to code the producer or rule for creating the display string. + */ + @Child(name = "source", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to code the producer or rule for creating the display string", formalDefinition="Used to code the producer or rule for creating the display string." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/author-string-source") + protected CodeableConcept source; + + /** + * The display string for the author list. + */ + @Child(name = "value", type = {StringType.class}, order=2, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="The display string for the author list", formalDefinition="The display string for the author list." ) + protected StringType value; + + private static final long serialVersionUID = -1218527170L; + + /** + * Constructor + */ + public CitationAuthorStringComponent() { + super(); + } + + /** + * Constructor + */ + public CitationAuthorStringComponent(String value) { + super(); + this.setValue(value); + } + + /** + * @return {@link #source} (Used to code the producer or rule for creating the display string.) + */ + public CodeableConcept getSource() { + if (this.source == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorStringComponent.source"); + else if (Configuration.doAutoCreate()) + this.source = new CodeableConcept(); // cc + return this.source; + } + + public boolean hasSource() { + return this.source != null && !this.source.isEmpty(); + } + + /** + * @param value {@link #source} (Used to code the producer or rule for creating the display string.) + */ + public CitationAuthorStringComponent setSource(CodeableConcept value) { + this.source = value; + return this; + } + + /** + * @return {@link #value} (The display string for the author list.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value + */ + public StringType getValueElement() { + if (this.value == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAuthorStringComponent.value"); + else if (Configuration.doAutoCreate()) + this.value = new StringType(); // bb + return this.value; + } + + public boolean hasValueElement() { + return this.value != null && !this.value.isEmpty(); + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); + } + + /** + * @param value {@link #value} (The display string for the author list.). This is the underlying object with id, value and extensions. The accessor "getValue" gives direct access to the value + */ + public CitationAuthorStringComponent setValueElement(StringType value) { + this.value = value; + return this; + } + + /** + * @return The display string for the author list. + */ + public String getValue() { + return this.value == null ? null : this.value.getValue(); + } + + /** + * @param value The display string for the author list. + */ + public CitationAuthorStringComponent setValue(String value) { + if (this.value == null) + this.value = new StringType(); + this.value.setValue(value); + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("source", "CodeableConcept", "Used to code the producer or rule for creating the display string.", 0, 1, source)); + children.add(new Property("value", "string", "The display string for the author list.", 0, 1, value)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -896505829: /*source*/ return new Property("source", "CodeableConcept", "Used to code the producer or rule for creating the display string.", 0, 1, source); + case 111972721: /*value*/ return new Property("value", "string", "The display string for the author list.", 0, 1, value); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // CodeableConcept + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // StringType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -896505829: // source + this.source = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 111972721: // value + this.value = TypeConvertor.castToString(value); // StringType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("source")) { + this.source = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("value")) { + this.value = TypeConvertor.castToString(value); // StringType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -896505829: return getSource(); + case 111972721: return getValueElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -896505829: /*source*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"string"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("source")) { + this.source = new CodeableConcept(); + return this.source; + } + else if (name.equals("value")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.authorString.value"); + } + else + return super.addChild(name); + } + + public CitationAuthorStringComponent copy() { + CitationAuthorStringComponent dst = new CitationAuthorStringComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAuthorStringComponent dst) { + super.copyValues(dst); + dst.source = source == null ? null : source.copy(); + dst.value = value == null ? null : value.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAuthorStringComponent)) + return false; + CitationAuthorStringComponent o = (CitationAuthorStringComponent) other_; + return compareDeep(source, o.source, true) && compareDeep(value, o.value, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAuthorStringComponent)) + return false; + CitationAuthorStringComponent o = (CitationAuthorStringComponent) other_; + return compareValues(value, o.value, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(source, value); + } + + public String fhirType() { + return "Citation.authorString"; + + } + + } + + @Block() + public static class CitationContributorListComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Indicates if the list includes all contributors. + */ + @Child(name = "complete", type = {BooleanType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Indicates if the list includes all contributors", formalDefinition="Indicates if the list includes all contributors." ) + protected BooleanType complete; + + /** + * An individual entity named in the contributor list. + */ + @Child(name = "contributor", type = {}, order=2, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="An individual entity named in the contributor list", formalDefinition="An individual entity named in the contributor list." ) + protected List contributor; + + private static final long serialVersionUID = 1922271126L; + + /** + * Constructor + */ + public CitationContributorListComponent() { + super(); + } + + /** + * Constructor + */ + public CitationContributorListComponent(CitationContributorListContributorComponent contributor) { + super(); + this.addContributor(contributor); + } + + /** + * @return {@link #complete} (Indicates if the list includes all contributors.). This is the underlying object with id, value and extensions. The accessor "getComplete" gives direct access to the value + */ + public BooleanType getCompleteElement() { + if (this.complete == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListComponent.complete"); + else if (Configuration.doAutoCreate()) + this.complete = new BooleanType(); // bb + return this.complete; + } + + public boolean hasCompleteElement() { + return this.complete != null && !this.complete.isEmpty(); + } + + public boolean hasComplete() { + return this.complete != null && !this.complete.isEmpty(); + } + + /** + * @param value {@link #complete} (Indicates if the list includes all contributors.). This is the underlying object with id, value and extensions. The accessor "getComplete" gives direct access to the value + */ + public CitationContributorListComponent setCompleteElement(BooleanType value) { + this.complete = value; + return this; + } + + /** + * @return Indicates if the list includes all contributors. + */ + public boolean getComplete() { + return this.complete == null || this.complete.isEmpty() ? false : this.complete.getValue(); + } + + /** + * @param value Indicates if the list includes all contributors. + */ + public CitationContributorListComponent setComplete(boolean value) { + if (this.complete == null) + this.complete = new BooleanType(); + this.complete.setValue(value); + return this; + } + + /** + * @return {@link #contributor} (An individual entity named in the contributor list.) + */ + public List getContributor() { + if (this.contributor == null) + this.contributor = new ArrayList(); + return this.contributor; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationContributorListComponent setContributor(List theContributor) { + this.contributor = theContributor; + return this; + } + + public boolean hasContributor() { + if (this.contributor == null) + return false; + for (CitationContributorListContributorComponent item : this.contributor) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationContributorListContributorComponent addContributor() { //3 + CitationContributorListContributorComponent t = new CitationContributorListContributorComponent(); + if (this.contributor == null) + this.contributor = new ArrayList(); + this.contributor.add(t); + return t; + } + + public CitationContributorListComponent addContributor(CitationContributorListContributorComponent t) { //3 + if (t == null) + return this; + if (this.contributor == null) + this.contributor = new ArrayList(); + this.contributor.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #contributor}, creating it if it does not already exist {3} + */ + public CitationContributorListContributorComponent getContributorFirstRep() { + if (getContributor().isEmpty()) { + addContributor(); + } + return getContributor().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("complete", "boolean", "Indicates if the list includes all contributors.", 0, 1, complete)); + children.add(new Property("contributor", "", "An individual entity named in the contributor list.", 0, java.lang.Integer.MAX_VALUE, contributor)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -599445191: /*complete*/ return new Property("complete", "boolean", "Indicates if the list includes all contributors.", 0, 1, complete); + case -1895276325: /*contributor*/ return new Property("contributor", "", "An individual entity named in the contributor list.", 0, java.lang.Integer.MAX_VALUE, contributor); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -599445191: /*complete*/ return this.complete == null ? new Base[0] : new Base[] {this.complete}; // BooleanType + case -1895276325: /*contributor*/ return this.contributor == null ? new Base[0] : this.contributor.toArray(new Base[this.contributor.size()]); // CitationContributorListContributorComponent + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -599445191: // complete + this.complete = TypeConvertor.castToBoolean(value); // BooleanType + return value; + case -1895276325: // contributor + this.getContributor().add((CitationContributorListContributorComponent) value); // CitationContributorListContributorComponent + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("complete")) { + this.complete = TypeConvertor.castToBoolean(value); // BooleanType + } else if (name.equals("contributor")) { + this.getContributor().add((CitationContributorListContributorComponent) value); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -599445191: return getCompleteElement(); + case -1895276325: return addContributor(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -599445191: /*complete*/ return new String[] {"boolean"}; + case -1895276325: /*contributor*/ return new String[] {}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("complete")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.complete"); + } + else if (name.equals("contributor")) { + return addContributor(); + } + else + return super.addChild(name); + } + + public CitationContributorListComponent copy() { + CitationContributorListComponent dst = new CitationContributorListComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationContributorListComponent dst) { + super.copyValues(dst); + dst.complete = complete == null ? null : complete.copy(); + if (contributor != null) { + dst.contributor = new ArrayList(); + for (CitationContributorListContributorComponent i : contributor) + dst.contributor.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationContributorListComponent)) + return false; + CitationContributorListComponent o = (CitationContributorListComponent) other_; + return compareDeep(complete, o.complete, true) && compareDeep(contributor, o.contributor, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationContributorListComponent)) + return false; + CitationContributorListComponent o = (CitationContributorListComponent) other_; + return compareValues(complete, o.complete, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(complete, contributor); + } + + public String fhirType() { + return "Citation.contributorList"; + + } + + } + + @Block() + public static class CitationContributorListContributorComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Surname or single name. + */ + @Child(name = "lastName", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Surname or single name", formalDefinition="Surname or single name." ) + protected StringType lastName; + + /** + * Remainder of name except for suffix. + */ + @Child(name = "foreName", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Remainder of name except for suffix", formalDefinition="Remainder of name except for suffix." ) + protected StringType foreName; + + /** + * Eg 2nd, 3rd, Jr, Sr. + */ + @Child(name = "suffix", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Eg 2nd, 3rd, Jr, Sr", formalDefinition="Eg 2nd, 3rd, Jr, Sr." ) + protected StringType suffix; + + /** + * Initials for forename. + */ + @Child(name = "initials", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Initials for forename", formalDefinition="Initials for forename." ) + protected StringType initials; + + /** + * Used for collective or corporate name as a contributor. + */ + @Child(name = "collectiveName", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for collective or corporate name as a contributor", formalDefinition="Used for collective or corporate name as a contributor." ) + protected StringType collectiveName; + + /** + * Contributor identifier, eg ORCID. + */ + @Child(name = "identifier", type = {Identifier.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Contributor identifier, eg ORCID", formalDefinition="Contributor identifier, eg ORCID." ) + protected List identifier; + + /** + * The specific contributions. + */ + @Child(name = "contribution", type = {CodeableConcept.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The specific contributions", formalDefinition="The specific contributions." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/citation-contribution") + protected List contribution; + + /** + * Organizational affiliation. + */ + @Child(name = "affiliationInfo", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Organizational affiliation", formalDefinition="Organizational affiliation." ) + protected List affiliationInfo; + + /** + * Used to code order of contributors. + */ + @Child(name = "listOrder", type = {PositiveIntType.class}, order=9, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to code order of contributors", formalDefinition="Used to code order of contributors." ) + protected PositiveIntType listOrder; + + private static final long serialVersionUID = 160410057L; + + /** + * Constructor + */ + public CitationContributorListContributorComponent() { + super(); + } + + /** + * @return {@link #lastName} (Surname or single name.). This is the underlying object with id, value and extensions. The accessor "getLastName" gives direct access to the value + */ + public StringType getLastNameElement() { + if (this.lastName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorComponent.lastName"); + else if (Configuration.doAutoCreate()) + this.lastName = new StringType(); // bb + return this.lastName; + } + + public boolean hasLastNameElement() { + return this.lastName != null && !this.lastName.isEmpty(); + } + + public boolean hasLastName() { + return this.lastName != null && !this.lastName.isEmpty(); + } + + /** + * @param value {@link #lastName} (Surname or single name.). This is the underlying object with id, value and extensions. The accessor "getLastName" gives direct access to the value + */ + public CitationContributorListContributorComponent setLastNameElement(StringType value) { + this.lastName = value; + return this; + } + + /** + * @return Surname or single name. + */ + public String getLastName() { + return this.lastName == null ? null : this.lastName.getValue(); + } + + /** + * @param value Surname or single name. + */ + public CitationContributorListContributorComponent setLastName(String value) { + if (Utilities.noString(value)) + this.lastName = null; + else { + if (this.lastName == null) + this.lastName = new StringType(); + this.lastName.setValue(value); + } + return this; + } + + /** + * @return {@link #foreName} (Remainder of name except for suffix.). This is the underlying object with id, value and extensions. The accessor "getForeName" gives direct access to the value + */ + public StringType getForeNameElement() { + if (this.foreName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorComponent.foreName"); + else if (Configuration.doAutoCreate()) + this.foreName = new StringType(); // bb + return this.foreName; + } + + public boolean hasForeNameElement() { + return this.foreName != null && !this.foreName.isEmpty(); + } + + public boolean hasForeName() { + return this.foreName != null && !this.foreName.isEmpty(); + } + + /** + * @param value {@link #foreName} (Remainder of name except for suffix.). This is the underlying object with id, value and extensions. The accessor "getForeName" gives direct access to the value + */ + public CitationContributorListContributorComponent setForeNameElement(StringType value) { + this.foreName = value; + return this; + } + + /** + * @return Remainder of name except for suffix. + */ + public String getForeName() { + return this.foreName == null ? null : this.foreName.getValue(); + } + + /** + * @param value Remainder of name except for suffix. + */ + public CitationContributorListContributorComponent setForeName(String value) { + if (Utilities.noString(value)) + this.foreName = null; + else { + if (this.foreName == null) + this.foreName = new StringType(); + this.foreName.setValue(value); + } + return this; + } + + /** + * @return {@link #suffix} (Eg 2nd, 3rd, Jr, Sr.). This is the underlying object with id, value and extensions. The accessor "getSuffix" gives direct access to the value + */ + public StringType getSuffixElement() { + if (this.suffix == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorComponent.suffix"); + else if (Configuration.doAutoCreate()) + this.suffix = new StringType(); // bb + return this.suffix; + } + + public boolean hasSuffixElement() { + return this.suffix != null && !this.suffix.isEmpty(); + } + + public boolean hasSuffix() { + return this.suffix != null && !this.suffix.isEmpty(); + } + + /** + * @param value {@link #suffix} (Eg 2nd, 3rd, Jr, Sr.). This is the underlying object with id, value and extensions. The accessor "getSuffix" gives direct access to the value + */ + public CitationContributorListContributorComponent setSuffixElement(StringType value) { + this.suffix = value; + return this; + } + + /** + * @return Eg 2nd, 3rd, Jr, Sr. + */ + public String getSuffix() { + return this.suffix == null ? null : this.suffix.getValue(); + } + + /** + * @param value Eg 2nd, 3rd, Jr, Sr. + */ + public CitationContributorListContributorComponent setSuffix(String value) { + if (Utilities.noString(value)) + this.suffix = null; + else { + if (this.suffix == null) + this.suffix = new StringType(); + this.suffix.setValue(value); + } + return this; + } + + /** + * @return {@link #initials} (Initials for forename.). This is the underlying object with id, value and extensions. The accessor "getInitials" gives direct access to the value + */ + public StringType getInitialsElement() { + if (this.initials == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorComponent.initials"); + else if (Configuration.doAutoCreate()) + this.initials = new StringType(); // bb + return this.initials; + } + + public boolean hasInitialsElement() { + return this.initials != null && !this.initials.isEmpty(); + } + + public boolean hasInitials() { + return this.initials != null && !this.initials.isEmpty(); + } + + /** + * @param value {@link #initials} (Initials for forename.). This is the underlying object with id, value and extensions. The accessor "getInitials" gives direct access to the value + */ + public CitationContributorListContributorComponent setInitialsElement(StringType value) { + this.initials = value; + return this; + } + + /** + * @return Initials for forename. + */ + public String getInitials() { + return this.initials == null ? null : this.initials.getValue(); + } + + /** + * @param value Initials for forename. + */ + public CitationContributorListContributorComponent setInitials(String value) { + if (Utilities.noString(value)) + this.initials = null; + else { + if (this.initials == null) + this.initials = new StringType(); + this.initials.setValue(value); + } + return this; + } + + /** + * @return {@link #collectiveName} (Used for collective or corporate name as a contributor.). This is the underlying object with id, value and extensions. The accessor "getCollectiveName" gives direct access to the value + */ + public StringType getCollectiveNameElement() { + if (this.collectiveName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorComponent.collectiveName"); + else if (Configuration.doAutoCreate()) + this.collectiveName = new StringType(); // bb + return this.collectiveName; + } + + public boolean hasCollectiveNameElement() { + return this.collectiveName != null && !this.collectiveName.isEmpty(); + } + + public boolean hasCollectiveName() { + return this.collectiveName != null && !this.collectiveName.isEmpty(); + } + + /** + * @param value {@link #collectiveName} (Used for collective or corporate name as a contributor.). This is the underlying object with id, value and extensions. The accessor "getCollectiveName" gives direct access to the value + */ + public CitationContributorListContributorComponent setCollectiveNameElement(StringType value) { + this.collectiveName = value; + return this; + } + + /** + * @return Used for collective or corporate name as a contributor. + */ + public String getCollectiveName() { + return this.collectiveName == null ? null : this.collectiveName.getValue(); + } + + /** + * @param value Used for collective or corporate name as a contributor. + */ + public CitationContributorListContributorComponent setCollectiveName(String value) { + if (Utilities.noString(value)) + this.collectiveName = null; + else { + if (this.collectiveName == null) + this.collectiveName = new StringType(); + this.collectiveName.setValue(value); + } + return this; + } + + /** + * @return {@link #identifier} (Contributor identifier, eg ORCID.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationContributorListContributorComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public CitationContributorListContributorComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + /** + * @return {@link #contribution} (The specific contributions.) + */ + public List getContribution() { + if (this.contribution == null) + this.contribution = new ArrayList(); + return this.contribution; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationContributorListContributorComponent setContribution(List theContribution) { + this.contribution = theContribution; + return this; + } + + public boolean hasContribution() { + if (this.contribution == null) + return false; + for (CodeableConcept item : this.contribution) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addContribution() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.contribution == null) + this.contribution = new ArrayList(); + this.contribution.add(t); + return t; + } + + public CitationContributorListContributorComponent addContribution(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.contribution == null) + this.contribution = new ArrayList(); + this.contribution.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #contribution}, creating it if it does not already exist {3} + */ + public CodeableConcept getContributionFirstRep() { + if (getContribution().isEmpty()) { + addContribution(); + } + return getContribution().get(0); + } + + /** + * @return {@link #affiliationInfo} (Organizational affiliation.) + */ + public List getAffiliationInfo() { + if (this.affiliationInfo == null) + this.affiliationInfo = new ArrayList(); + return this.affiliationInfo; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationContributorListContributorComponent setAffiliationInfo(List theAffiliationInfo) { + this.affiliationInfo = theAffiliationInfo; + return this; + } + + public boolean hasAffiliationInfo() { + if (this.affiliationInfo == null) + return false; + for (CitationContributorListContributorAffiliationInfoComponent item : this.affiliationInfo) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationContributorListContributorAffiliationInfoComponent addAffiliationInfo() { //3 + CitationContributorListContributorAffiliationInfoComponent t = new CitationContributorListContributorAffiliationInfoComponent(); + if (this.affiliationInfo == null) + this.affiliationInfo = new ArrayList(); + this.affiliationInfo.add(t); + return t; + } + + public CitationContributorListContributorComponent addAffiliationInfo(CitationContributorListContributorAffiliationInfoComponent t) { //3 + if (t == null) + return this; + if (this.affiliationInfo == null) + this.affiliationInfo = new ArrayList(); + this.affiliationInfo.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #affiliationInfo}, creating it if it does not already exist {3} + */ + public CitationContributorListContributorAffiliationInfoComponent getAffiliationInfoFirstRep() { + if (getAffiliationInfo().isEmpty()) { + addAffiliationInfo(); + } + return getAffiliationInfo().get(0); + } + + /** + * @return {@link #listOrder} (Used to code order of contributors.). This is the underlying object with id, value and extensions. The accessor "getListOrder" gives direct access to the value + */ + public PositiveIntType getListOrderElement() { + if (this.listOrder == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorComponent.listOrder"); + else if (Configuration.doAutoCreate()) + this.listOrder = new PositiveIntType(); // bb + return this.listOrder; + } + + public boolean hasListOrderElement() { + return this.listOrder != null && !this.listOrder.isEmpty(); + } + + public boolean hasListOrder() { + return this.listOrder != null && !this.listOrder.isEmpty(); + } + + /** + * @param value {@link #listOrder} (Used to code order of contributors.). This is the underlying object with id, value and extensions. The accessor "getListOrder" gives direct access to the value + */ + public CitationContributorListContributorComponent setListOrderElement(PositiveIntType value) { + this.listOrder = value; + return this; + } + + /** + * @return Used to code order of contributors. + */ + public int getListOrder() { + return this.listOrder == null || this.listOrder.isEmpty() ? 0 : this.listOrder.getValue(); + } + + /** + * @param value Used to code order of contributors. + */ + public CitationContributorListContributorComponent setListOrder(int value) { + if (this.listOrder == null) + this.listOrder = new PositiveIntType(); + this.listOrder.setValue(value); + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("lastName", "string", "Surname or single name.", 0, 1, lastName)); + children.add(new Property("foreName", "string", "Remainder of name except for suffix.", 0, 1, foreName)); + children.add(new Property("suffix", "string", "Eg 2nd, 3rd, Jr, Sr.", 0, 1, suffix)); + children.add(new Property("initials", "string", "Initials for forename.", 0, 1, initials)); + children.add(new Property("collectiveName", "string", "Used for collective or corporate name as a contributor.", 0, 1, collectiveName)); + children.add(new Property("identifier", "Identifier", "Contributor identifier, eg ORCID.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("contribution", "CodeableConcept", "The specific contributions.", 0, java.lang.Integer.MAX_VALUE, contribution)); + children.add(new Property("affiliationInfo", "", "Organizational affiliation.", 0, java.lang.Integer.MAX_VALUE, affiliationInfo)); + children.add(new Property("listOrder", "positiveInt", "Used to code order of contributors.", 0, 1, listOrder)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1459599807: /*lastName*/ return new Property("lastName", "string", "Surname or single name.", 0, 1, lastName); + case 466107751: /*foreName*/ return new Property("foreName", "string", "Remainder of name except for suffix.", 0, 1, foreName); + case -891422895: /*suffix*/ return new Property("suffix", "string", "Eg 2nd, 3rd, Jr, Sr.", 0, 1, suffix); + case 269062575: /*initials*/ return new Property("initials", "string", "Initials for forename.", 0, 1, initials); + case 502871833: /*collectiveName*/ return new Property("collectiveName", "string", "Used for collective or corporate name as a contributor.", 0, 1, collectiveName); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Contributor identifier, eg ORCID.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 1375970320: /*contribution*/ return new Property("contribution", "CodeableConcept", "The specific contributions.", 0, java.lang.Integer.MAX_VALUE, contribution); + case -215129154: /*affiliationInfo*/ return new Property("affiliationInfo", "", "Organizational affiliation.", 0, java.lang.Integer.MAX_VALUE, affiliationInfo); + case -1238918832: /*listOrder*/ return new Property("listOrder", "positiveInt", "Used to code order of contributors.", 0, 1, listOrder); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1459599807: /*lastName*/ return this.lastName == null ? new Base[0] : new Base[] {this.lastName}; // StringType + case 466107751: /*foreName*/ return this.foreName == null ? new Base[0] : new Base[] {this.foreName}; // StringType + case -891422895: /*suffix*/ return this.suffix == null ? new Base[0] : new Base[] {this.suffix}; // StringType + case 269062575: /*initials*/ return this.initials == null ? new Base[0] : new Base[] {this.initials}; // StringType + case 502871833: /*collectiveName*/ return this.collectiveName == null ? new Base[0] : new Base[] {this.collectiveName}; // StringType + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 1375970320: /*contribution*/ return this.contribution == null ? new Base[0] : this.contribution.toArray(new Base[this.contribution.size()]); // CodeableConcept + case -215129154: /*affiliationInfo*/ return this.affiliationInfo == null ? new Base[0] : this.affiliationInfo.toArray(new Base[this.affiliationInfo.size()]); // CitationContributorListContributorAffiliationInfoComponent + case -1238918832: /*listOrder*/ return this.listOrder == null ? new Base[0] : new Base[] {this.listOrder}; // PositiveIntType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1459599807: // lastName + this.lastName = TypeConvertor.castToString(value); // StringType + return value; + case 466107751: // foreName + this.foreName = TypeConvertor.castToString(value); // StringType + return value; + case -891422895: // suffix + this.suffix = TypeConvertor.castToString(value); // StringType + return value; + case 269062575: // initials + this.initials = TypeConvertor.castToString(value); // StringType + return value; + case 502871833: // collectiveName + this.collectiveName = TypeConvertor.castToString(value); // StringType + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case 1375970320: // contribution + this.getContribution().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case -215129154: // affiliationInfo + this.getAffiliationInfo().add((CitationContributorListContributorAffiliationInfoComponent) value); // CitationContributorListContributorAffiliationInfoComponent + return value; + case -1238918832: // listOrder + this.listOrder = TypeConvertor.castToPositiveInt(value); // PositiveIntType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("lastName")) { + this.lastName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("foreName")) { + this.foreName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("suffix")) { + this.suffix = TypeConvertor.castToString(value); // StringType + } else if (name.equals("initials")) { + this.initials = TypeConvertor.castToString(value); // StringType + } else if (name.equals("collectiveName")) { + this.collectiveName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("contribution")) { + this.getContribution().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("affiliationInfo")) { + this.getAffiliationInfo().add((CitationContributorListContributorAffiliationInfoComponent) value); + } else if (name.equals("listOrder")) { + this.listOrder = TypeConvertor.castToPositiveInt(value); // PositiveIntType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1459599807: return getLastNameElement(); + case 466107751: return getForeNameElement(); + case -891422895: return getSuffixElement(); + case 269062575: return getInitialsElement(); + case 502871833: return getCollectiveNameElement(); + case -1618432855: return addIdentifier(); + case 1375970320: return addContribution(); + case -215129154: return addAffiliationInfo(); + case -1238918832: return getListOrderElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1459599807: /*lastName*/ return new String[] {"string"}; + case 466107751: /*foreName*/ return new String[] {"string"}; + case -891422895: /*suffix*/ return new String[] {"string"}; + case 269062575: /*initials*/ return new String[] {"string"}; + case 502871833: /*collectiveName*/ return new String[] {"string"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 1375970320: /*contribution*/ return new String[] {"CodeableConcept"}; + case -215129154: /*affiliationInfo*/ return new String[] {}; + case -1238918832: /*listOrder*/ return new String[] {"positiveInt"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("lastName")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.lastName"); + } + else if (name.equals("foreName")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.foreName"); + } + else if (name.equals("suffix")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.suffix"); + } + else if (name.equals("initials")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.initials"); + } + else if (name.equals("collectiveName")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.collectiveName"); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else if (name.equals("contribution")) { + return addContribution(); + } + else if (name.equals("affiliationInfo")) { + return addAffiliationInfo(); + } + else if (name.equals("listOrder")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.listOrder"); + } + else + return super.addChild(name); + } + + public CitationContributorListContributorComponent copy() { + CitationContributorListContributorComponent dst = new CitationContributorListContributorComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationContributorListContributorComponent dst) { + super.copyValues(dst); + dst.lastName = lastName == null ? null : lastName.copy(); + dst.foreName = foreName == null ? null : foreName.copy(); + dst.suffix = suffix == null ? null : suffix.copy(); + dst.initials = initials == null ? null : initials.copy(); + dst.collectiveName = collectiveName == null ? null : collectiveName.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + if (contribution != null) { + dst.contribution = new ArrayList(); + for (CodeableConcept i : contribution) + dst.contribution.add(i.copy()); + }; + if (affiliationInfo != null) { + dst.affiliationInfo = new ArrayList(); + for (CitationContributorListContributorAffiliationInfoComponent i : affiliationInfo) + dst.affiliationInfo.add(i.copy()); + }; + dst.listOrder = listOrder == null ? null : listOrder.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationContributorListContributorComponent)) + return false; + CitationContributorListContributorComponent o = (CitationContributorListContributorComponent) other_; + return compareDeep(lastName, o.lastName, true) && compareDeep(foreName, o.foreName, true) && compareDeep(suffix, o.suffix, true) + && compareDeep(initials, o.initials, true) && compareDeep(collectiveName, o.collectiveName, true) + && compareDeep(identifier, o.identifier, true) && compareDeep(contribution, o.contribution, true) + && compareDeep(affiliationInfo, o.affiliationInfo, true) && compareDeep(listOrder, o.listOrder, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationContributorListContributorComponent)) + return false; + CitationContributorListContributorComponent o = (CitationContributorListContributorComponent) other_; + return compareValues(lastName, o.lastName, true) && compareValues(foreName, o.foreName, true) && compareValues(suffix, o.suffix, true) + && compareValues(initials, o.initials, true) && compareValues(collectiveName, o.collectiveName, true) + && compareValues(listOrder, o.listOrder, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(lastName, foreName, suffix + , initials, collectiveName, identifier, contribution, affiliationInfo, listOrder + ); + } + + public String fhirType() { + return "Citation.contributorList.contributor"; + + } + + } + + @Block() + public static class CitationContributorListContributorAffiliationInfoComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Display for the organization. + */ + @Child(name = "affiliation", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Display for the organization", formalDefinition="Display for the organization." ) + protected StringType affiliation; + + /** + * Role. + */ + @Child(name = "role", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Role", formalDefinition="Role." ) + protected StringType role; + + /** + * Identifier for the organization. + */ + @Child(name = "identifier", type = {Identifier.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Identifier for the organization", formalDefinition="Identifier for the organization." ) + protected List identifier; + + private static final long serialVersionUID = 548335522L; + + /** + * Constructor + */ + public CitationContributorListContributorAffiliationInfoComponent() { + super(); + } + + /** + * @return {@link #affiliation} (Display for the organization.). This is the underlying object with id, value and extensions. The accessor "getAffiliation" gives direct access to the value + */ + public StringType getAffiliationElement() { + if (this.affiliation == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorAffiliationInfoComponent.affiliation"); + else if (Configuration.doAutoCreate()) + this.affiliation = new StringType(); // bb + return this.affiliation; + } + + public boolean hasAffiliationElement() { + return this.affiliation != null && !this.affiliation.isEmpty(); + } + + public boolean hasAffiliation() { + return this.affiliation != null && !this.affiliation.isEmpty(); + } + + /** + * @param value {@link #affiliation} (Display for the organization.). This is the underlying object with id, value and extensions. The accessor "getAffiliation" gives direct access to the value + */ + public CitationContributorListContributorAffiliationInfoComponent setAffiliationElement(StringType value) { + this.affiliation = value; + return this; + } + + /** + * @return Display for the organization. + */ + public String getAffiliation() { + return this.affiliation == null ? null : this.affiliation.getValue(); + } + + /** + * @param value Display for the organization. + */ + public CitationContributorListContributorAffiliationInfoComponent setAffiliation(String value) { + if (Utilities.noString(value)) + this.affiliation = null; + else { + if (this.affiliation == null) + this.affiliation = new StringType(); + this.affiliation.setValue(value); + } + return this; + } + + /** + * @return {@link #role} (Role.). This is the underlying object with id, value and extensions. The accessor "getRole" gives direct access to the value + */ + public StringType getRoleElement() { + if (this.role == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationContributorListContributorAffiliationInfoComponent.role"); + else if (Configuration.doAutoCreate()) + this.role = new StringType(); // bb + return this.role; + } + + public boolean hasRoleElement() { + return this.role != null && !this.role.isEmpty(); + } + + public boolean hasRole() { + return this.role != null && !this.role.isEmpty(); + } + + /** + * @param value {@link #role} (Role.). This is the underlying object with id, value and extensions. The accessor "getRole" gives direct access to the value + */ + public CitationContributorListContributorAffiliationInfoComponent setRoleElement(StringType value) { + this.role = value; + return this; + } + + /** + * @return Role. + */ + public String getRole() { + return this.role == null ? null : this.role.getValue(); + } + + /** + * @param value Role. + */ + public CitationContributorListContributorAffiliationInfoComponent setRole(String value) { + if (Utilities.noString(value)) + this.role = null; + else { + if (this.role == null) + this.role = new StringType(); + this.role.setValue(value); + } + return this; + } + + /** + * @return {@link #identifier} (Identifier for the organization.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationContributorListContributorAffiliationInfoComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public CitationContributorListContributorAffiliationInfoComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("affiliation", "string", "Display for the organization.", 0, 1, affiliation)); + children.add(new Property("role", "string", "Role.", 0, 1, role)); + children.add(new Property("identifier", "Identifier", "Identifier for the organization.", 0, java.lang.Integer.MAX_VALUE, identifier)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 2019918576: /*affiliation*/ return new Property("affiliation", "string", "Display for the organization.", 0, 1, affiliation); + case 3506294: /*role*/ return new Property("role", "string", "Role.", 0, 1, role); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for the organization.", 0, java.lang.Integer.MAX_VALUE, identifier); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 2019918576: /*affiliation*/ return this.affiliation == null ? new Base[0] : new Base[] {this.affiliation}; // StringType + case 3506294: /*role*/ return this.role == null ? new Base[0] : new Base[] {this.role}; // StringType + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 2019918576: // affiliation + this.affiliation = TypeConvertor.castToString(value); // StringType + return value; + case 3506294: // role + this.role = TypeConvertor.castToString(value); // StringType + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("affiliation")) { + this.affiliation = TypeConvertor.castToString(value); // StringType + } else if (name.equals("role")) { + this.role = TypeConvertor.castToString(value); // StringType + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 2019918576: return getAffiliationElement(); + case 3506294: return getRoleElement(); + case -1618432855: return addIdentifier(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 2019918576: /*affiliation*/ return new String[] {"string"}; + case 3506294: /*role*/ return new String[] {"string"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("affiliation")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.affiliationInfo.affiliation"); + } + else if (name.equals("role")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.contributorList.contributor.affiliationInfo.role"); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else + return super.addChild(name); + } + + public CitationContributorListContributorAffiliationInfoComponent copy() { + CitationContributorListContributorAffiliationInfoComponent dst = new CitationContributorListContributorAffiliationInfoComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationContributorListContributorAffiliationInfoComponent dst) { + super.copyValues(dst); + dst.affiliation = affiliation == null ? null : affiliation.copy(); + dst.role = role == null ? null : role.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationContributorListContributorAffiliationInfoComponent)) + return false; + CitationContributorListContributorAffiliationInfoComponent o = (CitationContributorListContributorAffiliationInfoComponent) other_; + return compareDeep(affiliation, o.affiliation, true) && compareDeep(role, o.role, true) && compareDeep(identifier, o.identifier, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationContributorListContributorAffiliationInfoComponent)) + return false; + CitationContributorListContributorAffiliationInfoComponent o = (CitationContributorListContributorAffiliationInfoComponent) other_; + return compareValues(affiliation, o.affiliation, true) && compareValues(role, o.role, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(affiliation, role, identifier + ); + } + + public String fhirType() { + return "Citation.contributorList.contributor.affiliationInfo"; + + } + + } + + @Block() + public static class CitationAlternativeFormComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic. + */ + @Child(name = "publishingModel", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic", formalDefinition="Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publishing-model-type") + protected CodeableConcept publishingModel; + + /** + * Language in which the article is published. + */ + @Child(name = "language", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Language in which the article is published", formalDefinition="Language in which the article is published." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/languages") + protected CodeableConcept language; + + /** + * The specific issue in which the cited article resides. + */ + @Child(name = "journalIssue", type = {}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The specific issue in which the cited article resides", formalDefinition="The specific issue in which the cited article resides." ) + protected CitationAlternativeFormJournalIssueComponent journalIssue; + + /** + * Indicates the inclusive pages for the article cited. + */ + @Child(name = "pagination", type = {}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Indicates the inclusive pages for the article cited", formalDefinition="Indicates the inclusive pages for the article cited." ) + protected CitationAlternativeFormPaginationComponent pagination; + + private static final long serialVersionUID = -991805122L; + + /** + * Constructor + */ + public CitationAlternativeFormComponent() { + super(); + } + + /** + * @return {@link #publishingModel} (Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.) + */ + public CodeableConcept getPublishingModel() { + if (this.publishingModel == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormComponent.publishingModel"); + else if (Configuration.doAutoCreate()) + this.publishingModel = new CodeableConcept(); // cc + return this.publishingModel; + } + + public boolean hasPublishingModel() { + return this.publishingModel != null && !this.publishingModel.isEmpty(); + } + + /** + * @param value {@link #publishingModel} (Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.) + */ + public CitationAlternativeFormComponent setPublishingModel(CodeableConcept value) { + this.publishingModel = value; + return this; + } + + /** + * @return {@link #language} (Language in which the article is published.) + */ + public CodeableConcept getLanguage() { + if (this.language == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormComponent.language"); + else if (Configuration.doAutoCreate()) + this.language = new CodeableConcept(); // cc + return this.language; + } + + public boolean hasLanguage() { + return this.language != null && !this.language.isEmpty(); + } + + /** + * @param value {@link #language} (Language in which the article is published.) + */ + public CitationAlternativeFormComponent setLanguage(CodeableConcept value) { + this.language = value; + return this; + } + + /** + * @return {@link #journalIssue} (The specific issue in which the cited article resides.) + */ + public CitationAlternativeFormJournalIssueComponent getJournalIssue() { + if (this.journalIssue == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormComponent.journalIssue"); + else if (Configuration.doAutoCreate()) + this.journalIssue = new CitationAlternativeFormJournalIssueComponent(); // cc + return this.journalIssue; + } + + public boolean hasJournalIssue() { + return this.journalIssue != null && !this.journalIssue.isEmpty(); + } + + /** + * @param value {@link #journalIssue} (The specific issue in which the cited article resides.) + */ + public CitationAlternativeFormComponent setJournalIssue(CitationAlternativeFormJournalIssueComponent value) { + this.journalIssue = value; + return this; + } + + /** + * @return {@link #pagination} (Indicates the inclusive pages for the article cited.) + */ + public CitationAlternativeFormPaginationComponent getPagination() { + if (this.pagination == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormComponent.pagination"); + else if (Configuration.doAutoCreate()) + this.pagination = new CitationAlternativeFormPaginationComponent(); // cc + return this.pagination; + } + + public boolean hasPagination() { + return this.pagination != null && !this.pagination.isEmpty(); + } + + /** + * @param value {@link #pagination} (Indicates the inclusive pages for the article cited.) + */ + public CitationAlternativeFormComponent setPagination(CitationAlternativeFormPaginationComponent value) { + this.pagination = value; + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("publishingModel", "CodeableConcept", "Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.", 0, 1, publishingModel)); + children.add(new Property("language", "CodeableConcept", "Language in which the article is published.", 0, 1, language)); + children.add(new Property("journalIssue", "", "The specific issue in which the cited article resides.", 0, 1, journalIssue)); + children.add(new Property("pagination", "", "Indicates the inclusive pages for the article cited.", 0, 1, pagination)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 747318902: /*publishingModel*/ return new Property("publishingModel", "CodeableConcept", "Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.", 0, 1, publishingModel); + case -1613589672: /*language*/ return new Property("language", "CodeableConcept", "Language in which the article is published.", 0, 1, language); + case -716835870: /*journalIssue*/ return new Property("journalIssue", "", "The specific issue in which the cited article resides.", 0, 1, journalIssue); + case 1297692570: /*pagination*/ return new Property("pagination", "", "Indicates the inclusive pages for the article cited.", 0, 1, pagination); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 747318902: /*publishingModel*/ return this.publishingModel == null ? new Base[0] : new Base[] {this.publishingModel}; // CodeableConcept + case -1613589672: /*language*/ return this.language == null ? new Base[0] : new Base[] {this.language}; // CodeableConcept + case -716835870: /*journalIssue*/ return this.journalIssue == null ? new Base[0] : new Base[] {this.journalIssue}; // CitationAlternativeFormJournalIssueComponent + case 1297692570: /*pagination*/ return this.pagination == null ? new Base[0] : new Base[] {this.pagination}; // CitationAlternativeFormPaginationComponent + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 747318902: // publishingModel + this.publishingModel = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -1613589672: // language + this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -716835870: // journalIssue + this.journalIssue = (CitationAlternativeFormJournalIssueComponent) value; // CitationAlternativeFormJournalIssueComponent + return value; + case 1297692570: // pagination + this.pagination = (CitationAlternativeFormPaginationComponent) value; // CitationAlternativeFormPaginationComponent + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("publishingModel")) { + this.publishingModel = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("language")) { + this.language = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("journalIssue")) { + this.journalIssue = (CitationAlternativeFormJournalIssueComponent) value; // CitationAlternativeFormJournalIssueComponent + } else if (name.equals("pagination")) { + this.pagination = (CitationAlternativeFormPaginationComponent) value; // CitationAlternativeFormPaginationComponent + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 747318902: return getPublishingModel(); + case -1613589672: return getLanguage(); + case -716835870: return getJournalIssue(); + case 1297692570: return getPagination(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 747318902: /*publishingModel*/ return new String[] {"CodeableConcept"}; + case -1613589672: /*language*/ return new String[] {"CodeableConcept"}; + case -716835870: /*journalIssue*/ return new String[] {}; + case 1297692570: /*pagination*/ return new String[] {}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("publishingModel")) { + this.publishingModel = new CodeableConcept(); + return this.publishingModel; + } + else if (name.equals("language")) { + this.language = new CodeableConcept(); + return this.language; + } + else if (name.equals("journalIssue")) { + this.journalIssue = new CitationAlternativeFormJournalIssueComponent(); + return this.journalIssue; + } + else if (name.equals("pagination")) { + this.pagination = new CitationAlternativeFormPaginationComponent(); + return this.pagination; + } + else + return super.addChild(name); + } + + public CitationAlternativeFormComponent copy() { + CitationAlternativeFormComponent dst = new CitationAlternativeFormComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAlternativeFormComponent dst) { + super.copyValues(dst); + dst.publishingModel = publishingModel == null ? null : publishingModel.copy(); + dst.language = language == null ? null : language.copy(); + dst.journalIssue = journalIssue == null ? null : journalIssue.copy(); + dst.pagination = pagination == null ? null : pagination.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAlternativeFormComponent)) + return false; + CitationAlternativeFormComponent o = (CitationAlternativeFormComponent) other_; + return compareDeep(publishingModel, o.publishingModel, true) && compareDeep(language, o.language, true) + && compareDeep(journalIssue, o.journalIssue, true) && compareDeep(pagination, o.pagination, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAlternativeFormComponent)) + return false; + CitationAlternativeFormComponent o = (CitationAlternativeFormComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(publishingModel, language + , journalIssue, pagination); + } + + public String fhirType() { + return "Citation.alternativeForm"; + + } + + } + + @Block() + public static class CitationAlternativeFormJournalIssueComponent extends BackboneElement implements IBaseBackboneElement { + /** + * NLM codes Internet or Print. + */ + @Child(name = "citedMedium", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="NLM codes Internet or Print", formalDefinition="NLM codes Internet or Print." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/journal-issue-medium") + protected CodeableConcept citedMedium; + + /** + * Volume number of journal in which the article is published. + */ + @Child(name = "volume", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Volume number of journal in which the article is published", formalDefinition="Volume number of journal in which the article is published." ) + protected StringType volume; + + /** + * Issue, part or supplement of journal in which the article is published. + */ + @Child(name = "issue", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Issue, part or supplement of journal in which the article is published", formalDefinition="Issue, part or supplement of journal in which the article is published." ) + protected StringType issue; + + /** + * Date on which the issue of the journal was published. + */ + @Child(name = "publicationDate", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Date on which the issue of the journal was published", formalDefinition="Date on which the issue of the journal was published." ) + protected StringType publicationDate; + + private static final long serialVersionUID = -1343937439L; + + /** + * Constructor + */ + public CitationAlternativeFormJournalIssueComponent() { + super(); + } + + /** + * @return {@link #citedMedium} (NLM codes Internet or Print.) + */ + public CodeableConcept getCitedMedium() { + if (this.citedMedium == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormJournalIssueComponent.citedMedium"); + else if (Configuration.doAutoCreate()) + this.citedMedium = new CodeableConcept(); // cc + return this.citedMedium; + } + + public boolean hasCitedMedium() { + return this.citedMedium != null && !this.citedMedium.isEmpty(); + } + + /** + * @param value {@link #citedMedium} (NLM codes Internet or Print.) + */ + public CitationAlternativeFormJournalIssueComponent setCitedMedium(CodeableConcept value) { + this.citedMedium = value; + return this; + } + + /** + * @return {@link #volume} (Volume number of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getVolume" gives direct access to the value + */ + public StringType getVolumeElement() { + if (this.volume == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormJournalIssueComponent.volume"); + else if (Configuration.doAutoCreate()) + this.volume = new StringType(); // bb + return this.volume; + } + + public boolean hasVolumeElement() { + return this.volume != null && !this.volume.isEmpty(); + } + + public boolean hasVolume() { + return this.volume != null && !this.volume.isEmpty(); + } + + /** + * @param value {@link #volume} (Volume number of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getVolume" gives direct access to the value + */ + public CitationAlternativeFormJournalIssueComponent setVolumeElement(StringType value) { + this.volume = value; + return this; + } + + /** + * @return Volume number of journal in which the article is published. + */ + public String getVolume() { + return this.volume == null ? null : this.volume.getValue(); + } + + /** + * @param value Volume number of journal in which the article is published. + */ + public CitationAlternativeFormJournalIssueComponent setVolume(String value) { + if (Utilities.noString(value)) + this.volume = null; + else { + if (this.volume == null) + this.volume = new StringType(); + this.volume.setValue(value); + } + return this; + } + + /** + * @return {@link #issue} (Issue, part or supplement of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getIssue" gives direct access to the value + */ + public StringType getIssueElement() { + if (this.issue == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormJournalIssueComponent.issue"); + else if (Configuration.doAutoCreate()) + this.issue = new StringType(); // bb + return this.issue; + } + + public boolean hasIssueElement() { + return this.issue != null && !this.issue.isEmpty(); + } + + public boolean hasIssue() { + return this.issue != null && !this.issue.isEmpty(); + } + + /** + * @param value {@link #issue} (Issue, part or supplement of journal in which the article is published.). This is the underlying object with id, value and extensions. The accessor "getIssue" gives direct access to the value + */ + public CitationAlternativeFormJournalIssueComponent setIssueElement(StringType value) { + this.issue = value; + return this; + } + + /** + * @return Issue, part or supplement of journal in which the article is published. + */ + public String getIssue() { + return this.issue == null ? null : this.issue.getValue(); + } + + /** + * @param value Issue, part or supplement of journal in which the article is published. + */ + public CitationAlternativeFormJournalIssueComponent setIssue(String value) { + if (Utilities.noString(value)) + this.issue = null; + else { + if (this.issue == null) + this.issue = new StringType(); + this.issue.setValue(value); + } + return this; + } + + /** + * @return {@link #publicationDate} (Date on which the issue of the journal was published.). This is the underlying object with id, value and extensions. The accessor "getPublicationDate" gives direct access to the value + */ + public StringType getPublicationDateElement() { + if (this.publicationDate == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormJournalIssueComponent.publicationDate"); + else if (Configuration.doAutoCreate()) + this.publicationDate = new StringType(); // bb + return this.publicationDate; + } + + public boolean hasPublicationDateElement() { + return this.publicationDate != null && !this.publicationDate.isEmpty(); + } + + public boolean hasPublicationDate() { + return this.publicationDate != null && !this.publicationDate.isEmpty(); + } + + /** + * @param value {@link #publicationDate} (Date on which the issue of the journal was published.). This is the underlying object with id, value and extensions. The accessor "getPublicationDate" gives direct access to the value + */ + public CitationAlternativeFormJournalIssueComponent setPublicationDateElement(StringType value) { + this.publicationDate = value; + return this; + } + + /** + * @return Date on which the issue of the journal was published. + */ + public String getPublicationDate() { + return this.publicationDate == null ? null : this.publicationDate.getValue(); + } + + /** + * @param value Date on which the issue of the journal was published. + */ + public CitationAlternativeFormJournalIssueComponent setPublicationDate(String value) { + if (Utilities.noString(value)) + this.publicationDate = null; + else { + if (this.publicationDate == null) + this.publicationDate = new StringType(); + this.publicationDate.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("citedMedium", "CodeableConcept", "NLM codes Internet or Print.", 0, 1, citedMedium)); + children.add(new Property("volume", "string", "Volume number of journal in which the article is published.", 0, 1, volume)); + children.add(new Property("issue", "string", "Issue, part or supplement of journal in which the article is published.", 0, 1, issue)); + children.add(new Property("publicationDate", "string", "Date on which the issue of the journal was published.", 0, 1, publicationDate)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 612116418: /*citedMedium*/ return new Property("citedMedium", "CodeableConcept", "NLM codes Internet or Print.", 0, 1, citedMedium); + case -810883302: /*volume*/ return new Property("volume", "string", "Volume number of journal in which the article is published.", 0, 1, volume); + case 100509913: /*issue*/ return new Property("issue", "string", "Issue, part or supplement of journal in which the article is published.", 0, 1, issue); + case 1470566394: /*publicationDate*/ return new Property("publicationDate", "string", "Date on which the issue of the journal was published.", 0, 1, publicationDate); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 612116418: /*citedMedium*/ return this.citedMedium == null ? new Base[0] : new Base[] {this.citedMedium}; // CodeableConcept + case -810883302: /*volume*/ return this.volume == null ? new Base[0] : new Base[] {this.volume}; // StringType + case 100509913: /*issue*/ return this.issue == null ? new Base[0] : new Base[] {this.issue}; // StringType + case 1470566394: /*publicationDate*/ return this.publicationDate == null ? new Base[0] : new Base[] {this.publicationDate}; // StringType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 612116418: // citedMedium + this.citedMedium = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -810883302: // volume + this.volume = TypeConvertor.castToString(value); // StringType + return value; + case 100509913: // issue + this.issue = TypeConvertor.castToString(value); // StringType + return value; + case 1470566394: // publicationDate + this.publicationDate = TypeConvertor.castToString(value); // StringType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("citedMedium")) { + this.citedMedium = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("volume")) { + this.volume = TypeConvertor.castToString(value); // StringType + } else if (name.equals("issue")) { + this.issue = TypeConvertor.castToString(value); // StringType + } else if (name.equals("publicationDate")) { + this.publicationDate = TypeConvertor.castToString(value); // StringType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 612116418: return getCitedMedium(); + case -810883302: return getVolumeElement(); + case 100509913: return getIssueElement(); + case 1470566394: return getPublicationDateElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 612116418: /*citedMedium*/ return new String[] {"CodeableConcept"}; + case -810883302: /*volume*/ return new String[] {"string"}; + case 100509913: /*issue*/ return new String[] {"string"}; + case 1470566394: /*publicationDate*/ return new String[] {"string"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("citedMedium")) { + this.citedMedium = new CodeableConcept(); + return this.citedMedium; + } + else if (name.equals("volume")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeForm.journalIssue.volume"); + } + else if (name.equals("issue")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeForm.journalIssue.issue"); + } + else if (name.equals("publicationDate")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeForm.journalIssue.publicationDate"); + } + else + return super.addChild(name); + } + + public CitationAlternativeFormJournalIssueComponent copy() { + CitationAlternativeFormJournalIssueComponent dst = new CitationAlternativeFormJournalIssueComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAlternativeFormJournalIssueComponent dst) { + super.copyValues(dst); + dst.citedMedium = citedMedium == null ? null : citedMedium.copy(); + dst.volume = volume == null ? null : volume.copy(); + dst.issue = issue == null ? null : issue.copy(); + dst.publicationDate = publicationDate == null ? null : publicationDate.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAlternativeFormJournalIssueComponent)) + return false; + CitationAlternativeFormJournalIssueComponent o = (CitationAlternativeFormJournalIssueComponent) other_; + return compareDeep(citedMedium, o.citedMedium, true) && compareDeep(volume, o.volume, true) && compareDeep(issue, o.issue, true) + && compareDeep(publicationDate, o.publicationDate, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAlternativeFormJournalIssueComponent)) + return false; + CitationAlternativeFormJournalIssueComponent o = (CitationAlternativeFormJournalIssueComponent) other_; + return compareValues(volume, o.volume, true) && compareValues(issue, o.issue, true) && compareValues(publicationDate, o.publicationDate, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(citedMedium, volume, issue + , publicationDate); + } + + public String fhirType() { + return "Citation.alternativeForm.journalIssue"; + + } + + } + + @Block() + public static class CitationAlternativeFormPaginationComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used for full display of pagination. + */ + @Child(name = "pageString", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for full display of pagination", formalDefinition="Used for full display of pagination." ) + protected StringType pageString; + + /** + * Used for isolated representation of first page. + */ + @Child(name = "firstPage", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for isolated representation of first page", formalDefinition="Used for isolated representation of first page." ) + protected StringType firstPage; + + /** + * Used for isolated representation of last page. + */ + @Child(name = "lastPage", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used for isolated representation of last page", formalDefinition="Used for isolated representation of last page." ) + protected StringType lastPage; + + private static final long serialVersionUID = -690699049L; + + /** + * Constructor + */ + public CitationAlternativeFormPaginationComponent() { + super(); + } + + /** + * @return {@link #pageString} (Used for full display of pagination.). This is the underlying object with id, value and extensions. The accessor "getPageString" gives direct access to the value + */ + public StringType getPageStringElement() { + if (this.pageString == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormPaginationComponent.pageString"); + else if (Configuration.doAutoCreate()) + this.pageString = new StringType(); // bb + return this.pageString; + } + + public boolean hasPageStringElement() { + return this.pageString != null && !this.pageString.isEmpty(); + } + + public boolean hasPageString() { + return this.pageString != null && !this.pageString.isEmpty(); + } + + /** + * @param value {@link #pageString} (Used for full display of pagination.). This is the underlying object with id, value and extensions. The accessor "getPageString" gives direct access to the value + */ + public CitationAlternativeFormPaginationComponent setPageStringElement(StringType value) { + this.pageString = value; + return this; + } + + /** + * @return Used for full display of pagination. + */ + public String getPageString() { + return this.pageString == null ? null : this.pageString.getValue(); + } + + /** + * @param value Used for full display of pagination. + */ + public CitationAlternativeFormPaginationComponent setPageString(String value) { + if (Utilities.noString(value)) + this.pageString = null; + else { + if (this.pageString == null) + this.pageString = new StringType(); + this.pageString.setValue(value); + } + return this; + } + + /** + * @return {@link #firstPage} (Used for isolated representation of first page.). This is the underlying object with id, value and extensions. The accessor "getFirstPage" gives direct access to the value + */ + public StringType getFirstPageElement() { + if (this.firstPage == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormPaginationComponent.firstPage"); + else if (Configuration.doAutoCreate()) + this.firstPage = new StringType(); // bb + return this.firstPage; + } + + public boolean hasFirstPageElement() { + return this.firstPage != null && !this.firstPage.isEmpty(); + } + + public boolean hasFirstPage() { + return this.firstPage != null && !this.firstPage.isEmpty(); + } + + /** + * @param value {@link #firstPage} (Used for isolated representation of first page.). This is the underlying object with id, value and extensions. The accessor "getFirstPage" gives direct access to the value + */ + public CitationAlternativeFormPaginationComponent setFirstPageElement(StringType value) { + this.firstPage = value; + return this; + } + + /** + * @return Used for isolated representation of first page. + */ + public String getFirstPage() { + return this.firstPage == null ? null : this.firstPage.getValue(); + } + + /** + * @param value Used for isolated representation of first page. + */ + public CitationAlternativeFormPaginationComponent setFirstPage(String value) { + if (Utilities.noString(value)) + this.firstPage = null; + else { + if (this.firstPage == null) + this.firstPage = new StringType(); + this.firstPage.setValue(value); + } + return this; + } + + /** + * @return {@link #lastPage} (Used for isolated representation of last page.). This is the underlying object with id, value and extensions. The accessor "getLastPage" gives direct access to the value + */ + public StringType getLastPageElement() { + if (this.lastPage == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationAlternativeFormPaginationComponent.lastPage"); + else if (Configuration.doAutoCreate()) + this.lastPage = new StringType(); // bb + return this.lastPage; + } + + public boolean hasLastPageElement() { + return this.lastPage != null && !this.lastPage.isEmpty(); + } + + public boolean hasLastPage() { + return this.lastPage != null && !this.lastPage.isEmpty(); + } + + /** + * @param value {@link #lastPage} (Used for isolated representation of last page.). This is the underlying object with id, value and extensions. The accessor "getLastPage" gives direct access to the value + */ + public CitationAlternativeFormPaginationComponent setLastPageElement(StringType value) { + this.lastPage = value; + return this; + } + + /** + * @return Used for isolated representation of last page. + */ + public String getLastPage() { + return this.lastPage == null ? null : this.lastPage.getValue(); + } + + /** + * @param value Used for isolated representation of last page. + */ + public CitationAlternativeFormPaginationComponent setLastPage(String value) { + if (Utilities.noString(value)) + this.lastPage = null; + else { + if (this.lastPage == null) + this.lastPage = new StringType(); + this.lastPage.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("pageString", "string", "Used for full display of pagination.", 0, 1, pageString)); + children.add(new Property("firstPage", "string", "Used for isolated representation of first page.", 0, 1, firstPage)); + children.add(new Property("lastPage", "string", "Used for isolated representation of last page.", 0, 1, lastPage)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 1287145344: /*pageString*/ return new Property("pageString", "string", "Used for full display of pagination.", 0, 1, pageString); + case 132895071: /*firstPage*/ return new Property("firstPage", "string", "Used for isolated representation of first page.", 0, 1, firstPage); + case -1459540411: /*lastPage*/ return new Property("lastPage", "string", "Used for isolated representation of last page.", 0, 1, lastPage); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 1287145344: /*pageString*/ return this.pageString == null ? new Base[0] : new Base[] {this.pageString}; // StringType + case 132895071: /*firstPage*/ return this.firstPage == null ? new Base[0] : new Base[] {this.firstPage}; // StringType + case -1459540411: /*lastPage*/ return this.lastPage == null ? new Base[0] : new Base[] {this.lastPage}; // StringType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 1287145344: // pageString + this.pageString = TypeConvertor.castToString(value); // StringType + return value; + case 132895071: // firstPage + this.firstPage = TypeConvertor.castToString(value); // StringType + return value; + case -1459540411: // lastPage + this.lastPage = TypeConvertor.castToString(value); // StringType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("pageString")) { + this.pageString = TypeConvertor.castToString(value); // StringType + } else if (name.equals("firstPage")) { + this.firstPage = TypeConvertor.castToString(value); // StringType + } else if (name.equals("lastPage")) { + this.lastPage = TypeConvertor.castToString(value); // StringType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1287145344: return getPageStringElement(); + case 132895071: return getFirstPageElement(); + case -1459540411: return getLastPageElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1287145344: /*pageString*/ return new String[] {"string"}; + case 132895071: /*firstPage*/ return new String[] {"string"}; + case -1459540411: /*lastPage*/ return new String[] {"string"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("pageString")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeForm.pagination.pageString"); + } + else if (name.equals("firstPage")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeForm.pagination.firstPage"); + } + else if (name.equals("lastPage")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.alternativeForm.pagination.lastPage"); + } + else + return super.addChild(name); + } + + public CitationAlternativeFormPaginationComponent copy() { + CitationAlternativeFormPaginationComponent dst = new CitationAlternativeFormPaginationComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationAlternativeFormPaginationComponent dst) { + super.copyValues(dst); + dst.pageString = pageString == null ? null : pageString.copy(); + dst.firstPage = firstPage == null ? null : firstPage.copy(); + dst.lastPage = lastPage == null ? null : lastPage.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationAlternativeFormPaginationComponent)) + return false; + CitationAlternativeFormPaginationComponent o = (CitationAlternativeFormPaginationComponent) other_; + return compareDeep(pageString, o.pageString, true) && compareDeep(firstPage, o.firstPage, true) + && compareDeep(lastPage, o.lastPage, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationAlternativeFormPaginationComponent)) + return false; + CitationAlternativeFormPaginationComponent o = (CitationAlternativeFormPaginationComponent) other_; + return compareValues(pageString, o.pageString, true) && compareValues(firstPage, o.firstPage, true) + && compareValues(lastPage, o.lastPage, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(pageString, firstPage, lastPage + ); + } + + public String fhirType() { + return "Citation.alternativeForm.pagination"; + + } + + } + + @Block() + public static class CitationMedlinePubMedComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Used for status. + */ + @Child(name = "medlineState", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Completed | In-Process | PubMed-not-MEDLINE | In-Data-Review | Publisher | MEDLINE | OLDMEDLINE", formalDefinition="Used for status." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medline-pubmed-status") + protected CodeableConcept medlineState; + + /** + * Used for owner. + */ + @Child(name = "owner", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="NLM | NASA | PIP | KIE | HSR | HMD | SIS | NOTNLM", formalDefinition="Used for owner." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medline-pubmed-owner") + protected CodeableConcept owner; + + /** + * PubMed ID. + */ + @Child(name = "pmid", type = {PositiveIntType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="PubMed ID", formalDefinition="PubMed ID." ) + protected PositiveIntType pmid; + + /** + * PubMed ID Version. + */ + @Child(name = "pmidVersion", type = {PositiveIntType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="PubMed ID Version", formalDefinition="PubMed ID Version." ) + protected PositiveIntType pmidVersion; + + /** + * Creation date. + */ + @Child(name = "dateCreated", type = {DateType.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Creation date", formalDefinition="Creation date." ) + protected DateType dateCreated; + + /** + * Completion date. + */ + @Child(name = "dateCompleted", type = {DateType.class}, order=6, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Completion date", formalDefinition="Completion date." ) + protected DateType dateCompleted; + + /** + * Revision date. + */ + @Child(name = "dateRevised", type = {DateType.class}, order=7, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Revision date", formalDefinition="Revision date." ) + protected DateType dateRevised; + + /** + * Subcomponent of certainty. + */ + @Child(name = "pubMedPubDate", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Subcomponent of certainty", formalDefinition="Subcomponent of certainty." ) + protected List pubMedPubDate; + + /** + * Publication Status. + */ + @Child(name = "publicationState", type = {CodeableConcept.class}, order=9, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Publication Status", formalDefinition="Publication Status." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/pubmed-pubstatus") + protected CodeableConcept publicationState; + + /** + * Related article. + */ + @Child(name = "relatedArticle", type = {}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Related article", formalDefinition="Related article." ) + protected List relatedArticle; + + private static final long serialVersionUID = -455295099L; + + /** + * Constructor + */ + public CitationMedlinePubMedComponent() { + super(); + } + + /** + * @return {@link #medlineState} (Used for status.) + */ + public CodeableConcept getMedlineState() { + if (this.medlineState == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.medlineState"); + else if (Configuration.doAutoCreate()) + this.medlineState = new CodeableConcept(); // cc + return this.medlineState; + } + + public boolean hasMedlineState() { + return this.medlineState != null && !this.medlineState.isEmpty(); + } + + /** + * @param value {@link #medlineState} (Used for status.) + */ + public CitationMedlinePubMedComponent setMedlineState(CodeableConcept value) { + this.medlineState = value; + return this; + } + + /** + * @return {@link #owner} (Used for owner.) + */ + public CodeableConcept getOwner() { + if (this.owner == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.owner"); + else if (Configuration.doAutoCreate()) + this.owner = new CodeableConcept(); // cc + return this.owner; + } + + public boolean hasOwner() { + return this.owner != null && !this.owner.isEmpty(); + } + + /** + * @param value {@link #owner} (Used for owner.) + */ + public CitationMedlinePubMedComponent setOwner(CodeableConcept value) { + this.owner = value; + return this; + } + + /** + * @return {@link #pmid} (PubMed ID.). This is the underlying object with id, value and extensions. The accessor "getPmid" gives direct access to the value + */ + public PositiveIntType getPmidElement() { + if (this.pmid == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.pmid"); + else if (Configuration.doAutoCreate()) + this.pmid = new PositiveIntType(); // bb + return this.pmid; + } + + public boolean hasPmidElement() { + return this.pmid != null && !this.pmid.isEmpty(); + } + + public boolean hasPmid() { + return this.pmid != null && !this.pmid.isEmpty(); + } + + /** + * @param value {@link #pmid} (PubMed ID.). This is the underlying object with id, value and extensions. The accessor "getPmid" gives direct access to the value + */ + public CitationMedlinePubMedComponent setPmidElement(PositiveIntType value) { + this.pmid = value; + return this; + } + + /** + * @return PubMed ID. + */ + public int getPmid() { + return this.pmid == null || this.pmid.isEmpty() ? 0 : this.pmid.getValue(); + } + + /** + * @param value PubMed ID. + */ + public CitationMedlinePubMedComponent setPmid(int value) { + if (this.pmid == null) + this.pmid = new PositiveIntType(); + this.pmid.setValue(value); + return this; + } + + /** + * @return {@link #pmidVersion} (PubMed ID Version.). This is the underlying object with id, value and extensions. The accessor "getPmidVersion" gives direct access to the value + */ + public PositiveIntType getPmidVersionElement() { + if (this.pmidVersion == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.pmidVersion"); + else if (Configuration.doAutoCreate()) + this.pmidVersion = new PositiveIntType(); // bb + return this.pmidVersion; + } + + public boolean hasPmidVersionElement() { + return this.pmidVersion != null && !this.pmidVersion.isEmpty(); + } + + public boolean hasPmidVersion() { + return this.pmidVersion != null && !this.pmidVersion.isEmpty(); + } + + /** + * @param value {@link #pmidVersion} (PubMed ID Version.). This is the underlying object with id, value and extensions. The accessor "getPmidVersion" gives direct access to the value + */ + public CitationMedlinePubMedComponent setPmidVersionElement(PositiveIntType value) { + this.pmidVersion = value; + return this; + } + + /** + * @return PubMed ID Version. + */ + public int getPmidVersion() { + return this.pmidVersion == null || this.pmidVersion.isEmpty() ? 0 : this.pmidVersion.getValue(); + } + + /** + * @param value PubMed ID Version. + */ + public CitationMedlinePubMedComponent setPmidVersion(int value) { + if (this.pmidVersion == null) + this.pmidVersion = new PositiveIntType(); + this.pmidVersion.setValue(value); + return this; + } + + /** + * @return {@link #dateCreated} (Creation date.). This is the underlying object with id, value and extensions. The accessor "getDateCreated" gives direct access to the value + */ + public DateType getDateCreatedElement() { + if (this.dateCreated == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.dateCreated"); + else if (Configuration.doAutoCreate()) + this.dateCreated = new DateType(); // bb + return this.dateCreated; + } + + public boolean hasDateCreatedElement() { + return this.dateCreated != null && !this.dateCreated.isEmpty(); + } + + public boolean hasDateCreated() { + return this.dateCreated != null && !this.dateCreated.isEmpty(); + } + + /** + * @param value {@link #dateCreated} (Creation date.). This is the underlying object with id, value and extensions. The accessor "getDateCreated" gives direct access to the value + */ + public CitationMedlinePubMedComponent setDateCreatedElement(DateType value) { + this.dateCreated = value; + return this; + } + + /** + * @return Creation date. + */ + public Date getDateCreated() { + return this.dateCreated == null ? null : this.dateCreated.getValue(); + } + + /** + * @param value Creation date. + */ + public CitationMedlinePubMedComponent setDateCreated(Date value) { + if (value == null) + this.dateCreated = null; + else { + if (this.dateCreated == null) + this.dateCreated = new DateType(); + this.dateCreated.setValue(value); + } + return this; + } + + /** + * @return {@link #dateCompleted} (Completion date.). This is the underlying object with id, value and extensions. The accessor "getDateCompleted" gives direct access to the value + */ + public DateType getDateCompletedElement() { + if (this.dateCompleted == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.dateCompleted"); + else if (Configuration.doAutoCreate()) + this.dateCompleted = new DateType(); // bb + return this.dateCompleted; + } + + public boolean hasDateCompletedElement() { + return this.dateCompleted != null && !this.dateCompleted.isEmpty(); + } + + public boolean hasDateCompleted() { + return this.dateCompleted != null && !this.dateCompleted.isEmpty(); + } + + /** + * @param value {@link #dateCompleted} (Completion date.). This is the underlying object with id, value and extensions. The accessor "getDateCompleted" gives direct access to the value + */ + public CitationMedlinePubMedComponent setDateCompletedElement(DateType value) { + this.dateCompleted = value; + return this; + } + + /** + * @return Completion date. + */ + public Date getDateCompleted() { + return this.dateCompleted == null ? null : this.dateCompleted.getValue(); + } + + /** + * @param value Completion date. + */ + public CitationMedlinePubMedComponent setDateCompleted(Date value) { + if (value == null) + this.dateCompleted = null; + else { + if (this.dateCompleted == null) + this.dateCompleted = new DateType(); + this.dateCompleted.setValue(value); + } + return this; + } + + /** + * @return {@link #dateRevised} (Revision date.). This is the underlying object with id, value and extensions. The accessor "getDateRevised" gives direct access to the value + */ + public DateType getDateRevisedElement() { + if (this.dateRevised == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.dateRevised"); + else if (Configuration.doAutoCreate()) + this.dateRevised = new DateType(); // bb + return this.dateRevised; + } + + public boolean hasDateRevisedElement() { + return this.dateRevised != null && !this.dateRevised.isEmpty(); + } + + public boolean hasDateRevised() { + return this.dateRevised != null && !this.dateRevised.isEmpty(); + } + + /** + * @param value {@link #dateRevised} (Revision date.). This is the underlying object with id, value and extensions. The accessor "getDateRevised" gives direct access to the value + */ + public CitationMedlinePubMedComponent setDateRevisedElement(DateType value) { + this.dateRevised = value; + return this; + } + + /** + * @return Revision date. + */ + public Date getDateRevised() { + return this.dateRevised == null ? null : this.dateRevised.getValue(); + } + + /** + * @param value Revision date. + */ + public CitationMedlinePubMedComponent setDateRevised(Date value) { + if (value == null) + this.dateRevised = null; + else { + if (this.dateRevised == null) + this.dateRevised = new DateType(); + this.dateRevised.setValue(value); + } + return this; + } + + /** + * @return {@link #pubMedPubDate} (Subcomponent of certainty.) + */ + public List getPubMedPubDate() { + if (this.pubMedPubDate == null) + this.pubMedPubDate = new ArrayList(); + return this.pubMedPubDate; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationMedlinePubMedComponent setPubMedPubDate(List thePubMedPubDate) { + this.pubMedPubDate = thePubMedPubDate; + return this; + } + + public boolean hasPubMedPubDate() { + if (this.pubMedPubDate == null) + return false; + for (CitationMedlinePubMedPubMedPubDateComponent item : this.pubMedPubDate) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationMedlinePubMedPubMedPubDateComponent addPubMedPubDate() { //3 + CitationMedlinePubMedPubMedPubDateComponent t = new CitationMedlinePubMedPubMedPubDateComponent(); + if (this.pubMedPubDate == null) + this.pubMedPubDate = new ArrayList(); + this.pubMedPubDate.add(t); + return t; + } + + public CitationMedlinePubMedComponent addPubMedPubDate(CitationMedlinePubMedPubMedPubDateComponent t) { //3 + if (t == null) + return this; + if (this.pubMedPubDate == null) + this.pubMedPubDate = new ArrayList(); + this.pubMedPubDate.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #pubMedPubDate}, creating it if it does not already exist {3} + */ + public CitationMedlinePubMedPubMedPubDateComponent getPubMedPubDateFirstRep() { + if (getPubMedPubDate().isEmpty()) { + addPubMedPubDate(); + } + return getPubMedPubDate().get(0); + } + + /** + * @return {@link #publicationState} (Publication Status.) + */ + public CodeableConcept getPublicationState() { + if (this.publicationState == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedComponent.publicationState"); + else if (Configuration.doAutoCreate()) + this.publicationState = new CodeableConcept(); // cc + return this.publicationState; + } + + public boolean hasPublicationState() { + return this.publicationState != null && !this.publicationState.isEmpty(); + } + + /** + * @param value {@link #publicationState} (Publication Status.) + */ + public CitationMedlinePubMedComponent setPublicationState(CodeableConcept value) { + this.publicationState = value; + return this; + } + + /** + * @return {@link #relatedArticle} (Related article.) + */ + public List getRelatedArticle() { + if (this.relatedArticle == null) + this.relatedArticle = new ArrayList(); + return this.relatedArticle; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationMedlinePubMedComponent setRelatedArticle(List theRelatedArticle) { + this.relatedArticle = theRelatedArticle; + return this; + } + + public boolean hasRelatedArticle() { + if (this.relatedArticle == null) + return false; + for (CitationMedlinePubMedRelatedArticleComponent item : this.relatedArticle) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationMedlinePubMedRelatedArticleComponent addRelatedArticle() { //3 + CitationMedlinePubMedRelatedArticleComponent t = new CitationMedlinePubMedRelatedArticleComponent(); + if (this.relatedArticle == null) + this.relatedArticle = new ArrayList(); + this.relatedArticle.add(t); + return t; + } + + public CitationMedlinePubMedComponent addRelatedArticle(CitationMedlinePubMedRelatedArticleComponent t) { //3 + if (t == null) + return this; + if (this.relatedArticle == null) + this.relatedArticle = new ArrayList(); + this.relatedArticle.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #relatedArticle}, creating it if it does not already exist {3} + */ + public CitationMedlinePubMedRelatedArticleComponent getRelatedArticleFirstRep() { + if (getRelatedArticle().isEmpty()) { + addRelatedArticle(); + } + return getRelatedArticle().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("medlineState", "CodeableConcept", "Used for status.", 0, 1, medlineState)); + children.add(new Property("owner", "CodeableConcept", "Used for owner.", 0, 1, owner)); + children.add(new Property("pmid", "positiveInt", "PubMed ID.", 0, 1, pmid)); + children.add(new Property("pmidVersion", "positiveInt", "PubMed ID Version.", 0, 1, pmidVersion)); + children.add(new Property("dateCreated", "date", "Creation date.", 0, 1, dateCreated)); + children.add(new Property("dateCompleted", "date", "Completion date.", 0, 1, dateCompleted)); + children.add(new Property("dateRevised", "date", "Revision date.", 0, 1, dateRevised)); + children.add(new Property("pubMedPubDate", "", "Subcomponent of certainty.", 0, java.lang.Integer.MAX_VALUE, pubMedPubDate)); + children.add(new Property("publicationState", "CodeableConcept", "Publication Status.", 0, 1, publicationState)); + children.add(new Property("relatedArticle", "", "Related article.", 0, java.lang.Integer.MAX_VALUE, relatedArticle)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 97983665: /*medlineState*/ return new Property("medlineState", "CodeableConcept", "Used for status.", 0, 1, medlineState); + case 106164915: /*owner*/ return new Property("owner", "CodeableConcept", "Used for owner.", 0, 1, owner); + case 3444696: /*pmid*/ return new Property("pmid", "positiveInt", "PubMed ID.", 0, 1, pmid); + case 59253216: /*pmidVersion*/ return new Property("pmidVersion", "positiveInt", "PubMed ID Version.", 0, 1, pmidVersion); + case -2071345318: /*dateCreated*/ return new Property("dateCreated", "date", "Creation date.", 0, 1, dateCreated); + case 300673597: /*dateCompleted*/ return new Property("dateCompleted", "date", "Completion date.", 0, 1, dateCompleted); + case -1999933730: /*dateRevised*/ return new Property("dateRevised", "date", "Revision date.", 0, 1, dateRevised); + case -1086645316: /*pubMedPubDate*/ return new Property("pubMedPubDate", "", "Subcomponent of certainty.", 0, java.lang.Integer.MAX_VALUE, pubMedPubDate); + case -1642680891: /*publicationState*/ return new Property("publicationState", "CodeableConcept", "Publication Status.", 0, 1, publicationState); + case 1406980683: /*relatedArticle*/ return new Property("relatedArticle", "", "Related article.", 0, java.lang.Integer.MAX_VALUE, relatedArticle); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 97983665: /*medlineState*/ return this.medlineState == null ? new Base[0] : new Base[] {this.medlineState}; // CodeableConcept + case 106164915: /*owner*/ return this.owner == null ? new Base[0] : new Base[] {this.owner}; // CodeableConcept + case 3444696: /*pmid*/ return this.pmid == null ? new Base[0] : new Base[] {this.pmid}; // PositiveIntType + case 59253216: /*pmidVersion*/ return this.pmidVersion == null ? new Base[0] : new Base[] {this.pmidVersion}; // PositiveIntType + case -2071345318: /*dateCreated*/ return this.dateCreated == null ? new Base[0] : new Base[] {this.dateCreated}; // DateType + case 300673597: /*dateCompleted*/ return this.dateCompleted == null ? new Base[0] : new Base[] {this.dateCompleted}; // DateType + case -1999933730: /*dateRevised*/ return this.dateRevised == null ? new Base[0] : new Base[] {this.dateRevised}; // DateType + case -1086645316: /*pubMedPubDate*/ return this.pubMedPubDate == null ? new Base[0] : this.pubMedPubDate.toArray(new Base[this.pubMedPubDate.size()]); // CitationMedlinePubMedPubMedPubDateComponent + case -1642680891: /*publicationState*/ return this.publicationState == null ? new Base[0] : new Base[] {this.publicationState}; // CodeableConcept + case 1406980683: /*relatedArticle*/ return this.relatedArticle == null ? new Base[0] : this.relatedArticle.toArray(new Base[this.relatedArticle.size()]); // CitationMedlinePubMedRelatedArticleComponent + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 97983665: // medlineState + this.medlineState = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 106164915: // owner + this.owner = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 3444696: // pmid + this.pmid = TypeConvertor.castToPositiveInt(value); // PositiveIntType + return value; + case 59253216: // pmidVersion + this.pmidVersion = TypeConvertor.castToPositiveInt(value); // PositiveIntType + return value; + case -2071345318: // dateCreated + this.dateCreated = TypeConvertor.castToDate(value); // DateType + return value; + case 300673597: // dateCompleted + this.dateCompleted = TypeConvertor.castToDate(value); // DateType + return value; + case -1999933730: // dateRevised + this.dateRevised = TypeConvertor.castToDate(value); // DateType + return value; + case -1086645316: // pubMedPubDate + this.getPubMedPubDate().add((CitationMedlinePubMedPubMedPubDateComponent) value); // CitationMedlinePubMedPubMedPubDateComponent + return value; + case -1642680891: // publicationState + this.publicationState = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 1406980683: // relatedArticle + this.getRelatedArticle().add((CitationMedlinePubMedRelatedArticleComponent) value); // CitationMedlinePubMedRelatedArticleComponent + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("medlineState")) { + this.medlineState = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("owner")) { + this.owner = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("pmid")) { + this.pmid = TypeConvertor.castToPositiveInt(value); // PositiveIntType + } else if (name.equals("pmidVersion")) { + this.pmidVersion = TypeConvertor.castToPositiveInt(value); // PositiveIntType + } else if (name.equals("dateCreated")) { + this.dateCreated = TypeConvertor.castToDate(value); // DateType + } else if (name.equals("dateCompleted")) { + this.dateCompleted = TypeConvertor.castToDate(value); // DateType + } else if (name.equals("dateRevised")) { + this.dateRevised = TypeConvertor.castToDate(value); // DateType + } else if (name.equals("pubMedPubDate")) { + this.getPubMedPubDate().add((CitationMedlinePubMedPubMedPubDateComponent) value); + } else if (name.equals("publicationState")) { + this.publicationState = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("relatedArticle")) { + this.getRelatedArticle().add((CitationMedlinePubMedRelatedArticleComponent) value); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 97983665: return getMedlineState(); + case 106164915: return getOwner(); + case 3444696: return getPmidElement(); + case 59253216: return getPmidVersionElement(); + case -2071345318: return getDateCreatedElement(); + case 300673597: return getDateCompletedElement(); + case -1999933730: return getDateRevisedElement(); + case -1086645316: return addPubMedPubDate(); + case -1642680891: return getPublicationState(); + case 1406980683: return addRelatedArticle(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 97983665: /*medlineState*/ return new String[] {"CodeableConcept"}; + case 106164915: /*owner*/ return new String[] {"CodeableConcept"}; + case 3444696: /*pmid*/ return new String[] {"positiveInt"}; + case 59253216: /*pmidVersion*/ return new String[] {"positiveInt"}; + case -2071345318: /*dateCreated*/ return new String[] {"date"}; + case 300673597: /*dateCompleted*/ return new String[] {"date"}; + case -1999933730: /*dateRevised*/ return new String[] {"date"}; + case -1086645316: /*pubMedPubDate*/ return new String[] {}; + case -1642680891: /*publicationState*/ return new String[] {"CodeableConcept"}; + case 1406980683: /*relatedArticle*/ return new String[] {}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("medlineState")) { + this.medlineState = new CodeableConcept(); + return this.medlineState; + } + else if (name.equals("owner")) { + this.owner = new CodeableConcept(); + return this.owner; + } + else if (name.equals("pmid")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.pmid"); + } + else if (name.equals("pmidVersion")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.pmidVersion"); + } + else if (name.equals("dateCreated")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.dateCreated"); + } + else if (name.equals("dateCompleted")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.dateCompleted"); + } + else if (name.equals("dateRevised")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.dateRevised"); + } + else if (name.equals("pubMedPubDate")) { + return addPubMedPubDate(); + } + else if (name.equals("publicationState")) { + this.publicationState = new CodeableConcept(); + return this.publicationState; + } + else if (name.equals("relatedArticle")) { + return addRelatedArticle(); + } + else + return super.addChild(name); + } + + public CitationMedlinePubMedComponent copy() { + CitationMedlinePubMedComponent dst = new CitationMedlinePubMedComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationMedlinePubMedComponent dst) { + super.copyValues(dst); + dst.medlineState = medlineState == null ? null : medlineState.copy(); + dst.owner = owner == null ? null : owner.copy(); + dst.pmid = pmid == null ? null : pmid.copy(); + dst.pmidVersion = pmidVersion == null ? null : pmidVersion.copy(); + dst.dateCreated = dateCreated == null ? null : dateCreated.copy(); + dst.dateCompleted = dateCompleted == null ? null : dateCompleted.copy(); + dst.dateRevised = dateRevised == null ? null : dateRevised.copy(); + if (pubMedPubDate != null) { + dst.pubMedPubDate = new ArrayList(); + for (CitationMedlinePubMedPubMedPubDateComponent i : pubMedPubDate) + dst.pubMedPubDate.add(i.copy()); + }; + dst.publicationState = publicationState == null ? null : publicationState.copy(); + if (relatedArticle != null) { + dst.relatedArticle = new ArrayList(); + for (CitationMedlinePubMedRelatedArticleComponent i : relatedArticle) + dst.relatedArticle.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationMedlinePubMedComponent)) + return false; + CitationMedlinePubMedComponent o = (CitationMedlinePubMedComponent) other_; + return compareDeep(medlineState, o.medlineState, true) && compareDeep(owner, o.owner, true) && compareDeep(pmid, o.pmid, true) + && compareDeep(pmidVersion, o.pmidVersion, true) && compareDeep(dateCreated, o.dateCreated, true) + && compareDeep(dateCompleted, o.dateCompleted, true) && compareDeep(dateRevised, o.dateRevised, true) + && compareDeep(pubMedPubDate, o.pubMedPubDate, true) && compareDeep(publicationState, o.publicationState, true) + && compareDeep(relatedArticle, o.relatedArticle, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationMedlinePubMedComponent)) + return false; + CitationMedlinePubMedComponent o = (CitationMedlinePubMedComponent) other_; + return compareValues(pmid, o.pmid, true) && compareValues(pmidVersion, o.pmidVersion, true) && compareValues(dateCreated, o.dateCreated, true) + && compareValues(dateCompleted, o.dateCompleted, true) && compareValues(dateRevised, o.dateRevised, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(medlineState, owner, pmid + , pmidVersion, dateCreated, dateCompleted, dateRevised, pubMedPubDate, publicationState + , relatedArticle); + } + + public String fhirType() { + return "Citation.medlinePubMed"; + + } + + } + + @Block() + public static class CitationMedlinePubMedPubMedPubDateComponent extends BackboneElement implements IBaseBackboneElement { + /** + * PubMed Publication Status. + */ + @Child(name = "publicationState", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="PubMed Publication Status", formalDefinition="PubMed Publication Status." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/pubmed-pubstatus") + protected CodeableConcept publicationState; + + /** + * PubMed Publication Date. + */ + @Child(name = "date", type = {DateTimeType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="PubMed Publication Date", formalDefinition="PubMed Publication Date." ) + protected DateTimeType date; + + private static final long serialVersionUID = 1620940147L; + + /** + * Constructor + */ + public CitationMedlinePubMedPubMedPubDateComponent() { + super(); + } + + /** + * @return {@link #publicationState} (PubMed Publication Status.) + */ + public CodeableConcept getPublicationState() { + if (this.publicationState == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedPubMedPubDateComponent.publicationState"); + else if (Configuration.doAutoCreate()) + this.publicationState = new CodeableConcept(); // cc + return this.publicationState; + } + + public boolean hasPublicationState() { + return this.publicationState != null && !this.publicationState.isEmpty(); + } + + /** + * @param value {@link #publicationState} (PubMed Publication Status.) + */ + public CitationMedlinePubMedPubMedPubDateComponent setPublicationState(CodeableConcept value) { + this.publicationState = value; + return this; + } + + /** + * @return {@link #date} (PubMed Publication Date.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value + */ + public DateTimeType getDateElement() { + if (this.date == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedPubMedPubDateComponent.date"); + else if (Configuration.doAutoCreate()) + this.date = new DateTimeType(); // bb + return this.date; + } + + public boolean hasDateElement() { + return this.date != null && !this.date.isEmpty(); + } + + public boolean hasDate() { + return this.date != null && !this.date.isEmpty(); + } + + /** + * @param value {@link #date} (PubMed Publication Date.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value + */ + public CitationMedlinePubMedPubMedPubDateComponent setDateElement(DateTimeType value) { + this.date = value; + return this; + } + + /** + * @return PubMed Publication Date. + */ + public Date getDate() { + return this.date == null ? null : this.date.getValue(); + } + + /** + * @param value PubMed Publication Date. + */ + public CitationMedlinePubMedPubMedPubDateComponent setDate(Date value) { + if (value == null) + this.date = null; + else { + if (this.date == null) + this.date = new DateTimeType(); + this.date.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("publicationState", "CodeableConcept", "PubMed Publication Status.", 0, 1, publicationState)); + children.add(new Property("date", "dateTime", "PubMed Publication Date.", 0, 1, date)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1642680891: /*publicationState*/ return new Property("publicationState", "CodeableConcept", "PubMed Publication Status.", 0, 1, publicationState); + case 3076014: /*date*/ return new Property("date", "dateTime", "PubMed Publication Date.", 0, 1, date); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1642680891: /*publicationState*/ return this.publicationState == null ? new Base[0] : new Base[] {this.publicationState}; // CodeableConcept + case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1642680891: // publicationState + this.publicationState = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 3076014: // date + this.date = TypeConvertor.castToDateTime(value); // DateTimeType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("publicationState")) { + this.publicationState = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("date")) { + this.date = TypeConvertor.castToDateTime(value); // DateTimeType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1642680891: return getPublicationState(); + case 3076014: return getDateElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1642680891: /*publicationState*/ return new String[] {"CodeableConcept"}; + case 3076014: /*date*/ return new String[] {"dateTime"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("publicationState")) { + this.publicationState = new CodeableConcept(); + return this.publicationState; + } + else if (name.equals("date")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.pubMedPubDate.date"); + } + else + return super.addChild(name); + } + + public CitationMedlinePubMedPubMedPubDateComponent copy() { + CitationMedlinePubMedPubMedPubDateComponent dst = new CitationMedlinePubMedPubMedPubDateComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationMedlinePubMedPubMedPubDateComponent dst) { + super.copyValues(dst); + dst.publicationState = publicationState == null ? null : publicationState.copy(); + dst.date = date == null ? null : date.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationMedlinePubMedPubMedPubDateComponent)) + return false; + CitationMedlinePubMedPubMedPubDateComponent o = (CitationMedlinePubMedPubMedPubDateComponent) other_; + return compareDeep(publicationState, o.publicationState, true) && compareDeep(date, o.date, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationMedlinePubMedPubMedPubDateComponent)) + return false; + CitationMedlinePubMedPubMedPubDateComponent o = (CitationMedlinePubMedPubMedPubDateComponent) other_; + return compareValues(date, o.date, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(publicationState, date); + } + + public String fhirType() { + return "Citation.medlinePubMed.pubMedPubDate"; + + } + + } + + @Block() + public static class CitationMedlinePubMedRelatedArticleComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Citation Resource for related article. + */ + @Child(name = "citationReference", type = {Citation.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Citation Resource for related article", formalDefinition="Citation Resource for related article." ) + protected Reference citationReference; + + /** + * Citation string for related article. + */ + @Child(name = "citationMarkdown", type = {MarkdownType.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Citation string for related article", formalDefinition="Citation string for related article." ) + protected MarkdownType citationMarkdown; + + /** + * Identifier for related article. + */ + @Child(name = "identifier", type = {Identifier.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Identifier for related article", formalDefinition="Identifier for related article." ) + protected List identifier; + + private static final long serialVersionUID = -704722480L; + + /** + * Constructor + */ + public CitationMedlinePubMedRelatedArticleComponent() { + super(); + } + + /** + * @return {@link #citationReference} (Citation Resource for related article.) + */ + public Reference getCitationReference() { + if (this.citationReference == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedRelatedArticleComponent.citationReference"); + else if (Configuration.doAutoCreate()) + this.citationReference = new Reference(); // cc + return this.citationReference; + } + + public boolean hasCitationReference() { + return this.citationReference != null && !this.citationReference.isEmpty(); + } + + /** + * @param value {@link #citationReference} (Citation Resource for related article.) + */ + public CitationMedlinePubMedRelatedArticleComponent setCitationReference(Reference value) { + this.citationReference = value; + return this; + } + + /** + * @return {@link #citationMarkdown} (Citation string for related article.). This is the underlying object with id, value and extensions. The accessor "getCitationMarkdown" gives direct access to the value + */ + public MarkdownType getCitationMarkdownElement() { + if (this.citationMarkdown == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create CitationMedlinePubMedRelatedArticleComponent.citationMarkdown"); + else if (Configuration.doAutoCreate()) + this.citationMarkdown = new MarkdownType(); // bb + return this.citationMarkdown; + } + + public boolean hasCitationMarkdownElement() { + return this.citationMarkdown != null && !this.citationMarkdown.isEmpty(); + } + + public boolean hasCitationMarkdown() { + return this.citationMarkdown != null && !this.citationMarkdown.isEmpty(); + } + + /** + * @param value {@link #citationMarkdown} (Citation string for related article.). This is the underlying object with id, value and extensions. The accessor "getCitationMarkdown" gives direct access to the value + */ + public CitationMedlinePubMedRelatedArticleComponent setCitationMarkdownElement(MarkdownType value) { + this.citationMarkdown = value; + return this; + } + + /** + * @return Citation string for related article. + */ + public String getCitationMarkdown() { + return this.citationMarkdown == null ? null : this.citationMarkdown.getValue(); + } + + /** + * @param value Citation string for related article. + */ + public CitationMedlinePubMedRelatedArticleComponent setCitationMarkdown(String value) { + if (value == null) + this.citationMarkdown = null; + else { + if (this.citationMarkdown == null) + this.citationMarkdown = new MarkdownType(); + this.citationMarkdown.setValue(value); + } + return this; + } + + /** + * @return {@link #identifier} (Identifier for related article.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public CitationMedlinePubMedRelatedArticleComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public CitationMedlinePubMedRelatedArticleComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("citationReference", "Reference(Citation)", "Citation Resource for related article.", 0, 1, citationReference)); + children.add(new Property("citationMarkdown", "markdown", "Citation string for related article.", 0, 1, citationMarkdown)); + children.add(new Property("identifier", "Identifier", "Identifier for related article.", 0, java.lang.Integer.MAX_VALUE, identifier)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 87795748: /*citationReference*/ return new Property("citationReference", "Reference(Citation)", "Citation Resource for related article.", 0, 1, citationReference); + case 279614710: /*citationMarkdown*/ return new Property("citationMarkdown", "markdown", "Citation string for related article.", 0, 1, citationMarkdown); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for related article.", 0, java.lang.Integer.MAX_VALUE, identifier); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 87795748: /*citationReference*/ return this.citationReference == null ? new Base[0] : new Base[] {this.citationReference}; // Reference + case 279614710: /*citationMarkdown*/ return this.citationMarkdown == null ? new Base[0] : new Base[] {this.citationMarkdown}; // MarkdownType + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 87795748: // citationReference + this.citationReference = TypeConvertor.castToReference(value); // Reference + return value; + case 279614710: // citationMarkdown + this.citationMarkdown = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("citationReference")) { + this.citationReference = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("citationMarkdown")) { + this.citationMarkdown = TypeConvertor.castToMarkdown(value); // MarkdownType + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 87795748: return getCitationReference(); + case 279614710: return getCitationMarkdownElement(); + case -1618432855: return addIdentifier(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 87795748: /*citationReference*/ return new String[] {"Reference"}; + case 279614710: /*citationMarkdown*/ return new String[] {"markdown"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("citationReference")) { + this.citationReference = new Reference(); + return this.citationReference; + } + else if (name.equals("citationMarkdown")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.medlinePubMed.relatedArticle.citationMarkdown"); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else + return super.addChild(name); + } + + public CitationMedlinePubMedRelatedArticleComponent copy() { + CitationMedlinePubMedRelatedArticleComponent dst = new CitationMedlinePubMedRelatedArticleComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(CitationMedlinePubMedRelatedArticleComponent dst) { + super.copyValues(dst); + dst.citationReference = citationReference == null ? null : citationReference.copy(); + dst.citationMarkdown = citationMarkdown == null ? null : citationMarkdown.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof CitationMedlinePubMedRelatedArticleComponent)) + return false; + CitationMedlinePubMedRelatedArticleComponent o = (CitationMedlinePubMedRelatedArticleComponent) other_; + return compareDeep(citationReference, o.citationReference, true) && compareDeep(citationMarkdown, o.citationMarkdown, true) + && compareDeep(identifier, o.identifier, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof CitationMedlinePubMedRelatedArticleComponent)) + return false; + CitationMedlinePubMedRelatedArticleComponent o = (CitationMedlinePubMedRelatedArticleComponent) other_; + return compareValues(citationMarkdown, o.citationMarkdown, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(citationReference, citationMarkdown + , identifier); + } + + public String fhirType() { + return "Citation.medlinePubMed.relatedArticle"; + + } + + } + + /** + * An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers. + */ + @Child(name = "url", type = {UriType.class}, order=0, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Canonical identifier for this citation, represented as a globally unique URI", formalDefinition="An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers." ) + protected UriType url; + + /** + * The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. + */ + @Child(name = "version", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Business version of this summary", formalDefinition="The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence." ) + protected StringType version; + + /** + * The status of this summary. Enables tracking the life-cycle of the content. + */ + @Child(name = "status", type = {CodeType.class}, order=2, min=1, max=1, modifier=true, summary=true) + @Description(shortDefinition="draft | active | retired | unknown", formalDefinition="The status of this summary. Enables tracking the life-cycle of the content." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") + protected Enumeration status; + + /** + * The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate citation instances. + */ + @Child(name = "useContext", type = {UsageContext.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Use context", formalDefinition="The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate citation instances." ) + protected List useContext; + + /** + * A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance. May include DOI, PMID, PMCID, etc. + */ + @Child(name = "identifier", type = {Identifier.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="May include DOI, PMID, PMCID, etc.", formalDefinition="A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance. May include DOI, PMID, PMCID, etc." ) + protected List identifier; + + /** + * May include trial registry identifiers. + */ + @Child(name = "relatedIdentifier", type = {Identifier.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="May include trial registry identifiers", formalDefinition="May include trial registry identifiers." ) + protected List relatedIdentifier; + + /** + * Date Cited. + */ + @Child(name = "dateCited", type = {DateTimeType.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Date Cited", formalDefinition="Date Cited." ) + protected DateTimeType dateCited; + + /** + * Variant citation. + */ + @Child(name = "variantCitation", type = {}, order=7, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Variant citation", formalDefinition="Variant citation." ) + protected CitationVariantCitationComponent variantCitation; + + /** + * Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic. + */ + @Child(name = "publishingModel", type = {CodeableConcept.class}, order=8, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic", formalDefinition="Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publishing-model-type") + protected CodeableConcept publishingModel; + + /** + * Contains identifiers and classifiers for the journal cited. + */ + @Child(name = "journal", type = {}, order=9, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Contains identifiers and classifiers for the journal cited", formalDefinition="Contains identifiers and classifiers for the journal cited." ) + protected CitationJournalComponent journal; + + /** + * Full title of the article. + */ + @Child(name = "articleTitle", type = {MarkdownType.class}, order=10, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Full title of the article", formalDefinition="Full title of the article." ) + protected MarkdownType articleTitle; + + /** + * Used for variant titles, such as translations. + */ + @Child(name = "alternativeTitle", type = {}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used for variant titles, such as translations", formalDefinition="Used for variant titles, such as translations." ) + protected List alternativeTitle; + + /** + * Indicates the inclusive pages for the article cited. + */ + @Child(name = "pagination", type = {}, order=12, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Indicates the inclusive pages for the article cited", formalDefinition="Indicates the inclusive pages for the article cited." ) + protected CitationPaginationComponent pagination; + + /** + * Used for any URL for the article cited. + */ + @Child(name = "articleUrl", type = {}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used for any URL for the article cited", formalDefinition="Used for any URL for the article cited." ) + protected List articleUrl; + + /** + * Abstract text, may include structured labels. + */ + @Child(name = "abstract", type = {MarkdownType.class}, order=14, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Abstract text", formalDefinition="Abstract text, may include structured labels." ) + protected MarkdownType abstract_; + + /** + * Copyright information for the abstract text. + */ + @Child(name = "abstractCopyright", type = {MarkdownType.class}, order=15, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Abstract copyright", formalDefinition="Copyright information for the abstract text." ) + protected MarkdownType abstractCopyright; + + /** + * Used for variant abstracts, such as translations. + */ + @Child(name = "alternativeAbstract", type = {}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used for variant abstracts, such as translations", formalDefinition="Used for variant abstracts, such as translations." ) + protected List alternativeAbstract; + + /** + * Personal and collective author names. + */ + @Child(name = "authorList", type = {}, order=17, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Personal and collective author names", formalDefinition="Personal and collective author names." ) + protected CitationAuthorListComponent authorList; + + /** + * Used to record a display of the author list without separate coding for each author. + */ + @Child(name = "authorString", type = {}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used to record a display of the author list without separate coding for each author", formalDefinition="Used to record a display of the author list without separate coding for each author." ) + protected List authorString; + + /** + * Personal and collective contributor names. + */ + @Child(name = "contributorList", type = {}, order=19, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Personal and collective contributor names", formalDefinition="Personal and collective contributor names." ) + protected CitationContributorListComponent contributorList; + + /** + * The language in which the article is published. + */ + @Child(name = "articleLanguage", type = {CodeableConcept.class}, order=20, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The language in which the article is published", formalDefinition="The language in which the article is published." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/languages") + protected CodeableConcept articleLanguage; + + /** + * Used to represent alternative forms of the article that are not separate citations. + */ + @Child(name = "alternativeForm", type = {}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used to represent alternative forms of the article that are not separate citations", formalDefinition="Used to represent alternative forms of the article that are not separate citations." ) + protected List alternativeForm; + + /** + * Used for many classifiers including PublicationType, CitationSubset, MeshHeading, Chemical. + */ + @Child(name = "classifier", type = {CodeableConcept.class}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used for many classifiers including PublicationType, CitationSubset, MeshHeading, Chemical", formalDefinition="Used for many classifiers including PublicationType, CitationSubset, MeshHeading, Chemical." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/citation-classifier") + protected List classifier; + + /** + * Used for referencing EvidenceReport resource. + */ + @Child(name = "relatedArtifact", type = {RelatedArtifact.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Link or citation to artifact associated with the summary", formalDefinition="Used for referencing EvidenceReport resource." ) + protected List relatedArtifact; + + /** + * Used for general notes and annotations not coded elsewhere. + */ + @Child(name = "note", type = {Annotation.class}, order=24, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used for general notes and annotations not coded elsewhere", formalDefinition="Used for general notes and annotations not coded elsewhere." ) + protected List note; + + /** + * These elements are items with values assigned by MEDLINE or PubMed management. + */ + @Child(name = "medlinePubMed", type = {}, order=25, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="These elements are items with values assigned by MEDLINE or PubMed management", formalDefinition="These elements are items with values assigned by MEDLINE or PubMed management." ) + protected CitationMedlinePubMedComponent medlinePubMed; + + private static final long serialVersionUID = 1796797816L; + + /** + * Constructor + */ + public Citation() { + super(); + } + + /** + * Constructor + */ + public Citation(PublicationStatus status) { + super(); + this.setStatus(status); + } + + /** + * @return {@link #url} (An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + */ + public UriType getUrlElement() { + if (this.url == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.url"); + else if (Configuration.doAutoCreate()) + this.url = new UriType(); // bb + return this.url; + } + + public boolean hasUrlElement() { + return this.url != null && !this.url.isEmpty(); + } + + public boolean hasUrl() { + return this.url != null && !this.url.isEmpty(); + } + + /** + * @param value {@link #url} (An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + */ + public Citation setUrlElement(UriType value) { + this.url = value; + return this; + } + + /** + * @return An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers. + */ + public String getUrl() { + return this.url == null ? null : this.url.getValue(); + } + + /** + * @param value An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers. + */ + public Citation setUrl(String value) { + if (Utilities.noString(value)) + this.url = null; + else { + if (this.url == null) + this.url = new UriType(); + this.url.setValue(value); + } + return this; + } + + /** + * @return {@link #version} (The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value + */ + public StringType getVersionElement() { + if (this.version == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.version"); + else if (Configuration.doAutoCreate()) + this.version = new StringType(); // bb + return this.version; + } + + public boolean hasVersionElement() { + return this.version != null && !this.version.isEmpty(); + } + + public boolean hasVersion() { + return this.version != null && !this.version.isEmpty(); + } + + /** + * @param value {@link #version} (The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value + */ + public Citation setVersionElement(StringType value) { + this.version = value; + return this; + } + + /** + * @return The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. + */ + public String getVersion() { + return this.version == null ? null : this.version.getValue(); + } + + /** + * @param value The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. + */ + public Citation setVersion(String value) { + if (Utilities.noString(value)) + this.version = null; + else { + if (this.version == null) + this.version = new StringType(); + this.version.setValue(value); + } + return this; + } + + /** + * @return {@link #status} (The status of this summary. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Enumeration getStatusElement() { + if (this.status == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.status"); + else if (Configuration.doAutoCreate()) + this.status = new Enumeration(new PublicationStatusEnumFactory()); // bb + return this.status; + } + + public boolean hasStatusElement() { + return this.status != null && !this.status.isEmpty(); + } + + public boolean hasStatus() { + return this.status != null && !this.status.isEmpty(); + } + + /** + * @param value {@link #status} (The status of this summary. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Citation setStatusElement(Enumeration value) { + this.status = value; + return this; + } + + /** + * @return The status of this summary. Enables tracking the life-cycle of the content. + */ + public PublicationStatus getStatus() { + return this.status == null ? null : this.status.getValue(); + } + + /** + * @param value The status of this summary. Enables tracking the life-cycle of the content. + */ + public Citation setStatus(PublicationStatus value) { + if (this.status == null) + this.status = new Enumeration(new PublicationStatusEnumFactory()); + this.status.setValue(value); + return this; + } + + /** + * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate citation instances.) + */ + public List getUseContext() { + if (this.useContext == null) + this.useContext = new ArrayList(); + return this.useContext; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setUseContext(List theUseContext) { + this.useContext = theUseContext; + return this; + } + + public boolean hasUseContext() { + if (this.useContext == null) + return false; + for (UsageContext item : this.useContext) + if (!item.isEmpty()) + return true; + return false; + } + + public UsageContext addUseContext() { //3 + UsageContext t = new UsageContext(); + if (this.useContext == null) + this.useContext = new ArrayList(); + this.useContext.add(t); + return t; + } + + public Citation addUseContext(UsageContext t) { //3 + if (t == null) + return this; + if (this.useContext == null) + this.useContext = new ArrayList(); + this.useContext.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist {3} + */ + public UsageContext getUseContextFirstRep() { + if (getUseContext().isEmpty()) { + addUseContext(); + } + return getUseContext().get(0); + } + + /** + * @return {@link #identifier} (A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance. May include DOI, PMID, PMCID, etc.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public Citation addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + /** + * @return {@link #relatedIdentifier} (May include trial registry identifiers.) + */ + public List getRelatedIdentifier() { + if (this.relatedIdentifier == null) + this.relatedIdentifier = new ArrayList(); + return this.relatedIdentifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setRelatedIdentifier(List theRelatedIdentifier) { + this.relatedIdentifier = theRelatedIdentifier; + return this; + } + + public boolean hasRelatedIdentifier() { + if (this.relatedIdentifier == null) + return false; + for (Identifier item : this.relatedIdentifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addRelatedIdentifier() { //3 + Identifier t = new Identifier(); + if (this.relatedIdentifier == null) + this.relatedIdentifier = new ArrayList(); + this.relatedIdentifier.add(t); + return t; + } + + public Citation addRelatedIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.relatedIdentifier == null) + this.relatedIdentifier = new ArrayList(); + this.relatedIdentifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #relatedIdentifier}, creating it if it does not already exist {3} + */ + public Identifier getRelatedIdentifierFirstRep() { + if (getRelatedIdentifier().isEmpty()) { + addRelatedIdentifier(); + } + return getRelatedIdentifier().get(0); + } + + /** + * @return {@link #dateCited} (Date Cited.). This is the underlying object with id, value and extensions. The accessor "getDateCited" gives direct access to the value + */ + public DateTimeType getDateCitedElement() { + if (this.dateCited == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.dateCited"); + else if (Configuration.doAutoCreate()) + this.dateCited = new DateTimeType(); // bb + return this.dateCited; + } + + public boolean hasDateCitedElement() { + return this.dateCited != null && !this.dateCited.isEmpty(); + } + + public boolean hasDateCited() { + return this.dateCited != null && !this.dateCited.isEmpty(); + } + + /** + * @param value {@link #dateCited} (Date Cited.). This is the underlying object with id, value and extensions. The accessor "getDateCited" gives direct access to the value + */ + public Citation setDateCitedElement(DateTimeType value) { + this.dateCited = value; + return this; + } + + /** + * @return Date Cited. + */ + public Date getDateCited() { + return this.dateCited == null ? null : this.dateCited.getValue(); + } + + /** + * @param value Date Cited. + */ + public Citation setDateCited(Date value) { + if (value == null) + this.dateCited = null; + else { + if (this.dateCited == null) + this.dateCited = new DateTimeType(); + this.dateCited.setValue(value); + } + return this; + } + + /** + * @return {@link #variantCitation} (Variant citation.) + */ + public CitationVariantCitationComponent getVariantCitation() { + if (this.variantCitation == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.variantCitation"); + else if (Configuration.doAutoCreate()) + this.variantCitation = new CitationVariantCitationComponent(); // cc + return this.variantCitation; + } + + public boolean hasVariantCitation() { + return this.variantCitation != null && !this.variantCitation.isEmpty(); + } + + /** + * @param value {@link #variantCitation} (Variant citation.) + */ + public Citation setVariantCitation(CitationVariantCitationComponent value) { + this.variantCitation = value; + return this; + } + + /** + * @return {@link #publishingModel} (Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.) + */ + public CodeableConcept getPublishingModel() { + if (this.publishingModel == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.publishingModel"); + else if (Configuration.doAutoCreate()) + this.publishingModel = new CodeableConcept(); // cc + return this.publishingModel; + } + + public boolean hasPublishingModel() { + return this.publishingModel != null && !this.publishingModel.isEmpty(); + } + + /** + * @param value {@link #publishingModel} (Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.) + */ + public Citation setPublishingModel(CodeableConcept value) { + this.publishingModel = value; + return this; + } + + /** + * @return {@link #journal} (Contains identifiers and classifiers for the journal cited.) + */ + public CitationJournalComponent getJournal() { + if (this.journal == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.journal"); + else if (Configuration.doAutoCreate()) + this.journal = new CitationJournalComponent(); // cc + return this.journal; + } + + public boolean hasJournal() { + return this.journal != null && !this.journal.isEmpty(); + } + + /** + * @param value {@link #journal} (Contains identifiers and classifiers for the journal cited.) + */ + public Citation setJournal(CitationJournalComponent value) { + this.journal = value; + return this; + } + + /** + * @return {@link #articleTitle} (Full title of the article.). This is the underlying object with id, value and extensions. The accessor "getArticleTitle" gives direct access to the value + */ + public MarkdownType getArticleTitleElement() { + if (this.articleTitle == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.articleTitle"); + else if (Configuration.doAutoCreate()) + this.articleTitle = new MarkdownType(); // bb + return this.articleTitle; + } + + public boolean hasArticleTitleElement() { + return this.articleTitle != null && !this.articleTitle.isEmpty(); + } + + public boolean hasArticleTitle() { + return this.articleTitle != null && !this.articleTitle.isEmpty(); + } + + /** + * @param value {@link #articleTitle} (Full title of the article.). This is the underlying object with id, value and extensions. The accessor "getArticleTitle" gives direct access to the value + */ + public Citation setArticleTitleElement(MarkdownType value) { + this.articleTitle = value; + return this; + } + + /** + * @return Full title of the article. + */ + public String getArticleTitle() { + return this.articleTitle == null ? null : this.articleTitle.getValue(); + } + + /** + * @param value Full title of the article. + */ + public Citation setArticleTitle(String value) { + if (value == null) + this.articleTitle = null; + else { + if (this.articleTitle == null) + this.articleTitle = new MarkdownType(); + this.articleTitle.setValue(value); + } + return this; + } + + /** + * @return {@link #alternativeTitle} (Used for variant titles, such as translations.) + */ + public List getAlternativeTitle() { + if (this.alternativeTitle == null) + this.alternativeTitle = new ArrayList(); + return this.alternativeTitle; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setAlternativeTitle(List theAlternativeTitle) { + this.alternativeTitle = theAlternativeTitle; + return this; + } + + public boolean hasAlternativeTitle() { + if (this.alternativeTitle == null) + return false; + for (CitationAlternativeTitleComponent item : this.alternativeTitle) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationAlternativeTitleComponent addAlternativeTitle() { //3 + CitationAlternativeTitleComponent t = new CitationAlternativeTitleComponent(); + if (this.alternativeTitle == null) + this.alternativeTitle = new ArrayList(); + this.alternativeTitle.add(t); + return t; + } + + public Citation addAlternativeTitle(CitationAlternativeTitleComponent t) { //3 + if (t == null) + return this; + if (this.alternativeTitle == null) + this.alternativeTitle = new ArrayList(); + this.alternativeTitle.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #alternativeTitle}, creating it if it does not already exist {3} + */ + public CitationAlternativeTitleComponent getAlternativeTitleFirstRep() { + if (getAlternativeTitle().isEmpty()) { + addAlternativeTitle(); + } + return getAlternativeTitle().get(0); + } + + /** + * @return {@link #pagination} (Indicates the inclusive pages for the article cited.) + */ + public CitationPaginationComponent getPagination() { + if (this.pagination == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.pagination"); + else if (Configuration.doAutoCreate()) + this.pagination = new CitationPaginationComponent(); // cc + return this.pagination; + } + + public boolean hasPagination() { + return this.pagination != null && !this.pagination.isEmpty(); + } + + /** + * @param value {@link #pagination} (Indicates the inclusive pages for the article cited.) + */ + public Citation setPagination(CitationPaginationComponent value) { + this.pagination = value; + return this; + } + + /** + * @return {@link #articleUrl} (Used for any URL for the article cited.) + */ + public List getArticleUrl() { + if (this.articleUrl == null) + this.articleUrl = new ArrayList(); + return this.articleUrl; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setArticleUrl(List theArticleUrl) { + this.articleUrl = theArticleUrl; + return this; + } + + public boolean hasArticleUrl() { + if (this.articleUrl == null) + return false; + for (CitationArticleUrlComponent item : this.articleUrl) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationArticleUrlComponent addArticleUrl() { //3 + CitationArticleUrlComponent t = new CitationArticleUrlComponent(); + if (this.articleUrl == null) + this.articleUrl = new ArrayList(); + this.articleUrl.add(t); + return t; + } + + public Citation addArticleUrl(CitationArticleUrlComponent t) { //3 + if (t == null) + return this; + if (this.articleUrl == null) + this.articleUrl = new ArrayList(); + this.articleUrl.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #articleUrl}, creating it if it does not already exist {3} + */ + public CitationArticleUrlComponent getArticleUrlFirstRep() { + if (getArticleUrl().isEmpty()) { + addArticleUrl(); + } + return getArticleUrl().get(0); + } + + /** + * @return {@link #abstract_} (Abstract text, may include structured labels.). This is the underlying object with id, value and extensions. The accessor "getAbstract" gives direct access to the value + */ + public MarkdownType getAbstractElement() { + if (this.abstract_ == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.abstract_"); + else if (Configuration.doAutoCreate()) + this.abstract_ = new MarkdownType(); // bb + return this.abstract_; + } + + public boolean hasAbstractElement() { + return this.abstract_ != null && !this.abstract_.isEmpty(); + } + + public boolean hasAbstract() { + return this.abstract_ != null && !this.abstract_.isEmpty(); + } + + /** + * @param value {@link #abstract_} (Abstract text, may include structured labels.). This is the underlying object with id, value and extensions. The accessor "getAbstract" gives direct access to the value + */ + public Citation setAbstractElement(MarkdownType value) { + this.abstract_ = value; + return this; + } + + /** + * @return Abstract text, may include structured labels. + */ + public String getAbstract() { + return this.abstract_ == null ? null : this.abstract_.getValue(); + } + + /** + * @param value Abstract text, may include structured labels. + */ + public Citation setAbstract(String value) { + if (value == null) + this.abstract_ = null; + else { + if (this.abstract_ == null) + this.abstract_ = new MarkdownType(); + this.abstract_.setValue(value); + } + return this; + } + + /** + * @return {@link #abstractCopyright} (Copyright information for the abstract text.). This is the underlying object with id, value and extensions. The accessor "getAbstractCopyright" gives direct access to the value + */ + public MarkdownType getAbstractCopyrightElement() { + if (this.abstractCopyright == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.abstractCopyright"); + else if (Configuration.doAutoCreate()) + this.abstractCopyright = new MarkdownType(); // bb + return this.abstractCopyright; + } + + public boolean hasAbstractCopyrightElement() { + return this.abstractCopyright != null && !this.abstractCopyright.isEmpty(); + } + + public boolean hasAbstractCopyright() { + return this.abstractCopyright != null && !this.abstractCopyright.isEmpty(); + } + + /** + * @param value {@link #abstractCopyright} (Copyright information for the abstract text.). This is the underlying object with id, value and extensions. The accessor "getAbstractCopyright" gives direct access to the value + */ + public Citation setAbstractCopyrightElement(MarkdownType value) { + this.abstractCopyright = value; + return this; + } + + /** + * @return Copyright information for the abstract text. + */ + public String getAbstractCopyright() { + return this.abstractCopyright == null ? null : this.abstractCopyright.getValue(); + } + + /** + * @param value Copyright information for the abstract text. + */ + public Citation setAbstractCopyright(String value) { + if (value == null) + this.abstractCopyright = null; + else { + if (this.abstractCopyright == null) + this.abstractCopyright = new MarkdownType(); + this.abstractCopyright.setValue(value); + } + return this; + } + + /** + * @return {@link #alternativeAbstract} (Used for variant abstracts, such as translations.) + */ + public List getAlternativeAbstract() { + if (this.alternativeAbstract == null) + this.alternativeAbstract = new ArrayList(); + return this.alternativeAbstract; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setAlternativeAbstract(List theAlternativeAbstract) { + this.alternativeAbstract = theAlternativeAbstract; + return this; + } + + public boolean hasAlternativeAbstract() { + if (this.alternativeAbstract == null) + return false; + for (CitationAlternativeAbstractComponent item : this.alternativeAbstract) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationAlternativeAbstractComponent addAlternativeAbstract() { //3 + CitationAlternativeAbstractComponent t = new CitationAlternativeAbstractComponent(); + if (this.alternativeAbstract == null) + this.alternativeAbstract = new ArrayList(); + this.alternativeAbstract.add(t); + return t; + } + + public Citation addAlternativeAbstract(CitationAlternativeAbstractComponent t) { //3 + if (t == null) + return this; + if (this.alternativeAbstract == null) + this.alternativeAbstract = new ArrayList(); + this.alternativeAbstract.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #alternativeAbstract}, creating it if it does not already exist {3} + */ + public CitationAlternativeAbstractComponent getAlternativeAbstractFirstRep() { + if (getAlternativeAbstract().isEmpty()) { + addAlternativeAbstract(); + } + return getAlternativeAbstract().get(0); + } + + /** + * @return {@link #authorList} (Personal and collective author names.) + */ + public CitationAuthorListComponent getAuthorList() { + if (this.authorList == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.authorList"); + else if (Configuration.doAutoCreate()) + this.authorList = new CitationAuthorListComponent(); // cc + return this.authorList; + } + + public boolean hasAuthorList() { + return this.authorList != null && !this.authorList.isEmpty(); + } + + /** + * @param value {@link #authorList} (Personal and collective author names.) + */ + public Citation setAuthorList(CitationAuthorListComponent value) { + this.authorList = value; + return this; + } + + /** + * @return {@link #authorString} (Used to record a display of the author list without separate coding for each author.) + */ + public List getAuthorString() { + if (this.authorString == null) + this.authorString = new ArrayList(); + return this.authorString; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setAuthorString(List theAuthorString) { + this.authorString = theAuthorString; + return this; + } + + public boolean hasAuthorString() { + if (this.authorString == null) + return false; + for (CitationAuthorStringComponent item : this.authorString) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationAuthorStringComponent addAuthorString() { //3 + CitationAuthorStringComponent t = new CitationAuthorStringComponent(); + if (this.authorString == null) + this.authorString = new ArrayList(); + this.authorString.add(t); + return t; + } + + public Citation addAuthorString(CitationAuthorStringComponent t) { //3 + if (t == null) + return this; + if (this.authorString == null) + this.authorString = new ArrayList(); + this.authorString.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #authorString}, creating it if it does not already exist {3} + */ + public CitationAuthorStringComponent getAuthorStringFirstRep() { + if (getAuthorString().isEmpty()) { + addAuthorString(); + } + return getAuthorString().get(0); + } + + /** + * @return {@link #contributorList} (Personal and collective contributor names.) + */ + public CitationContributorListComponent getContributorList() { + if (this.contributorList == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.contributorList"); + else if (Configuration.doAutoCreate()) + this.contributorList = new CitationContributorListComponent(); // cc + return this.contributorList; + } + + public boolean hasContributorList() { + return this.contributorList != null && !this.contributorList.isEmpty(); + } + + /** + * @param value {@link #contributorList} (Personal and collective contributor names.) + */ + public Citation setContributorList(CitationContributorListComponent value) { + this.contributorList = value; + return this; + } + + /** + * @return {@link #articleLanguage} (The language in which the article is published.) + */ + public CodeableConcept getArticleLanguage() { + if (this.articleLanguage == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.articleLanguage"); + else if (Configuration.doAutoCreate()) + this.articleLanguage = new CodeableConcept(); // cc + return this.articleLanguage; + } + + public boolean hasArticleLanguage() { + return this.articleLanguage != null && !this.articleLanguage.isEmpty(); + } + + /** + * @param value {@link #articleLanguage} (The language in which the article is published.) + */ + public Citation setArticleLanguage(CodeableConcept value) { + this.articleLanguage = value; + return this; + } + + /** + * @return {@link #alternativeForm} (Used to represent alternative forms of the article that are not separate citations.) + */ + public List getAlternativeForm() { + if (this.alternativeForm == null) + this.alternativeForm = new ArrayList(); + return this.alternativeForm; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setAlternativeForm(List theAlternativeForm) { + this.alternativeForm = theAlternativeForm; + return this; + } + + public boolean hasAlternativeForm() { + if (this.alternativeForm == null) + return false; + for (CitationAlternativeFormComponent item : this.alternativeForm) + if (!item.isEmpty()) + return true; + return false; + } + + public CitationAlternativeFormComponent addAlternativeForm() { //3 + CitationAlternativeFormComponent t = new CitationAlternativeFormComponent(); + if (this.alternativeForm == null) + this.alternativeForm = new ArrayList(); + this.alternativeForm.add(t); + return t; + } + + public Citation addAlternativeForm(CitationAlternativeFormComponent t) { //3 + if (t == null) + return this; + if (this.alternativeForm == null) + this.alternativeForm = new ArrayList(); + this.alternativeForm.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #alternativeForm}, creating it if it does not already exist {3} + */ + public CitationAlternativeFormComponent getAlternativeFormFirstRep() { + if (getAlternativeForm().isEmpty()) { + addAlternativeForm(); + } + return getAlternativeForm().get(0); + } + + /** + * @return {@link #classifier} (Used for many classifiers including PublicationType, CitationSubset, MeshHeading, Chemical.) + */ + public List getClassifier() { + if (this.classifier == null) + this.classifier = new ArrayList(); + return this.classifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setClassifier(List theClassifier) { + this.classifier = theClassifier; + return this; + } + + public boolean hasClassifier() { + if (this.classifier == null) + return false; + for (CodeableConcept item : this.classifier) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addClassifier() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.classifier == null) + this.classifier = new ArrayList(); + this.classifier.add(t); + return t; + } + + public Citation addClassifier(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.classifier == null) + this.classifier = new ArrayList(); + this.classifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #classifier}, creating it if it does not already exist {3} + */ + public CodeableConcept getClassifierFirstRep() { + if (getClassifier().isEmpty()) { + addClassifier(); + } + return getClassifier().get(0); + } + + /** + * @return {@link #relatedArtifact} (Used for referencing EvidenceReport resource.) + */ + public List getRelatedArtifact() { + if (this.relatedArtifact == null) + this.relatedArtifact = new ArrayList(); + return this.relatedArtifact; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setRelatedArtifact(List theRelatedArtifact) { + this.relatedArtifact = theRelatedArtifact; + return this; + } + + public boolean hasRelatedArtifact() { + if (this.relatedArtifact == null) + return false; + for (RelatedArtifact item : this.relatedArtifact) + if (!item.isEmpty()) + return true; + return false; + } + + public RelatedArtifact addRelatedArtifact() { //3 + RelatedArtifact t = new RelatedArtifact(); + if (this.relatedArtifact == null) + this.relatedArtifact = new ArrayList(); + this.relatedArtifact.add(t); + return t; + } + + public Citation addRelatedArtifact(RelatedArtifact t) { //3 + if (t == null) + return this; + if (this.relatedArtifact == null) + this.relatedArtifact = new ArrayList(); + this.relatedArtifact.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #relatedArtifact}, creating it if it does not already exist {3} + */ + public RelatedArtifact getRelatedArtifactFirstRep() { + if (getRelatedArtifact().isEmpty()) { + addRelatedArtifact(); + } + return getRelatedArtifact().get(0); + } + + /** + * @return {@link #note} (Used for general notes and annotations not coded elsewhere.) + */ + public List getNote() { + if (this.note == null) + this.note = new ArrayList(); + return this.note; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setNote(List theNote) { + this.note = theNote; + return this; + } + + public boolean hasNote() { + if (this.note == null) + return false; + for (Annotation item : this.note) + if (!item.isEmpty()) + return true; + return false; + } + + public Annotation addNote() { //3 + Annotation t = new Annotation(); + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return t; + } + + public Citation addNote(Annotation t) { //3 + if (t == null) + return this; + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} + */ + public Annotation getNoteFirstRep() { + if (getNote().isEmpty()) { + addNote(); + } + return getNote().get(0); + } + + /** + * @return {@link #medlinePubMed} (These elements are items with values assigned by MEDLINE or PubMed management.) + */ + public CitationMedlinePubMedComponent getMedlinePubMed() { + if (this.medlinePubMed == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Citation.medlinePubMed"); + else if (Configuration.doAutoCreate()) + this.medlinePubMed = new CitationMedlinePubMedComponent(); // cc + return this.medlinePubMed; + } + + public boolean hasMedlinePubMed() { + return this.medlinePubMed != null && !this.medlinePubMed.isEmpty(); + } + + /** + * @param value {@link #medlinePubMed} (These elements are items with values assigned by MEDLINE or PubMed management.) + */ + public Citation setMedlinePubMed(CitationMedlinePubMedComponent value) { + this.medlinePubMed = value; + return this; + } + + /** + * not supported on this implementation + */ + @Override + public int getNameMax() { + return 0; + } + /** + * @return {@link #name} (A natural language name identifying the citation. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + */ + public StringType getNameElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"name\""); + } + + public boolean hasNameElement() { + return false; + } + public boolean hasName() { + return false; + } + + /** + * @param value {@link #name} (A natural language name identifying the citation. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + */ + public Citation setNameElement(StringType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"name\""); + } + public String getName() { + throw new Error("The resource type \"Citation\" does not implement the property \"name\""); + } + /** + * @param value A natural language name identifying the citation. This name should be usable as an identifier for the module by machine processing applications such as code generation. + */ + public Citation setName(String value) { + throw new Error("The resource type \"Citation\" does not implement the property \"name\""); + } + /** + * not supported on this implementation + */ + @Override + public int getTitleMax() { + return 0; + } + /** + * @return {@link #title} (A short, descriptive, user-friendly title for the citation.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public StringType getTitleElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"title\""); + } + + public boolean hasTitleElement() { + return false; + } + public boolean hasTitle() { + return false; + } + + /** + * @param value {@link #title} (A short, descriptive, user-friendly title for the citation.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public Citation setTitleElement(StringType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"title\""); + } + public String getTitle() { + throw new Error("The resource type \"Citation\" does not implement the property \"title\""); + } + /** + * @param value A short, descriptive, user-friendly title for the citation. + */ + public Citation setTitle(String value) { + throw new Error("The resource type \"Citation\" does not implement the property \"title\""); + } + /** + * not supported on this implementation + */ + @Override + public int getExperimentalMax() { + return 0; + } + /** + * @return {@link #experimental} (A Boolean value to indicate that this citation is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value + */ + public BooleanType getExperimentalElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"experimental\""); + } + + public boolean hasExperimentalElement() { + return false; + } + public boolean hasExperimental() { + return false; + } + + /** + * @param value {@link #experimental} (A Boolean value to indicate that this citation is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value + */ + public Citation setExperimentalElement(BooleanType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"experimental\""); + } + public boolean getExperimental() { + throw new Error("The resource type \"Citation\" does not implement the property \"experimental\""); + } + /** + * @param value A Boolean value to indicate that this citation is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. + */ + public Citation setExperimental(boolean value) { + throw new Error("The resource type \"Citation\" does not implement the property \"experimental\""); + } + /** + * not supported on this implementation + */ + @Override + public int getDateMax() { + return 0; + } + /** + * @return {@link #date} (The date (and optionally time) when the citation was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the citation changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value + */ + public DateTimeType getDateElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"date\""); + } + + public boolean hasDateElement() { + return false; + } + public boolean hasDate() { + return false; + } + + /** + * @param value {@link #date} (The date (and optionally time) when the citation was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the citation changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value + */ + public Citation setDateElement(DateTimeType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"date\""); + } + public Date getDate() { + throw new Error("The resource type \"Citation\" does not implement the property \"date\""); + } + /** + * @param value The date (and optionally time) when the citation was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the citation changes. + */ + public Citation setDate(Date value) { + throw new Error("The resource type \"Citation\" does not implement the property \"date\""); + } + /** + * not supported on this implementation + */ + @Override + public int getPublisherMax() { + return 0; + } + /** + * @return {@link #publisher} (The name of the organization or individual that published the citation.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value + */ + public StringType getPublisherElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"publisher\""); + } + + public boolean hasPublisherElement() { + return false; + } + public boolean hasPublisher() { + return false; + } + + /** + * @param value {@link #publisher} (The name of the organization or individual that published the citation.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value + */ + public Citation setPublisherElement(StringType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"publisher\""); + } + public String getPublisher() { + throw new Error("The resource type \"Citation\" does not implement the property \"publisher\""); + } + /** + * @param value The name of the organization or individual that published the citation. + */ + public Citation setPublisher(String value) { + throw new Error("The resource type \"Citation\" does not implement the property \"publisher\""); + } + /** + * not supported on this implementation + */ + @Override + public int getContactMax() { + return 0; + } + /** + * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) + */ + public List getContact() { + return new ArrayList<>(); + } + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setContact(List theContact) { + throw new Error("The resource type \"Citation\" does not implement the property \"contact\""); + } + public boolean hasContact() { + return false; + } + + public ContactDetail addContact() { //3 + throw new Error("The resource type \"Citation\" does not implement the property \"contact\""); + } + public Citation addContact(ContactDetail t) { //3 + throw new Error("The resource type \"Citation\" does not implement the property \"contact\""); + } + /** + * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist {2} + */ + public ContactDetail getContactFirstRep() { + throw new Error("The resource type \"Citation\" does not implement the property \"contact\""); + } + /** + * not supported on this implementation + */ + @Override + public int getDescriptionMax() { + return 0; + } + /** + * @return {@link #description} (A free text natural language description of the citation from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public MarkdownType getDescriptionElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"description\""); + } + + public boolean hasDescriptionElement() { + return false; + } + public boolean hasDescription() { + return false; + } + + /** + * @param value {@link #description} (A free text natural language description of the citation from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public Citation setDescriptionElement(MarkdownType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"description\""); + } + public String getDescription() { + throw new Error("The resource type \"Citation\" does not implement the property \"description\""); + } + /** + * @param value A free text natural language description of the citation from a consumer's perspective. + */ + public Citation setDescription(String value) { + throw new Error("The resource type \"Citation\" does not implement the property \"description\""); + } + /** + * not supported on this implementation + */ + @Override + public int getJurisdictionMax() { + return 0; + } + /** + * @return {@link #jurisdiction} (A legal or geographic region in which the citation is intended to be used.) + */ + public List getJurisdiction() { + return new ArrayList<>(); + } + /** + * @return Returns a reference to this for easy method chaining + */ + public Citation setJurisdiction(List theJurisdiction) { + throw new Error("The resource type \"Citation\" does not implement the property \"jurisdiction\""); + } + public boolean hasJurisdiction() { + return false; + } + + public CodeableConcept addJurisdiction() { //3 + throw new Error("The resource type \"Citation\" does not implement the property \"jurisdiction\""); + } + public Citation addJurisdiction(CodeableConcept t) { //3 + throw new Error("The resource type \"Citation\" does not implement the property \"jurisdiction\""); + } + /** + * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist {2} + */ + public CodeableConcept getJurisdictionFirstRep() { + throw new Error("The resource type \"Citation\" does not implement the property \"jurisdiction\""); + } + /** + * not supported on this implementation + */ + @Override + public int getPurposeMax() { + return 0; + } + /** + * @return {@link #purpose} (Explanation of why this citation is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value + */ + public MarkdownType getPurposeElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"purpose\""); + } + + public boolean hasPurposeElement() { + return false; + } + public boolean hasPurpose() { + return false; + } + + /** + * @param value {@link #purpose} (Explanation of why this citation is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value + */ + public Citation setPurposeElement(MarkdownType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"purpose\""); + } + public String getPurpose() { + throw new Error("The resource type \"Citation\" does not implement the property \"purpose\""); + } + /** + * @param value Explanation of why this citation is needed and why it has been designed as it has. + */ + public Citation setPurpose(String value) { + throw new Error("The resource type \"Citation\" does not implement the property \"purpose\""); + } + /** + * not supported on this implementation + */ + @Override + public int getCopyrightMax() { + return 0; + } + /** + * @return {@link #copyright} (A copyright statement relating to the citation and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the citation.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value + */ + public MarkdownType getCopyrightElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"copyright\""); + } + + public boolean hasCopyrightElement() { + return false; + } + public boolean hasCopyright() { + return false; + } + + /** + * @param value {@link #copyright} (A copyright statement relating to the citation and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the citation.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value + */ + public Citation setCopyrightElement(MarkdownType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"copyright\""); + } + public String getCopyright() { + throw new Error("The resource type \"Citation\" does not implement the property \"copyright\""); + } + /** + * @param value A copyright statement relating to the citation and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the citation. + */ + public Citation setCopyright(String value) { + throw new Error("The resource type \"Citation\" does not implement the property \"copyright\""); + } + /** + * not supported on this implementation + */ + @Override + public int getApprovalDateMax() { + return 0; + } + /** + * @return {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value + */ + public DateType getApprovalDateElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"approvalDate\""); + } + + public boolean hasApprovalDateElement() { + return false; + } + public boolean hasApprovalDate() { + return false; + } + + /** + * @param value {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value + */ + public Citation setApprovalDateElement(DateType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"approvalDate\""); + } + public Date getApprovalDate() { + throw new Error("The resource type \"Citation\" does not implement the property \"approvalDate\""); + } + /** + * @param value The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. + */ + public Citation setApprovalDate(Date value) { + throw new Error("The resource type \"Citation\" does not implement the property \"approvalDate\""); + } + /** + * not supported on this implementation + */ + @Override + public int getLastReviewDateMax() { + return 0; + } + /** + * @return {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value + */ + public DateType getLastReviewDateElement() { + throw new Error("The resource type \"Citation\" does not implement the property \"lastReviewDate\""); + } + + public boolean hasLastReviewDateElement() { + return false; + } + public boolean hasLastReviewDate() { + return false; + } + + /** + * @param value {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value + */ + public Citation setLastReviewDateElement(DateType value) { + throw new Error("The resource type \"Citation\" does not implement the property \"lastReviewDate\""); + } + public Date getLastReviewDate() { + throw new Error("The resource type \"Citation\" does not implement the property \"lastReviewDate\""); + } + /** + * @param value The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. + */ + public Citation setLastReviewDate(Date value) { + throw new Error("The resource type \"Citation\" does not implement the property \"lastReviewDate\""); + } + /** + * not supported on this implementation + */ + @Override + public int getEffectivePeriodMax() { + return 0; + } + /** + * @return {@link #effectivePeriod} (The period during which the citation content was or is planned to be in active use.) + */ + public Period getEffectivePeriod() { + throw new Error("The resource type \"Citation\" does not implement the property \"effectivePeriod\""); + } + public boolean hasEffectivePeriod() { + return false; + } + /** + * @param value {@link #effectivePeriod} (The period during which the citation content was or is planned to be in active use.) + */ + public Citation setEffectivePeriod(Period value) { + throw new Error("The resource type \"Citation\" does not implement the property \"effectivePeriod\""); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("url", "uri", "An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.", 0, 1, url)); + children.add(new Property("version", "string", "The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.", 0, 1, version)); + children.add(new Property("status", "code", "The status of this summary. Enables tracking the life-cycle of the content.", 0, 1, status)); + children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate citation instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); + children.add(new Property("identifier", "Identifier", "A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance. May include DOI, PMID, PMCID, etc.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("relatedIdentifier", "Identifier", "May include trial registry identifiers.", 0, java.lang.Integer.MAX_VALUE, relatedIdentifier)); + children.add(new Property("dateCited", "dateTime", "Date Cited.", 0, 1, dateCited)); + children.add(new Property("variantCitation", "", "Variant citation.", 0, 1, variantCitation)); + children.add(new Property("publishingModel", "CodeableConcept", "Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.", 0, 1, publishingModel)); + children.add(new Property("journal", "", "Contains identifiers and classifiers for the journal cited.", 0, 1, journal)); + children.add(new Property("articleTitle", "markdown", "Full title of the article.", 0, 1, articleTitle)); + children.add(new Property("alternativeTitle", "", "Used for variant titles, such as translations.", 0, java.lang.Integer.MAX_VALUE, alternativeTitle)); + children.add(new Property("pagination", "", "Indicates the inclusive pages for the article cited.", 0, 1, pagination)); + children.add(new Property("articleUrl", "", "Used for any URL for the article cited.", 0, java.lang.Integer.MAX_VALUE, articleUrl)); + children.add(new Property("abstract", "markdown", "Abstract text, may include structured labels.", 0, 1, abstract_)); + children.add(new Property("abstractCopyright", "markdown", "Copyright information for the abstract text.", 0, 1, abstractCopyright)); + children.add(new Property("alternativeAbstract", "", "Used for variant abstracts, such as translations.", 0, java.lang.Integer.MAX_VALUE, alternativeAbstract)); + children.add(new Property("authorList", "", "Personal and collective author names.", 0, 1, authorList)); + children.add(new Property("authorString", "", "Used to record a display of the author list without separate coding for each author.", 0, java.lang.Integer.MAX_VALUE, authorString)); + children.add(new Property("contributorList", "", "Personal and collective contributor names.", 0, 1, contributorList)); + children.add(new Property("articleLanguage", "CodeableConcept", "The language in which the article is published.", 0, 1, articleLanguage)); + children.add(new Property("alternativeForm", "", "Used to represent alternative forms of the article that are not separate citations.", 0, java.lang.Integer.MAX_VALUE, alternativeForm)); + children.add(new Property("classifier", "CodeableConcept", "Used for many classifiers including PublicationType, CitationSubset, MeshHeading, Chemical.", 0, java.lang.Integer.MAX_VALUE, classifier)); + children.add(new Property("relatedArtifact", "RelatedArtifact", "Used for referencing EvidenceReport resource.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact)); + children.add(new Property("note", "Annotation", "Used for general notes and annotations not coded elsewhere.", 0, java.lang.Integer.MAX_VALUE, note)); + children.add(new Property("medlinePubMed", "", "These elements are items with values assigned by MEDLINE or PubMed management.", 0, 1, medlinePubMed)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 116079: /*url*/ return new Property("url", "uri", "An absolute URI that is used to identify this citation when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.", 0, 1, url); + case 351608024: /*version*/ return new Property("version", "string", "The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.", 0, 1, version); + case -892481550: /*status*/ return new Property("status", "code", "The status of this summary. Enables tracking the life-cycle of the content.", 0, 1, status); + case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate citation instances.", 0, java.lang.Integer.MAX_VALUE, useContext); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance. May include DOI, PMID, PMCID, etc.", 0, java.lang.Integer.MAX_VALUE, identifier); + case -1007604940: /*relatedIdentifier*/ return new Property("relatedIdentifier", "Identifier", "May include trial registry identifiers.", 0, java.lang.Integer.MAX_VALUE, relatedIdentifier); + case -275034401: /*dateCited*/ return new Property("dateCited", "dateTime", "Date Cited.", 0, 1, dateCited); + case -1653134708: /*variantCitation*/ return new Property("variantCitation", "", "Variant citation.", 0, 1, variantCitation); + case 747318902: /*publishingModel*/ return new Property("publishingModel", "CodeableConcept", "Identify the medium/media in which the cited article is published, eg print, electronic or print-electronic.", 0, 1, publishingModel); + case -1419464905: /*journal*/ return new Property("journal", "", "Contains identifiers and classifiers for the journal cited.", 0, 1, journal); + case -404746494: /*articleTitle*/ return new Property("articleTitle", "markdown", "Full title of the article.", 0, 1, articleTitle); + case -1478308181: /*alternativeTitle*/ return new Property("alternativeTitle", "", "Used for variant titles, such as translations.", 0, java.lang.Integer.MAX_VALUE, alternativeTitle); + case 1297692570: /*pagination*/ return new Property("pagination", "", "Indicates the inclusive pages for the article cited.", 0, 1, pagination); + case 164943001: /*articleUrl*/ return new Property("articleUrl", "", "Used for any URL for the article cited.", 0, java.lang.Integer.MAX_VALUE, articleUrl); + case 1732898850: /*abstract*/ return new Property("abstract", "markdown", "Abstract text, may include structured labels.", 0, 1, abstract_); + case -656627259: /*abstractCopyright*/ return new Property("abstractCopyright", "markdown", "Copyright information for the abstract text.", 0, 1, abstractCopyright); + case -376340753: /*alternativeAbstract*/ return new Property("alternativeAbstract", "", "Used for variant abstracts, such as translations.", 0, java.lang.Integer.MAX_VALUE, alternativeAbstract); + case -1501591351: /*authorList*/ return new Property("authorList", "", "Personal and collective author names.", 0, 1, authorList); + case 290249084: /*authorString*/ return new Property("authorString", "", "Used to record a display of the author list without separate coding for each author.", 0, java.lang.Integer.MAX_VALUE, authorString); + case 537567257: /*contributorList*/ return new Property("contributorList", "", "Personal and collective contributor names.", 0, 1, contributorList); + case -1573097874: /*articleLanguage*/ return new Property("articleLanguage", "CodeableConcept", "The language in which the article is published.", 0, 1, articleLanguage); + case 2030111249: /*alternativeForm*/ return new Property("alternativeForm", "", "Used to represent alternative forms of the article that are not separate citations.", 0, java.lang.Integer.MAX_VALUE, alternativeForm); + case -281470431: /*classifier*/ return new Property("classifier", "CodeableConcept", "Used for many classifiers including PublicationType, CitationSubset, MeshHeading, Chemical.", 0, java.lang.Integer.MAX_VALUE, classifier); + case 666807069: /*relatedArtifact*/ return new Property("relatedArtifact", "RelatedArtifact", "Used for referencing EvidenceReport resource.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact); + case 3387378: /*note*/ return new Property("note", "Annotation", "Used for general notes and annotations not coded elsewhere.", 0, java.lang.Integer.MAX_VALUE, note); + case -1342445201: /*medlinePubMed*/ return new Property("medlinePubMed", "", "These elements are items with values assigned by MEDLINE or PubMed management.", 0, 1, medlinePubMed); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType + case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case -1007604940: /*relatedIdentifier*/ return this.relatedIdentifier == null ? new Base[0] : this.relatedIdentifier.toArray(new Base[this.relatedIdentifier.size()]); // Identifier + case -275034401: /*dateCited*/ return this.dateCited == null ? new Base[0] : new Base[] {this.dateCited}; // DateTimeType + case -1653134708: /*variantCitation*/ return this.variantCitation == null ? new Base[0] : new Base[] {this.variantCitation}; // CitationVariantCitationComponent + case 747318902: /*publishingModel*/ return this.publishingModel == null ? new Base[0] : new Base[] {this.publishingModel}; // CodeableConcept + case -1419464905: /*journal*/ return this.journal == null ? new Base[0] : new Base[] {this.journal}; // CitationJournalComponent + case -404746494: /*articleTitle*/ return this.articleTitle == null ? new Base[0] : new Base[] {this.articleTitle}; // MarkdownType + case -1478308181: /*alternativeTitle*/ return this.alternativeTitle == null ? new Base[0] : this.alternativeTitle.toArray(new Base[this.alternativeTitle.size()]); // CitationAlternativeTitleComponent + case 1297692570: /*pagination*/ return this.pagination == null ? new Base[0] : new Base[] {this.pagination}; // CitationPaginationComponent + case 164943001: /*articleUrl*/ return this.articleUrl == null ? new Base[0] : this.articleUrl.toArray(new Base[this.articleUrl.size()]); // CitationArticleUrlComponent + case 1732898850: /*abstract*/ return this.abstract_ == null ? new Base[0] : new Base[] {this.abstract_}; // MarkdownType + case -656627259: /*abstractCopyright*/ return this.abstractCopyright == null ? new Base[0] : new Base[] {this.abstractCopyright}; // MarkdownType + case -376340753: /*alternativeAbstract*/ return this.alternativeAbstract == null ? new Base[0] : this.alternativeAbstract.toArray(new Base[this.alternativeAbstract.size()]); // CitationAlternativeAbstractComponent + case -1501591351: /*authorList*/ return this.authorList == null ? new Base[0] : new Base[] {this.authorList}; // CitationAuthorListComponent + case 290249084: /*authorString*/ return this.authorString == null ? new Base[0] : this.authorString.toArray(new Base[this.authorString.size()]); // CitationAuthorStringComponent + case 537567257: /*contributorList*/ return this.contributorList == null ? new Base[0] : new Base[] {this.contributorList}; // CitationContributorListComponent + case -1573097874: /*articleLanguage*/ return this.articleLanguage == null ? new Base[0] : new Base[] {this.articleLanguage}; // CodeableConcept + case 2030111249: /*alternativeForm*/ return this.alternativeForm == null ? new Base[0] : this.alternativeForm.toArray(new Base[this.alternativeForm.size()]); // CitationAlternativeFormComponent + case -281470431: /*classifier*/ return this.classifier == null ? new Base[0] : this.classifier.toArray(new Base[this.classifier.size()]); // CodeableConcept + case 666807069: /*relatedArtifact*/ return this.relatedArtifact == null ? new Base[0] : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact + case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation + case -1342445201: /*medlinePubMed*/ return this.medlinePubMed == null ? new Base[0] : new Base[] {this.medlinePubMed}; // CitationMedlinePubMedComponent + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 116079: // url + this.url = TypeConvertor.castToUri(value); // UriType + return value; + case 351608024: // version + this.version = TypeConvertor.castToString(value); // StringType + return value; + case -892481550: // status + value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + return value; + case -669707736: // useContext + this.getUseContext().add(TypeConvertor.castToUsageContext(value)); // UsageContext + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case -1007604940: // relatedIdentifier + this.getRelatedIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case -275034401: // dateCited + this.dateCited = TypeConvertor.castToDateTime(value); // DateTimeType + return value; + case -1653134708: // variantCitation + this.variantCitation = (CitationVariantCitationComponent) value; // CitationVariantCitationComponent + return value; + case 747318902: // publishingModel + this.publishingModel = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -1419464905: // journal + this.journal = (CitationJournalComponent) value; // CitationJournalComponent + return value; + case -404746494: // articleTitle + this.articleTitle = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + case -1478308181: // alternativeTitle + this.getAlternativeTitle().add((CitationAlternativeTitleComponent) value); // CitationAlternativeTitleComponent + return value; + case 1297692570: // pagination + this.pagination = (CitationPaginationComponent) value; // CitationPaginationComponent + return value; + case 164943001: // articleUrl + this.getArticleUrl().add((CitationArticleUrlComponent) value); // CitationArticleUrlComponent + return value; + case 1732898850: // abstract + this.abstract_ = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + case -656627259: // abstractCopyright + this.abstractCopyright = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + case -376340753: // alternativeAbstract + this.getAlternativeAbstract().add((CitationAlternativeAbstractComponent) value); // CitationAlternativeAbstractComponent + return value; + case -1501591351: // authorList + this.authorList = (CitationAuthorListComponent) value; // CitationAuthorListComponent + return value; + case 290249084: // authorString + this.getAuthorString().add((CitationAuthorStringComponent) value); // CitationAuthorStringComponent + return value; + case 537567257: // contributorList + this.contributorList = (CitationContributorListComponent) value; // CitationContributorListComponent + return value; + case -1573097874: // articleLanguage + this.articleLanguage = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 2030111249: // alternativeForm + this.getAlternativeForm().add((CitationAlternativeFormComponent) value); // CitationAlternativeFormComponent + return value; + case -281470431: // classifier + this.getClassifier().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case 666807069: // relatedArtifact + this.getRelatedArtifact().add(TypeConvertor.castToRelatedArtifact(value)); // RelatedArtifact + return value; + case 3387378: // note + this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation + return value; + case -1342445201: // medlinePubMed + this.medlinePubMed = (CitationMedlinePubMedComponent) value; // CitationMedlinePubMedComponent + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("url")) { + this.url = TypeConvertor.castToUri(value); // UriType + } else if (name.equals("version")) { + this.version = TypeConvertor.castToString(value); // StringType + } else if (name.equals("status")) { + value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + } else if (name.equals("useContext")) { + this.getUseContext().add(TypeConvertor.castToUsageContext(value)); + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("relatedIdentifier")) { + this.getRelatedIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("dateCited")) { + this.dateCited = TypeConvertor.castToDateTime(value); // DateTimeType + } else if (name.equals("variantCitation")) { + this.variantCitation = (CitationVariantCitationComponent) value; // CitationVariantCitationComponent + } else if (name.equals("publishingModel")) { + this.publishingModel = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("journal")) { + this.journal = (CitationJournalComponent) value; // CitationJournalComponent + } else if (name.equals("articleTitle")) { + this.articleTitle = TypeConvertor.castToMarkdown(value); // MarkdownType + } else if (name.equals("alternativeTitle")) { + this.getAlternativeTitle().add((CitationAlternativeTitleComponent) value); + } else if (name.equals("pagination")) { + this.pagination = (CitationPaginationComponent) value; // CitationPaginationComponent + } else if (name.equals("articleUrl")) { + this.getArticleUrl().add((CitationArticleUrlComponent) value); + } else if (name.equals("abstract")) { + this.abstract_ = TypeConvertor.castToMarkdown(value); // MarkdownType + } else if (name.equals("abstractCopyright")) { + this.abstractCopyright = TypeConvertor.castToMarkdown(value); // MarkdownType + } else if (name.equals("alternativeAbstract")) { + this.getAlternativeAbstract().add((CitationAlternativeAbstractComponent) value); + } else if (name.equals("authorList")) { + this.authorList = (CitationAuthorListComponent) value; // CitationAuthorListComponent + } else if (name.equals("authorString")) { + this.getAuthorString().add((CitationAuthorStringComponent) value); + } else if (name.equals("contributorList")) { + this.contributorList = (CitationContributorListComponent) value; // CitationContributorListComponent + } else if (name.equals("articleLanguage")) { + this.articleLanguage = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("alternativeForm")) { + this.getAlternativeForm().add((CitationAlternativeFormComponent) value); + } else if (name.equals("classifier")) { + this.getClassifier().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("relatedArtifact")) { + this.getRelatedArtifact().add(TypeConvertor.castToRelatedArtifact(value)); + } else if (name.equals("note")) { + this.getNote().add(TypeConvertor.castToAnnotation(value)); + } else if (name.equals("medlinePubMed")) { + this.medlinePubMed = (CitationMedlinePubMedComponent) value; // CitationMedlinePubMedComponent + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 116079: return getUrlElement(); + case 351608024: return getVersionElement(); + case -892481550: return getStatusElement(); + case -669707736: return addUseContext(); + case -1618432855: return addIdentifier(); + case -1007604940: return addRelatedIdentifier(); + case -275034401: return getDateCitedElement(); + case -1653134708: return getVariantCitation(); + case 747318902: return getPublishingModel(); + case -1419464905: return getJournal(); + case -404746494: return getArticleTitleElement(); + case -1478308181: return addAlternativeTitle(); + case 1297692570: return getPagination(); + case 164943001: return addArticleUrl(); + case 1732898850: return getAbstractElement(); + case -656627259: return getAbstractCopyrightElement(); + case -376340753: return addAlternativeAbstract(); + case -1501591351: return getAuthorList(); + case 290249084: return addAuthorString(); + case 537567257: return getContributorList(); + case -1573097874: return getArticleLanguage(); + case 2030111249: return addAlternativeForm(); + case -281470431: return addClassifier(); + case 666807069: return addRelatedArtifact(); + case 3387378: return addNote(); + case -1342445201: return getMedlinePubMed(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 116079: /*url*/ return new String[] {"uri"}; + case 351608024: /*version*/ return new String[] {"string"}; + case -892481550: /*status*/ return new String[] {"code"}; + case -669707736: /*useContext*/ return new String[] {"UsageContext"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case -1007604940: /*relatedIdentifier*/ return new String[] {"Identifier"}; + case -275034401: /*dateCited*/ return new String[] {"dateTime"}; + case -1653134708: /*variantCitation*/ return new String[] {}; + case 747318902: /*publishingModel*/ return new String[] {"CodeableConcept"}; + case -1419464905: /*journal*/ return new String[] {}; + case -404746494: /*articleTitle*/ return new String[] {"markdown"}; + case -1478308181: /*alternativeTitle*/ return new String[] {}; + case 1297692570: /*pagination*/ return new String[] {}; + case 164943001: /*articleUrl*/ return new String[] {}; + case 1732898850: /*abstract*/ return new String[] {"markdown"}; + case -656627259: /*abstractCopyright*/ return new String[] {"markdown"}; + case -376340753: /*alternativeAbstract*/ return new String[] {}; + case -1501591351: /*authorList*/ return new String[] {}; + case 290249084: /*authorString*/ return new String[] {}; + case 537567257: /*contributorList*/ return new String[] {}; + case -1573097874: /*articleLanguage*/ return new String[] {"CodeableConcept"}; + case 2030111249: /*alternativeForm*/ return new String[] {}; + case -281470431: /*classifier*/ return new String[] {"CodeableConcept"}; + case 666807069: /*relatedArtifact*/ return new String[] {"RelatedArtifact"}; + case 3387378: /*note*/ return new String[] {"Annotation"}; + case -1342445201: /*medlinePubMed*/ return new String[] {}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("url")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.url"); + } + else if (name.equals("version")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.version"); + } + else if (name.equals("status")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.status"); + } + else if (name.equals("useContext")) { + return addUseContext(); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else if (name.equals("relatedIdentifier")) { + return addRelatedIdentifier(); + } + else if (name.equals("dateCited")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.dateCited"); + } + else if (name.equals("variantCitation")) { + this.variantCitation = new CitationVariantCitationComponent(); + return this.variantCitation; + } + else if (name.equals("publishingModel")) { + this.publishingModel = new CodeableConcept(); + return this.publishingModel; + } + else if (name.equals("journal")) { + this.journal = new CitationJournalComponent(); + return this.journal; + } + else if (name.equals("articleTitle")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.articleTitle"); + } + else if (name.equals("alternativeTitle")) { + return addAlternativeTitle(); + } + else if (name.equals("pagination")) { + this.pagination = new CitationPaginationComponent(); + return this.pagination; + } + else if (name.equals("articleUrl")) { + return addArticleUrl(); + } + else if (name.equals("abstract")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.abstract"); + } + else if (name.equals("abstractCopyright")) { + throw new FHIRException("Cannot call addChild on a primitive type Citation.abstractCopyright"); + } + else if (name.equals("alternativeAbstract")) { + return addAlternativeAbstract(); + } + else if (name.equals("authorList")) { + this.authorList = new CitationAuthorListComponent(); + return this.authorList; + } + else if (name.equals("authorString")) { + return addAuthorString(); + } + else if (name.equals("contributorList")) { + this.contributorList = new CitationContributorListComponent(); + return this.contributorList; + } + else if (name.equals("articleLanguage")) { + this.articleLanguage = new CodeableConcept(); + return this.articleLanguage; + } + else if (name.equals("alternativeForm")) { + return addAlternativeForm(); + } + else if (name.equals("classifier")) { + return addClassifier(); + } + else if (name.equals("relatedArtifact")) { + return addRelatedArtifact(); + } + else if (name.equals("note")) { + return addNote(); + } + else if (name.equals("medlinePubMed")) { + this.medlinePubMed = new CitationMedlinePubMedComponent(); + return this.medlinePubMed; + } + else + return super.addChild(name); + } + + public String fhirType() { + return "Citation"; + + } + + public Citation copy() { + Citation dst = new Citation(); + copyValues(dst); + return dst; + } + + public void copyValues(Citation dst) { + super.copyValues(dst); + dst.url = url == null ? null : url.copy(); + dst.version = version == null ? null : version.copy(); + dst.status = status == null ? null : status.copy(); + if (useContext != null) { + dst.useContext = new ArrayList(); + for (UsageContext i : useContext) + dst.useContext.add(i.copy()); + }; + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + if (relatedIdentifier != null) { + dst.relatedIdentifier = new ArrayList(); + for (Identifier i : relatedIdentifier) + dst.relatedIdentifier.add(i.copy()); + }; + dst.dateCited = dateCited == null ? null : dateCited.copy(); + dst.variantCitation = variantCitation == null ? null : variantCitation.copy(); + dst.publishingModel = publishingModel == null ? null : publishingModel.copy(); + dst.journal = journal == null ? null : journal.copy(); + dst.articleTitle = articleTitle == null ? null : articleTitle.copy(); + if (alternativeTitle != null) { + dst.alternativeTitle = new ArrayList(); + for (CitationAlternativeTitleComponent i : alternativeTitle) + dst.alternativeTitle.add(i.copy()); + }; + dst.pagination = pagination == null ? null : pagination.copy(); + if (articleUrl != null) { + dst.articleUrl = new ArrayList(); + for (CitationArticleUrlComponent i : articleUrl) + dst.articleUrl.add(i.copy()); + }; + dst.abstract_ = abstract_ == null ? null : abstract_.copy(); + dst.abstractCopyright = abstractCopyright == null ? null : abstractCopyright.copy(); + if (alternativeAbstract != null) { + dst.alternativeAbstract = new ArrayList(); + for (CitationAlternativeAbstractComponent i : alternativeAbstract) + dst.alternativeAbstract.add(i.copy()); + }; + dst.authorList = authorList == null ? null : authorList.copy(); + if (authorString != null) { + dst.authorString = new ArrayList(); + for (CitationAuthorStringComponent i : authorString) + dst.authorString.add(i.copy()); + }; + dst.contributorList = contributorList == null ? null : contributorList.copy(); + dst.articleLanguage = articleLanguage == null ? null : articleLanguage.copy(); + if (alternativeForm != null) { + dst.alternativeForm = new ArrayList(); + for (CitationAlternativeFormComponent i : alternativeForm) + dst.alternativeForm.add(i.copy()); + }; + if (classifier != null) { + dst.classifier = new ArrayList(); + for (CodeableConcept i : classifier) + dst.classifier.add(i.copy()); + }; + if (relatedArtifact != null) { + dst.relatedArtifact = new ArrayList(); + for (RelatedArtifact i : relatedArtifact) + dst.relatedArtifact.add(i.copy()); + }; + if (note != null) { + dst.note = new ArrayList(); + for (Annotation i : note) + dst.note.add(i.copy()); + }; + dst.medlinePubMed = medlinePubMed == null ? null : medlinePubMed.copy(); + } + + protected Citation typedCopy() { + return copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof Citation)) + return false; + Citation o = (Citation) other_; + return compareDeep(url, o.url, true) && compareDeep(version, o.version, true) && compareDeep(status, o.status, true) + && compareDeep(useContext, o.useContext, true) && compareDeep(identifier, o.identifier, true) && compareDeep(relatedIdentifier, o.relatedIdentifier, true) + && compareDeep(dateCited, o.dateCited, true) && compareDeep(variantCitation, o.variantCitation, true) + && compareDeep(publishingModel, o.publishingModel, true) && compareDeep(journal, o.journal, true) + && compareDeep(articleTitle, o.articleTitle, true) && compareDeep(alternativeTitle, o.alternativeTitle, true) + && compareDeep(pagination, o.pagination, true) && compareDeep(articleUrl, o.articleUrl, true) && compareDeep(abstract_, o.abstract_, true) + && compareDeep(abstractCopyright, o.abstractCopyright, true) && compareDeep(alternativeAbstract, o.alternativeAbstract, true) + && compareDeep(authorList, o.authorList, true) && compareDeep(authorString, o.authorString, true) + && compareDeep(contributorList, o.contributorList, true) && compareDeep(articleLanguage, o.articleLanguage, true) + && compareDeep(alternativeForm, o.alternativeForm, true) && compareDeep(classifier, o.classifier, true) + && compareDeep(relatedArtifact, o.relatedArtifact, true) && compareDeep(note, o.note, true) && compareDeep(medlinePubMed, o.medlinePubMed, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof Citation)) + return false; + Citation o = (Citation) other_; + return compareValues(url, o.url, true) && compareValues(version, o.version, true) && compareValues(status, o.status, true) + && compareValues(dateCited, o.dateCited, true) && compareValues(articleTitle, o.articleTitle, true) + && compareValues(abstract_, o.abstract_, true) && compareValues(abstractCopyright, o.abstractCopyright, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, version, status, useContext + , identifier, relatedIdentifier, dateCited, variantCitation, publishingModel, journal + , articleTitle, alternativeTitle, pagination, articleUrl, abstract_, abstractCopyright + , alternativeAbstract, authorList, authorString, contributorList, articleLanguage + , alternativeForm, classifier, relatedArtifact, note, medlinePubMed); + } + + @Override + public ResourceType getResourceType() { + return ResourceType.Citation; + } + + /** + * Search parameter: context-quantity + *

+ * Description: A quantity- or range-valued use context assigned to the citation
+ * Type: quantity
+ * Path: (Citation.useContext.value as Quantity) | (Citation.useContext.value as Range)
+ *

+ */ + @SearchParamDefinition(name="context-quantity", path="(Citation.useContext.value as Quantity) | (Citation.useContext.value as Range)", description="A quantity- or range-valued use context assigned to the citation", type="quantity" ) + public static final String SP_CONTEXT_QUANTITY = "context-quantity"; + /** + * Fluent Client search parameter constant for context-quantity + *

+ * Description: A quantity- or range-valued use context assigned to the citation
+ * Type: quantity
+ * Path: (Citation.useContext.value as Quantity) | (Citation.useContext.value as Range)
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_CONTEXT_QUANTITY); + + /** + * Search parameter: context-type-quantity + *

+ * Description: A use context type and quantity- or range-based value assigned to the citation
+ * Type: composite
+ * Path: Citation.useContext
+ *

+ */ + @SearchParamDefinition(name="context-type-quantity", path="Citation.useContext", description="A use context type and quantity- or range-based value assigned to the citation", type="composite", compositeOf={"context-type", "context-quantity"} ) + public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; + /** + * Fluent Client search parameter constant for context-type-quantity + *

+ * Description: A use context type and quantity- or range-based value assigned to the citation
+ * Type: composite
+ * Path: Citation.useContext
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.CompositeClientParam CONTEXT_TYPE_QUANTITY = new ca.uhn.fhir.rest.gclient.CompositeClientParam(SP_CONTEXT_TYPE_QUANTITY); + + /** + * Search parameter: context-type-value + *

+ * Description: A use context type and value assigned to the citation
+ * Type: composite
+ * Path: Citation.useContext
+ *

+ */ + @SearchParamDefinition(name="context-type-value", path="Citation.useContext", description="A use context type and value assigned to the citation", type="composite", compositeOf={"context-type", "context"} ) + public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; + /** + * Fluent Client search parameter constant for context-type-value + *

+ * Description: A use context type and value assigned to the citation
+ * Type: composite
+ * Path: Citation.useContext
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.CompositeClientParam CONTEXT_TYPE_VALUE = new ca.uhn.fhir.rest.gclient.CompositeClientParam(SP_CONTEXT_TYPE_VALUE); + + /** + * Search parameter: context-type + *

+ * Description: A type of use context assigned to the citation
+ * Type: token
+ * Path: Citation.useContext.code
+ *

+ */ + @SearchParamDefinition(name="context-type", path="Citation.useContext.code", description="A type of use context assigned to the citation", type="token" ) + public static final String SP_CONTEXT_TYPE = "context-type"; + /** + * Fluent Client search parameter constant for context-type + *

+ * Description: A type of use context assigned to the citation
+ * Type: token
+ * Path: Citation.useContext.code
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT_TYPE); + + /** + * Search parameter: context + *

+ * Description: A use context assigned to the citation
+ * Type: token
+ * Path: (Citation.useContext.value as CodeableConcept)
+ *

+ */ + @SearchParamDefinition(name="context", path="(Citation.useContext.value as CodeableConcept)", description="A use context assigned to the citation", type="token" ) + public static final String SP_CONTEXT = "context"; + /** + * Fluent Client search parameter constant for context + *

+ * Description: A use context assigned to the citation
+ * Type: token
+ * Path: (Citation.useContext.value as CodeableConcept)
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT); + + /** + * Search parameter: identifier + *

+ * Description: External identifier for the citation
+ * Type: token
+ * Path: Citation.identifier
+ *

+ */ + @SearchParamDefinition(name="identifier", path="Citation.identifier", description="External identifier for the citation", type="token" ) + public static final String SP_IDENTIFIER = "identifier"; + /** + * Fluent Client search parameter constant for identifier + *

+ * Description: External identifier for the citation
+ * Type: token
+ * Path: Citation.identifier
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); + + /** + * Search parameter: status + *

+ * Description: The current status of the citation
+ * Type: token
+ * Path: Citation.status
+ *

+ */ + @SearchParamDefinition(name="status", path="Citation.status", description="The current status of the citation", type="token" ) + public static final String SP_STATUS = "status"; + /** + * Fluent Client search parameter constant for status + *

+ * Description: The current status of the citation
+ * Type: token
+ * Path: Citation.status
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + + /** + * Search parameter: url + *

+ * Description: The uri that identifies the citation
+ * Type: uri
+ * Path: Citation.url
+ *

+ */ + @SearchParamDefinition(name="url", path="Citation.url", description="The uri that identifies the citation", type="uri" ) + public static final String SP_URL = "url"; + /** + * Fluent Client search parameter constant for url + *

+ * Description: The uri that identifies the citation
+ * Type: uri
+ * Path: Citation.url
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); + + /** + * Search parameter: version + *

+ * Description: The business version of the citation
+ * Type: token
+ * Path: Citation.version
+ *

+ */ + @SearchParamDefinition(name="version", path="Citation.version", description="The business version of the citation", type="token" ) + public static final String SP_VERSION = "version"; + /** + * Fluent Client search parameter constant for version + *

+ * Description: The business version of the citation
+ * Type: token
+ * Path: Citation.version
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); + + +} + diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Claim.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Claim.java index 43e66f89c..8c921302c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Claim.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Claim.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClaimResponse.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClaimResponse.java index 3fe5558c9..3bb1d3add 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClaimResponse.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClaimResponse.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalImpression.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalImpression.java index e4e8702c3..902c187f6 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalImpression.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalImpression.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1880,7 +1880,7 @@ public class ClinicalImpression extends DomainResource { * Path: ClinicalImpression.supportingInfo
*

*/ - @SearchParamDefinition(name="supporting-info", path="ClinicalImpression.supportingInfo", description="Information supporting the clinical impression", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="supporting-info", path="ClinicalImpression.supportingInfo", description="Information supporting the clinical impression", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUPPORTING_INFO = "supporting-info"; /** * Fluent Client search parameter constant for supporting-info @@ -1922,10 +1922,10 @@ public class ClinicalImpression extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -1951,7 +1951,7 @@ public class ClinicalImpression extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -1995,10 +1995,10 @@ public class ClinicalImpression extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2039,7 +2039,7 @@ public class ClinicalImpression extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalUseIssue.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalUseIssue.java index 8c3cf138a..2d0d31f88 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalUseIssue.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ClinicalUseIssue.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -91,9 +91,9 @@ public class ClinicalUseIssue extends DomainResource { */ UNDESIRABLEEFFECT, /** - * Other. + * A general warning or issue that is not specifically one of the other types. */ - OTHER, + WARNING, /** * added to help the parsers with the generic types */ @@ -109,8 +109,8 @@ public class ClinicalUseIssue extends DomainResource { return INTERACTION; if ("undesirable-effect".equals(codeString)) return UNDESIRABLEEFFECT; - if ("other".equals(codeString)) - return OTHER; + if ("warning".equals(codeString)) + return WARNING; if (Configuration.isAcceptInvalidEnums()) return null; else @@ -122,7 +122,7 @@ public class ClinicalUseIssue extends DomainResource { case CONTRAINDICATION: return "contraindication"; case INTERACTION: return "interaction"; case UNDESIRABLEEFFECT: return "undesirable-effect"; - case OTHER: return "other"; + case WARNING: return "warning"; default: return "?"; } } @@ -132,7 +132,7 @@ public class ClinicalUseIssue extends DomainResource { case CONTRAINDICATION: return "http://hl7.org/fhir/clinical-use-issue-type"; case INTERACTION: return "http://hl7.org/fhir/clinical-use-issue-type"; case UNDESIRABLEEFFECT: return "http://hl7.org/fhir/clinical-use-issue-type"; - case OTHER: return "http://hl7.org/fhir/clinical-use-issue-type"; + case WARNING: return "http://hl7.org/fhir/clinical-use-issue-type"; default: return "?"; } } @@ -142,7 +142,7 @@ public class ClinicalUseIssue extends DomainResource { case CONTRAINDICATION: return "A reason for not giving the medicaition."; case INTERACTION: return "Interactions between the medication and other substances."; case UNDESIRABLEEFFECT: return "Side effects or adverse effects associated with the medication."; - case OTHER: return "Other."; + case WARNING: return "A general warning or issue that is not specifically one of the other types."; default: return "?"; } } @@ -152,7 +152,7 @@ public class ClinicalUseIssue extends DomainResource { case CONTRAINDICATION: return "Contraindication"; case INTERACTION: return "Interaction"; case UNDESIRABLEEFFECT: return "Undesirable Effect"; - case OTHER: return "Other"; + case WARNING: return "Warning"; default: return "?"; } } @@ -171,8 +171,8 @@ public class ClinicalUseIssue extends DomainResource { return ClinicalUseIssueType.INTERACTION; if ("undesirable-effect".equals(codeString)) return ClinicalUseIssueType.UNDESIRABLEEFFECT; - if ("other".equals(codeString)) - return ClinicalUseIssueType.OTHER; + if ("warning".equals(codeString)) + return ClinicalUseIssueType.WARNING; throw new IllegalArgumentException("Unknown ClinicalUseIssueType code '"+codeString+"'"); } public Enumeration fromType(Base code) throws FHIRException { @@ -191,8 +191,8 @@ public class ClinicalUseIssue extends DomainResource { return new Enumeration(this, ClinicalUseIssueType.INTERACTION); if ("undesirable-effect".equals(codeString)) return new Enumeration(this, ClinicalUseIssueType.UNDESIRABLEEFFECT); - if ("other".equals(codeString)) - return new Enumeration(this, ClinicalUseIssueType.OTHER); + if ("warning".equals(codeString)) + return new Enumeration(this, ClinicalUseIssueType.WARNING); throw new FHIRException("Unknown ClinicalUseIssueType code '"+codeString+"'"); } public String toCode(ClinicalUseIssueType code) { @@ -204,8 +204,8 @@ public class ClinicalUseIssue extends DomainResource { return "interaction"; if (code == ClinicalUseIssueType.UNDESIRABLEEFFECT) return "undesirable-effect"; - if (code == ClinicalUseIssueType.OTHER) - return "other"; + if (code == ClinicalUseIssueType.WARNING) + return "warning"; return "?"; } public String toSystem(ClinicalUseIssueType code) { @@ -2257,70 +2257,77 @@ public class ClinicalUseIssue extends DomainResource { protected List identifier; /** - * indication | contraindication | interaction | undesirable-effect | other. + * indication | contraindication | interaction | undesirable-effect | warning. */ @Child(name = "type", type = {CodeType.class}, order=1, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="indication | contraindication | interaction | undesirable-effect | other", formalDefinition="indication | contraindication | interaction | undesirable-effect | other." ) + @Description(shortDefinition="indication | contraindication | interaction | undesirable-effect | warning", formalDefinition="indication | contraindication | interaction | undesirable-effect | warning." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/clinical-use-issue-type") protected Enumeration type; + /** + * A categorisation of the issue, primarily for dividing warnings into subject heading areas such as "Pregnancy and Lactation", "Overdose", "Effects Ability to Drive and Use Machines". + */ + @Child(name = "category", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="A categorisation of the issue, primarily for dividing warnings into subject heading areas such as \"Pregnancy and Lactation\", \"Overdose\", \"Effects Ability to Drive and Use Machines\"", formalDefinition="A categorisation of the issue, primarily for dividing warnings into subject heading areas such as \"Pregnancy and Lactation\", \"Overdose\", \"Effects Ability to Drive and Use Machines\"." ) + protected CodeableConcept category; + /** * The medication or procedure for which this is an indication. */ - @Child(name = "subject", type = {MedicinalProductDefinition.class, Medication.class, ActivityDefinition.class, PlanDefinition.class, Device.class, DeviceDefinition.class, Substance.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "subject", type = {MedicinalProductDefinition.class, Medication.class, ActivityDefinition.class, PlanDefinition.class, Device.class, DeviceDefinition.class, Substance.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The medication or procedure for which this is an indication", formalDefinition="The medication or procedure for which this is an indication." ) protected List subject; /** * General description. */ - @Child(name = "status", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Child(name = "status", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="General description", formalDefinition="General description." ) protected CodeableConcept status; /** * General description. */ - @Child(name = "description", type = {MarkdownType.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Child(name = "description", type = {MarkdownType.class}, order=5, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="General description", formalDefinition="General description." ) protected MarkdownType description; /** * Specifics for when this is a contraindication. */ - @Child(name = "contraindication", type = {}, order=5, min=0, max=1, modifier=false, summary=true) + @Child(name = "contraindication", type = {}, order=6, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Specifics for when this is a contraindication", formalDefinition="Specifics for when this is a contraindication." ) protected ClinicalUseIssueContraindicationComponent contraindication; /** * Specifics for when this is an indication. */ - @Child(name = "indication", type = {}, order=6, min=0, max=1, modifier=false, summary=true) + @Child(name = "indication", type = {}, order=7, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Specifics for when this is an indication", formalDefinition="Specifics for when this is an indication." ) protected ClinicalUseIssueIndicationComponent indication; /** * Specifics for when this is an interaction. */ - @Child(name = "interaction", type = {}, order=7, min=0, max=1, modifier=false, summary=true) + @Child(name = "interaction", type = {}, order=8, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Specifics for when this is an interaction", formalDefinition="Specifics for when this is an interaction." ) protected ClinicalUseIssueInteractionComponent interaction; /** * The population group to which this applies. */ - @Child(name = "population", type = {Population.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "population", type = {Population.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The population group to which this applies", formalDefinition="The population group to which this applies." ) protected List population; /** * Describe the undesirable effects of the medicinal product. */ - @Child(name = "undesirableEffect", type = {}, order=9, min=0, max=1, modifier=false, summary=true) + @Child(name = "undesirableEffect", type = {}, order=10, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="A possible negative outcome from the use of this treatment", formalDefinition="Describe the undesirable effects of the medicinal product." ) protected ClinicalUseIssueUndesirableEffectComponent undesirableEffect; - private static final long serialVersionUID = -1817506487L; + private static final long serialVersionUID = 681484438L; /** * Constructor @@ -2391,7 +2398,7 @@ public class ClinicalUseIssue extends DomainResource { } /** - * @return {@link #type} (indication | contraindication | interaction | undesirable-effect | other.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value + * @return {@link #type} (indication | contraindication | interaction | undesirable-effect | warning.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value */ public Enumeration getTypeElement() { if (this.type == null) @@ -2411,7 +2418,7 @@ public class ClinicalUseIssue extends DomainResource { } /** - * @param value {@link #type} (indication | contraindication | interaction | undesirable-effect | other.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value + * @param value {@link #type} (indication | contraindication | interaction | undesirable-effect | warning.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value */ public ClinicalUseIssue setTypeElement(Enumeration value) { this.type = value; @@ -2419,14 +2426,14 @@ public class ClinicalUseIssue extends DomainResource { } /** - * @return indication | contraindication | interaction | undesirable-effect | other. + * @return indication | contraindication | interaction | undesirable-effect | warning. */ public ClinicalUseIssueType getType() { return this.type == null ? null : this.type.getValue(); } /** - * @param value indication | contraindication | interaction | undesirable-effect | other. + * @param value indication | contraindication | interaction | undesirable-effect | warning. */ public ClinicalUseIssue setType(ClinicalUseIssueType value) { if (this.type == null) @@ -2435,6 +2442,30 @@ public class ClinicalUseIssue extends DomainResource { return this; } + /** + * @return {@link #category} (A categorisation of the issue, primarily for dividing warnings into subject heading areas such as "Pregnancy and Lactation", "Overdose", "Effects Ability to Drive and Use Machines".) + */ + public CodeableConcept getCategory() { + if (this.category == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ClinicalUseIssue.category"); + else if (Configuration.doAutoCreate()) + this.category = new CodeableConcept(); // cc + return this.category; + } + + public boolean hasCategory() { + return this.category != null && !this.category.isEmpty(); + } + + /** + * @param value {@link #category} (A categorisation of the issue, primarily for dividing warnings into subject heading areas such as "Pregnancy and Lactation", "Overdose", "Effects Ability to Drive and Use Machines".) + */ + public ClinicalUseIssue setCategory(CodeableConcept value) { + this.category = value; + return this; + } + /** * @return {@link #subject} (The medication or procedure for which this is an indication.) */ @@ -2713,7 +2744,8 @@ public class ClinicalUseIssue extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Business identifier for this issue.", 0, java.lang.Integer.MAX_VALUE, identifier)); - children.add(new Property("type", "code", "indication | contraindication | interaction | undesirable-effect | other.", 0, 1, type)); + children.add(new Property("type", "code", "indication | contraindication | interaction | undesirable-effect | warning.", 0, 1, type)); + children.add(new Property("category", "CodeableConcept", "A categorisation of the issue, primarily for dividing warnings into subject heading areas such as \"Pregnancy and Lactation\", \"Overdose\", \"Effects Ability to Drive and Use Machines\".", 0, 1, category)); children.add(new Property("subject", "Reference(MedicinalProductDefinition|Medication|ActivityDefinition|PlanDefinition|Device|DeviceDefinition|Substance)", "The medication or procedure for which this is an indication.", 0, java.lang.Integer.MAX_VALUE, subject)); children.add(new Property("status", "CodeableConcept", "General description.", 0, 1, status)); children.add(new Property("description", "markdown", "General description.", 0, 1, description)); @@ -2728,7 +2760,8 @@ public class ClinicalUseIssue extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifier for this issue.", 0, java.lang.Integer.MAX_VALUE, identifier); - case 3575610: /*type*/ return new Property("type", "code", "indication | contraindication | interaction | undesirable-effect | other.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "code", "indication | contraindication | interaction | undesirable-effect | warning.", 0, 1, type); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "A categorisation of the issue, primarily for dividing warnings into subject heading areas such as \"Pregnancy and Lactation\", \"Overdose\", \"Effects Ability to Drive and Use Machines\".", 0, 1, category); case -1867885268: /*subject*/ return new Property("subject", "Reference(MedicinalProductDefinition|Medication|ActivityDefinition|PlanDefinition|Device|DeviceDefinition|Substance)", "The medication or procedure for which this is an indication.", 0, java.lang.Integer.MAX_VALUE, subject); case -892481550: /*status*/ return new Property("status", "CodeableConcept", "General description.", 0, 1, status); case -1724546052: /*description*/ return new Property("description", "markdown", "General description.", 0, 1, description); @@ -2747,6 +2780,7 @@ public class ClinicalUseIssue extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Enumeration + case 50511102: /*category*/ return this.category == null ? new Base[0] : new Base[] {this.category}; // CodeableConcept case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : this.subject.toArray(new Base[this.subject.size()]); // Reference case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // CodeableConcept case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType @@ -2770,6 +2804,9 @@ public class ClinicalUseIssue extends DomainResource { value = new ClinicalUseIssueTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); this.type = (Enumeration) value; // Enumeration return value; + case 50511102: // category + this.category = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; case -1867885268: // subject this.getSubject().add(TypeConvertor.castToReference(value)); // Reference return value; @@ -2806,6 +2843,8 @@ public class ClinicalUseIssue extends DomainResource { } else if (name.equals("type")) { value = new ClinicalUseIssueTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); this.type = (Enumeration) value; // Enumeration + } else if (name.equals("category")) { + this.category = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("subject")) { this.getSubject().add(TypeConvertor.castToReference(value)); } else if (name.equals("status")) { @@ -2832,6 +2871,7 @@ public class ClinicalUseIssue extends DomainResource { switch (hash) { case -1618432855: return addIdentifier(); case 3575610: return getTypeElement(); + case 50511102: return getCategory(); case -1867885268: return addSubject(); case -892481550: return getStatus(); case -1724546052: return getDescriptionElement(); @@ -2850,6 +2890,7 @@ public class ClinicalUseIssue extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; case 3575610: /*type*/ return new String[] {"code"}; + case 50511102: /*category*/ return new String[] {"CodeableConcept"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case -892481550: /*status*/ return new String[] {"CodeableConcept"}; case -1724546052: /*description*/ return new String[] {"markdown"}; @@ -2871,6 +2912,10 @@ public class ClinicalUseIssue extends DomainResource { else if (name.equals("type")) { throw new FHIRException("Cannot call addChild on a primitive type ClinicalUseIssue.type"); } + else if (name.equals("category")) { + this.category = new CodeableConcept(); + return this.category; + } else if (name.equals("subject")) { return addSubject(); } @@ -2923,6 +2968,7 @@ public class ClinicalUseIssue extends DomainResource { dst.identifier.add(i.copy()); }; dst.type = type == null ? null : type.copy(); + dst.category = category == null ? null : category.copy(); if (subject != null) { dst.subject = new ArrayList(); for (Reference i : subject) @@ -2952,11 +2998,11 @@ public class ClinicalUseIssue extends DomainResource { if (!(other_ instanceof ClinicalUseIssue)) return false; ClinicalUseIssue o = (ClinicalUseIssue) other_; - return compareDeep(identifier, o.identifier, true) && compareDeep(type, o.type, true) && compareDeep(subject, o.subject, true) - && compareDeep(status, o.status, true) && compareDeep(description, o.description, true) && compareDeep(contraindication, o.contraindication, true) - && compareDeep(indication, o.indication, true) && compareDeep(interaction, o.interaction, true) - && compareDeep(population, o.population, true) && compareDeep(undesirableEffect, o.undesirableEffect, true) - ; + return compareDeep(identifier, o.identifier, true) && compareDeep(type, o.type, true) && compareDeep(category, o.category, true) + && compareDeep(subject, o.subject, true) && compareDeep(status, o.status, true) && compareDeep(description, o.description, true) + && compareDeep(contraindication, o.contraindication, true) && compareDeep(indication, o.indication, true) + && compareDeep(interaction, o.interaction, true) && compareDeep(population, o.population, true) + && compareDeep(undesirableEffect, o.undesirableEffect, true); } @Override @@ -2970,9 +3016,9 @@ public class ClinicalUseIssue extends DomainResource { } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, type, subject - , status, description, contraindication, indication, interaction, population, undesirableEffect - ); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, type, category + , subject, status, description, contraindication, indication, interaction, population + , undesirableEffect); } @Override @@ -3135,17 +3181,17 @@ public class ClinicalUseIssue extends DomainResource { /** * Search parameter: type *

- * Description: indication | contraindication | interaction | undesirable-effect | other
+ * Description: indication | contraindication | interaction | undesirable-effect | warning
* Type: token
* Path: ClinicalUseIssue.type
*

*/ - @SearchParamDefinition(name="type", path="ClinicalUseIssue.type", description="indication | contraindication | interaction | undesirable-effect | other", type="token" ) + @SearchParamDefinition(name="type", path="ClinicalUseIssue.type", description="indication | contraindication | interaction | undesirable-effect | warning", type="token" ) public static final String SP_TYPE = "type"; /** * Fluent Client search parameter constant for type *

- * Description: indication | contraindication | interaction | undesirable-effect | other
+ * Description: indication | contraindication | interaction | undesirable-effect | warning
* Type: token
* Path: ClinicalUseIssue.type
*

diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeSystem.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeSystem.java index aa3f2ac6f..503c9f390 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeSystem.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeSystem.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -5035,13 +5035,14 @@ public class CodeSystem extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) + @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier @@ -5053,10 +5054,11 @@ public class CodeSystem extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableConcept.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableConcept.java index a4a385cb8..677afd94a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableConcept.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableConcept.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -342,7 +342,8 @@ public class CodeableConcept extends DataType implements ICompositeType { super(); addCoding(code); } - + + public boolean matches(CodeableConcept other) { for (Coding c : other.getCoding()) { if (hasCoding(c.getSystem(), c.getCode())) { @@ -355,9 +356,25 @@ public class CodeableConcept extends DataType implements ICompositeType { public boolean hasCoding(Coding coding) { return hasCoding(coding.getSystem(), coding.getCode()); } - - + public boolean hasCoding(String system) { + for (Coding c : getCoding()) { + if (system.equals(c.getSystem())) { + return true; + } + } + return false; + } + + public String getCode(String system) { + for (Coding c : getCoding()) { + if (system.equals(c.getSystem())) { + return c.getCode(); + } + } + return null; + } + // end addition } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableReference.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableReference.java index 02074b7de..b29092ba8 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableReference.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CodeableReference.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coding.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coding.java index f10416cb8..f969ecf1f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coding.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coding.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -567,13 +567,13 @@ public class Coding extends DataType implements IBaseCoding, ICompositeType, ICo base = base+": "+getDisplay(); return base; - } + } + public boolean matches(Coding other) { return other.hasCode() && this.hasCode() && other.hasSystem() && this.hasSystem() && this.getCode().equals(other.getCode()) && this.getSystem().equals(other.getSystem()) ; } - // end addition } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Communication.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Communication.java index 9e478b02a..1731f3990 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Communication.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Communication.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -68,7 +68,7 @@ import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Block; /** - * An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. + * A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. */ @ResourceDef(name="Communication", profile="http://hl7.org/fhir/StructureDefinition/Communication") public class Communication extends DomainResource { @@ -1981,7 +1981,7 @@ public class Communication extends DomainResource { * Path: Communication.basedOn
*

*/ - @SearchParamDefinition(name="based-on", path="Communication.basedOn", description="Request fulfilled by this communication", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="based-on", path="Communication.basedOn", description="Request fulfilled by this communication", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_BASED_ON = "based-on"; /** * Fluent Client search parameter constant for based-on @@ -2139,7 +2139,7 @@ public class Communication extends DomainResource { * Path: Communication.partOf
*

*/ - @SearchParamDefinition(name="part-of", path="Communication.partOf", description="Part of referenced event (e.g. Communication, Procedure)", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="part-of", path="Communication.partOf", description="Part of referenced event (e.g. Communication, Procedure)", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PART_OF = "part-of"; /** * Fluent Client search parameter constant for part-of diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CommunicationRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CommunicationRequest.java index 3bcd0c4ef..21c22784e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CommunicationRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CommunicationRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1903,7 +1903,7 @@ public class CommunicationRequest extends DomainResource { * Path: CommunicationRequest.basedOn
*

*/ - @SearchParamDefinition(name="based-on", path="CommunicationRequest.basedOn", description="Fulfills plan or proposal", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="based-on", path="CommunicationRequest.basedOn", description="Fulfills plan or proposal", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_BASED_ON = "based-on"; /** * Fluent Client search parameter constant for based-on diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CompartmentDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CompartmentDefinition.java index 754c91ea6..4b9c4d8c5 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CompartmentDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CompartmentDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Composition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Composition.java index 8507bcd29..589707230 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Composition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Composition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -3188,7 +3188,7 @@ public class Composition extends DomainResource { * Path: Composition.section.entry
*

*/ - @SearchParamDefinition(name="entry", path="Composition.section.entry", description="A reference to data that supports this section", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="entry", path="Composition.section.entry", description="A reference to data that supports this section", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_ENTRY = "entry"; /** * Fluent Client search parameter constant for entry @@ -3320,7 +3320,7 @@ public class Composition extends DomainResource { * Path: Composition.subject
*

*/ - @SearchParamDefinition(name="subject", path="Composition.subject", description="Who and/or what the composition is about", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="subject", path="Composition.subject", description="Who and/or what the composition is about", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUBJECT = "subject"; /** * Fluent Client search parameter constant for subject @@ -3382,10 +3382,10 @@ public class Composition extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -3411,7 +3411,7 @@ public class Composition extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -3593,10 +3593,10 @@ public class Composition extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3637,7 +3637,7 @@ public class Composition extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConceptMap.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConceptMap.java index dd4ebe480..9e70f74b3 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConceptMap.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConceptMap.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -4533,13 +4533,14 @@ public class ConceptMap extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) + @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier @@ -4551,10 +4552,11 @@ public class ConceptMap extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Condition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Condition.java index 514f9707e..51aeb1f4f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Condition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Condition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -736,7 +736,7 @@ public class Condition extends DomainResource { * Supporting evidence / manifestations that are the basis of the Condition's verification status, such as evidence that confirmed or refuted the condition. */ @Child(name = "evidence", type = {}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Supporting evidence", formalDefinition="Supporting evidence / manifestations that are the basis of the Condition's verification status, such as evidence that confirmed or refuted the condition." ) + @Description(shortDefinition="Supporting evidence for the verification status", formalDefinition="Supporting evidence / manifestations that are the basis of the Condition's verification status, such as evidence that confirmed or refuted the condition." ) protected List evidence; /** @@ -2125,7 +2125,7 @@ public class Condition extends DomainResource { * Path: Condition.evidence.detail
*

*/ - @SearchParamDefinition(name="evidence-detail", path="Condition.evidence.detail", description="Supporting information found elsewhere", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="evidence-detail", path="Condition.evidence.detail", description="Supporting information found elsewhere", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_EVIDENCE_DETAIL = "evidence-detail"; /** * Fluent Client search parameter constant for evidence-detail @@ -2350,10 +2350,10 @@ public class Condition extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2376,7 +2376,7 @@ public class Condition extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2504,10 +2504,10 @@ public class Condition extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2548,7 +2548,7 @@ public class Condition extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConditionDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConditionDefinition.java index 04f19df61..04f918f76 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConditionDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ConditionDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Consent.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Consent.java index ad4560c0c..70aec32c2 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Consent.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Consent.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -245,8 +245,8 @@ public class Consent extends DomainResource { } public String getDisplay() { switch (this) { - case DENY: return "Opt Out"; - case PERMIT: return "Opt In"; + case DENY: return "Deny"; + case PERMIT: return "Permit"; default: return "?"; } } @@ -2473,11 +2473,11 @@ public class Consent extends DomainResource { protected List category; /** - * The patient/healthcare consumer to whom this consent applies. + * The patient/healthcare practitioner to whom this consent applies. */ - @Child(name = "patient", type = {Patient.class}, order=4, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Who the consent applies to", formalDefinition="The patient/healthcare consumer to whom this consent applies." ) - protected Reference patient; + @Child(name = "subject", type = {Patient.class, Practitioner.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Who the consent applies to", formalDefinition="The patient/healthcare practitioner to whom this consent applies." ) + protected Reference subject; /** * Date and time the consent instance was agreed to. @@ -2543,7 +2543,7 @@ public class Consent extends DomainResource { @Description(shortDefinition="Constraints to the base Consent.policyRule/Consent.policy", formalDefinition="An exception to the base policy of this consent. An exception can be an addition or removal of access permissions." ) protected ProvisionComponent provision; - private static final long serialVersionUID = 1958612573L; + private static final long serialVersionUID = -1510572988L; /** * Constructor @@ -2738,26 +2738,26 @@ public class Consent extends DomainResource { } /** - * @return {@link #patient} (The patient/healthcare consumer to whom this consent applies.) + * @return {@link #subject} (The patient/healthcare practitioner to whom this consent applies.) */ - public Reference getPatient() { - if (this.patient == null) + public Reference getSubject() { + if (this.subject == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Consent.patient"); + throw new Error("Attempt to auto-create Consent.subject"); else if (Configuration.doAutoCreate()) - this.patient = new Reference(); // cc - return this.patient; + this.subject = new Reference(); // cc + return this.subject; } - public boolean hasPatient() { - return this.patient != null && !this.patient.isEmpty(); + public boolean hasSubject() { + return this.subject != null && !this.subject.isEmpty(); } /** - * @param value {@link #patient} (The patient/healthcare consumer to whom this consent applies.) + * @param value {@link #subject} (The patient/healthcare practitioner to whom this consent applies.) */ - public Consent setPatient(Reference value) { - this.patient = value; + public Consent setSubject(Reference value) { + this.subject = value; return this; } @@ -3182,7 +3182,7 @@ public class Consent extends DomainResource { children.add(new Property("status", "code", "Indicates the current state of this Consent resource.", 0, 1, status)); children.add(new Property("scope", "CodeableConcept", "A selector of the type of consent being presented: Privacy, Treatment, or Research. This list is now extensible.", 0, 1, scope)); children.add(new Property("category", "CodeableConcept", "A classification of the type of consents found in the statement. This element supports indexing and retrieval of consent statements.", 0, java.lang.Integer.MAX_VALUE, category)); - children.add(new Property("patient", "Reference(Patient)", "The patient/healthcare consumer to whom this consent applies.", 0, 1, patient)); + children.add(new Property("subject", "Reference(Patient|Practitioner)", "The patient/healthcare practitioner to whom this consent applies.", 0, 1, subject)); children.add(new Property("dateTime", "dateTime", "Date and time the consent instance was agreed to.", 0, 1, dateTime)); children.add(new Property("performer", "Reference(CareTeam|HealthcareService|Organization|Patient|Practitioner|RelatedPerson|PractitionerRole)", "Either the Grantor, which is the entity responsible for granting the rights listed in a Consent Directive or the Grantee, which is the entity responsible for complying with the Consent Directive, including any obligations or limitations on authorizations and enforcement of prohibitions.", 0, java.lang.Integer.MAX_VALUE, performer)); children.add(new Property("organization", "Reference(Organization)", "The organization that manages the consent, and the framework within which it is executed.", 0, java.lang.Integer.MAX_VALUE, organization)); @@ -3201,7 +3201,7 @@ public class Consent extends DomainResource { case -892481550: /*status*/ return new Property("status", "code", "Indicates the current state of this Consent resource.", 0, 1, status); case 109264468: /*scope*/ return new Property("scope", "CodeableConcept", "A selector of the type of consent being presented: Privacy, Treatment, or Research. This list is now extensible.", 0, 1, scope); case 50511102: /*category*/ return new Property("category", "CodeableConcept", "A classification of the type of consents found in the statement. This element supports indexing and retrieval of consent statements.", 0, java.lang.Integer.MAX_VALUE, category); - case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "The patient/healthcare consumer to whom this consent applies.", 0, 1, patient); + case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Practitioner)", "The patient/healthcare practitioner to whom this consent applies.", 0, 1, subject); case 1792749467: /*dateTime*/ return new Property("dateTime", "dateTime", "Date and time the consent instance was agreed to.", 0, 1, dateTime); case 481140686: /*performer*/ return new Property("performer", "Reference(CareTeam|HealthcareService|Organization|Patient|Practitioner|RelatedPerson|PractitionerRole)", "Either the Grantor, which is the entity responsible for granting the rights listed in a Consent Directive or the Grantee, which is the entity responsible for complying with the Consent Directive, including any obligations or limitations on authorizations and enforcement of prohibitions.", 0, java.lang.Integer.MAX_VALUE, performer); case 1178922291: /*organization*/ return new Property("organization", "Reference(Organization)", "The organization that manages the consent, and the framework within which it is executed.", 0, java.lang.Integer.MAX_VALUE, organization); @@ -3223,7 +3223,7 @@ public class Consent extends DomainResource { case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case 109264468: /*scope*/ return this.scope == null ? new Base[0] : new Base[] {this.scope}; // CodeableConcept case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept - case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference + case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1792749467: /*dateTime*/ return this.dateTime == null ? new Base[0] : new Base[] {this.dateTime}; // DateTimeType case 481140686: /*performer*/ return this.performer == null ? new Base[0] : this.performer.toArray(new Base[this.performer.size()]); // Reference case 1178922291: /*organization*/ return this.organization == null ? new Base[0] : this.organization.toArray(new Base[this.organization.size()]); // Reference @@ -3254,8 +3254,8 @@ public class Consent extends DomainResource { case 50511102: // category this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; - case -791418107: // patient - this.patient = TypeConvertor.castToReference(value); // Reference + case -1867885268: // subject + this.subject = TypeConvertor.castToReference(value); // Reference return value; case 1792749467: // dateTime this.dateTime = TypeConvertor.castToDateTime(value); // DateTimeType @@ -3300,8 +3300,8 @@ public class Consent extends DomainResource { this.scope = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("category")) { this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("patient")) { - this.patient = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("subject")) { + this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("dateTime")) { this.dateTime = TypeConvertor.castToDateTime(value); // DateTimeType } else if (name.equals("performer")) { @@ -3332,7 +3332,7 @@ public class Consent extends DomainResource { case -892481550: return getStatusElement(); case 109264468: return getScope(); case 50511102: return addCategory(); - case -791418107: return getPatient(); + case -1867885268: return getSubject(); case 1792749467: return getDateTimeElement(); case 481140686: return addPerformer(); case 1178922291: return addOrganization(); @@ -3354,7 +3354,7 @@ public class Consent extends DomainResource { case -892481550: /*status*/ return new String[] {"code"}; case 109264468: /*scope*/ return new String[] {"CodeableConcept"}; case 50511102: /*category*/ return new String[] {"CodeableConcept"}; - case -791418107: /*patient*/ return new String[] {"Reference"}; + case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1792749467: /*dateTime*/ return new String[] {"dateTime"}; case 481140686: /*performer*/ return new String[] {"Reference"}; case 1178922291: /*organization*/ return new String[] {"Reference"}; @@ -3384,9 +3384,9 @@ public class Consent extends DomainResource { else if (name.equals("category")) { return addCategory(); } - else if (name.equals("patient")) { - this.patient = new Reference(); - return this.patient; + else if (name.equals("subject")) { + this.subject = new Reference(); + return this.subject; } else if (name.equals("dateTime")) { throw new FHIRException("Cannot call addChild on a primitive type Consent.dateTime"); @@ -3446,7 +3446,7 @@ public class Consent extends DomainResource { for (CodeableConcept i : category) dst.category.add(i.copy()); }; - dst.patient = patient == null ? null : patient.copy(); + dst.subject = subject == null ? null : subject.copy(); dst.dateTime = dateTime == null ? null : dateTime.copy(); if (performer != null) { dst.performer = new ArrayList(); @@ -3494,7 +3494,7 @@ public class Consent extends DomainResource { return false; Consent o = (Consent) other_; return compareDeep(identifier, o.identifier, true) && compareDeep(status, o.status, true) && compareDeep(scope, o.scope, true) - && compareDeep(category, o.category, true) && compareDeep(patient, o.patient, true) && compareDeep(dateTime, o.dateTime, true) + && compareDeep(category, o.category, true) && compareDeep(subject, o.subject, true) && compareDeep(dateTime, o.dateTime, true) && compareDeep(performer, o.performer, true) && compareDeep(organization, o.organization, true) && compareDeep(sourceAttachment, o.sourceAttachment, true) && compareDeep(sourceReference, o.sourceReference, true) && compareDeep(policy, o.policy, true) && compareDeep(policyRule, o.policyRule, true) && compareDeep(verification, o.verification, true) @@ -3513,7 +3513,7 @@ public class Consent extends DomainResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, status, scope - , category, patient, dateTime, performer, organization, sourceAttachment, sourceReference + , category, subject, dateTime, performer, organization, sourceAttachment, sourceReference , policy, policyRule, verification, provision); } @@ -3622,7 +3622,7 @@ public class Consent extends DomainResource { * Path: Consent.provision.data.reference
*

*/ - @SearchParamDefinition(name="data", path="Consent.provision.data.reference", description="The actual data reference", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="data", path="Consent.provision.data.reference", description="The actual data reference", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DATA = "data"; /** * Fluent Client search parameter constant for data @@ -3812,6 +3812,32 @@ public class Consent extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + /** + * Search parameter: subject + *

+ * Description: Who the consent applies to
+ * Type: reference
+ * Path: Consent.subject
+ *

+ */ + @SearchParamDefinition(name="subject", path="Consent.subject", description="Who the consent applies to", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Patient.class, Practitioner.class } ) + public static final String SP_SUBJECT = "subject"; + /** + * Fluent Client search parameter constant for subject + *

+ * Description: Who the consent applies to
+ * Type: reference
+ * Path: Consent.subject
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SUBJECT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SUBJECT); + +/** + * Constant for fluent queries to be used to add include statements. Specifies + * the path value of "Consent:subject". + */ + public static final ca.uhn.fhir.model.api.Include INCLUDE_SUBJECT = new ca.uhn.fhir.model.api.Include("Consent:subject").toLocked(); + /** * Search parameter: verified-date *

@@ -3876,10 +3902,10 @@ public class Consent extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -3905,7 +3931,7 @@ public class Consent extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -4033,10 +4059,10 @@ public class Consent extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -4077,7 +4103,7 @@ public class Consent extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Constants.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Constants.java index 2a403e76e..f96f71c58 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Constants.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Constants.java @@ -48,19 +48,19 @@ package org.hl7.fhir.r5.model; WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ POSSIBILITY OF SUCH DAMAGE. -*/ + */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR v4.2.0 +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR v4.4.0 public class Constants { - public final static String LOCAL_REF_REGEX = "(Account|ActivityDefinition|AdministrableProductDefinition|AdverseEvent|AllergyIntolerance|Appointment|AppointmentResponse|AuditEvent|Basic|Binary|BiologicallyDerivedProduct|BodyStructure|Bundle|CapabilityStatement|CapabilityStatement2|CarePlan|CareTeam|CatalogEntry|ChargeItem|ChargeItemDefinition|Claim|ClaimResponse|ClinicalImpression|ClinicalUseIssue|CodeSystem|Communication|CommunicationRequest|CompartmentDefinition|Composition|ConceptMap|Condition|ConditionDefinition|Consent|Contract|Coverage|CoverageEligibilityRequest|CoverageEligibilityResponse|DetectedIssue|Device|DeviceDefinition|DeviceMetric|DeviceRequest|DeviceUseStatement|DiagnosticReport|DocumentManifest|DocumentReference|Encounter|Endpoint|EnrollmentRequest|EnrollmentResponse|EpisodeOfCare|EventDefinition|Evidence|EvidenceVariable|ExampleScenario|ExplanationOfBenefit|FamilyMemberHistory|Flag|Goal|GraphDefinition|Group|GuidanceResponse|HealthcareService|ImagingStudy|Immunization|ImmunizationEvaluation|ImmunizationRecommendation|ImplementationGuide|Ingredient|InsurancePlan|Invoice|Library|Linkage|List|Location|ManufacturedItemDefinition|Measure|MeasureReport|Medication|MedicationAdministration|MedicationDispense|MedicationKnowledge|MedicationRequest|MedicationUsage|MedicinalProductDefinition|MessageDefinition|MessageHeader|MolecularSequence|NamingSystem|NutritionIntake|NutritionOrder|Observation|ObservationDefinition|OperationDefinition|OperationOutcome|Organization|OrganizationAffiliation|PackagedProductDefinition|Parameters|Patient|PaymentNotice|PaymentReconciliation|Person|PlanDefinition|Practitioner|PractitionerRole|Procedure|Provenance|Questionnaire|QuestionnaireResponse|RegulatedAuthorization|RelatedPerson|RequestGroup|ResearchStudy|ResearchSubject|RiskAssessment|Schedule|SearchParameter|ServiceRequest|Slot|Specimen|SpecimenDefinition|StructureDefinition|StructureMap|Subscription|Substance|SubstanceDefinition|SubstanceNucleicAcid|SubstancePolymer|SubstanceProtein|SubstanceReferenceInformation|SubstanceSourceMaterial|SupplyDelivery|SupplyRequest|Task|TerminologyCapabilities|TestReport|TestScript|Topic|ValueSet|VerificationResult|VisionPrescription)\\\\/[A-Za-z0-9\\\\-\\\\.]{1,64}"; + public final static String LOCAL_REF_REGEX = "(Account|ActivityDefinition|AdministrableProductDefinition|AdverseEvent|AllergyIntolerance|Appointment|AppointmentResponse|AuditEvent|Basic|Binary|BiologicallyDerivedProduct|BodyStructure|Bundle|CapabilityStatement|CapabilityStatement2|CarePlan|CareTeam|CatalogEntry|ChargeItem|ChargeItemDefinition|Citation|Claim|ClaimResponse|ClinicalImpression|ClinicalUseIssue|CodeSystem|Communication|CommunicationRequest|CompartmentDefinition|Composition|ConceptMap|Condition|ConditionDefinition|Consent|Contract|Coverage|CoverageEligibilityRequest|CoverageEligibilityResponse|DetectedIssue|Device|DeviceDefinition|DeviceMetric|DeviceRequest|DeviceUseStatement|DiagnosticReport|DocumentManifest|DocumentReference|Encounter|Endpoint|EnrollmentRequest|EnrollmentResponse|EpisodeOfCare|EventDefinition|Evidence|EvidenceFocus|EvidenceVariable|ExampleScenario|ExplanationOfBenefit|FamilyMemberHistory|Flag|Goal|GraphDefinition|Group|GuidanceResponse|HealthcareService|ImagingStudy|Immunization|ImmunizationEvaluation|ImmunizationRecommendation|ImplementationGuide|Ingredient|InsurancePlan|Invoice|Library|Linkage|List|Location|ManufacturedItemDefinition|Measure|MeasureReport|Medication|MedicationAdministration|MedicationDispense|MedicationKnowledge|MedicationRequest|MedicationUsage|MedicinalProductDefinition|MessageDefinition|MessageHeader|MolecularSequence|NamingSystem|NutritionIntake|NutritionOrder|NutritionProduct|Observation|ObservationDefinition|OperationDefinition|OperationOutcome|Organization|OrganizationAffiliation|PackagedProductDefinition|Parameters|Patient|PaymentNotice|PaymentReconciliation|Permission|Person|PlanDefinition|Practitioner|PractitionerRole|Procedure|Provenance|Questionnaire|QuestionnaireResponse|RegulatedAuthorization|RelatedPerson|RequestGroup|ResearchStudy|ResearchSubject|RiskAssessment|Schedule|SearchParameter|ServiceRequest|Slot|Specimen|SpecimenDefinition|StructureDefinition|StructureMap|Subscription|SubscriptionStatus|SubscriptionTopic|Substance|SubstanceDefinition|SubstanceNucleicAcid|SubstancePolymer|SubstanceProtein|SubstanceReferenceInformation|SubstanceSourceMaterial|SupplyDelivery|SupplyRequest|Task|TerminologyCapabilities|TestReport|TestScript|ValueSet|VerificationResult|VisionPrescription)\\\\/[A-Za-z0-9\\\\-\\\\.]{1,64}"; public final static String NS_SYSTEM_TYPE = "http://hl7.org/fhirpath/System."; public final static String VERSION = "4.4.0"; public final static String VERSION_MM = "4.4"; - public final static String DATE = "Tue, Dec 31, 2019 12:12+1100"; - public final static String URI_REGEX = "((http|https)://([A-Za-z0-9\\\\\\.\\:\\%\\$]*\\/)*)?(Account|ActivityDefinition|AdministrableProductDefinition|AdverseEvent|AllergyIntolerance|Appointment|AppointmentResponse|AuditEvent|Basic|Binary|BiologicallyDerivedProduct|BodyStructure|Bundle|CapabilityStatement|CapabilityStatement2|CarePlan|CareTeam|CatalogEntry|ChargeItem|ChargeItemDefinition|Claim|ClaimResponse|ClinicalImpression|ClinicalUseIssue|CodeSystem|Communication|CommunicationRequest|CompartmentDefinition|Composition|ConceptMap|Condition|ConditionDefinition|Consent|Contract|Coverage|CoverageEligibilityRequest|CoverageEligibilityResponse|DetectedIssue|Device|DeviceDefinition|DeviceMetric|DeviceRequest|DeviceUseStatement|DiagnosticReport|DocumentManifest|DocumentReference|Encounter|Endpoint|EnrollmentRequest|EnrollmentResponse|EpisodeOfCare|EventDefinition|Evidence|EvidenceVariable|ExampleScenario|ExplanationOfBenefit|FamilyMemberHistory|Flag|Goal|GraphDefinition|Group|GuidanceResponse|HealthcareService|ImagingStudy|Immunization|ImmunizationEvaluation|ImmunizationRecommendation|ImplementationGuide|Ingredient|InsurancePlan|Invoice|Library|Linkage|List|Location|ManufacturedItemDefinition|Measure|MeasureReport|Medication|MedicationAdministration|MedicationDispense|MedicationKnowledge|MedicationRequest|MedicationUsage|MedicinalProductDefinition|MessageDefinition|MessageHeader|MolecularSequence|NamingSystem|NutritionIntake|NutritionOrder|Observation|ObservationDefinition|OperationDefinition|OperationOutcome|Organization|OrganizationAffiliation|PackagedProductDefinition|Parameters|Patient|PaymentNotice|PaymentReconciliation|Person|PlanDefinition|Practitioner|PractitionerRole|Procedure|Provenance|Questionnaire|QuestionnaireResponse|RegulatedAuthorization|RelatedPerson|RequestGroup|ResearchStudy|ResearchSubject|RiskAssessment|Schedule|SearchParameter|ServiceRequest|Slot|Specimen|SpecimenDefinition|StructureDefinition|StructureMap|Subscription|Substance|SubstanceDefinition|SubstanceNucleicAcid|SubstancePolymer|SubstanceProtein|SubstanceReferenceInformation|SubstanceSourceMaterial|SupplyDelivery|SupplyRequest|Task|TerminologyCapabilities|TestReport|TestScript|Topic|ValueSet|VerificationResult|VisionPrescription)\\/[A-Za-z0-9\\-\\.]{1,64}(\\/_history\\/[A-Za-z0-9\\-\\.]{1,64})?"; + public final static String DATE = "Mon, May 11, 2020 09:58+1000"; + public final static String URI_REGEX = "((http|https)://([A-Za-z0-9\\\\\\.\\:\\%\\$]*\\/)*)?(Account|ActivityDefinition|AdministrableProductDefinition|AdverseEvent|AllergyIntolerance|Appointment|AppointmentResponse|AuditEvent|Basic|Binary|BiologicallyDerivedProduct|BodyStructure|Bundle|CapabilityStatement|CapabilityStatement2|CarePlan|CareTeam|CatalogEntry|ChargeItem|ChargeItemDefinition|Citation|Claim|ClaimResponse|ClinicalImpression|ClinicalUseIssue|CodeSystem|Communication|CommunicationRequest|CompartmentDefinition|Composition|ConceptMap|Condition|ConditionDefinition|Consent|Contract|Coverage|CoverageEligibilityRequest|CoverageEligibilityResponse|DetectedIssue|Device|DeviceDefinition|DeviceMetric|DeviceRequest|DeviceUseStatement|DiagnosticReport|DocumentManifest|DocumentReference|Encounter|Endpoint|EnrollmentRequest|EnrollmentResponse|EpisodeOfCare|EventDefinition|Evidence|EvidenceFocus|EvidenceVariable|ExampleScenario|ExplanationOfBenefit|FamilyMemberHistory|Flag|Goal|GraphDefinition|Group|GuidanceResponse|HealthcareService|ImagingStudy|Immunization|ImmunizationEvaluation|ImmunizationRecommendation|ImplementationGuide|Ingredient|InsurancePlan|Invoice|Library|Linkage|List|Location|ManufacturedItemDefinition|Measure|MeasureReport|Medication|MedicationAdministration|MedicationDispense|MedicationKnowledge|MedicationRequest|MedicationUsage|MedicinalProductDefinition|MessageDefinition|MessageHeader|MolecularSequence|NamingSystem|NutritionIntake|NutritionOrder|NutritionProduct|Observation|ObservationDefinition|OperationDefinition|OperationOutcome|Organization|OrganizationAffiliation|PackagedProductDefinition|Parameters|Patient|PaymentNotice|PaymentReconciliation|Permission|Person|PlanDefinition|Practitioner|PractitionerRole|Procedure|Provenance|Questionnaire|QuestionnaireResponse|RegulatedAuthorization|RelatedPerson|RequestGroup|ResearchStudy|ResearchSubject|RiskAssessment|Schedule|SearchParameter|ServiceRequest|Slot|Specimen|SpecimenDefinition|StructureDefinition|StructureMap|Subscription|SubscriptionStatus|SubscriptionTopic|Substance|SubstanceDefinition|SubstanceNucleicAcid|SubstancePolymer|SubstanceProtein|SubstanceReferenceInformation|SubstanceSourceMaterial|SupplyDelivery|SupplyRequest|Task|TerminologyCapabilities|TestReport|TestScript|ValueSet|VerificationResult|VisionPrescription)\\/[A-Za-z0-9\\-\\.]{1,64}(\\/_history\\/[A-Za-z0-9\\-\\.]{1,64})?"; } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactDetail.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactDetail.java index eafeabdba..434f15b98 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactDetail.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactDetail.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactPoint.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactPoint.java index 4b20b0219..215ecaba9 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactPoint.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ContactPoint.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contract.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contract.java index 9b159bf15..7696a9c79 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contract.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contract.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -11642,7 +11642,7 @@ public class Contract extends DomainResource { * Path: Contract.subject
*

*/ - @SearchParamDefinition(name="subject", path="Contract.subject", description="The identity of the subject of the contract", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="subject", path="Contract.subject", description="The identity of the subject of the contract", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUBJECT = "subject"; /** * Fluent Client search parameter constant for subject diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contributor.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contributor.java index 982678a59..2e0a180bc 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contributor.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Contributor.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Count.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Count.java index 01dee6c10..35dfe5c27 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Count.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Count.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coverage.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coverage.java index 3c50aa7f6..a38962925 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coverage.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Coverage.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityRequest.java index 7137436fc..af6b9d9d0 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityResponse.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityResponse.java index cb7780bd8..c916f8418 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityResponse.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/CoverageEligibilityResponse.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataRequirement.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataRequirement.java index 6d9eb2875..b56765a18 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataRequirement.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataRequirement.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataType.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataType.java index 8e5643c02..2e8f4b14c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataType.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DataType.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DetectedIssue.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DetectedIssue.java index 1a67154c9..c1bf614e7 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DetectedIssue.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DetectedIssue.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1745,7 +1745,7 @@ public class DetectedIssue extends DomainResource { * Path: DetectedIssue.implicated
*

*/ - @SearchParamDefinition(name="implicated", path="DetectedIssue.implicated", description="Problem resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="implicated", path="DetectedIssue.implicated", description="Problem resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_IMPLICATED = "implicated"; /** * Fluent Client search parameter constant for implicated @@ -1886,10 +1886,10 @@ public class DetectedIssue extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1930,7 +1930,7 @@ public class DetectedIssue extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Device.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Device.java index bf3945a34..9da805d02 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Device.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Device.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -218,6 +218,10 @@ public class Device extends DomainResource { * The data originated from a patient source and was not directly scanned or read from a label or card. */ SELFREPORTED, + /** + * The UDI information was received electronically from the device through a communication protocol, such as the IEEE 11073 20601 version 4 exchange protocol over Bluetooth or USB. + */ + ELECTRONICTRANSMISSION, /** * The method of data capture has not been determined. */ @@ -239,6 +243,8 @@ public class Device extends DomainResource { return CARD; if ("self-reported".equals(codeString)) return SELFREPORTED; + if ("electronic-transmission".equals(codeString)) + return ELECTRONICTRANSMISSION; if ("unknown".equals(codeString)) return UNKNOWN; if (Configuration.isAcceptInvalidEnums()) @@ -253,6 +259,7 @@ public class Device extends DomainResource { case MANUAL: return "manual"; case CARD: return "card"; case SELFREPORTED: return "self-reported"; + case ELECTRONICTRANSMISSION: return "electronic-transmission"; case UNKNOWN: return "unknown"; default: return "?"; } @@ -264,6 +271,7 @@ public class Device extends DomainResource { case MANUAL: return "http://hl7.org/fhir/udi-entry-type"; case CARD: return "http://hl7.org/fhir/udi-entry-type"; case SELFREPORTED: return "http://hl7.org/fhir/udi-entry-type"; + case ELECTRONICTRANSMISSION: return "http://hl7.org/fhir/udi-entry-type"; case UNKNOWN: return "http://hl7.org/fhir/udi-entry-type"; default: return "?"; } @@ -275,6 +283,7 @@ public class Device extends DomainResource { case MANUAL: return "The data was read from the label by a person and manually entered. (e.g. via a keyboard)."; case CARD: return "The data originated from a patient's implant card and was read by an operator."; case SELFREPORTED: return "The data originated from a patient source and was not directly scanned or read from a label or card."; + case ELECTRONICTRANSMISSION: return "The UDI information was received electronically from the device through a communication protocol, such as the IEEE 11073 20601 version 4 exchange protocol over Bluetooth or USB."; case UNKNOWN: return "The method of data capture has not been determined."; default: return "?"; } @@ -286,6 +295,7 @@ public class Device extends DomainResource { case MANUAL: return "Manual"; case CARD: return "Card"; case SELFREPORTED: return "Self Reported"; + case ELECTRONICTRANSMISSION: return "Electronic Transmission"; case UNKNOWN: return "Unknown"; default: return "?"; } @@ -307,6 +317,8 @@ public class Device extends DomainResource { return UDIEntryType.CARD; if ("self-reported".equals(codeString)) return UDIEntryType.SELFREPORTED; + if ("electronic-transmission".equals(codeString)) + return UDIEntryType.ELECTRONICTRANSMISSION; if ("unknown".equals(codeString)) return UDIEntryType.UNKNOWN; throw new IllegalArgumentException("Unknown UDIEntryType code '"+codeString+"'"); @@ -329,6 +341,8 @@ public class Device extends DomainResource { return new Enumeration(this, UDIEntryType.CARD); if ("self-reported".equals(codeString)) return new Enumeration(this, UDIEntryType.SELFREPORTED); + if ("electronic-transmission".equals(codeString)) + return new Enumeration(this, UDIEntryType.ELECTRONICTRANSMISSION); if ("unknown".equals(codeString)) return new Enumeration(this, UDIEntryType.UNKNOWN); throw new FHIRException("Unknown UDIEntryType code '"+codeString+"'"); @@ -344,6 +358,8 @@ public class Device extends DomainResource { return "card"; if (code == UDIEntryType.SELFREPORTED) return "self-reported"; + if (code == UDIEntryType.ELECTRONICTRANSMISSION) + return "electronic-transmission"; if (code == UDIEntryType.UNKNOWN) return "unknown"; return "?"; @@ -402,7 +418,7 @@ http://hl7.org/fhir/NamingSystem/iccbba-other-di. * A coded entry to indicate how the data was entered. */ @Child(name = "entryType", type = {CodeType.class}, order=6, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="barcode | rfid | manual +", formalDefinition="A coded entry to indicate how the data was entered." ) + @Description(shortDefinition="barcode | rfid | manual | card | self-reported | electronic-transmission | unknown", formalDefinition="A coded entry to indicate how the data was entered." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/udi-entry-type") protected Enumeration entryType; @@ -940,11 +956,11 @@ http://hl7.org/fhir/NamingSystem/iccbba-other-di. protected StringType name; /** - * The type of deviceName. + * The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName. */ @Child(name = "type", type = {CodeType.class}, order=2, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other", formalDefinition="The type of deviceName.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName." ) + @Description(shortDefinition="udi-label-name | user-friendly-name | patient-reported-name | manufacturer-name | model-name | other", formalDefinition="The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-nametype") protected Enumeration type; @@ -1012,7 +1028,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #type} (The type of deviceName. + * @return {@link #type} (The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value */ public Enumeration getTypeElement() { @@ -1033,7 +1049,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #type} (The type of deviceName. + * @param value {@link #type} (The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value */ public DeviceDeviceNameComponent setTypeElement(Enumeration value) { @@ -1042,7 +1058,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return The type of deviceName. + * @return The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName. */ public DeviceNameType getType() { @@ -1050,7 +1066,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value The type of deviceName. + * @param value The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer. UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName. */ public DeviceDeviceNameComponent setType(DeviceNameType value) { @@ -1063,14 +1079,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); children.add(new Property("name", "string", "The name that identifies the device.", 0, 1, name)); - children.add(new Property("type", "code", "The type of deviceName.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.", 0, 1, type)); + children.add(new Property("type", "code", "The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.", 0, 1, type)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case 3373707: /*name*/ return new Property("name", "string", "The name that identifies the device.", 0, 1, name); - case 3575610: /*type*/ return new Property("type", "code", "The type of deviceName.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "code", "The type of deviceName. Note that ManufactureDeviceName means that the name is the name as given by the manufacturer, not the name of the manufacturer.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.", 0, 1, type); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1431,10 +1447,10 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected CodeableConcept type; /** - * A single component of the device version. + * The hardware or software module of the device to which the version applies. */ @Child(name = "component", type = {Identifier.class}, order=2, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="A single component of the device version", formalDefinition="A single component of the device version." ) + @Description(shortDefinition="The hardware or software module of the device to which the version applies", formalDefinition="The hardware or software module of the device to which the version applies." ) protected Identifier component; /** @@ -1486,7 +1502,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #component} (A single component of the device version.) + * @return {@link #component} (The hardware or software module of the device to which the version applies.) */ public Identifier getComponent() { if (this.component == null) @@ -1502,7 +1518,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #component} (A single component of the device version.) + * @param value {@link #component} (The hardware or software module of the device to which the version applies.) */ public DeviceVersionComponent setComponent(Identifier value) { this.component = value; @@ -1557,7 +1573,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); children.add(new Property("type", "CodeableConcept", "The type of the device version, e.g. manufacturer, approved, internal.", 0, 1, type)); - children.add(new Property("component", "Identifier", "A single component of the device version.", 0, 1, component)); + children.add(new Property("component", "Identifier", "The hardware or software module of the device to which the version applies.", 0, 1, component)); children.add(new Property("value", "string", "The version text.", 0, 1, value)); } @@ -1565,7 +1581,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The type of the device version, e.g. manufacturer, approved, internal.", 0, 1, type); - case -1399907075: /*component*/ return new Property("component", "Identifier", "A single component of the device version.", 0, 1, component); + case -1399907075: /*component*/ return new Property("component", "Identifier", "The hardware or software module of the device to which the version applies.", 0, 1, component); case 111972721: /*value*/ return new Property("value", "string", "The version text.", 0, 1, value); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1700,10 +1716,10 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Block() public static class DevicePropertyComponent extends BackboneElement implements IBaseBackboneElement { /** - * Code that specifies the property DeviceDefinitionPropetyCode (Extensible). + * Code that specifies the property being represented. No codes are specified but the MDC codes are an example: https://build.fhir.org/mdc.html. */ @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="Code that specifies the property DeviceDefinitionPropetyCode (Extensible)", formalDefinition="Code that specifies the property DeviceDefinitionPropetyCode (Extensible)." ) + @Description(shortDefinition="Code that specifies the property being represented", formalDefinition="Code that specifies the property being represented. No codes are specified but the MDC codes are an example: https://build.fhir.org/mdc.html." ) protected CodeableConcept type; /** @@ -1738,7 +1754,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #type} (Code that specifies the property DeviceDefinitionPropetyCode (Extensible).) + * @return {@link #type} (Code that specifies the property being represented. No codes are specified but the MDC codes are an example: https://build.fhir.org/mdc.html.) */ public CodeableConcept getType() { if (this.type == null) @@ -1754,7 +1770,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #type} (Code that specifies the property DeviceDefinitionPropetyCode (Extensible).) + * @param value {@link #type} (Code that specifies the property being represented. No codes are specified but the MDC codes are an example: https://build.fhir.org/mdc.html.) */ public DevicePropertyComponent setType(CodeableConcept value) { this.type = value; @@ -1869,7 +1885,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("type", "CodeableConcept", "Code that specifies the property DeviceDefinitionPropetyCode (Extensible).", 0, 1, type)); + children.add(new Property("type", "CodeableConcept", "Code that specifies the property being represented. No codes are specified but the MDC codes are an example: https://build.fhir.org/mdc.html.", 0, 1, type)); children.add(new Property("valueQuantity", "Quantity", "Property value as a quantity.", 0, java.lang.Integer.MAX_VALUE, valueQuantity)); children.add(new Property("valueCode", "CodeableConcept", "Property value as a code, e.g., NTP4 (synced to NTP).", 0, java.lang.Integer.MAX_VALUE, valueCode)); } @@ -1877,7 +1893,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Code that specifies the property DeviceDefinitionPropetyCode (Extensible).", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Code that specifies the property being represented. No codes are specified but the MDC codes are an example: https://build.fhir.org/mdc.html.", 0, 1, type); case -2029823716: /*valueQuantity*/ return new Property("valueQuantity", "Quantity", "Property value as a quantity.", 0, java.lang.Integer.MAX_VALUE, valueQuantity); case -766209282: /*valueCode*/ return new Property("valueCode", "CodeableConcept", "Property value as a code, e.g., NTP4 (synced to NTP).", 0, java.lang.Integer.MAX_VALUE, valueCode); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -2016,6 +2032,472 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } + } + + @Block() + public static class DeviceOperationalStatusComponent extends BackboneElement implements IBaseBackboneElement { + /** + * on |off | standby. + */ + @Child(name = "value", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="on |off | standby", formalDefinition="on |off | standby." ) + protected CodeableConcept value; + + /** + * The reasons given for the current operational status - i.e. why is the device switched on etc. + */ + @Child(name = "reason", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The reasons given for the current operational status", formalDefinition="The reasons given for the current operational status - i.e. why is the device switched on etc." ) + protected List reason; + + private static final long serialVersionUID = 1425627429L; + + /** + * Constructor + */ + public DeviceOperationalStatusComponent() { + super(); + } + + /** + * @return {@link #value} (on |off | standby.) + */ + public CodeableConcept getValue() { + if (this.value == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create DeviceOperationalStatusComponent.value"); + else if (Configuration.doAutoCreate()) + this.value = new CodeableConcept(); // cc + return this.value; + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); + } + + /** + * @param value {@link #value} (on |off | standby.) + */ + public DeviceOperationalStatusComponent setValue(CodeableConcept value) { + this.value = value; + return this; + } + + /** + * @return {@link #reason} (The reasons given for the current operational status - i.e. why is the device switched on etc.) + */ + public List getReason() { + if (this.reason == null) + this.reason = new ArrayList(); + return this.reason; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public DeviceOperationalStatusComponent setReason(List theReason) { + this.reason = theReason; + return this; + } + + public boolean hasReason() { + if (this.reason == null) + return false; + for (CodeableConcept item : this.reason) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addReason() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.reason == null) + this.reason = new ArrayList(); + this.reason.add(t); + return t; + } + + public DeviceOperationalStatusComponent addReason(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.reason == null) + this.reason = new ArrayList(); + this.reason.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3} + */ + public CodeableConcept getReasonFirstRep() { + if (getReason().isEmpty()) { + addReason(); + } + return getReason().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("value", "CodeableConcept", "on |off | standby.", 0, 1, value)); + children.add(new Property("reason", "CodeableConcept", "The reasons given for the current operational status - i.e. why is the device switched on etc.", 0, java.lang.Integer.MAX_VALUE, reason)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 111972721: /*value*/ return new Property("value", "CodeableConcept", "on |off | standby.", 0, 1, value); + case -934964668: /*reason*/ return new Property("reason", "CodeableConcept", "The reasons given for the current operational status - i.e. why is the device switched on etc.", 0, java.lang.Integer.MAX_VALUE, reason); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // CodeableConcept + case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableConcept + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 111972721: // value + this.value = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -934964668: // reason + this.getReason().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("value")) { + this.value = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("reason")) { + this.getReason().add(TypeConvertor.castToCodeableConcept(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 111972721: return getValue(); + case -934964668: return addReason(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 111972721: /*value*/ return new String[] {"CodeableConcept"}; + case -934964668: /*reason*/ return new String[] {"CodeableConcept"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("value")) { + this.value = new CodeableConcept(); + return this.value; + } + else if (name.equals("reason")) { + return addReason(); + } + else + return super.addChild(name); + } + + public DeviceOperationalStatusComponent copy() { + DeviceOperationalStatusComponent dst = new DeviceOperationalStatusComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(DeviceOperationalStatusComponent dst) { + super.copyValues(dst); + dst.value = value == null ? null : value.copy(); + if (reason != null) { + dst.reason = new ArrayList(); + for (CodeableConcept i : reason) + dst.reason.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof DeviceOperationalStatusComponent)) + return false; + DeviceOperationalStatusComponent o = (DeviceOperationalStatusComponent) other_; + return compareDeep(value, o.value, true) && compareDeep(reason, o.reason, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof DeviceOperationalStatusComponent)) + return false; + DeviceOperationalStatusComponent o = (DeviceOperationalStatusComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(value, reason); + } + + public String fhirType() { + return "Device.operationalStatus"; + + } + + } + + @Block() + public static class DeviceAssociationStatusComponent extends BackboneElement implements IBaseBackboneElement { + /** + * implanted|explanted|attached. + */ + @Child(name = "value", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="implanted|explanted|attached", formalDefinition="implanted|explanted|attached." ) + protected CodeableConcept value; + + /** + * The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etc. + */ + @Child(name = "reason", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The reasons given for the current association status", formalDefinition="The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etc." ) + protected List reason; + + private static final long serialVersionUID = 1425627429L; + + /** + * Constructor + */ + public DeviceAssociationStatusComponent() { + super(); + } + + /** + * @return {@link #value} (implanted|explanted|attached.) + */ + public CodeableConcept getValue() { + if (this.value == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create DeviceAssociationStatusComponent.value"); + else if (Configuration.doAutoCreate()) + this.value = new CodeableConcept(); // cc + return this.value; + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); + } + + /** + * @param value {@link #value} (implanted|explanted|attached.) + */ + public DeviceAssociationStatusComponent setValue(CodeableConcept value) { + this.value = value; + return this; + } + + /** + * @return {@link #reason} (The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etc.) + */ + public List getReason() { + if (this.reason == null) + this.reason = new ArrayList(); + return this.reason; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public DeviceAssociationStatusComponent setReason(List theReason) { + this.reason = theReason; + return this; + } + + public boolean hasReason() { + if (this.reason == null) + return false; + for (CodeableConcept item : this.reason) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addReason() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.reason == null) + this.reason = new ArrayList(); + this.reason.add(t); + return t; + } + + public DeviceAssociationStatusComponent addReason(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.reason == null) + this.reason = new ArrayList(); + this.reason.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3} + */ + public CodeableConcept getReasonFirstRep() { + if (getReason().isEmpty()) { + addReason(); + } + return getReason().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("value", "CodeableConcept", "implanted|explanted|attached.", 0, 1, value)); + children.add(new Property("reason", "CodeableConcept", "The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etc.", 0, java.lang.Integer.MAX_VALUE, reason)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 111972721: /*value*/ return new Property("value", "CodeableConcept", "implanted|explanted|attached.", 0, 1, value); + case -934964668: /*reason*/ return new Property("reason", "CodeableConcept", "The reasons given for the current association status - i.e. why is the device explanted, or attached to the patient, etc.", 0, java.lang.Integer.MAX_VALUE, reason); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // CodeableConcept + case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableConcept + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 111972721: // value + this.value = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -934964668: // reason + this.getReason().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("value")) { + this.value = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("reason")) { + this.getReason().add(TypeConvertor.castToCodeableConcept(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 111972721: return getValue(); + case -934964668: return addReason(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 111972721: /*value*/ return new String[] {"CodeableConcept"}; + case -934964668: /*reason*/ return new String[] {"CodeableConcept"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("value")) { + this.value = new CodeableConcept(); + return this.value; + } + else if (name.equals("reason")) { + return addReason(); + } + else + return super.addChild(name); + } + + public DeviceAssociationStatusComponent copy() { + DeviceAssociationStatusComponent dst = new DeviceAssociationStatusComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(DeviceAssociationStatusComponent dst) { + super.copyValues(dst); + dst.value = value == null ? null : value.copy(); + if (reason != null) { + dst.reason = new ArrayList(); + for (CodeableConcept i : reason) + dst.reason.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof DeviceAssociationStatusComponent)) + return false; + DeviceAssociationStatusComponent o = (DeviceAssociationStatusComponent) other_; + return compareDeep(value, o.value, true) && compareDeep(reason, o.reason, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof DeviceAssociationStatusComponent)) + return false; + DeviceAssociationStatusComponent o = (DeviceAssociationStatusComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(value, reason); + } + + public String fhirType() { + return "Device.associationStatus"; + + } + } /** @@ -2025,24 +2507,31 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Description(shortDefinition="Instance identifier", formalDefinition="Unique instance identifiers assigned to a device by manufacturers other organizations or owners." ) protected List identifier; + /** + * The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name. + */ + @Child(name = "displayName", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The name used to display by default when the device is referenced", formalDefinition="The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name." ) + protected StringType displayName; + /** * The reference to the definition for the device. */ - @Child(name = "definition", type = {DeviceDefinition.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Child(name = "definition", type = {DeviceDefinition.class}, order=2, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The reference to the definition for the device", formalDefinition="The reference to the definition for the device." ) protected Reference definition; /** * Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold. */ - @Child(name = "udiCarrier", type = {}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "udiCarrier", type = {}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Unique Device Identifier (UDI) Barcode string", formalDefinition="Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold." ) protected List udiCarrier; /** * Status of the Device availability. */ - @Child(name = "status", type = {CodeType.class}, order=3, min=0, max=1, modifier=true, summary=true) + @Child(name = "status", type = {CodeType.class}, order=4, min=0, max=1, modifier=true, summary=true) @Description(shortDefinition="active | inactive | entered-in-error | unknown", formalDefinition="Status of the Device availability." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-status") protected Enumeration status; @@ -2050,7 +2539,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | /** * Reason for the dtatus of the Device availability. */ - @Child(name = "statusReason", type = {CodeableConcept.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "statusReason", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="online | paused | standby | offline | not-ready | transduc-discon | hw-discon | off", formalDefinition="Reason for the dtatus of the Device availability." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-status-reason") protected List statusReason; @@ -2058,152 +2547,166 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | /** * The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product. */ - @Child(name = "distinctIdentifier", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Child(name = "distinctIdentifier", type = {StringType.class}, order=6, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The distinct identification string", formalDefinition="The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product." ) protected StringType distinctIdentifier; /** - * A name of the manufacturer. + * A name of the manufacturer or entity legally responsible for the device. */ - @Child(name = "manufacturer", type = {StringType.class}, order=6, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Name of device manufacturer", formalDefinition="A name of the manufacturer." ) + @Child(name = "manufacturer", type = {StringType.class}, order=7, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Name of device manufacturer", formalDefinition="A name of the manufacturer or entity legally responsible for the device." ) protected StringType manufacturer; /** * The date and time when the device was manufactured. */ - @Child(name = "manufactureDate", type = {DateTimeType.class}, order=7, min=0, max=1, modifier=false, summary=false) + @Child(name = "manufactureDate", type = {DateTimeType.class}, order=8, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Date when the device was made", formalDefinition="The date and time when the device was manufactured." ) protected DateTimeType manufactureDate; /** * The date and time beyond which this device is no longer valid or should not be used (if applicable). */ - @Child(name = "expirationDate", type = {DateTimeType.class}, order=8, min=0, max=1, modifier=false, summary=false) + @Child(name = "expirationDate", type = {DateTimeType.class}, order=9, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Date and time of expiry of this device (if applicable)", formalDefinition="The date and time beyond which this device is no longer valid or should not be used (if applicable)." ) protected DateTimeType expirationDate; /** * Lot number assigned by the manufacturer. */ - @Child(name = "lotNumber", type = {StringType.class}, order=9, min=0, max=1, modifier=false, summary=false) + @Child(name = "lotNumber", type = {StringType.class}, order=10, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Lot number of manufacture", formalDefinition="Lot number assigned by the manufacturer." ) protected StringType lotNumber; /** * The serial number assigned by the organization when the device was manufactured. */ - @Child(name = "serialNumber", type = {StringType.class}, order=10, min=0, max=1, modifier=false, summary=false) + @Child(name = "serialNumber", type = {StringType.class}, order=11, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Serial number assigned by the manufacturer", formalDefinition="The serial number assigned by the organization when the device was manufactured." ) protected StringType serialNumber; /** * This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinition. */ - @Child(name = "deviceName", type = {}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="The name of the device as given by the manufacturer", formalDefinition="This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinition." ) + @Child(name = "deviceName", type = {}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The name or names of the device as known to the manufacturer and/or patient", formalDefinition="This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinition." ) protected List deviceName; /** * The manufacturer's model number for the device. */ - @Child(name = "modelNumber", type = {StringType.class}, order=12, min=0, max=1, modifier=false, summary=false) + @Child(name = "modelNumber", type = {StringType.class}, order=13, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The manufacturer's model number for the device", formalDefinition="The manufacturer's model number for the device." ) protected StringType modelNumber; /** * The part number or catalog number of the device. */ - @Child(name = "partNumber", type = {StringType.class}, order=13, min=0, max=1, modifier=false, summary=false) + @Child(name = "partNumber", type = {StringType.class}, order=14, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The part number or catalog number of the device", formalDefinition="The part number or catalog number of the device." ) protected StringType partNumber; /** - * The kind or type of device. + * The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the device. */ - @Child(name = "type", type = {CodeableConcept.class}, order=14, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="The kind or type of device", formalDefinition="The kind or type of device." ) + @Child(name = "type", type = {CodeableConcept.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The kind or type of device", formalDefinition="The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the device." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-type") - protected CodeableConcept type; + protected List type; /** * The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication. */ - @Child(name = "specialization", type = {}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "specialization", type = {}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication", formalDefinition="The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication." ) protected List specialization; /** * The actual design of the device or software version running on the device. */ - @Child(name = "version", type = {}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "version", type = {}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="The actual design of the device or software version running on the device", formalDefinition="The actual design of the device or software version running on the device." ) protected List version; /** * The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties. */ - @Child(name = "property", type = {}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "property", type = {}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties", formalDefinition="The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties." ) protected List property; /** - * Patient information, If the device is affixed to a person. + * Patient information, if the device is affixed to, or associated to a patient for their specific use, irrespective of the procedure, use, observation, or other activity that the device is involved in. */ - @Child(name = "patient", type = {Patient.class}, order=18, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Patient to whom Device is affixed", formalDefinition="Patient information, If the device is affixed to a person." ) + @Child(name = "patient", type = {Patient.class}, order=19, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Patient to whom Device is affixed", formalDefinition="Patient information, if the device is affixed to, or associated to a patient for their specific use, irrespective of the procedure, use, observation, or other activity that the device is involved in." ) protected Reference patient; + /** + * The status of the device itself - whether it is switched on, or activated, etc. + */ + @Child(name = "operationalStatus", type = {}, order=20, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The status of the device itself - whether it is switched on, or activated, etc", formalDefinition="The status of the device itself - whether it is switched on, or activated, etc." ) + protected DeviceOperationalStatusComponent operationalStatus; + + /** + * The state of the usage or application of the device - whether the device is implanted, or explanted, or attached to the patient. + */ + @Child(name = "associationStatus", type = {}, order=21, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The state of the usage or application of the device", formalDefinition="The state of the usage or application of the device - whether the device is implanted, or explanted, or attached to the patient." ) + protected DeviceAssociationStatusComponent associationStatus; + /** * An organization that is responsible for the provision and ongoing maintenance of the device. */ - @Child(name = "owner", type = {Organization.class}, order=19, min=0, max=1, modifier=false, summary=false) + @Child(name = "owner", type = {Organization.class}, order=22, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Organization responsible for device", formalDefinition="An organization that is responsible for the provision and ongoing maintenance of the device." ) protected Reference owner; /** * Contact details for an organization or a particular human that is responsible for the device. */ - @Child(name = "contact", type = {ContactPoint.class}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "contact", type = {ContactPoint.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Details for human/organization for support", formalDefinition="Contact details for an organization or a particular human that is responsible for the device." ) protected List contact; /** * The place where the device can be found. */ - @Child(name = "location", type = {Location.class}, order=21, min=0, max=1, modifier=false, summary=false) + @Child(name = "location", type = {Location.class}, order=24, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Where the device is found", formalDefinition="The place where the device can be found." ) protected Reference location; /** * A network address on which the device may be contacted directly. */ - @Child(name = "url", type = {UriType.class}, order=22, min=0, max=1, modifier=false, summary=false) + @Child(name = "url", type = {UriType.class}, order=25, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Network address to contact device", formalDefinition="A network address on which the device may be contacted directly." ) protected UriType url; /** * Descriptive information, usage information or implantation information that is not captured in an existing element. */ - @Child(name = "note", type = {Annotation.class}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "note", type = {Annotation.class}, order=26, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Device notes and comments", formalDefinition="Descriptive information, usage information or implantation information that is not captured in an existing element." ) protected List note; /** * Provides additional safety characteristics about a medical device. For example devices containing latex. */ - @Child(name = "safety", type = {CodeableConcept.class}, order=24, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "safety", type = {CodeableConcept.class}, order=27, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Safety Characteristics of Device", formalDefinition="Provides additional safety characteristics about a medical device. For example devices containing latex." ) protected List safety; /** * The device that this device is attached to or is part of. */ - @Child(name = "parent", type = {Device.class}, order=25, min=0, max=1, modifier=false, summary=false) + @Child(name = "parent", type = {Device.class}, order=28, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The device that this device is attached to or is part of", formalDefinition="The device that this device is attached to or is part of." ) protected Reference parent; - private static final long serialVersionUID = 634832360L; + private static final long serialVersionUID = -588615188L; /** * Constructor @@ -2265,6 +2768,55 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | return getIdentifier().get(0); } + /** + * @return {@link #displayName} (The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name.). This is the underlying object with id, value and extensions. The accessor "getDisplayName" gives direct access to the value + */ + public StringType getDisplayNameElement() { + if (this.displayName == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Device.displayName"); + else if (Configuration.doAutoCreate()) + this.displayName = new StringType(); // bb + return this.displayName; + } + + public boolean hasDisplayNameElement() { + return this.displayName != null && !this.displayName.isEmpty(); + } + + public boolean hasDisplayName() { + return this.displayName != null && !this.displayName.isEmpty(); + } + + /** + * @param value {@link #displayName} (The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name.). This is the underlying object with id, value and extensions. The accessor "getDisplayName" gives direct access to the value + */ + public Device setDisplayNameElement(StringType value) { + this.displayName = value; + return this; + } + + /** + * @return The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name. + */ + public String getDisplayName() { + return this.displayName == null ? null : this.displayName.getValue(); + } + + /** + * @param value The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name. + */ + public Device setDisplayName(String value) { + if (Utilities.noString(value)) + this.displayName = null; + else { + if (this.displayName == null) + this.displayName = new StringType(); + this.displayName.setValue(value); + } + return this; + } + /** * @return {@link #definition} (The reference to the definition for the device.) */ @@ -2494,7 +3046,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #manufacturer} (A name of the manufacturer.). This is the underlying object with id, value and extensions. The accessor "getManufacturer" gives direct access to the value + * @return {@link #manufacturer} (A name of the manufacturer or entity legally responsible for the device.). This is the underlying object with id, value and extensions. The accessor "getManufacturer" gives direct access to the value */ public StringType getManufacturerElement() { if (this.manufacturer == null) @@ -2514,7 +3066,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #manufacturer} (A name of the manufacturer.). This is the underlying object with id, value and extensions. The accessor "getManufacturer" gives direct access to the value + * @param value {@link #manufacturer} (A name of the manufacturer or entity legally responsible for the device.). This is the underlying object with id, value and extensions. The accessor "getManufacturer" gives direct access to the value */ public Device setManufacturerElement(StringType value) { this.manufacturer = value; @@ -2522,14 +3074,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return A name of the manufacturer. + * @return A name of the manufacturer or entity legally responsible for the device. */ public String getManufacturer() { return this.manufacturer == null ? null : this.manufacturer.getValue(); } /** - * @param value A name of the manufacturer. + * @param value A name of the manufacturer or entity legally responsible for the device. */ public Device setManufacturer(String value) { if (Utilities.noString(value)) @@ -2890,27 +3442,56 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #type} (The kind or type of device.) + * @return {@link #type} (The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the device.) */ - public CodeableConcept getType() { + public List getType() { if (this.type == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Device.type"); - else if (Configuration.doAutoCreate()) - this.type = new CodeableConcept(); // cc + this.type = new ArrayList(); return this.type; } + /** + * @return Returns a reference to this for easy method chaining + */ + public Device setType(List theType) { + this.type = theType; + return this; + } + public boolean hasType() { - return this.type != null && !this.type.isEmpty(); + if (this.type == null) + return false; + for (CodeableConcept item : this.type) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addType() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.type == null) + this.type = new ArrayList(); + this.type.add(t); + return t; + } + + public Device addType(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.type == null) + this.type = new ArrayList(); + this.type.add(t); + return this; } /** - * @param value {@link #type} (The kind or type of device.) + * @return The first repetition of repeating field {@link #type}, creating it if it does not already exist {3} */ - public Device setType(CodeableConcept value) { - this.type = value; - return this; + public CodeableConcept getTypeFirstRep() { + if (getType().isEmpty()) { + addType(); + } + return getType().get(0); } /** @@ -3073,7 +3654,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #patient} (Patient information, If the device is affixed to a person.) + * @return {@link #patient} (Patient information, if the device is affixed to, or associated to a patient for their specific use, irrespective of the procedure, use, observation, or other activity that the device is involved in.) */ public Reference getPatient() { if (this.patient == null) @@ -3089,13 +3670,61 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #patient} (Patient information, If the device is affixed to a person.) + * @param value {@link #patient} (Patient information, if the device is affixed to, or associated to a patient for their specific use, irrespective of the procedure, use, observation, or other activity that the device is involved in.) */ public Device setPatient(Reference value) { this.patient = value; return this; } + /** + * @return {@link #operationalStatus} (The status of the device itself - whether it is switched on, or activated, etc.) + */ + public DeviceOperationalStatusComponent getOperationalStatus() { + if (this.operationalStatus == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Device.operationalStatus"); + else if (Configuration.doAutoCreate()) + this.operationalStatus = new DeviceOperationalStatusComponent(); // cc + return this.operationalStatus; + } + + public boolean hasOperationalStatus() { + return this.operationalStatus != null && !this.operationalStatus.isEmpty(); + } + + /** + * @param value {@link #operationalStatus} (The status of the device itself - whether it is switched on, or activated, etc.) + */ + public Device setOperationalStatus(DeviceOperationalStatusComponent value) { + this.operationalStatus = value; + return this; + } + + /** + * @return {@link #associationStatus} (The state of the usage or application of the device - whether the device is implanted, or explanted, or attached to the patient.) + */ + public DeviceAssociationStatusComponent getAssociationStatus() { + if (this.associationStatus == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Device.associationStatus"); + else if (Configuration.doAutoCreate()) + this.associationStatus = new DeviceAssociationStatusComponent(); // cc + return this.associationStatus; + } + + public boolean hasAssociationStatus() { + return this.associationStatus != null && !this.associationStatus.isEmpty(); + } + + /** + * @param value {@link #associationStatus} (The state of the usage or application of the device - whether the device is implanted, or explanted, or attached to the patient.) + */ + public Device setAssociationStatus(DeviceAssociationStatusComponent value) { + this.associationStatus = value; + return this; + } + /** * @return {@link #owner} (An organization that is responsible for the provision and ongoing maintenance of the device.) */ @@ -3379,12 +4008,13 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Unique instance identifiers assigned to a device by manufacturers other organizations or owners.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("displayName", "string", "The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name.", 0, 1, displayName)); children.add(new Property("definition", "Reference(DeviceDefinition)", "The reference to the definition for the device.", 0, 1, definition)); children.add(new Property("udiCarrier", "", "Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold.", 0, java.lang.Integer.MAX_VALUE, udiCarrier)); children.add(new Property("status", "code", "Status of the Device availability.", 0, 1, status)); children.add(new Property("statusReason", "CodeableConcept", "Reason for the dtatus of the Device availability.", 0, java.lang.Integer.MAX_VALUE, statusReason)); children.add(new Property("distinctIdentifier", "string", "The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product.", 0, 1, distinctIdentifier)); - children.add(new Property("manufacturer", "string", "A name of the manufacturer.", 0, 1, manufacturer)); + children.add(new Property("manufacturer", "string", "A name of the manufacturer or entity legally responsible for the device.", 0, 1, manufacturer)); children.add(new Property("manufactureDate", "dateTime", "The date and time when the device was manufactured.", 0, 1, manufactureDate)); children.add(new Property("expirationDate", "dateTime", "The date and time beyond which this device is no longer valid or should not be used (if applicable).", 0, 1, expirationDate)); children.add(new Property("lotNumber", "string", "Lot number assigned by the manufacturer.", 0, 1, lotNumber)); @@ -3392,11 +4022,13 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | children.add(new Property("deviceName", "", "This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinition.", 0, java.lang.Integer.MAX_VALUE, deviceName)); children.add(new Property("modelNumber", "string", "The manufacturer's model number for the device.", 0, 1, modelNumber)); children.add(new Property("partNumber", "string", "The part number or catalog number of the device.", 0, 1, partNumber)); - children.add(new Property("type", "CodeableConcept", "The kind or type of device.", 0, 1, type)); + children.add(new Property("type", "CodeableConcept", "The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the device.", 0, java.lang.Integer.MAX_VALUE, type)); children.add(new Property("specialization", "", "The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication.", 0, java.lang.Integer.MAX_VALUE, specialization)); children.add(new Property("version", "", "The actual design of the device or software version running on the device.", 0, java.lang.Integer.MAX_VALUE, version)); children.add(new Property("property", "", "The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties.", 0, java.lang.Integer.MAX_VALUE, property)); - children.add(new Property("patient", "Reference(Patient)", "Patient information, If the device is affixed to a person.", 0, 1, patient)); + children.add(new Property("patient", "Reference(Patient)", "Patient information, if the device is affixed to, or associated to a patient for their specific use, irrespective of the procedure, use, observation, or other activity that the device is involved in.", 0, 1, patient)); + children.add(new Property("operationalStatus", "", "The status of the device itself - whether it is switched on, or activated, etc.", 0, 1, operationalStatus)); + children.add(new Property("associationStatus", "", "The state of the usage or application of the device - whether the device is implanted, or explanted, or attached to the patient.", 0, 1, associationStatus)); children.add(new Property("owner", "Reference(Organization)", "An organization that is responsible for the provision and ongoing maintenance of the device.", 0, 1, owner)); children.add(new Property("contact", "ContactPoint", "Contact details for an organization or a particular human that is responsible for the device.", 0, java.lang.Integer.MAX_VALUE, contact)); children.add(new Property("location", "Reference(Location)", "The place where the device can be found.", 0, 1, location)); @@ -3410,12 +4042,13 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Unique instance identifiers assigned to a device by manufacturers other organizations or owners.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 1714148973: /*displayName*/ return new Property("displayName", "string", "The name used to display by default when the device is referenced. Based on intent of use by the resource creator, this may reflect one of the names in Device.deviceName, or may be another simple name.", 0, 1, displayName); case -1014418093: /*definition*/ return new Property("definition", "Reference(DeviceDefinition)", "The reference to the definition for the device.", 0, 1, definition); case -1343558178: /*udiCarrier*/ return new Property("udiCarrier", "", "Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold.", 0, java.lang.Integer.MAX_VALUE, udiCarrier); case -892481550: /*status*/ return new Property("status", "code", "Status of the Device availability.", 0, 1, status); case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableConcept", "Reason for the dtatus of the Device availability.", 0, java.lang.Integer.MAX_VALUE, statusReason); case -1836176187: /*distinctIdentifier*/ return new Property("distinctIdentifier", "string", "The distinct identification string as required by regulation for a human cell, tissue, or cellular and tissue-based product.", 0, 1, distinctIdentifier); - case -1969347631: /*manufacturer*/ return new Property("manufacturer", "string", "A name of the manufacturer.", 0, 1, manufacturer); + case -1969347631: /*manufacturer*/ return new Property("manufacturer", "string", "A name of the manufacturer or entity legally responsible for the device.", 0, 1, manufacturer); case 416714767: /*manufactureDate*/ return new Property("manufactureDate", "dateTime", "The date and time when the device was manufactured.", 0, 1, manufactureDate); case -668811523: /*expirationDate*/ return new Property("expirationDate", "dateTime", "The date and time beyond which this device is no longer valid or should not be used (if applicable).", 0, 1, expirationDate); case 462547450: /*lotNumber*/ return new Property("lotNumber", "string", "Lot number assigned by the manufacturer.", 0, 1, lotNumber); @@ -3423,11 +4056,13 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case 780988929: /*deviceName*/ return new Property("deviceName", "", "This represents the manufacturer's name of the device as provided by the device, from a UDI label, or by a person describing the Device. This typically would be used when a person provides the name(s) or when the device represents one of the names available from DeviceDefinition.", 0, java.lang.Integer.MAX_VALUE, deviceName); case 346619858: /*modelNumber*/ return new Property("modelNumber", "string", "The manufacturer's model number for the device.", 0, 1, modelNumber); case -731502308: /*partNumber*/ return new Property("partNumber", "string", "The part number or catalog number of the device.", 0, 1, partNumber); - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The kind or type of device.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The kind or type of device. A device instance may have more than one type - in which case those are the types that apply to the specific instance of the device.", 0, java.lang.Integer.MAX_VALUE, type); case 682815883: /*specialization*/ return new Property("specialization", "", "The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication.", 0, java.lang.Integer.MAX_VALUE, specialization); case 351608024: /*version*/ return new Property("version", "", "The actual design of the device or software version running on the device.", 0, java.lang.Integer.MAX_VALUE, version); case -993141291: /*property*/ return new Property("property", "", "The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties.", 0, java.lang.Integer.MAX_VALUE, property); - case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "Patient information, If the device is affixed to a person.", 0, 1, patient); + case -791418107: /*patient*/ return new Property("patient", "Reference(Patient)", "Patient information, if the device is affixed to, or associated to a patient for their specific use, irrespective of the procedure, use, observation, or other activity that the device is involved in.", 0, 1, patient); + case -2103166364: /*operationalStatus*/ return new Property("operationalStatus", "", "The status of the device itself - whether it is switched on, or activated, etc.", 0, 1, operationalStatus); + case -605391917: /*associationStatus*/ return new Property("associationStatus", "", "The state of the usage or application of the device - whether the device is implanted, or explanted, or attached to the patient.", 0, 1, associationStatus); case 106164915: /*owner*/ return new Property("owner", "Reference(Organization)", "An organization that is responsible for the provision and ongoing maintenance of the device.", 0, 1, owner); case 951526432: /*contact*/ return new Property("contact", "ContactPoint", "Contact details for an organization or a particular human that is responsible for the device.", 0, java.lang.Integer.MAX_VALUE, contact); case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "The place where the device can be found.", 0, 1, location); @@ -3444,6 +4079,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 1714148973: /*displayName*/ return this.displayName == null ? new Base[0] : new Base[] {this.displayName}; // StringType case -1014418093: /*definition*/ return this.definition == null ? new Base[0] : new Base[] {this.definition}; // Reference case -1343558178: /*udiCarrier*/ return this.udiCarrier == null ? new Base[0] : this.udiCarrier.toArray(new Base[this.udiCarrier.size()]); // DeviceUdiCarrierComponent case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration @@ -3457,11 +4093,13 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case 780988929: /*deviceName*/ return this.deviceName == null ? new Base[0] : this.deviceName.toArray(new Base[this.deviceName.size()]); // DeviceDeviceNameComponent case 346619858: /*modelNumber*/ return this.modelNumber == null ? new Base[0] : new Base[] {this.modelNumber}; // StringType case -731502308: /*partNumber*/ return this.partNumber == null ? new Base[0] : new Base[] {this.partNumber}; // StringType - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case 3575610: /*type*/ return this.type == null ? new Base[0] : this.type.toArray(new Base[this.type.size()]); // CodeableConcept case 682815883: /*specialization*/ return this.specialization == null ? new Base[0] : this.specialization.toArray(new Base[this.specialization.size()]); // DeviceSpecializationComponent case 351608024: /*version*/ return this.version == null ? new Base[0] : this.version.toArray(new Base[this.version.size()]); // DeviceVersionComponent case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // DevicePropertyComponent case -791418107: /*patient*/ return this.patient == null ? new Base[0] : new Base[] {this.patient}; // Reference + case -2103166364: /*operationalStatus*/ return this.operationalStatus == null ? new Base[0] : new Base[] {this.operationalStatus}; // DeviceOperationalStatusComponent + case -605391917: /*associationStatus*/ return this.associationStatus == null ? new Base[0] : new Base[] {this.associationStatus}; // DeviceAssociationStatusComponent case 106164915: /*owner*/ return this.owner == null ? new Base[0] : new Base[] {this.owner}; // Reference case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactPoint case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference @@ -3480,6 +4118,9 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case -1618432855: // identifier this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier return value; + case 1714148973: // displayName + this.displayName = TypeConvertor.castToString(value); // StringType + return value; case -1014418093: // definition this.definition = TypeConvertor.castToReference(value); // Reference return value; @@ -3521,7 +4162,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | this.partNumber = TypeConvertor.castToString(value); // StringType return value; case 3575610: // type - this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.getType().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case 682815883: // specialization this.getSpecialization().add((DeviceSpecializationComponent) value); // DeviceSpecializationComponent @@ -3535,6 +4176,12 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case -791418107: // patient this.patient = TypeConvertor.castToReference(value); // Reference return value; + case -2103166364: // operationalStatus + this.operationalStatus = (DeviceOperationalStatusComponent) value; // DeviceOperationalStatusComponent + return value; + case -605391917: // associationStatus + this.associationStatus = (DeviceAssociationStatusComponent) value; // DeviceAssociationStatusComponent + return value; case 106164915: // owner this.owner = TypeConvertor.castToReference(value); // Reference return value; @@ -3565,6 +4212,8 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | public Base setProperty(String name, Base value) throws FHIRException { if (name.equals("identifier")) { this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("displayName")) { + this.displayName = TypeConvertor.castToString(value); // StringType } else if (name.equals("definition")) { this.definition = TypeConvertor.castToReference(value); // Reference } else if (name.equals("udiCarrier")) { @@ -3593,7 +4242,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } else if (name.equals("partNumber")) { this.partNumber = TypeConvertor.castToString(value); // StringType } else if (name.equals("type")) { - this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.getType().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("specialization")) { this.getSpecialization().add((DeviceSpecializationComponent) value); } else if (name.equals("version")) { @@ -3602,6 +4251,10 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | this.getProperty().add((DevicePropertyComponent) value); } else if (name.equals("patient")) { this.patient = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("operationalStatus")) { + this.operationalStatus = (DeviceOperationalStatusComponent) value; // DeviceOperationalStatusComponent + } else if (name.equals("associationStatus")) { + this.associationStatus = (DeviceAssociationStatusComponent) value; // DeviceAssociationStatusComponent } else if (name.equals("owner")) { this.owner = TypeConvertor.castToReference(value); // Reference } else if (name.equals("contact")) { @@ -3625,6 +4278,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { case -1618432855: return addIdentifier(); + case 1714148973: return getDisplayNameElement(); case -1014418093: return getDefinition(); case -1343558178: return addUdiCarrier(); case -892481550: return getStatusElement(); @@ -3638,11 +4292,13 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case 780988929: return addDeviceName(); case 346619858: return getModelNumberElement(); case -731502308: return getPartNumberElement(); - case 3575610: return getType(); + case 3575610: return addType(); case 682815883: return addSpecialization(); case 351608024: return addVersion(); case -993141291: return addProperty(); case -791418107: return getPatient(); + case -2103166364: return getOperationalStatus(); + case -605391917: return getAssociationStatus(); case 106164915: return getOwner(); case 951526432: return addContact(); case 1901043637: return getLocation(); @@ -3659,6 +4315,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 1714148973: /*displayName*/ return new String[] {"string"}; case -1014418093: /*definition*/ return new String[] {"Reference"}; case -1343558178: /*udiCarrier*/ return new String[] {}; case -892481550: /*status*/ return new String[] {"code"}; @@ -3677,6 +4334,8 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case 351608024: /*version*/ return new String[] {}; case -993141291: /*property*/ return new String[] {}; case -791418107: /*patient*/ return new String[] {"Reference"}; + case -2103166364: /*operationalStatus*/ return new String[] {}; + case -605391917: /*associationStatus*/ return new String[] {}; case 106164915: /*owner*/ return new String[] {"Reference"}; case 951526432: /*contact*/ return new String[] {"ContactPoint"}; case 1901043637: /*location*/ return new String[] {"Reference"}; @@ -3694,6 +4353,9 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | if (name.equals("identifier")) { return addIdentifier(); } + else if (name.equals("displayName")) { + throw new FHIRException("Cannot call addChild on a primitive type Device.displayName"); + } else if (name.equals("definition")) { this.definition = new Reference(); return this.definition; @@ -3735,8 +4397,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | throw new FHIRException("Cannot call addChild on a primitive type Device.partNumber"); } else if (name.equals("type")) { - this.type = new CodeableConcept(); - return this.type; + return addType(); } else if (name.equals("specialization")) { return addSpecialization(); @@ -3751,6 +4412,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | this.patient = new Reference(); return this.patient; } + else if (name.equals("operationalStatus")) { + this.operationalStatus = new DeviceOperationalStatusComponent(); + return this.operationalStatus; + } + else if (name.equals("associationStatus")) { + this.associationStatus = new DeviceAssociationStatusComponent(); + return this.associationStatus; + } else if (name.equals("owner")) { this.owner = new Reference(); return this.owner; @@ -3797,6 +4466,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | for (Identifier i : identifier) dst.identifier.add(i.copy()); }; + dst.displayName = displayName == null ? null : displayName.copy(); dst.definition = definition == null ? null : definition.copy(); if (udiCarrier != null) { dst.udiCarrier = new ArrayList(); @@ -3822,7 +4492,11 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | }; dst.modelNumber = modelNumber == null ? null : modelNumber.copy(); dst.partNumber = partNumber == null ? null : partNumber.copy(); - dst.type = type == null ? null : type.copy(); + if (type != null) { + dst.type = new ArrayList(); + for (CodeableConcept i : type) + dst.type.add(i.copy()); + }; if (specialization != null) { dst.specialization = new ArrayList(); for (DeviceSpecializationComponent i : specialization) @@ -3839,6 +4513,8 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | dst.property.add(i.copy()); }; dst.patient = patient == null ? null : patient.copy(); + dst.operationalStatus = operationalStatus == null ? null : operationalStatus.copy(); + dst.associationStatus = associationStatus == null ? null : associationStatus.copy(); dst.owner = owner == null ? null : owner.copy(); if (contact != null) { dst.contact = new ArrayList(); @@ -3871,17 +4547,19 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | if (!(other_ instanceof Device)) return false; Device o = (Device) other_; - return compareDeep(identifier, o.identifier, true) && compareDeep(definition, o.definition, true) - && compareDeep(udiCarrier, o.udiCarrier, true) && compareDeep(status, o.status, true) && compareDeep(statusReason, o.statusReason, true) - && compareDeep(distinctIdentifier, o.distinctIdentifier, true) && compareDeep(manufacturer, o.manufacturer, true) - && compareDeep(manufactureDate, o.manufactureDate, true) && compareDeep(expirationDate, o.expirationDate, true) - && compareDeep(lotNumber, o.lotNumber, true) && compareDeep(serialNumber, o.serialNumber, true) - && compareDeep(deviceName, o.deviceName, true) && compareDeep(modelNumber, o.modelNumber, true) - && compareDeep(partNumber, o.partNumber, true) && compareDeep(type, o.type, true) && compareDeep(specialization, o.specialization, true) - && compareDeep(version, o.version, true) && compareDeep(property, o.property, true) && compareDeep(patient, o.patient, true) - && compareDeep(owner, o.owner, true) && compareDeep(contact, o.contact, true) && compareDeep(location, o.location, true) - && compareDeep(url, o.url, true) && compareDeep(note, o.note, true) && compareDeep(safety, o.safety, true) - && compareDeep(parent, o.parent, true); + return compareDeep(identifier, o.identifier, true) && compareDeep(displayName, o.displayName, true) + && compareDeep(definition, o.definition, true) && compareDeep(udiCarrier, o.udiCarrier, true) && compareDeep(status, o.status, true) + && compareDeep(statusReason, o.statusReason, true) && compareDeep(distinctIdentifier, o.distinctIdentifier, true) + && compareDeep(manufacturer, o.manufacturer, true) && compareDeep(manufactureDate, o.manufactureDate, true) + && compareDeep(expirationDate, o.expirationDate, true) && compareDeep(lotNumber, o.lotNumber, true) + && compareDeep(serialNumber, o.serialNumber, true) && compareDeep(deviceName, o.deviceName, true) + && compareDeep(modelNumber, o.modelNumber, true) && compareDeep(partNumber, o.partNumber, true) + && compareDeep(type, o.type, true) && compareDeep(specialization, o.specialization, true) && compareDeep(version, o.version, true) + && compareDeep(property, o.property, true) && compareDeep(patient, o.patient, true) && compareDeep(operationalStatus, o.operationalStatus, true) + && compareDeep(associationStatus, o.associationStatus, true) && compareDeep(owner, o.owner, true) + && compareDeep(contact, o.contact, true) && compareDeep(location, o.location, true) && compareDeep(url, o.url, true) + && compareDeep(note, o.note, true) && compareDeep(safety, o.safety, true) && compareDeep(parent, o.parent, true) + ; } @Override @@ -3891,7 +4569,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | if (!(other_ instanceof Device)) return false; Device o = (Device) other_; - return compareValues(status, o.status, true) && compareValues(distinctIdentifier, o.distinctIdentifier, true) + return compareValues(displayName, o.displayName, true) && compareValues(status, o.status, true) && compareValues(distinctIdentifier, o.distinctIdentifier, true) && compareValues(manufacturer, o.manufacturer, true) && compareValues(manufactureDate, o.manufactureDate, true) && compareValues(expirationDate, o.expirationDate, true) && compareValues(lotNumber, o.lotNumber, true) && compareValues(serialNumber, o.serialNumber, true) && compareValues(modelNumber, o.modelNumber, true) @@ -3899,11 +4577,11 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, definition, udiCarrier - , status, statusReason, distinctIdentifier, manufacturer, manufactureDate, expirationDate - , lotNumber, serialNumber, deviceName, modelNumber, partNumber, type, specialization - , version, property, patient, owner, contact, location, url, note, safety - , parent); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, displayName, definition + , udiCarrier, status, statusReason, distinctIdentifier, manufacturer, manufactureDate + , expirationDate, lotNumber, serialNumber, deviceName, modelNumber, partNumber, type + , specialization, version, property, patient, operationalStatus, associationStatus + , owner, contact, location, url, note, safety, parent); } @Override @@ -3911,6 +4589,32 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | return ResourceType.Device; } + /** + * Search parameter: definition + *

+ * Description: The definition / type of the device
+ * Type: reference
+ * Path: Device.definition
+ *

+ */ + @SearchParamDefinition(name="definition", path="Device.definition", description="The definition / type of the device", type="reference", target={DeviceDefinition.class } ) + public static final String SP_DEFINITION = "definition"; + /** + * Fluent Client search parameter constant for definition + *

+ * Description: The definition / type of the device
+ * Type: reference
+ * Path: Device.definition
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEFINITION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_DEFINITION); + +/** + * Constant for fluent queries to be used to add include statements. Specifies + * the path value of "Device:definition". + */ + public static final ca.uhn.fhir.model.api.Include INCLUDE_DEFINITION = new ca.uhn.fhir.model.api.Include("Device:definition").toLocked(); + /** * Search parameter: device-name *

@@ -3931,6 +4635,26 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | */ public static final ca.uhn.fhir.rest.gclient.StringClientParam DEVICE_NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_DEVICE_NAME); + /** + * Search parameter: expiration-date + *

+ * Description: The expiration date of the device
+ * Type: date
+ * Path: Device.expirationDate
+ *

+ */ + @SearchParamDefinition(name="expiration-date", path="Device.expirationDate", description="The expiration date of the device", type="date" ) + public static final String SP_EXPIRATION_DATE = "expiration-date"; + /** + * Fluent Client search parameter constant for expiration-date + *

+ * Description: The expiration date of the device
+ * Type: date
+ * Path: Device.expirationDate
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.DateClientParam EXPIRATION_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_EXPIRATION_DATE); + /** * Search parameter: identifier *

@@ -3977,6 +4701,46 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | */ public static final ca.uhn.fhir.model.api.Include INCLUDE_LOCATION = new ca.uhn.fhir.model.api.Include("Device:location").toLocked(); + /** + * Search parameter: lot-number + *

+ * Description: The lot number of the device
+ * Type: string
+ * Path: Device.lotNumber
+ *

+ */ + @SearchParamDefinition(name="lot-number", path="Device.lotNumber", description="The lot number of the device", type="string" ) + public static final String SP_LOT_NUMBER = "lot-number"; + /** + * Fluent Client search parameter constant for lot-number + *

+ * Description: The lot number of the device
+ * Type: string
+ * Path: Device.lotNumber
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.StringClientParam LOT_NUMBER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_LOT_NUMBER); + + /** + * Search parameter: manufacture-date + *

+ * Description: The manufacture date of the device
+ * Type: date
+ * Path: Device.manufactureDate
+ *

+ */ + @SearchParamDefinition(name="manufacture-date", path="Device.manufactureDate", description="The manufacture date of the device", type="date" ) + public static final String SP_MANUFACTURE_DATE = "manufacture-date"; + /** + * Fluent Client search parameter constant for manufacture-date + *

+ * Description: The manufacture date of the device
+ * Type: date
+ * Path: Device.manufactureDate
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.DateClientParam MANUFACTURE_DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_MANUFACTURE_DATE); + /** * Search parameter: manufacturer *

@@ -4043,6 +4807,32 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | */ public static final ca.uhn.fhir.model.api.Include INCLUDE_ORGANIZATION = new ca.uhn.fhir.model.api.Include("Device:organization").toLocked(); + /** + * Search parameter: parent + *

+ * Description: The parent device
+ * Type: reference
+ * Path: Device.parent
+ *

+ */ + @SearchParamDefinition(name="parent", path="Device.parent", description="The parent device", type="reference", target={Device.class } ) + public static final String SP_PARENT = "parent"; + /** + * Fluent Client search parameter constant for parent + *

+ * Description: The parent device
+ * Type: reference
+ * Path: Device.parent
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PARENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PARENT); + +/** + * Constant for fluent queries to be used to add include statements. Specifies + * the path value of "Device:parent". + */ + public static final ca.uhn.fhir.model.api.Include INCLUDE_PARENT = new ca.uhn.fhir.model.api.Include("Device:parent").toLocked(); + /** * Search parameter: patient *

@@ -4069,6 +4859,26 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | */ public static final ca.uhn.fhir.model.api.Include INCLUDE_PATIENT = new ca.uhn.fhir.model.api.Include("Device:patient").toLocked(); + /** + * Search parameter: serial-number + *

+ * Description: The serial number of the device
+ * Type: string
+ * Path: Device.serialNumber
+ *

+ */ + @SearchParamDefinition(name="serial-number", path="Device.serialNumber", description="The serial number of the device", type="string" ) + public static final String SP_SERIAL_NUMBER = "serial-number"; + /** + * Fluent Client search parameter constant for serial-number + *

+ * Description: The serial number of the device
+ * Type: string
+ * Path: Device.serialNumber
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.StringClientParam SERIAL_NUMBER = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_SERIAL_NUMBER); + /** * Search parameter: status *

@@ -4169,6 +4979,26 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | */ public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); + /** + * Search parameter: version + *

+ * Description: The specific version of the device
+ * Type: string
+ * Path: Device.version.value
+ *

+ */ + @SearchParamDefinition(name="version", path="Device.version.value", description="The specific version of the device", type="string" ) + public static final String SP_VERSION = "version"; + /** + * Fluent Client search parameter constant for version + *

+ * Description: The specific version of the device
+ * Type: string
+ * Path: Device.version.value
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.StringClientParam VERSION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_VERSION); + /** * Search parameter: din *

diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceDefinition.java index 3d3ef795a..61aea9740 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -396,10 +396,10 @@ public class DeviceDefinition extends DomainResource { @Block() public static class DeviceDefinitionDeviceNameComponent extends BackboneElement implements IBaseBackboneElement { /** - * The name of the device. + * A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other. */ @Child(name = "name", type = {StringType.class}, order=1, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="The name of the device", formalDefinition="The name of the device." ) + @Description(shortDefinition="A name that is used to refer to the device", formalDefinition="A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other." ) protected StringType name; /** @@ -430,7 +430,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #name} (The name of the device.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + * @return {@link #name} (A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value */ public StringType getNameElement() { if (this.name == null) @@ -450,7 +450,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #name} (The name of the device.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + * @param value {@link #name} (A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value */ public DeviceDefinitionDeviceNameComponent setNameElement(StringType value) { this.name = value; @@ -458,14 +458,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return The name of the device. + * @return A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other. */ public String getName() { return this.name == null ? null : this.name.getValue(); } /** - * @param value The name of the device. + * @param value A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other. */ public DeviceDefinitionDeviceNameComponent setName(String value) { if (this.name == null) @@ -525,14 +525,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("name", "string", "The name of the device.", 0, 1, name)); + children.add(new Property("name", "string", "A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other.", 0, 1, name)); children.add(new Property("type", "code", "The type of deviceName.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.", 0, 1, type)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3373707: /*name*/ return new Property("name", "string", "The name of the device.", 0, 1, name); + case 3373707: /*name*/ return new Property("name", "string", "A human-friendly name that is used to refer to the device - depending on the type, it can be the brand name, the common name or alias, or other.", 0, 1, name); case 3575610: /*type*/ return new Property("type", "code", "The type of deviceName.\nUDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | ModelName.", 0, 1, type); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -907,17 +907,17 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Block() public static class DeviceDefinitionCapabilityComponent extends BackboneElement implements IBaseBackboneElement { /** - * Type of capability. + * The type of capability - whether it is a physical attribute, a customization needed. For exampl e "water ingress protection". */ @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="Type of capability", formalDefinition="Type of capability." ) + @Description(shortDefinition="The type of capability - whether it is a physical attribute, a customization needed", formalDefinition="The type of capability - whether it is a physical attribute, a customization needed. For exampl e \"water ingress protection\"." ) protected CodeableConcept type; /** - * Description of capability. + * The actual capability of the device e.g. IP67. */ @Child(name = "description", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Description of capability", formalDefinition="Description of capability." ) + @Description(shortDefinition="The actual capability of the device", formalDefinition="The actual capability of the device e.g. IP67." ) protected List description; private static final long serialVersionUID = -192945344L; @@ -938,7 +938,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #type} (Type of capability.) + * @return {@link #type} (The type of capability - whether it is a physical attribute, a customization needed. For exampl e "water ingress protection".) */ public CodeableConcept getType() { if (this.type == null) @@ -954,7 +954,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #type} (Type of capability.) + * @param value {@link #type} (The type of capability - whether it is a physical attribute, a customization needed. For exampl e "water ingress protection".) */ public DeviceDefinitionCapabilityComponent setType(CodeableConcept value) { this.type = value; @@ -962,7 +962,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #description} (Description of capability.) + * @return {@link #description} (The actual capability of the device e.g. IP67.) */ public List getDescription() { if (this.description == null) @@ -1016,15 +1016,15 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("type", "CodeableConcept", "Type of capability.", 0, 1, type)); - children.add(new Property("description", "CodeableConcept", "Description of capability.", 0, java.lang.Integer.MAX_VALUE, description)); + children.add(new Property("type", "CodeableConcept", "The type of capability - whether it is a physical attribute, a customization needed. For exampl e \"water ingress protection\".", 0, 1, type)); + children.add(new Property("description", "CodeableConcept", "The actual capability of the device e.g. IP67.", 0, java.lang.Integer.MAX_VALUE, description)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Type of capability.", 0, 1, type); - case -1724546052: /*description*/ return new Property("description", "CodeableConcept", "Description of capability.", 0, java.lang.Integer.MAX_VALUE, description); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The type of capability - whether it is a physical attribute, a customization needed. For exampl e \"water ingress protection\".", 0, 1, type); + case -1724546052: /*description*/ return new Property("description", "CodeableConcept", "The actual capability of the device e.g. IP67.", 0, java.lang.Integer.MAX_VALUE, description); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1469,10 +1469,10 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Block() public static class DeviceDefinitionMaterialComponent extends BackboneElement implements IBaseBackboneElement { /** - * The substance. + * A substance that the device contains, may contain, or is made of - for example latex - to be used to determine patient compatibility. This is not intended to represent the composition of the device, only the clinically relevant materials. */ @Child(name = "substance", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="The substance", formalDefinition="The substance." ) + @Description(shortDefinition="A relevant substance that the device contains, may contain, or is made of", formalDefinition="A substance that the device contains, may contain, or is made of - for example latex - to be used to determine patient compatibility. This is not intended to represent the composition of the device, only the clinically relevant materials." ) protected CodeableConcept substance; /** @@ -1507,7 +1507,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #substance} (The substance.) + * @return {@link #substance} (A substance that the device contains, may contain, or is made of - for example latex - to be used to determine patient compatibility. This is not intended to represent the composition of the device, only the clinically relevant materials.) */ public CodeableConcept getSubstance() { if (this.substance == null) @@ -1523,7 +1523,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #substance} (The substance.) + * @param value {@link #substance} (A substance that the device contains, may contain, or is made of - for example latex - to be used to determine patient compatibility. This is not intended to represent the composition of the device, only the clinically relevant materials.) */ public DeviceDefinitionMaterialComponent setSubstance(CodeableConcept value) { this.substance = value; @@ -1622,7 +1622,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("substance", "CodeableConcept", "The substance.", 0, 1, substance)); + children.add(new Property("substance", "CodeableConcept", "A substance that the device contains, may contain, or is made of - for example latex - to be used to determine patient compatibility. This is not intended to represent the composition of the device, only the clinically relevant materials.", 0, 1, substance)); children.add(new Property("alternate", "boolean", "Indicates an alternative material of the device.", 0, 1, alternate)); children.add(new Property("allergenicIndicator", "boolean", "Whether the substance is a known or suspected allergen.", 0, 1, allergenicIndicator)); } @@ -1630,7 +1630,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 530040176: /*substance*/ return new Property("substance", "CodeableConcept", "The substance.", 0, 1, substance); + case 530040176: /*substance*/ return new Property("substance", "CodeableConcept", "A substance that the device contains, may contain, or is made of - for example latex - to be used to determine patient compatibility. This is not intended to represent the composition of the device, only the clinically relevant materials.", 0, 1, substance); case -1408024454: /*alternate*/ return new Property("alternate", "boolean", "Indicates an alternative material of the device.", 0, 1, alternate); case 75406931: /*allergenicIndicator*/ return new Property("allergenicIndicator", "boolean", "Whether the substance is a known or suspected allergen.", 0, 1, allergenicIndicator); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -1779,24 +1779,24 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected List udiDeviceIdentifier; /** - * A name of the manufacturer. + * A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction. */ @Child(name = "manufacturer", type = {StringType.class, Organization.class}, order=2, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Name of device manufacturer", formalDefinition="A name of the manufacturer." ) + @Description(shortDefinition="Name of device manufacturer", formalDefinition="A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction." ) protected DataType manufacturer; /** - * A name given to the device to identify it. + * The name or names of the device as given by the manufacturer. */ @Child(name = "deviceName", type = {}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="A name given to the device to identify it", formalDefinition="A name given to the device to identify it." ) + @Description(shortDefinition="The name or names of the device as given by the manufacturer", formalDefinition="The name or names of the device as given by the manufacturer." ) protected List deviceName; /** - * The model number for the device. + * The model number for the device for example as defined by the manufacturer or labeler, or other agency. */ @Child(name = "modelNumber", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="The model number for the device", formalDefinition="The model number for the device." ) + @Description(shortDefinition="The catalog or model number for the device for example as defined by the manufacturer", formalDefinition="The model number for the device for example as defined by the manufacturer or labeler, or other agency." ) protected StringType modelNumber; /** @@ -1837,10 +1837,10 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected List shelfLifeStorage; /** - * Dimensions, color etc. + * Physical characteristics to define or specify the product - for example dimensions, color etc. These can be defined by the manufacturer or labeler, or can be used to specify characteristics when ordering. */ @Child(name = "physicalCharacteristics", type = {ProdCharacteristic.class}, order=10, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Dimensions, color etc.", formalDefinition="Dimensions, color etc." ) + @Description(shortDefinition="Physical characteristics to define or specify the product - for example dimensions, color etc.", formalDefinition="Physical characteristics to define or specify the product - for example dimensions, color etc. These can be defined by the manufacturer or labeler, or can be used to specify characteristics when ordering." ) protected ProdCharacteristic physicalCharacteristics; /** @@ -1851,10 +1851,10 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | protected List languageCode; /** - * Device capabilities. + * Additional capabilities that the device is defined or required to have e.g. "water resistant", "long life". */ @Child(name = "capability", type = {}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Device capabilities", formalDefinition="Device capabilities." ) + @Description(shortDefinition="Additional capabilities of the device", formalDefinition="Additional capabilities that the device is defined or required to have e.g. \"water resistant\", \"long life\"." ) protected List capability; /** @@ -1878,49 +1878,42 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | @Description(shortDefinition="Details for human/organization for support", formalDefinition="Contact details for an organization or a particular human that is responsible for the device." ) protected List contact; - /** - * A network address on which the device may be contacted directly. - */ - @Child(name = "url", type = {UriType.class}, order=16, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Network address to contact device", formalDefinition="A network address on which the device may be contacted directly." ) - protected UriType url; - /** * Access to on-line information about the device. */ - @Child(name = "onlineInformation", type = {UriType.class}, order=17, min=0, max=1, modifier=false, summary=false) + @Child(name = "onlineInformation", type = {UriType.class}, order=16, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Access to on-line information", formalDefinition="Access to on-line information about the device." ) protected UriType onlineInformation; /** * Descriptive information, usage information or implantation information that is not captured in an existing element. */ - @Child(name = "note", type = {Annotation.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "note", type = {Annotation.class}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Device notes and comments", formalDefinition="Descriptive information, usage information or implantation information that is not captured in an existing element." ) protected List note; /** * The quantity of the device present in the packaging (e.g. the number of devices present in a pack, or the number of devices in the same package of the medicinal product). */ - @Child(name = "quantity", type = {Quantity.class}, order=19, min=0, max=1, modifier=false, summary=false) + @Child(name = "quantity", type = {Quantity.class}, order=18, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The quantity of the device present in the packaging (e.g. the number of devices present in a pack, or the number of devices in the same package of the medicinal product)", formalDefinition="The quantity of the device present in the packaging (e.g. the number of devices present in a pack, or the number of devices in the same package of the medicinal product)." ) protected Quantity quantity; /** * The parent device it can be part of. */ - @Child(name = "parentDevice", type = {DeviceDefinition.class}, order=20, min=0, max=1, modifier=false, summary=true) + @Child(name = "parentDevice", type = {DeviceDefinition.class}, order=19, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The parent device it can be part of", formalDefinition="The parent device it can be part of." ) protected Reference parentDevice; /** * A substance used to create the material(s) of which the device is made. */ - @Child(name = "material", type = {}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "material", type = {}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="A substance used to create the material(s) of which the device is made", formalDefinition="A substance used to create the material(s) of which the device is made." ) protected List material; - private static final long serialVersionUID = 740460962L; + private static final long serialVersionUID = 330387501L; /** * Constructor @@ -2036,14 +2029,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #manufacturer} (A name of the manufacturer.) + * @return {@link #manufacturer} (A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.) */ public DataType getManufacturer() { return this.manufacturer; } /** - * @return {@link #manufacturer} (A name of the manufacturer.) + * @return {@link #manufacturer} (A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.) */ public StringType getManufacturerStringType() throws FHIRException { if (this.manufacturer == null) @@ -2058,7 +2051,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #manufacturer} (A name of the manufacturer.) + * @return {@link #manufacturer} (A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.) */ public Reference getManufacturerReference() throws FHIRException { if (this.manufacturer == null) @@ -2077,7 +2070,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #manufacturer} (A name of the manufacturer.) + * @param value {@link #manufacturer} (A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.) */ public DeviceDefinition setManufacturer(DataType value) { if (value != null && !(value instanceof StringType || value instanceof Reference)) @@ -2087,7 +2080,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #deviceName} (A name given to the device to identify it.) + * @return {@link #deviceName} (The name or names of the device as given by the manufacturer.) */ public List getDeviceName() { if (this.deviceName == null) @@ -2140,7 +2133,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #modelNumber} (The model number for the device.). This is the underlying object with id, value and extensions. The accessor "getModelNumber" gives direct access to the value + * @return {@link #modelNumber} (The model number for the device for example as defined by the manufacturer or labeler, or other agency.). This is the underlying object with id, value and extensions. The accessor "getModelNumber" gives direct access to the value */ public StringType getModelNumberElement() { if (this.modelNumber == null) @@ -2160,7 +2153,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #modelNumber} (The model number for the device.). This is the underlying object with id, value and extensions. The accessor "getModelNumber" gives direct access to the value + * @param value {@link #modelNumber} (The model number for the device for example as defined by the manufacturer or labeler, or other agency.). This is the underlying object with id, value and extensions. The accessor "getModelNumber" gives direct access to the value */ public DeviceDefinition setModelNumberElement(StringType value) { this.modelNumber = value; @@ -2168,14 +2161,14 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return The model number for the device. + * @return The model number for the device for example as defined by the manufacturer or labeler, or other agency. */ public String getModelNumber() { return this.modelNumber == null ? null : this.modelNumber.getValue(); } /** - * @param value The model number for the device. + * @param value The model number for the device for example as defined by the manufacturer or labeler, or other agency. */ public DeviceDefinition setModelNumber(String value) { if (Utilities.noString(value)) @@ -2433,7 +2426,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #physicalCharacteristics} (Dimensions, color etc.) + * @return {@link #physicalCharacteristics} (Physical characteristics to define or specify the product - for example dimensions, color etc. These can be defined by the manufacturer or labeler, or can be used to specify characteristics when ordering.) */ public ProdCharacteristic getPhysicalCharacteristics() { if (this.physicalCharacteristics == null) @@ -2449,7 +2442,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @param value {@link #physicalCharacteristics} (Dimensions, color etc.) + * @param value {@link #physicalCharacteristics} (Physical characteristics to define or specify the product - for example dimensions, color etc. These can be defined by the manufacturer or labeler, or can be used to specify characteristics when ordering.) */ public DeviceDefinition setPhysicalCharacteristics(ProdCharacteristic value) { this.physicalCharacteristics = value; @@ -2510,7 +2503,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | } /** - * @return {@link #capability} (Device capabilities.) + * @return {@link #capability} (Additional capabilities that the device is defined or required to have e.g. "water resistant", "long life".) */ public List getCapability() { if (this.capability == null) @@ -2692,55 +2685,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | return getContact().get(0); } - /** - * @return {@link #url} (A network address on which the device may be contacted directly.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value - */ - public UriType getUrlElement() { - if (this.url == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create DeviceDefinition.url"); - else if (Configuration.doAutoCreate()) - this.url = new UriType(); // bb - return this.url; - } - - public boolean hasUrlElement() { - return this.url != null && !this.url.isEmpty(); - } - - public boolean hasUrl() { - return this.url != null && !this.url.isEmpty(); - } - - /** - * @param value {@link #url} (A network address on which the device may be contacted directly.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value - */ - public DeviceDefinition setUrlElement(UriType value) { - this.url = value; - return this; - } - - /** - * @return A network address on which the device may be contacted directly. - */ - public String getUrl() { - return this.url == null ? null : this.url.getValue(); - } - - /** - * @param value A network address on which the device may be contacted directly. - */ - public DeviceDefinition setUrl(String value) { - if (Utilities.noString(value)) - this.url = null; - else { - if (this.url == null) - this.url = new UriType(); - this.url.setValue(value); - } - return this; - } - /** * @return {@link #onlineInformation} (Access to on-line information about the device.). This is the underlying object with id, value and extensions. The accessor "getOnlineInformation" gives direct access to the value */ @@ -2948,21 +2892,20 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | super.listChildren(children); children.add(new Property("identifier", "Identifier", "Unique instance identifiers assigned to a device by the software, manufacturers, other organizations or owners. For example: handle ID.", 0, java.lang.Integer.MAX_VALUE, identifier)); children.add(new Property("udiDeviceIdentifier", "", "Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold.", 0, java.lang.Integer.MAX_VALUE, udiDeviceIdentifier)); - children.add(new Property("manufacturer[x]", "string|Reference(Organization)", "A name of the manufacturer.", 0, 1, manufacturer)); - children.add(new Property("deviceName", "", "A name given to the device to identify it.", 0, java.lang.Integer.MAX_VALUE, deviceName)); - children.add(new Property("modelNumber", "string", "The model number for the device.", 0, 1, modelNumber)); + children.add(new Property("manufacturer[x]", "string|Reference(Organization)", "A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.", 0, 1, manufacturer)); + children.add(new Property("deviceName", "", "The name or names of the device as given by the manufacturer.", 0, java.lang.Integer.MAX_VALUE, deviceName)); + children.add(new Property("modelNumber", "string", "The model number for the device for example as defined by the manufacturer or labeler, or other agency.", 0, 1, modelNumber)); children.add(new Property("type", "CodeableConcept", "What kind of device or device system this is.", 0, 1, type)); children.add(new Property("specialization", "", "The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication.", 0, java.lang.Integer.MAX_VALUE, specialization)); children.add(new Property("version", "string", "The available versions of the device, e.g., software versions.", 0, java.lang.Integer.MAX_VALUE, version)); children.add(new Property("safety", "CodeableConcept", "Safety characteristics of the device.", 0, java.lang.Integer.MAX_VALUE, safety)); children.add(new Property("shelfLifeStorage", "ProductShelfLife", "Shelf Life and storage information.", 0, java.lang.Integer.MAX_VALUE, shelfLifeStorage)); - children.add(new Property("physicalCharacteristics", "ProdCharacteristic", "Dimensions, color etc.", 0, 1, physicalCharacteristics)); + children.add(new Property("physicalCharacteristics", "ProdCharacteristic", "Physical characteristics to define or specify the product - for example dimensions, color etc. These can be defined by the manufacturer or labeler, or can be used to specify characteristics when ordering.", 0, 1, physicalCharacteristics)); children.add(new Property("languageCode", "CodeableConcept", "Language code for the human-readable text strings produced by the device (all supported).", 0, java.lang.Integer.MAX_VALUE, languageCode)); - children.add(new Property("capability", "", "Device capabilities.", 0, java.lang.Integer.MAX_VALUE, capability)); + children.add(new Property("capability", "", "Additional capabilities that the device is defined or required to have e.g. \"water resistant\", \"long life\".", 0, java.lang.Integer.MAX_VALUE, capability)); children.add(new Property("property", "", "The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties.", 0, java.lang.Integer.MAX_VALUE, property)); children.add(new Property("owner", "Reference(Organization)", "An organization that is responsible for the provision and ongoing maintenance of the device.", 0, 1, owner)); children.add(new Property("contact", "ContactPoint", "Contact details for an organization or a particular human that is responsible for the device.", 0, java.lang.Integer.MAX_VALUE, contact)); - children.add(new Property("url", "uri", "A network address on which the device may be contacted directly.", 0, 1, url)); children.add(new Property("onlineInformation", "uri", "Access to on-line information about the device.", 0, 1, onlineInformation)); children.add(new Property("note", "Annotation", "Descriptive information, usage information or implantation information that is not captured in an existing element.", 0, java.lang.Integer.MAX_VALUE, note)); children.add(new Property("quantity", "Quantity", "The quantity of the device present in the packaging (e.g. the number of devices present in a pack, or the number of devices in the same package of the medicinal product).", 0, 1, quantity)); @@ -2975,24 +2918,23 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Unique instance identifiers assigned to a device by the software, manufacturers, other organizations or owners. For example: handle ID.", 0, java.lang.Integer.MAX_VALUE, identifier); case -99121287: /*udiDeviceIdentifier*/ return new Property("udiDeviceIdentifier", "", "Unique device identifier (UDI) assigned to device label or package. Note that the Device may include multiple udiCarriers as it either may include just the udiCarrier for the jurisdiction it is sold, or for multiple jurisdictions it could have been sold.", 0, java.lang.Integer.MAX_VALUE, udiDeviceIdentifier); - case 418079503: /*manufacturer[x]*/ return new Property("manufacturer[x]", "string|Reference(Organization)", "A name of the manufacturer.", 0, 1, manufacturer); - case -1969347631: /*manufacturer*/ return new Property("manufacturer[x]", "string|Reference(Organization)", "A name of the manufacturer.", 0, 1, manufacturer); - case -630681790: /*manufacturerString*/ return new Property("manufacturer[x]", "string", "A name of the manufacturer.", 0, 1, manufacturer); - case 1104934522: /*manufacturerReference*/ return new Property("manufacturer[x]", "Reference(Organization)", "A name of the manufacturer.", 0, 1, manufacturer); - case 780988929: /*deviceName*/ return new Property("deviceName", "", "A name given to the device to identify it.", 0, java.lang.Integer.MAX_VALUE, deviceName); - case 346619858: /*modelNumber*/ return new Property("modelNumber", "string", "The model number for the device.", 0, 1, modelNumber); + case 418079503: /*manufacturer[x]*/ return new Property("manufacturer[x]", "string|Reference(Organization)", "A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.", 0, 1, manufacturer); + case -1969347631: /*manufacturer*/ return new Property("manufacturer[x]", "string|Reference(Organization)", "A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.", 0, 1, manufacturer); + case -630681790: /*manufacturerString*/ return new Property("manufacturer[x]", "string", "A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.", 0, 1, manufacturer); + case 1104934522: /*manufacturerReference*/ return new Property("manufacturer[x]", "Reference(Organization)", "A name of the manufacturer or legal representative e.g. labeler. Whether this is the actual manufacturer or the labeler or responsible depends on implementation and jurisdiction.", 0, 1, manufacturer); + case 780988929: /*deviceName*/ return new Property("deviceName", "", "The name or names of the device as given by the manufacturer.", 0, java.lang.Integer.MAX_VALUE, deviceName); + case 346619858: /*modelNumber*/ return new Property("modelNumber", "string", "The model number for the device for example as defined by the manufacturer or labeler, or other agency.", 0, 1, modelNumber); case 3575610: /*type*/ return new Property("type", "CodeableConcept", "What kind of device or device system this is.", 0, 1, type); case 682815883: /*specialization*/ return new Property("specialization", "", "The capabilities supported on a device, the standards to which the device conforms for a particular purpose, and used for the communication.", 0, java.lang.Integer.MAX_VALUE, specialization); case 351608024: /*version*/ return new Property("version", "string", "The available versions of the device, e.g., software versions.", 0, java.lang.Integer.MAX_VALUE, version); case -909893934: /*safety*/ return new Property("safety", "CodeableConcept", "Safety characteristics of the device.", 0, java.lang.Integer.MAX_VALUE, safety); case 172049237: /*shelfLifeStorage*/ return new Property("shelfLifeStorage", "ProductShelfLife", "Shelf Life and storage information.", 0, java.lang.Integer.MAX_VALUE, shelfLifeStorage); - case -1599676319: /*physicalCharacteristics*/ return new Property("physicalCharacteristics", "ProdCharacteristic", "Dimensions, color etc.", 0, 1, physicalCharacteristics); + case -1599676319: /*physicalCharacteristics*/ return new Property("physicalCharacteristics", "ProdCharacteristic", "Physical characteristics to define or specify the product - for example dimensions, color etc. These can be defined by the manufacturer or labeler, or can be used to specify characteristics when ordering.", 0, 1, physicalCharacteristics); case -2092349083: /*languageCode*/ return new Property("languageCode", "CodeableConcept", "Language code for the human-readable text strings produced by the device (all supported).", 0, java.lang.Integer.MAX_VALUE, languageCode); - case -783669992: /*capability*/ return new Property("capability", "", "Device capabilities.", 0, java.lang.Integer.MAX_VALUE, capability); + case -783669992: /*capability*/ return new Property("capability", "", "Additional capabilities that the device is defined or required to have e.g. \"water resistant\", \"long life\".", 0, java.lang.Integer.MAX_VALUE, capability); case -993141291: /*property*/ return new Property("property", "", "The actual configuration settings of a device as it actually operates, e.g., regulation status, time properties.", 0, java.lang.Integer.MAX_VALUE, property); case 106164915: /*owner*/ return new Property("owner", "Reference(Organization)", "An organization that is responsible for the provision and ongoing maintenance of the device.", 0, 1, owner); case 951526432: /*contact*/ return new Property("contact", "ContactPoint", "Contact details for an organization or a particular human that is responsible for the device.", 0, java.lang.Integer.MAX_VALUE, contact); - case 116079: /*url*/ return new Property("url", "uri", "A network address on which the device may be contacted directly.", 0, 1, url); case -788511527: /*onlineInformation*/ return new Property("onlineInformation", "uri", "Access to on-line information about the device.", 0, 1, onlineInformation); case 3387378: /*note*/ return new Property("note", "Annotation", "Descriptive information, usage information or implantation information that is not captured in an existing element.", 0, java.lang.Integer.MAX_VALUE, note); case -1285004149: /*quantity*/ return new Property("quantity", "Quantity", "The quantity of the device present in the packaging (e.g. the number of devices present in a pack, or the number of devices in the same package of the medicinal product).", 0, 1, quantity); @@ -3022,7 +2964,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // DeviceDefinitionPropertyComponent case 106164915: /*owner*/ return this.owner == null ? new Base[0] : new Base[] {this.owner}; // Reference case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactPoint - case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType case -788511527: /*onlineInformation*/ return this.onlineInformation == null ? new Base[0] : new Base[] {this.onlineInformation}; // UriType case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity @@ -3084,9 +3025,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case 951526432: // contact this.getContact().add(TypeConvertor.castToContactPoint(value)); // ContactPoint return value; - case 116079: // url - this.url = TypeConvertor.castToUri(value); // UriType - return value; case -788511527: // onlineInformation this.onlineInformation = TypeConvertor.castToUri(value); // UriType return value; @@ -3141,8 +3079,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | this.owner = TypeConvertor.castToReference(value); // Reference } else if (name.equals("contact")) { this.getContact().add(TypeConvertor.castToContactPoint(value)); - } else if (name.equals("url")) { - this.url = TypeConvertor.castToUri(value); // UriType } else if (name.equals("onlineInformation")) { this.onlineInformation = TypeConvertor.castToUri(value); // UriType } else if (name.equals("note")) { @@ -3178,7 +3114,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case -993141291: return addProperty(); case 106164915: return getOwner(); case 951526432: return addContact(); - case 116079: return getUrlElement(); case -788511527: return getOnlineInformationElement(); case 3387378: return addNote(); case -1285004149: return getQuantity(); @@ -3208,7 +3143,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | case -993141291: /*property*/ return new String[] {}; case 106164915: /*owner*/ return new String[] {"Reference"}; case 951526432: /*contact*/ return new String[] {"ContactPoint"}; - case 116079: /*url*/ return new String[] {"uri"}; case -788511527: /*onlineInformation*/ return new String[] {"uri"}; case 3387378: /*note*/ return new String[] {"Annotation"}; case -1285004149: /*quantity*/ return new String[] {"Quantity"}; @@ -3277,9 +3211,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | else if (name.equals("contact")) { return addContact(); } - else if (name.equals("url")) { - throw new FHIRException("Cannot call addChild on a primitive type DeviceDefinition.url"); - } else if (name.equals("onlineInformation")) { throw new FHIRException("Cannot call addChild on a primitive type DeviceDefinition.onlineInformation"); } @@ -3374,7 +3305,6 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | for (ContactPoint i : contact) dst.contact.add(i.copy()); }; - dst.url = url == null ? null : url.copy(); dst.onlineInformation = onlineInformation == null ? null : onlineInformation.copy(); if (note != null) { dst.note = new ArrayList(); @@ -3407,7 +3337,7 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | && compareDeep(version, o.version, true) && compareDeep(safety, o.safety, true) && compareDeep(shelfLifeStorage, o.shelfLifeStorage, true) && compareDeep(physicalCharacteristics, o.physicalCharacteristics, true) && compareDeep(languageCode, o.languageCode, true) && compareDeep(capability, o.capability, true) && compareDeep(property, o.property, true) && compareDeep(owner, o.owner, true) - && compareDeep(contact, o.contact, true) && compareDeep(url, o.url, true) && compareDeep(onlineInformation, o.onlineInformation, true) + && compareDeep(contact, o.contact, true) && compareDeep(onlineInformation, o.onlineInformation, true) && compareDeep(note, o.note, true) && compareDeep(quantity, o.quantity, true) && compareDeep(parentDevice, o.parentDevice, true) && compareDeep(material, o.material, true); } @@ -3419,15 +3349,15 @@ UDILabelName | UserFriendlyName | PatientReportedName | ManufactureDeviceName | if (!(other_ instanceof DeviceDefinition)) return false; DeviceDefinition o = (DeviceDefinition) other_; - return compareValues(modelNumber, o.modelNumber, true) && compareValues(version, o.version, true) && compareValues(url, o.url, true) - && compareValues(onlineInformation, o.onlineInformation, true); + return compareValues(modelNumber, o.modelNumber, true) && compareValues(version, o.version, true) && compareValues(onlineInformation, o.onlineInformation, true) + ; } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, udiDeviceIdentifier , manufacturer, deviceName, modelNumber, type, specialization, version, safety , shelfLifeStorage, physicalCharacteristics, languageCode, capability, property, owner - , contact, url, onlineInformation, note, quantity, parentDevice, material); + , contact, onlineInformation, note, quantity, parentDevice, material); } @Override diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceMetric.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceMetric.java index 817cd0321..3a615d2e5 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceMetric.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceMetric.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceRequest.java index a0ac5cc51..e773fb53f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -418,10 +418,10 @@ public class DeviceRequest extends DomainResource { /** * The details of the device to be used. */ - @Child(name = "code", type = {Device.class, CodeableConcept.class}, order=9, min=1, max=1, modifier=false, summary=true) + @Child(name = "code", type = {CodeableReference.class}, order=9, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Device requested", formalDefinition="The details of the device to be used." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-kind") - protected DataType code; + protected CodeableReference code; /** * Specific parameters for the ordered item. For example, the prism value for lenses. @@ -516,7 +516,7 @@ public class DeviceRequest extends DomainResource { @Description(shortDefinition="Request provenance", formalDefinition="Key events in the history of the request." ) protected List relevantHistory; - private static final long serialVersionUID = -1895022932L; + private static final long serialVersionUID = 1727309364L; /** * Constructor @@ -528,7 +528,7 @@ public class DeviceRequest extends DomainResource { /** * Constructor */ - public DeviceRequest(RequestIntent intent, DataType code, Reference subject) { + public DeviceRequest(RequestIntent intent, CodeableReference code, Reference subject) { super(); this.setIntent(intent); this.setCode(code); @@ -986,40 +986,15 @@ public class DeviceRequest extends DomainResource { /** * @return {@link #code} (The details of the device to be used.) */ - public DataType getCode() { + public CodeableReference getCode() { + if (this.code == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create DeviceRequest.code"); + else if (Configuration.doAutoCreate()) + this.code = new CodeableReference(); // cc return this.code; } - /** - * @return {@link #code} (The details of the device to be used.) - */ - public Reference getCodeReference() throws FHIRException { - if (this.code == null) - this.code = new Reference(); - if (!(this.code instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.code.getClass().getName()+" was encountered"); - return (Reference) this.code; - } - - public boolean hasCodeReference() { - return this != null && this.code instanceof Reference; - } - - /** - * @return {@link #code} (The details of the device to be used.) - */ - public CodeableConcept getCodeCodeableConcept() throws FHIRException { - if (this.code == null) - this.code = new CodeableConcept(); - if (!(this.code instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.code.getClass().getName()+" was encountered"); - return (CodeableConcept) this.code; - } - - public boolean hasCodeCodeableConcept() { - return this != null && this.code instanceof CodeableConcept; - } - public boolean hasCode() { return this.code != null && !this.code.isEmpty(); } @@ -1027,9 +1002,7 @@ public class DeviceRequest extends DomainResource { /** * @param value {@link #code} (The details of the device to be used.) */ - public DeviceRequest setCode(DataType value) { - if (value != null && !(value instanceof Reference || value instanceof CodeableConcept)) - throw new Error("Not the right type for DeviceRequest.code[x]: "+value.fhirType()); + public DeviceRequest setCode(CodeableReference value) { this.code = value; return this; } @@ -1598,7 +1571,7 @@ public class DeviceRequest extends DomainResource { children.add(new Property("status", "code", "The status of the request.", 0, 1, status)); children.add(new Property("intent", "code", "Whether the request is a proposal, plan, an original order or a reflex order.", 0, 1, intent)); children.add(new Property("priority", "code", "Indicates how quickly the device request should be addressed with respect to other requests.", 0, 1, priority)); - children.add(new Property("code[x]", "Reference(Device)|CodeableConcept", "The details of the device to be used.", 0, 1, code)); + children.add(new Property("code", "CodeableReference(Device|DeviceDefinition)", "The details of the device to be used.", 0, 1, code)); children.add(new Property("parameter", "", "Specific parameters for the ordered item. For example, the prism value for lenses.", 0, java.lang.Integer.MAX_VALUE, parameter)); children.add(new Property("subject", "Reference(Patient|Group|Location|Device)", "The patient who will use the device.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "An encounter that provides additional context in which this request is made.", 0, 1, encounter)); @@ -1626,10 +1599,7 @@ public class DeviceRequest extends DomainResource { case -892481550: /*status*/ return new Property("status", "code", "The status of the request.", 0, 1, status); case -1183762788: /*intent*/ return new Property("intent", "code", "Whether the request is a proposal, plan, an original order or a reflex order.", 0, 1, intent); case -1165461084: /*priority*/ return new Property("priority", "code", "Indicates how quickly the device request should be addressed with respect to other requests.", 0, 1, priority); - case 941839219: /*code[x]*/ return new Property("code[x]", "Reference(Device)|CodeableConcept", "The details of the device to be used.", 0, 1, code); - case 3059181: /*code*/ return new Property("code[x]", "Reference(Device)|CodeableConcept", "The details of the device to be used.", 0, 1, code); - case 1565461470: /*codeReference*/ return new Property("code[x]", "Reference(Device)", "The details of the device to be used.", 0, 1, code); - case 4899316: /*codeCodeableConcept*/ return new Property("code[x]", "CodeableConcept", "The details of the device to be used.", 0, 1, code); + case 3059181: /*code*/ return new Property("code", "CodeableReference(Device|DeviceDefinition)", "The details of the device to be used.", 0, 1, code); case 1954460585: /*parameter*/ return new Property("parameter", "", "Specific parameters for the ordered item. For example, the prism value for lenses.", 0, java.lang.Integer.MAX_VALUE, parameter); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group|Location|Device)", "The patient who will use the device.", 0, 1, subject); case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "An encounter that provides additional context in which this request is made.", 0, 1, encounter); @@ -1664,7 +1634,7 @@ public class DeviceRequest extends DomainResource { case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case -1183762788: /*intent*/ return this.intent == null ? new Base[0] : new Base[] {this.intent}; // Enumeration case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // Enumeration - case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // DataType + case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableReference case 1954460585: /*parameter*/ return this.parameter == null ? new Base[0] : this.parameter.toArray(new Base[this.parameter.size()]); // DeviceRequestParameterComponent case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference @@ -1717,7 +1687,7 @@ public class DeviceRequest extends DomainResource { this.priority = (Enumeration) value; // Enumeration return value; case 3059181: // code - this.code = TypeConvertor.castToType(value); // DataType + this.code = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case 1954460585: // parameter this.getParameter().add((DeviceRequestParameterComponent) value); // DeviceRequestParameterComponent @@ -1786,8 +1756,8 @@ public class DeviceRequest extends DomainResource { } else if (name.equals("priority")) { value = new RequestPriorityEnumFactory().fromType(TypeConvertor.castToCode(value)); this.priority = (Enumeration) value; // Enumeration - } else if (name.equals("code[x]")) { - this.code = TypeConvertor.castToType(value); // DataType + } else if (name.equals("code")) { + this.code = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("parameter")) { this.getParameter().add((DeviceRequestParameterComponent) value); } else if (name.equals("subject")) { @@ -1831,7 +1801,6 @@ public class DeviceRequest extends DomainResource { case -892481550: return getStatusElement(); case -1183762788: return getIntentElement(); case -1165461084: return getPriorityElement(); - case 941839219: return getCode(); case 3059181: return getCode(); case 1954460585: return addParameter(); case -1867885268: return getSubject(); @@ -1864,7 +1833,7 @@ public class DeviceRequest extends DomainResource { case -892481550: /*status*/ return new String[] {"code"}; case -1183762788: /*intent*/ return new String[] {"code"}; case -1165461084: /*priority*/ return new String[] {"code"}; - case 3059181: /*code*/ return new String[] {"Reference", "CodeableConcept"}; + case 3059181: /*code*/ return new String[] {"CodeableReference"}; case 1954460585: /*parameter*/ return new String[] {}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1524132147: /*encounter*/ return new String[] {"Reference"}; @@ -1913,12 +1882,8 @@ public class DeviceRequest extends DomainResource { else if (name.equals("priority")) { throw new FHIRException("Cannot call addChild on a primitive type DeviceRequest.priority"); } - else if (name.equals("codeReference")) { - this.code = new Reference(); - return this.code; - } - else if (name.equals("codeCodeableConcept")) { - this.code = new CodeableConcept(); + else if (name.equals("code")) { + this.code = new CodeableReference(); return this.code; } else if (name.equals("parameter")) { @@ -2135,7 +2100,7 @@ public class DeviceRequest extends DomainResource { * Path: DeviceRequest.basedOn
*

*/ - @SearchParamDefinition(name="based-on", path="DeviceRequest.basedOn", description="Plan/proposal/order fulfilled by this request", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="based-on", path="DeviceRequest.basedOn", description="Plan/proposal/order fulfilled by this request", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_BASED_ON = "based-on"; /** * Fluent Client search parameter constant for based-on @@ -2158,17 +2123,17 @@ public class DeviceRequest extends DomainResource { *

* Description: Reference to resource that is being requested/ordered
* Type: reference
- * Path: (DeviceRequest.code as Reference)
+ * Path: DeviceRequest.code.reference
*

*/ - @SearchParamDefinition(name="device", path="(DeviceRequest.code as Reference)", description="Reference to resource that is being requested/ordered", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device") }, target={Device.class } ) + @SearchParamDefinition(name="device", path="DeviceRequest.code.reference", description="Reference to resource that is being requested/ordered", type="reference" ) public static final String SP_DEVICE = "device"; /** * Fluent Client search parameter constant for device *

* Description: Reference to resource that is being requested/ordered
* Type: reference
- * Path: (DeviceRequest.code as Reference)
+ * Path: DeviceRequest.code.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEVICE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_DEVICE); @@ -2345,7 +2310,7 @@ public class DeviceRequest extends DomainResource { * Path: DeviceRequest.priorRequest
*

*/ - @SearchParamDefinition(name="prior-request", path="DeviceRequest.priorRequest", description="Request takes the place of referenced completed or terminated requests", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="prior-request", path="DeviceRequest.priorRequest", description="Request takes the place of referenced completed or terminated requests", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PRIOR_REQUEST = "prior-request"; /** * Fluent Client search parameter constant for prior-request @@ -2456,10 +2421,10 @@ public class DeviceRequest extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2482,7 +2447,7 @@ public class DeviceRequest extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2664,10 +2629,10 @@ public class DeviceRequest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2708,7 +2673,7 @@ public class DeviceRequest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceUseStatement.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceUseStatement.java index b5951a10f..e67a5ceb3 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceUseStatement.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DeviceUseStatement.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -68,7 +68,7 @@ import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Block; /** - * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. + * A record of a device being used by a patient where the record is the result of a report from the patient or a clinician. */ @ResourceDef(name="DeviceUseStatement", profile="http://hl7.org/fhir/StructureDefinition/DeviceUseStatement") public class DeviceUseStatement extends DomainResource { @@ -251,71 +251,99 @@ public class DeviceUseStatement extends DomainResource { @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/device-statement-status") protected Enumeration status; + /** + * This attribute indicates a category for the statement - The device statement may be made in an inpatient or outpatient settting (inpatient | outpatient | community | patientspecified). + */ + @Child(name = "category", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The category of the statement - classifying how the statement is made", formalDefinition="This attribute indicates a category for the statement - The device statement may be made in an inpatient or outpatient settting (inpatient | outpatient | community | patientspecified)." ) + protected List category; + /** * The patient who used the device. */ - @Child(name = "subject", type = {Patient.class, Group.class}, order=3, min=1, max=1, modifier=false, summary=true) + @Child(name = "subject", type = {Patient.class, Group.class}, order=4, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Patient using device", formalDefinition="The patient who used the device." ) protected Reference subject; /** * Allows linking the DeviceUseStatement to the underlying Request, or to other information that supports or is used to derive the DeviceUseStatement. */ - @Child(name = "derivedFrom", type = {ServiceRequest.class, Procedure.class, Claim.class, Observation.class, QuestionnaireResponse.class, DocumentReference.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "derivedFrom", type = {ServiceRequest.class, Procedure.class, Claim.class, Observation.class, QuestionnaireResponse.class, DocumentReference.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Supporting information", formalDefinition="Allows linking the DeviceUseStatement to the underlying Request, or to other information that supports or is used to derive the DeviceUseStatement." ) protected List derivedFrom; + /** + * The encounter or episode of care that establishes the context for this device use statement. + */ + @Child(name = "context", type = {Encounter.class, EpisodeOfCare.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The encounter or episode of care that establishes the context for this device use statement", formalDefinition="The encounter or episode of care that establishes the context for this device use statement." ) + protected Reference context; + /** * How often the device was used. */ - @Child(name = "timing", type = {Timing.class, Period.class, DateTimeType.class}, order=5, min=0, max=1, modifier=false, summary=true) + @Child(name = "timing", type = {Timing.class, Period.class, DateTimeType.class}, order=7, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="How often the device was used", formalDefinition="How often the device was used." ) protected DataType timing; /** - * The time at which the statement was made/recorded. + * The time at which the statement was recorded by informationSource. */ - @Child(name = "recordedOn", type = {DateTimeType.class}, order=6, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="When statement was recorded", formalDefinition="The time at which the statement was made/recorded." ) - protected DateTimeType recordedOn; + @Child(name = "dateAsserted", type = {DateTimeType.class}, order=8, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="When the statement was made (and recorded)", formalDefinition="The time at which the statement was recorded by informationSource." ) + protected DateTimeType dateAsserted; + + /** + * The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement. + */ + @Child(name = "usageStatus", type = {CodeableConcept.class}, order=9, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement", formalDefinition="The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement." ) + protected CodeableConcept usageStatus; + + /** + * The reason for asserting the usage status - for example forgot, lost, stolen, broken. + */ + @Child(name = "usageReason", type = {CodeableConcept.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The reason for asserting the usage status - for example forgot, lost, stolen, broken", formalDefinition="The reason for asserting the usage status - for example forgot, lost, stolen, broken." ) + protected List usageReason; /** * Who reported the device was being used by the patient. */ - @Child(name = "source", type = {Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class}, order=7, min=0, max=1, modifier=false, summary=true) + @Child(name = "informationSource", type = {Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class, Organization.class}, order=11, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Who made the statement", formalDefinition="Who reported the device was being used by the patient." ) - protected Reference source; + protected Reference informationSource; /** - * The details of the device used. + * Code or Reference to device used. */ - @Child(name = "device", type = {Device.class}, order=8, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="Reference to device used", formalDefinition="The details of the device used." ) - protected Reference device; + @Child(name = "device", type = {CodeableReference.class}, order=12, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Code or Reference to device used", formalDefinition="Code or Reference to device used." ) + protected CodeableReference device; /** * Reason or justification for the use of the device. A coded concept, or another resource whose existence justifies this DeviceUseStatement. */ - @Child(name = "reason", type = {CodeableReference.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "reason", type = {CodeableReference.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Why device was used", formalDefinition="Reason or justification for the use of the device. A coded concept, or another resource whose existence justifies this DeviceUseStatement." ) protected List reason; /** * Indicates the anotomic location on the subject's body where the device was used ( i.e. the target). */ - @Child(name = "bodySite", type = {CodeableConcept.class}, order=10, min=0, max=1, modifier=false, summary=true) + @Child(name = "bodySite", type = {CodeableReference.class}, order=14, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Target body site", formalDefinition="Indicates the anotomic location on the subject's body where the device was used ( i.e. the target)." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/body-site") - protected CodeableConcept bodySite; + protected CodeableReference bodySite; /** * Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement. */ - @Child(name = "note", type = {Annotation.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "note", type = {Annotation.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Addition details (comments, instructions)", formalDefinition="Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement." ) protected List note; - private static final long serialVersionUID = 2097046105L; + private static final long serialVersionUID = 1284477298L; /** * Constructor @@ -327,7 +355,7 @@ public class DeviceUseStatement extends DomainResource { /** * Constructor */ - public DeviceUseStatement(DeviceUseStatementStatus status, Reference subject, Reference device) { + public DeviceUseStatement(DeviceUseStatementStatus status, Reference subject, CodeableReference device) { super(); this.setStatus(status); this.setSubject(subject); @@ -485,6 +513,59 @@ public class DeviceUseStatement extends DomainResource { return this; } + /** + * @return {@link #category} (This attribute indicates a category for the statement - The device statement may be made in an inpatient or outpatient settting (inpatient | outpatient | community | patientspecified).) + */ + public List getCategory() { + if (this.category == null) + this.category = new ArrayList(); + return this.category; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public DeviceUseStatement setCategory(List theCategory) { + this.category = theCategory; + return this; + } + + public boolean hasCategory() { + if (this.category == null) + return false; + for (CodeableConcept item : this.category) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addCategory() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.category == null) + this.category = new ArrayList(); + this.category.add(t); + return t; + } + + public DeviceUseStatement addCategory(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.category == null) + this.category = new ArrayList(); + this.category.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist {3} + */ + public CodeableConcept getCategoryFirstRep() { + if (getCategory().isEmpty()) { + addCategory(); + } + return getCategory().get(0); + } + /** * @return {@link #subject} (The patient who used the device.) */ @@ -562,6 +643,30 @@ public class DeviceUseStatement extends DomainResource { return getDerivedFrom().get(0); } + /** + * @return {@link #context} (The encounter or episode of care that establishes the context for this device use statement.) + */ + public Reference getContext() { + if (this.context == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create DeviceUseStatement.context"); + else if (Configuration.doAutoCreate()) + this.context = new Reference(); // cc + return this.context; + } + + public boolean hasContext() { + return this.context != null && !this.context.isEmpty(); + } + + /** + * @param value {@link #context} (The encounter or episode of care that establishes the context for this device use statement.) + */ + public DeviceUseStatement setContext(Reference value) { + this.context = value; + return this; + } + /** * @return {@link #timing} (How often the device was used.) */ @@ -629,87 +734,164 @@ public class DeviceUseStatement extends DomainResource { } /** - * @return {@link #recordedOn} (The time at which the statement was made/recorded.). This is the underlying object with id, value and extensions. The accessor "getRecordedOn" gives direct access to the value + * @return {@link #dateAsserted} (The time at which the statement was recorded by informationSource.). This is the underlying object with id, value and extensions. The accessor "getDateAsserted" gives direct access to the value */ - public DateTimeType getRecordedOnElement() { - if (this.recordedOn == null) + public DateTimeType getDateAssertedElement() { + if (this.dateAsserted == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create DeviceUseStatement.recordedOn"); + throw new Error("Attempt to auto-create DeviceUseStatement.dateAsserted"); else if (Configuration.doAutoCreate()) - this.recordedOn = new DateTimeType(); // bb - return this.recordedOn; + this.dateAsserted = new DateTimeType(); // bb + return this.dateAsserted; } - public boolean hasRecordedOnElement() { - return this.recordedOn != null && !this.recordedOn.isEmpty(); + public boolean hasDateAssertedElement() { + return this.dateAsserted != null && !this.dateAsserted.isEmpty(); } - public boolean hasRecordedOn() { - return this.recordedOn != null && !this.recordedOn.isEmpty(); + public boolean hasDateAsserted() { + return this.dateAsserted != null && !this.dateAsserted.isEmpty(); } /** - * @param value {@link #recordedOn} (The time at which the statement was made/recorded.). This is the underlying object with id, value and extensions. The accessor "getRecordedOn" gives direct access to the value + * @param value {@link #dateAsserted} (The time at which the statement was recorded by informationSource.). This is the underlying object with id, value and extensions. The accessor "getDateAsserted" gives direct access to the value */ - public DeviceUseStatement setRecordedOnElement(DateTimeType value) { - this.recordedOn = value; + public DeviceUseStatement setDateAssertedElement(DateTimeType value) { + this.dateAsserted = value; return this; } /** - * @return The time at which the statement was made/recorded. + * @return The time at which the statement was recorded by informationSource. */ - public Date getRecordedOn() { - return this.recordedOn == null ? null : this.recordedOn.getValue(); + public Date getDateAsserted() { + return this.dateAsserted == null ? null : this.dateAsserted.getValue(); } /** - * @param value The time at which the statement was made/recorded. + * @param value The time at which the statement was recorded by informationSource. */ - public DeviceUseStatement setRecordedOn(Date value) { + public DeviceUseStatement setDateAsserted(Date value) { if (value == null) - this.recordedOn = null; + this.dateAsserted = null; else { - if (this.recordedOn == null) - this.recordedOn = new DateTimeType(); - this.recordedOn.setValue(value); + if (this.dateAsserted == null) + this.dateAsserted = new DateTimeType(); + this.dateAsserted.setValue(value); } return this; } /** - * @return {@link #source} (Who reported the device was being used by the patient.) + * @return {@link #usageStatus} (The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement.) */ - public Reference getSource() { - if (this.source == null) + public CodeableConcept getUsageStatus() { + if (this.usageStatus == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create DeviceUseStatement.source"); + throw new Error("Attempt to auto-create DeviceUseStatement.usageStatus"); else if (Configuration.doAutoCreate()) - this.source = new Reference(); // cc - return this.source; + this.usageStatus = new CodeableConcept(); // cc + return this.usageStatus; } - public boolean hasSource() { - return this.source != null && !this.source.isEmpty(); + public boolean hasUsageStatus() { + return this.usageStatus != null && !this.usageStatus.isEmpty(); } /** - * @param value {@link #source} (Who reported the device was being used by the patient.) + * @param value {@link #usageStatus} (The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement.) */ - public DeviceUseStatement setSource(Reference value) { - this.source = value; + public DeviceUseStatement setUsageStatus(CodeableConcept value) { + this.usageStatus = value; return this; } /** - * @return {@link #device} (The details of the device used.) + * @return {@link #usageReason} (The reason for asserting the usage status - for example forgot, lost, stolen, broken.) */ - public Reference getDevice() { + public List getUsageReason() { + if (this.usageReason == null) + this.usageReason = new ArrayList(); + return this.usageReason; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public DeviceUseStatement setUsageReason(List theUsageReason) { + this.usageReason = theUsageReason; + return this; + } + + public boolean hasUsageReason() { + if (this.usageReason == null) + return false; + for (CodeableConcept item : this.usageReason) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addUsageReason() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.usageReason == null) + this.usageReason = new ArrayList(); + this.usageReason.add(t); + return t; + } + + public DeviceUseStatement addUsageReason(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.usageReason == null) + this.usageReason = new ArrayList(); + this.usageReason.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #usageReason}, creating it if it does not already exist {3} + */ + public CodeableConcept getUsageReasonFirstRep() { + if (getUsageReason().isEmpty()) { + addUsageReason(); + } + return getUsageReason().get(0); + } + + /** + * @return {@link #informationSource} (Who reported the device was being used by the patient.) + */ + public Reference getInformationSource() { + if (this.informationSource == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create DeviceUseStatement.informationSource"); + else if (Configuration.doAutoCreate()) + this.informationSource = new Reference(); // cc + return this.informationSource; + } + + public boolean hasInformationSource() { + return this.informationSource != null && !this.informationSource.isEmpty(); + } + + /** + * @param value {@link #informationSource} (Who reported the device was being used by the patient.) + */ + public DeviceUseStatement setInformationSource(Reference value) { + this.informationSource = value; + return this; + } + + /** + * @return {@link #device} (Code or Reference to device used.) + */ + public CodeableReference getDevice() { if (this.device == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create DeviceUseStatement.device"); else if (Configuration.doAutoCreate()) - this.device = new Reference(); // cc + this.device = new CodeableReference(); // cc return this.device; } @@ -718,9 +900,9 @@ public class DeviceUseStatement extends DomainResource { } /** - * @param value {@link #device} (The details of the device used.) + * @param value {@link #device} (Code or Reference to device used.) */ - public DeviceUseStatement setDevice(Reference value) { + public DeviceUseStatement setDevice(CodeableReference value) { this.device = value; return this; } @@ -781,12 +963,12 @@ public class DeviceUseStatement extends DomainResource { /** * @return {@link #bodySite} (Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).) */ - public CodeableConcept getBodySite() { + public CodeableReference getBodySite() { if (this.bodySite == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create DeviceUseStatement.bodySite"); else if (Configuration.doAutoCreate()) - this.bodySite = new CodeableConcept(); // cc + this.bodySite = new CodeableReference(); // cc return this.bodySite; } @@ -797,7 +979,7 @@ public class DeviceUseStatement extends DomainResource { /** * @param value {@link #bodySite} (Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).) */ - public DeviceUseStatement setBodySite(CodeableConcept value) { + public DeviceUseStatement setBodySite(CodeableReference value) { this.bodySite = value; return this; } @@ -860,14 +1042,18 @@ public class DeviceUseStatement extends DomainResource { children.add(new Property("identifier", "Identifier", "An external identifier for this statement such as an IRI.", 0, java.lang.Integer.MAX_VALUE, identifier)); children.add(new Property("basedOn", "Reference(ServiceRequest)", "A plan, proposal or order that is fulfilled in whole or in part by this DeviceUseStatement.", 0, java.lang.Integer.MAX_VALUE, basedOn)); children.add(new Property("status", "code", "A code representing the patient or other source's judgment about the state of the device used that this statement is about. Generally this will be active or completed.", 0, 1, status)); + children.add(new Property("category", "CodeableConcept", "This attribute indicates a category for the statement - The device statement may be made in an inpatient or outpatient settting (inpatient | outpatient | community | patientspecified).", 0, java.lang.Integer.MAX_VALUE, category)); children.add(new Property("subject", "Reference(Patient|Group)", "The patient who used the device.", 0, 1, subject)); children.add(new Property("derivedFrom", "Reference(ServiceRequest|Procedure|Claim|Observation|QuestionnaireResponse|DocumentReference)", "Allows linking the DeviceUseStatement to the underlying Request, or to other information that supports or is used to derive the DeviceUseStatement.", 0, java.lang.Integer.MAX_VALUE, derivedFrom)); + children.add(new Property("context", "Reference(Encounter|EpisodeOfCare)", "The encounter or episode of care that establishes the context for this device use statement.", 0, 1, context)); children.add(new Property("timing[x]", "Timing|Period|dateTime", "How often the device was used.", 0, 1, timing)); - children.add(new Property("recordedOn", "dateTime", "The time at which the statement was made/recorded.", 0, 1, recordedOn)); - children.add(new Property("source", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson)", "Who reported the device was being used by the patient.", 0, 1, source)); - children.add(new Property("device", "Reference(Device)", "The details of the device used.", 0, 1, device)); + children.add(new Property("dateAsserted", "dateTime", "The time at which the statement was recorded by informationSource.", 0, 1, dateAsserted)); + children.add(new Property("usageStatus", "CodeableConcept", "The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement.", 0, 1, usageStatus)); + children.add(new Property("usageReason", "CodeableConcept", "The reason for asserting the usage status - for example forgot, lost, stolen, broken.", 0, java.lang.Integer.MAX_VALUE, usageReason)); + children.add(new Property("informationSource", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "Who reported the device was being used by the patient.", 0, 1, informationSource)); + children.add(new Property("device", "CodeableReference(Device|DeviceDefinition)", "Code or Reference to device used.", 0, 1, device)); children.add(new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference)", "Reason or justification for the use of the device. A coded concept, or another resource whose existence justifies this DeviceUseStatement.", 0, java.lang.Integer.MAX_VALUE, reason)); - children.add(new Property("bodySite", "CodeableConcept", "Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).", 0, 1, bodySite)); + children.add(new Property("bodySite", "CodeableReference(BodyStructure)", "Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).", 0, 1, bodySite)); children.add(new Property("note", "Annotation", "Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement.", 0, java.lang.Integer.MAX_VALUE, note)); } @@ -877,18 +1063,22 @@ public class DeviceUseStatement extends DomainResource { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "An external identifier for this statement such as an IRI.", 0, java.lang.Integer.MAX_VALUE, identifier); case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(ServiceRequest)", "A plan, proposal or order that is fulfilled in whole or in part by this DeviceUseStatement.", 0, java.lang.Integer.MAX_VALUE, basedOn); case -892481550: /*status*/ return new Property("status", "code", "A code representing the patient or other source's judgment about the state of the device used that this statement is about. Generally this will be active or completed.", 0, 1, status); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "This attribute indicates a category for the statement - The device statement may be made in an inpatient or outpatient settting (inpatient | outpatient | community | patientspecified).", 0, java.lang.Integer.MAX_VALUE, category); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "The patient who used the device.", 0, 1, subject); case 1077922663: /*derivedFrom*/ return new Property("derivedFrom", "Reference(ServiceRequest|Procedure|Claim|Observation|QuestionnaireResponse|DocumentReference)", "Allows linking the DeviceUseStatement to the underlying Request, or to other information that supports or is used to derive the DeviceUseStatement.", 0, java.lang.Integer.MAX_VALUE, derivedFrom); + case 951530927: /*context*/ return new Property("context", "Reference(Encounter|EpisodeOfCare)", "The encounter or episode of care that establishes the context for this device use statement.", 0, 1, context); case 164632566: /*timing[x]*/ return new Property("timing[x]", "Timing|Period|dateTime", "How often the device was used.", 0, 1, timing); case -873664438: /*timing*/ return new Property("timing[x]", "Timing|Period|dateTime", "How often the device was used.", 0, 1, timing); case -497554124: /*timingTiming*/ return new Property("timing[x]", "Timing", "How often the device was used.", 0, 1, timing); case -615615829: /*timingPeriod*/ return new Property("timing[x]", "Period", "How often the device was used.", 0, 1, timing); case -1837458939: /*timingDateTime*/ return new Property("timing[x]", "dateTime", "How often the device was used.", 0, 1, timing); - case 735397551: /*recordedOn*/ return new Property("recordedOn", "dateTime", "The time at which the statement was made/recorded.", 0, 1, recordedOn); - case -896505829: /*source*/ return new Property("source", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson)", "Who reported the device was being used by the patient.", 0, 1, source); - case -1335157162: /*device*/ return new Property("device", "Reference(Device)", "The details of the device used.", 0, 1, device); + case -1980855245: /*dateAsserted*/ return new Property("dateAsserted", "dateTime", "The time at which the statement was recorded by informationSource.", 0, 1, dateAsserted); + case 907197683: /*usageStatus*/ return new Property("usageStatus", "CodeableConcept", "The status of the device usage, for example always, sometimes, never. This is not the same as the status of the statement.", 0, 1, usageStatus); + case 864714565: /*usageReason*/ return new Property("usageReason", "CodeableConcept", "The reason for asserting the usage status - for example forgot, lost, stolen, broken.", 0, java.lang.Integer.MAX_VALUE, usageReason); + case -2123220889: /*informationSource*/ return new Property("informationSource", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "Who reported the device was being used by the patient.", 0, 1, informationSource); + case -1335157162: /*device*/ return new Property("device", "CodeableReference(Device|DeviceDefinition)", "Code or Reference to device used.", 0, 1, device); case -934964668: /*reason*/ return new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference)", "Reason or justification for the use of the device. A coded concept, or another resource whose existence justifies this DeviceUseStatement.", 0, java.lang.Integer.MAX_VALUE, reason); - case 1702620169: /*bodySite*/ return new Property("bodySite", "CodeableConcept", "Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).", 0, 1, bodySite); + case 1702620169: /*bodySite*/ return new Property("bodySite", "CodeableReference(BodyStructure)", "Indicates the anotomic location on the subject's body where the device was used ( i.e. the target).", 0, 1, bodySite); case 3387378: /*note*/ return new Property("note", "Annotation", "Details about the device statement that were not represented at all or sufficiently in one of the attributes provided in a class. These may include for example a comment, an instruction, or a note associated with the statement.", 0, java.lang.Integer.MAX_VALUE, note); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -901,14 +1091,18 @@ public class DeviceUseStatement extends DomainResource { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1077922663: /*derivedFrom*/ return this.derivedFrom == null ? new Base[0] : this.derivedFrom.toArray(new Base[this.derivedFrom.size()]); // Reference + case 951530927: /*context*/ return this.context == null ? new Base[0] : new Base[] {this.context}; // Reference case -873664438: /*timing*/ return this.timing == null ? new Base[0] : new Base[] {this.timing}; // DataType - case 735397551: /*recordedOn*/ return this.recordedOn == null ? new Base[0] : new Base[] {this.recordedOn}; // DateTimeType - case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // Reference - case -1335157162: /*device*/ return this.device == null ? new Base[0] : new Base[] {this.device}; // Reference + case -1980855245: /*dateAsserted*/ return this.dateAsserted == null ? new Base[0] : new Base[] {this.dateAsserted}; // DateTimeType + case 907197683: /*usageStatus*/ return this.usageStatus == null ? new Base[0] : new Base[] {this.usageStatus}; // CodeableConcept + case 864714565: /*usageReason*/ return this.usageReason == null ? new Base[0] : this.usageReason.toArray(new Base[this.usageReason.size()]); // CodeableConcept + case -2123220889: /*informationSource*/ return this.informationSource == null ? new Base[0] : new Base[] {this.informationSource}; // Reference + case -1335157162: /*device*/ return this.device == null ? new Base[0] : new Base[] {this.device}; // CodeableReference case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableReference - case 1702620169: /*bodySite*/ return this.bodySite == null ? new Base[0] : new Base[] {this.bodySite}; // CodeableConcept + case 1702620169: /*bodySite*/ return this.bodySite == null ? new Base[0] : new Base[] {this.bodySite}; // CodeableReference case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation default: return super.getProperty(hash, name, checkValid); } @@ -928,29 +1122,41 @@ public class DeviceUseStatement extends DomainResource { value = new DeviceUseStatementStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); this.status = (Enumeration) value; // Enumeration return value; + case 50511102: // category + this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; case -1867885268: // subject this.subject = TypeConvertor.castToReference(value); // Reference return value; case 1077922663: // derivedFrom this.getDerivedFrom().add(TypeConvertor.castToReference(value)); // Reference return value; + case 951530927: // context + this.context = TypeConvertor.castToReference(value); // Reference + return value; case -873664438: // timing this.timing = TypeConvertor.castToType(value); // DataType return value; - case 735397551: // recordedOn - this.recordedOn = TypeConvertor.castToDateTime(value); // DateTimeType + case -1980855245: // dateAsserted + this.dateAsserted = TypeConvertor.castToDateTime(value); // DateTimeType return value; - case -896505829: // source - this.source = TypeConvertor.castToReference(value); // Reference + case 907197683: // usageStatus + this.usageStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 864714565: // usageReason + this.getUsageReason().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case -2123220889: // informationSource + this.informationSource = TypeConvertor.castToReference(value); // Reference return value; case -1335157162: // device - this.device = TypeConvertor.castToReference(value); // Reference + this.device = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -934964668: // reason this.getReason().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference return value; case 1702620169: // bodySite - this.bodySite = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.bodySite = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case 3387378: // note this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation @@ -969,22 +1175,30 @@ public class DeviceUseStatement extends DomainResource { } else if (name.equals("status")) { value = new DeviceUseStatementStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); this.status = (Enumeration) value; // Enumeration + } else if (name.equals("category")) { + this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("subject")) { this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("derivedFrom")) { this.getDerivedFrom().add(TypeConvertor.castToReference(value)); + } else if (name.equals("context")) { + this.context = TypeConvertor.castToReference(value); // Reference } else if (name.equals("timing[x]")) { this.timing = TypeConvertor.castToType(value); // DataType - } else if (name.equals("recordedOn")) { - this.recordedOn = TypeConvertor.castToDateTime(value); // DateTimeType - } else if (name.equals("source")) { - this.source = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("dateAsserted")) { + this.dateAsserted = TypeConvertor.castToDateTime(value); // DateTimeType + } else if (name.equals("usageStatus")) { + this.usageStatus = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("usageReason")) { + this.getUsageReason().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("informationSource")) { + this.informationSource = TypeConvertor.castToReference(value); // Reference } else if (name.equals("device")) { - this.device = TypeConvertor.castToReference(value); // Reference + this.device = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("reason")) { this.getReason().add(TypeConvertor.castToCodeableReference(value)); } else if (name.equals("bodySite")) { - this.bodySite = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.bodySite = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("note")) { this.getNote().add(TypeConvertor.castToAnnotation(value)); } else @@ -998,12 +1212,16 @@ public class DeviceUseStatement extends DomainResource { case -1618432855: return addIdentifier(); case -332612366: return addBasedOn(); case -892481550: return getStatusElement(); + case 50511102: return addCategory(); case -1867885268: return getSubject(); case 1077922663: return addDerivedFrom(); + case 951530927: return getContext(); case 164632566: return getTiming(); case -873664438: return getTiming(); - case 735397551: return getRecordedOnElement(); - case -896505829: return getSource(); + case -1980855245: return getDateAssertedElement(); + case 907197683: return getUsageStatus(); + case 864714565: return addUsageReason(); + case -2123220889: return getInformationSource(); case -1335157162: return getDevice(); case -934964668: return addReason(); case 1702620169: return getBodySite(); @@ -1019,14 +1237,18 @@ public class DeviceUseStatement extends DomainResource { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; case -332612366: /*basedOn*/ return new String[] {"Reference"}; case -892481550: /*status*/ return new String[] {"code"}; + case 50511102: /*category*/ return new String[] {"CodeableConcept"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1077922663: /*derivedFrom*/ return new String[] {"Reference"}; + case 951530927: /*context*/ return new String[] {"Reference"}; case -873664438: /*timing*/ return new String[] {"Timing", "Period", "dateTime"}; - case 735397551: /*recordedOn*/ return new String[] {"dateTime"}; - case -896505829: /*source*/ return new String[] {"Reference"}; - case -1335157162: /*device*/ return new String[] {"Reference"}; + case -1980855245: /*dateAsserted*/ return new String[] {"dateTime"}; + case 907197683: /*usageStatus*/ return new String[] {"CodeableConcept"}; + case 864714565: /*usageReason*/ return new String[] {"CodeableConcept"}; + case -2123220889: /*informationSource*/ return new String[] {"Reference"}; + case -1335157162: /*device*/ return new String[] {"CodeableReference"}; case -934964668: /*reason*/ return new String[] {"CodeableReference"}; - case 1702620169: /*bodySite*/ return new String[] {"CodeableConcept"}; + case 1702620169: /*bodySite*/ return new String[] {"CodeableReference"}; case 3387378: /*note*/ return new String[] {"Annotation"}; default: return super.getTypesForProperty(hash, name); } @@ -1044,6 +1266,9 @@ public class DeviceUseStatement extends DomainResource { else if (name.equals("status")) { throw new FHIRException("Cannot call addChild on a primitive type DeviceUseStatement.status"); } + else if (name.equals("category")) { + return addCategory(); + } else if (name.equals("subject")) { this.subject = new Reference(); return this.subject; @@ -1051,6 +1276,10 @@ public class DeviceUseStatement extends DomainResource { else if (name.equals("derivedFrom")) { return addDerivedFrom(); } + else if (name.equals("context")) { + this.context = new Reference(); + return this.context; + } else if (name.equals("timingTiming")) { this.timing = new Timing(); return this.timing; @@ -1063,22 +1292,29 @@ public class DeviceUseStatement extends DomainResource { this.timing = new DateTimeType(); return this.timing; } - else if (name.equals("recordedOn")) { - throw new FHIRException("Cannot call addChild on a primitive type DeviceUseStatement.recordedOn"); + else if (name.equals("dateAsserted")) { + throw new FHIRException("Cannot call addChild on a primitive type DeviceUseStatement.dateAsserted"); } - else if (name.equals("source")) { - this.source = new Reference(); - return this.source; + else if (name.equals("usageStatus")) { + this.usageStatus = new CodeableConcept(); + return this.usageStatus; + } + else if (name.equals("usageReason")) { + return addUsageReason(); + } + else if (name.equals("informationSource")) { + this.informationSource = new Reference(); + return this.informationSource; } else if (name.equals("device")) { - this.device = new Reference(); + this.device = new CodeableReference(); return this.device; } else if (name.equals("reason")) { return addReason(); } else if (name.equals("bodySite")) { - this.bodySite = new CodeableConcept(); + this.bodySite = new CodeableReference(); return this.bodySite; } else if (name.equals("note")) { @@ -1112,15 +1348,27 @@ public class DeviceUseStatement extends DomainResource { dst.basedOn.add(i.copy()); }; dst.status = status == null ? null : status.copy(); + if (category != null) { + dst.category = new ArrayList(); + for (CodeableConcept i : category) + dst.category.add(i.copy()); + }; dst.subject = subject == null ? null : subject.copy(); if (derivedFrom != null) { dst.derivedFrom = new ArrayList(); for (Reference i : derivedFrom) dst.derivedFrom.add(i.copy()); }; + dst.context = context == null ? null : context.copy(); dst.timing = timing == null ? null : timing.copy(); - dst.recordedOn = recordedOn == null ? null : recordedOn.copy(); - dst.source = source == null ? null : source.copy(); + dst.dateAsserted = dateAsserted == null ? null : dateAsserted.copy(); + dst.usageStatus = usageStatus == null ? null : usageStatus.copy(); + if (usageReason != null) { + dst.usageReason = new ArrayList(); + for (CodeableConcept i : usageReason) + dst.usageReason.add(i.copy()); + }; + dst.informationSource = informationSource == null ? null : informationSource.copy(); dst.device = device == null ? null : device.copy(); if (reason != null) { dst.reason = new ArrayList(); @@ -1147,8 +1395,10 @@ public class DeviceUseStatement extends DomainResource { return false; DeviceUseStatement o = (DeviceUseStatement) other_; return compareDeep(identifier, o.identifier, true) && compareDeep(basedOn, o.basedOn, true) && compareDeep(status, o.status, true) - && compareDeep(subject, o.subject, true) && compareDeep(derivedFrom, o.derivedFrom, true) && compareDeep(timing, o.timing, true) - && compareDeep(recordedOn, o.recordedOn, true) && compareDeep(source, o.source, true) && compareDeep(device, o.device, true) + && compareDeep(category, o.category, true) && compareDeep(subject, o.subject, true) && compareDeep(derivedFrom, o.derivedFrom, true) + && compareDeep(context, o.context, true) && compareDeep(timing, o.timing, true) && compareDeep(dateAsserted, o.dateAsserted, true) + && compareDeep(usageStatus, o.usageStatus, true) && compareDeep(usageReason, o.usageReason, true) + && compareDeep(informationSource, o.informationSource, true) && compareDeep(device, o.device, true) && compareDeep(reason, o.reason, true) && compareDeep(bodySite, o.bodySite, true) && compareDeep(note, o.note, true) ; } @@ -1160,13 +1410,13 @@ public class DeviceUseStatement extends DomainResource { if (!(other_ instanceof DeviceUseStatement)) return false; DeviceUseStatement o = (DeviceUseStatement) other_; - return compareValues(status, o.status, true) && compareValues(recordedOn, o.recordedOn, true); + return compareValues(status, o.status, true) && compareValues(dateAsserted, o.dateAsserted, true); } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, basedOn, status - , subject, derivedFrom, timing, recordedOn, source, device, reason, bodySite - , note); + , category, subject, derivedFrom, context, timing, dateAsserted, usageStatus, usageReason + , informationSource, device, reason, bodySite, note); } @Override @@ -1178,27 +1428,21 @@ public class DeviceUseStatement extends DomainResource { * Search parameter: device *

* Description: Search by device
- * Type: reference
- * Path: DeviceUseStatement.device
+ * Type: token
+ * Path: DeviceUseStatement.device.concept
*

*/ - @SearchParamDefinition(name="device", path="DeviceUseStatement.device", description="Search by device", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Device") }, target={Device.class } ) + @SearchParamDefinition(name="device", path="DeviceUseStatement.device.concept", description="Search by device", type="token" ) public static final String SP_DEVICE = "device"; /** * Fluent Client search parameter constant for device *

* Description: Search by device
- * Type: reference
- * Path: DeviceUseStatement.device
+ * Type: token
+ * Path: DeviceUseStatement.device.concept
*

*/ - public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam DEVICE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_DEVICE); - -/** - * Constant for fluent queries to be used to add include statements. Specifies - * the path value of "DeviceUseStatement:device". - */ - public static final ca.uhn.fhir.model.api.Include INCLUDE_DEVICE = new ca.uhn.fhir.model.api.Include("DeviceUseStatement:device").toLocked(); + public static final ca.uhn.fhir.rest.gclient.TokenClientParam DEVICE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_DEVICE); /** * Search parameter: identifier @@ -1285,10 +1529,10 @@ public class DeviceUseStatement extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1329,7 +1573,7 @@ public class DeviceUseStatement extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DiagnosticReport.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DiagnosticReport.java index 0c1eb54bb..e5263d16f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DiagnosticReport.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DiagnosticReport.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2231,10 +2231,10 @@ public class DiagnosticReport extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2257,7 +2257,7 @@ public class DiagnosticReport extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2286,10 +2286,10 @@ public class DiagnosticReport extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -2315,7 +2315,7 @@ public class DiagnosticReport extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -2497,10 +2497,10 @@ public class DiagnosticReport extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2541,7 +2541,7 @@ public class DiagnosticReport extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Distance.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Distance.java index 0a7b91d9b..f793f67bb 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Distance.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Distance.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentManifest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentManifest.java index fbd9b4207..fee15aa5e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentManifest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentManifest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1286,7 +1286,7 @@ public class DocumentManifest extends DomainResource { * Path: DocumentManifest.content
*

*/ - @SearchParamDefinition(name="item", path="DocumentManifest.content", description="Items in manifest", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="item", path="DocumentManifest.content", description="Items in manifest", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_ITEM = "item"; /** * Fluent Client search parameter constant for item @@ -1358,7 +1358,7 @@ public class DocumentManifest extends DomainResource { * Path: DocumentManifest.related.ref
*

*/ - @SearchParamDefinition(name="related-ref", path="DocumentManifest.related.ref", description="Related Resource", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Encounter") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="related-ref", path="DocumentManifest.related.ref", description="Related Resource", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Encounter") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_RELATED_REF = "related-ref"; /** * Fluent Client search parameter constant for related-ref @@ -1565,10 +1565,10 @@ public class DocumentManifest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1609,7 +1609,7 @@ public class DocumentManifest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentReference.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentReference.java index dc28d99ca..8b78d2e05 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentReference.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DocumentReference.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2640,7 +2640,7 @@ public class DocumentReference extends DomainResource { * Path: DocumentReference.context.related
*

*/ - @SearchParamDefinition(name="related", path="DocumentReference.context.related", description="Related identifiers or resources", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="related", path="DocumentReference.context.related", description="Related identifiers or resources", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_RELATED = "related"; /** * Fluent Client search parameter constant for related @@ -2987,10 +2987,10 @@ public class DocumentReference extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3031,7 +3031,7 @@ public class DocumentReference extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DomainResource.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DomainResource.java index 19988524c..4b4137f21 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DomainResource.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/DomainResource.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Dosage.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Dosage.java index da8ba526f..992ed3e1b 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Dosage.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Dosage.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Duration.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Duration.java index 81c1fe0c8..99bffa6e5 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Duration.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Duration.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Element.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Element.java index 5ea6becc4..360627d11 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Element.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Element.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ElementDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ElementDefinition.java index c2e96faa6..3aff92cfb 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ElementDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ElementDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -11341,7 +11341,6 @@ When pattern[x] is used to constrain a complex object, it means that each proper return b.toString().replace(" ", ""); } - public TypeRefComponent getType(String code) { for (TypeRefComponent tr : getType()) if (tr.getCode().equals(code)) diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Encounter.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Encounter.java index c01f56a59..5bd11fdc6 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Encounter.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Encounter.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -4435,10 +4435,10 @@ public class Encounter extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -4464,7 +4464,7 @@ public class Encounter extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -4592,10 +4592,10 @@ public class Encounter extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -4636,7 +4636,7 @@ public class Encounter extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Endpoint.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Endpoint.java index 7cfea7f68..8035233ea 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Endpoint.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Endpoint.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentRequest.java index 9f4c77dda..f20c16a77 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentResponse.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentResponse.java index eac2023cb..29391a30e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentResponse.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EnrollmentResponse.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Enumerations.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Enumerations.java index 874b7bc04..c882d4542 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Enumerations.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Enumerations.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import org.hl7.fhir.instance.model.api.*; @@ -77,7 +77,7 @@ public class Enumerations { // DeviceNameType: The type of name the device is referred by.[Device, DeviceDefinition] // DocumentReferenceStatus: The status of the document reference.[DocumentManifest, DocumentReference] // DocumentRelationshipType: The type of relationship between documents.[Composition, DocumentReference] -// EventStatus: Codes identifying the lifecycle stage of an event.[ClinicalImpression, Communication, Procedure] +// EventStatus: Codes identifying the lifecycle stage of an event.[ClinicalImpression, Communication, NutritionIntake, Procedure] // FHIRAllTypes: A list of all the concrete types defined in this version of the FHIR specification - Abstract Types, Data Types and Resource Types.[DataRequirement, OperationDefinition, ParameterDefinition] // FHIRVersion: All published FHIR Versions.[CapabilityStatement, CapabilityStatement2, ImplementationGuide, StructureDefinition] // FilterOperator: The kind of operation to perform as a part of a property based filter.[CodeSystem, ValueSet] @@ -90,14 +90,16 @@ public class Enumerations { // ObservationStatus: Codes providing the status of an observation.[DetectedIssue, Observation, RiskAssessment] // OperationParameterUse: Whether an operation parameter is an input or an output parameter.[OperationDefinition, ParameterDefinition] // ParticipationStatus: The Participation status of an appointment.[Appointment, AppointmentResponse] -// PublicationStatus: The lifecycle status of an artifact.[ActivityDefinition, CanonicalResource, CapabilityStatement, CapabilityStatement2, ChargeItemDefinition, CodeSystem, CompartmentDefinition, ConceptMap, ConditionDefinition, EventDefinition, Evidence, EvidenceVariable, ExampleScenario, GraphDefinition, ImplementationGuide, InsurancePlan, Library, Measure, MessageDefinition, NamingSystem, ObservationDefinition, OperationDefinition, PlanDefinition, Questionnaire, SearchParameter, SpecimenDefinition, StructureDefinition, StructureMap, TerminologyCapabilities, TestScript, Topic, ValueSet] +// PublicationStatus: The lifecycle status of an artifact.[ActivityDefinition, CanonicalResource, CapabilityStatement, CapabilityStatement2, ChargeItemDefinition, Citation, CodeSystem, CompartmentDefinition, ConceptMap, ConditionDefinition, EventDefinition, Evidence, EvidenceFocus, EvidenceVariable, ExampleScenario, GraphDefinition, ImplementationGuide, InsurancePlan, Library, Measure, MessageDefinition, NamingSystem, ObservationDefinition, OperationDefinition, PlanDefinition, Questionnaire, SearchParameter, SpecimenDefinition, StructureDefinition, StructureMap, SubscriptionTopic, TerminologyCapabilities, TestScript, ValueSet] // QuantityComparator: How the Quantity should be understood and represented.[Age, Count, Distance, Duration, Quantity] // RequestIntent: Codes indicating the degree of authority/intentionality associated with a request.[ActivityDefinition, DeviceRequest, NutritionOrder, RequestGroup, ServiceRequest] // RequestPriority: The clinical priority of a diagnostic order.[ActivityDefinition, Communication, CommunicationRequest, DeviceRequest, MedicationRequest, PlanDefinition, RequestGroup, ServiceRequest, SupplyRequest, Task] // RequestStatus: Codes identifying the lifecycle stage of a request.[CarePlan, CommunicationRequest, DeviceRequest, NutritionOrder, RequestGroup, ServiceRequest] -// ResourceTypeEnum: One of the resource types defined as part of this version of FHIR.[CapabilityStatement, CapabilityStatement2, CompartmentDefinition, ExampleScenario, GraphDefinition, ImplementationGuide, MessageDefinition, OperationDefinition, Questionnaire, SearchParameter, Topic] +// ResourceTypeEnum: One of the resource types defined as part of this version of FHIR.[CapabilityStatement, CapabilityStatement2, CompartmentDefinition, ExampleScenario, GraphDefinition, ImplementationGuide, MessageDefinition, OperationDefinition, Questionnaire, SearchParameter, SubscriptionTopic] // RestfulCapabilityMode: The mode of a RESTful capability statement.[CapabilityStatement, CapabilityStatement2] // SearchParamType: Data types allowed to be used for search parameters.[CapabilityStatement, CapabilityStatement2, OperationDefinition, SearchParameter] +// SubscriptionSearchModifier: FHIR search modifiers allowed for use in Subscriptions and SubscriptionTopics.[Subscription, SubscriptionTopic] +// SubscriptionState: State values for FHIR Subscriptions.[Subscription, SubscriptionStatus] // Use: The purpose of the Claim: predetermination, preauthorization, claim.[Claim, ClaimResponse, ExplanationOfBenefit] @@ -1807,11 +1809,11 @@ public class Enumerations { /** * The source concept is narrower in meaning than the target concept. */ - SOURCENARROWERTARGET, + SOURCEISNARROWERTHANTARGET, /** * The source concept is broader in meaning than the target concept. */ - SOURCEBROADERTARGET, + SOURCEISBROADERTHANTARGET, /** * This is an explicit assertion that the target concept is not related to the source concept. */ @@ -1828,9 +1830,9 @@ public class Enumerations { if ("equivalent".equals(codeString)) return EQUIVALENT; if ("source-is-narrower-than-target".equals(codeString)) - return SOURCENARROWERTARGET; + return SOURCEISNARROWERTHANTARGET; if ("source-is-broader-than-target".equals(codeString)) - return SOURCEBROADERTARGET; + return SOURCEISBROADERTHANTARGET; if ("not-related-to".equals(codeString)) return NOTRELATEDTO; throw new FHIRException("Unknown ConceptMapRelationship code '"+codeString+"'"); @@ -1839,8 +1841,8 @@ public class Enumerations { switch (this) { case RELATEDTO: return "related-to"; case EQUIVALENT: return "equivalent"; - case SOURCENARROWERTARGET: return "source-is-narrower-than-target"; - case SOURCEBROADERTARGET: return "source-is-broader-than-target"; + case SOURCEISNARROWERTHANTARGET: return "source-is-narrower-than-target"; + case SOURCEISBROADERTHANTARGET: return "source-is-broader-than-target"; case NOTRELATEDTO: return "not-related-to"; default: return "?"; } @@ -1849,8 +1851,8 @@ public class Enumerations { switch (this) { case RELATEDTO: return "http://hl7.org/fhir/concept-map-relationship"; case EQUIVALENT: return "http://hl7.org/fhir/concept-map-relationship"; - case SOURCENARROWERTARGET: return "http://hl7.org/fhir/concept-map-relationship"; - case SOURCEBROADERTARGET: return "http://hl7.org/fhir/concept-map-relationship"; + case SOURCEISNARROWERTHANTARGET: return "http://hl7.org/fhir/concept-map-relationship"; + case SOURCEISBROADERTHANTARGET: return "http://hl7.org/fhir/concept-map-relationship"; case NOTRELATEDTO: return "http://hl7.org/fhir/concept-map-relationship"; default: return "?"; } @@ -1859,8 +1861,8 @@ public class Enumerations { switch (this) { case RELATEDTO: return "The concepts are related to each other, but the exact relationship is not known."; case EQUIVALENT: return "The definitions of the concepts mean the same thing."; - case SOURCENARROWERTARGET: return "The source concept is narrower in meaning than the target concept."; - case SOURCEBROADERTARGET: return "The source concept is broader in meaning than the target concept."; + case SOURCEISNARROWERTHANTARGET: return "The source concept is narrower in meaning than the target concept."; + case SOURCEISBROADERTHANTARGET: return "The source concept is broader in meaning than the target concept."; case NOTRELATEDTO: return "This is an explicit assertion that the target concept is not related to the source concept."; default: return "?"; } @@ -1869,8 +1871,8 @@ public class Enumerations { switch (this) { case RELATEDTO: return "Related To"; case EQUIVALENT: return "Equivalent"; - case SOURCENARROWERTARGET: return "Source Is Narrower Than Target"; - case SOURCEBROADERTARGET: return "Source Is Broader Than Target"; + case SOURCEISNARROWERTHANTARGET: return "Source Is Narrower Than Target"; + case SOURCEISBROADERTHANTARGET: return "Source Is Broader Than Target"; case NOTRELATEDTO: return "Not Related To"; default: return "?"; } @@ -1887,13 +1889,9 @@ public class Enumerations { if ("equivalent".equals(codeString)) return ConceptMapRelationship.EQUIVALENT; if ("source-is-narrower-than-target".equals(codeString)) - return ConceptMapRelationship.SOURCENARROWERTARGET; - if ("broader".equals(codeString)) - return ConceptMapRelationship.SOURCENARROWERTARGET; + return ConceptMapRelationship.SOURCEISNARROWERTHANTARGET; if ("source-is-broader-than-target".equals(codeString)) - return ConceptMapRelationship.SOURCEBROADERTARGET; - if ("narrower".equals(codeString)) - return ConceptMapRelationship.SOURCEBROADERTARGET; + return ConceptMapRelationship.SOURCEISBROADERTHANTARGET; if ("not-related-to".equals(codeString)) return ConceptMapRelationship.NOTRELATEDTO; throw new IllegalArgumentException("Unknown ConceptMapRelationship code '"+codeString+"'"); @@ -1911,9 +1909,9 @@ public class Enumerations { if ("equivalent".equals(codeString)) return new Enumeration(this, ConceptMapRelationship.EQUIVALENT); if ("source-is-narrower-than-target".equals(codeString)) - return new Enumeration(this, ConceptMapRelationship.SOURCENARROWERTARGET); + return new Enumeration(this, ConceptMapRelationship.SOURCEISNARROWERTHANTARGET); if ("source-is-broader-than-target".equals(codeString)) - return new Enumeration(this, ConceptMapRelationship.SOURCEBROADERTARGET); + return new Enumeration(this, ConceptMapRelationship.SOURCEISBROADERTHANTARGET); if ("not-related-to".equals(codeString)) return new Enumeration(this, ConceptMapRelationship.NOTRELATEDTO); throw new FHIRException("Unknown ConceptMapRelationship code '"+codeString+"'"); @@ -1923,9 +1921,9 @@ public class Enumerations { return "related-to"; if (code == ConceptMapRelationship.EQUIVALENT) return "equivalent"; - if (code == ConceptMapRelationship.SOURCENARROWERTARGET) + if (code == ConceptMapRelationship.SOURCEISNARROWERTHANTARGET) return "source-is-narrower-than-target"; - if (code == ConceptMapRelationship.SOURCEBROADERTARGET) + if (code == ConceptMapRelationship.SOURCEISBROADERTHANTARGET) return "source-is-broader-than-target"; if (code == ConceptMapRelationship.NOTRELATEDTO) return "not-related-to"; @@ -2995,7 +2993,7 @@ public class Enumerations { */ BINARY, /** - * A material substance originating from a biological entity intended to be transplanted or infused + * A material substance originating from a biological entity intended to be transplanted or infused into another (possibly the same) biological entity. */ BIOLOGICALLYDERIVEDPRODUCT, @@ -3035,6 +3033,10 @@ into another (possibly the same) biological entity. * The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system. */ CHARGEITEMDEFINITION, + /** + * The Citation. + */ + CITATION, /** * A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement. */ @@ -3056,7 +3058,7 @@ into another (possibly the same) biological entity. */ CODESYSTEM, /** - * An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. + * A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. */ COMMUNICATION, /** @@ -3124,7 +3126,7 @@ into another (possibly the same) biological entity. */ DEVICEREQUEST, /** - * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. + * A record of a device being used by a patient where the record is the result of a report from the patient or a clinician. */ DEVICEUSESTATEMENT, /** @@ -3172,7 +3174,11 @@ into another (possibly the same) biological entity. */ EVIDENCE, /** - * The EvidenceVariable resource describes a "PICO" element that knowledge (evidence, assertion, recommendation) is about. + * EvidenceFocus. + */ + EVIDENCEFOCUS, + /** + * The EvidenceVariable resource describes an element that knowledge (Evidence) is about. */ EVIDENCEVARIABLE, /** @@ -3292,8 +3298,8 @@ into another (possibly the same) biological entity. */ MEDICATIONREQUEST, /** - * A record of a medication that is being consumed by a patient. A MedicationUsage may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains. - + * A record of a medication that is being consumed by a patient. A MedicationUsage may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains. + The primary difference between a medicationusage and a medicationadministration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medicationusage is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the Medication Usage information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information. */ MEDICATIONUSAGE, @@ -3325,6 +3331,10 @@ The primary difference between a medicationusage and a medicationadministration * A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident. */ NUTRITIONORDER, + /** + * A food or fluid product that is consumed by patients. + */ + NUTRITIONPRODUCT, /** * Measurements and simple assertions made about a patient, device or other subject. */ @@ -3369,6 +3379,10 @@ The primary difference between a medicationusage and a medicationadministration * This resource provides the details including amount of a payment and allocates the payment items being paid. */ PAYMENTRECONCILIATION, + /** + * Permission. + */ + PERMISSION, /** * Demographics and administrative information about a person independent of a specific health-related context. */ @@ -3402,7 +3416,7 @@ The primary difference between a medicationusage and a medicationadministration */ QUESTIONNAIRERESPONSE, /** - * The regulatory authorization of a medicinal product. + * The regulatory authorization of a medicinal product, device or process. */ REGULATEDAUTHORIZATION, /** @@ -3462,9 +3476,17 @@ The primary difference between a medicationusage and a medicationadministration */ STRUCTUREMAP, /** - * The subscription resource describes a particular client's request to be notified about a Topic. + * The subscription resource describes a particular client's request to be notified about a SubscriptionTopic. */ SUBSCRIPTION, + /** + * The SubscriptionStatus resource describes the state of a Subscription during notifications. + */ + SUBSCRIPTIONSTATUS, + /** + * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. + */ + SUBSCRIPTIONTOPIC, /** * A homogeneous material with a definite composition. */ @@ -3517,10 +3539,6 @@ The primary difference between a medicationusage and a medicationadministration * A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification. */ TESTSCRIPT, - /** - * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. - */ - TOPIC, /** * A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html). */ @@ -3730,6 +3748,8 @@ The primary difference between a medicationusage and a medicationadministration return CHARGEITEM; if ("ChargeItemDefinition".equals(codeString)) return CHARGEITEMDEFINITION; + if ("Citation".equals(codeString)) + return CITATION; if ("Claim".equals(codeString)) return CLAIM; if ("ClaimResponse".equals(codeString)) @@ -3798,6 +3818,8 @@ The primary difference between a medicationusage and a medicationadministration return EVENTDEFINITION; if ("Evidence".equals(codeString)) return EVIDENCE; + if ("EvidenceFocus".equals(codeString)) + return EVIDENCEFOCUS; if ("EvidenceVariable".equals(codeString)) return EVIDENCEVARIABLE; if ("ExampleScenario".equals(codeString)) @@ -3874,6 +3896,8 @@ The primary difference between a medicationusage and a medicationadministration return NUTRITIONINTAKE; if ("NutritionOrder".equals(codeString)) return NUTRITIONORDER; + if ("NutritionProduct".equals(codeString)) + return NUTRITIONPRODUCT; if ("Observation".equals(codeString)) return OBSERVATION; if ("ObservationDefinition".equals(codeString)) @@ -3896,6 +3920,8 @@ The primary difference between a medicationusage and a medicationadministration return PAYMENTNOTICE; if ("PaymentReconciliation".equals(codeString)) return PAYMENTRECONCILIATION; + if ("Permission".equals(codeString)) + return PERMISSION; if ("Person".equals(codeString)) return PERSON; if ("PlanDefinition".equals(codeString)) @@ -3944,6 +3970,10 @@ The primary difference between a medicationusage and a medicationadministration return STRUCTUREMAP; if ("Subscription".equals(codeString)) return SUBSCRIPTION; + if ("SubscriptionStatus".equals(codeString)) + return SUBSCRIPTIONSTATUS; + if ("SubscriptionTopic".equals(codeString)) + return SUBSCRIPTIONTOPIC; if ("Substance".equals(codeString)) return SUBSTANCE; if ("SubstanceDefinition".equals(codeString)) @@ -3970,8 +4000,6 @@ The primary difference between a medicationusage and a medicationadministration return TESTREPORT; if ("TestScript".equals(codeString)) return TESTSCRIPT; - if ("Topic".equals(codeString)) - return TOPIC; if ("ValueSet".equals(codeString)) return VALUESET; if ("VerificationResult".equals(codeString)) @@ -4077,6 +4105,7 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "CatalogEntry"; case CHARGEITEM: return "ChargeItem"; case CHARGEITEMDEFINITION: return "ChargeItemDefinition"; + case CITATION: return "Citation"; case CLAIM: return "Claim"; case CLAIMRESPONSE: return "ClaimResponse"; case CLINICALIMPRESSION: return "ClinicalImpression"; @@ -4111,6 +4140,7 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "EpisodeOfCare"; case EVENTDEFINITION: return "EventDefinition"; case EVIDENCE: return "Evidence"; + case EVIDENCEFOCUS: return "EvidenceFocus"; case EVIDENCEVARIABLE: return "EvidenceVariable"; case EXAMPLESCENARIO: return "ExampleScenario"; case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; @@ -4149,6 +4179,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "NamingSystem"; case NUTRITIONINTAKE: return "NutritionIntake"; case NUTRITIONORDER: return "NutritionOrder"; + case NUTRITIONPRODUCT: return "NutritionProduct"; case OBSERVATION: return "Observation"; case OBSERVATIONDEFINITION: return "ObservationDefinition"; case OPERATIONDEFINITION: return "OperationDefinition"; @@ -4160,6 +4191,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "Patient"; case PAYMENTNOTICE: return "PaymentNotice"; case PAYMENTRECONCILIATION: return "PaymentReconciliation"; + case PERMISSION: return "Permission"; case PERSON: return "Person"; case PLANDEFINITION: return "PlanDefinition"; case PRACTITIONER: return "Practitioner"; @@ -4184,6 +4216,8 @@ The primary difference between a medicationusage and a medicationadministration case STRUCTUREDEFINITION: return "StructureDefinition"; case STRUCTUREMAP: return "StructureMap"; case SUBSCRIPTION: return "Subscription"; + case SUBSCRIPTIONSTATUS: return "SubscriptionStatus"; + case SUBSCRIPTIONTOPIC: return "SubscriptionTopic"; case SUBSTANCE: return "Substance"; case SUBSTANCEDEFINITION: return "SubstanceDefinition"; case SUBSTANCENUCLEICACID: return "SubstanceNucleicAcid"; @@ -4197,7 +4231,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "TerminologyCapabilities"; case TESTREPORT: return "TestReport"; case TESTSCRIPT: return "TestScript"; - case TOPIC: return "Topic"; case VALUESET: return "ValueSet"; case VERIFICATIONRESULT: return "VerificationResult"; case VISIONPRESCRIPTION: return "VisionPrescription"; @@ -4299,6 +4332,7 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "http://hl7.org/fhir/resource-types"; case CHARGEITEM: return "http://hl7.org/fhir/resource-types"; case CHARGEITEMDEFINITION: return "http://hl7.org/fhir/resource-types"; + case CITATION: return "http://hl7.org/fhir/resource-types"; case CLAIM: return "http://hl7.org/fhir/resource-types"; case CLAIMRESPONSE: return "http://hl7.org/fhir/resource-types"; case CLINICALIMPRESSION: return "http://hl7.org/fhir/resource-types"; @@ -4333,6 +4367,7 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "http://hl7.org/fhir/resource-types"; case EVENTDEFINITION: return "http://hl7.org/fhir/resource-types"; case EVIDENCE: return "http://hl7.org/fhir/resource-types"; + case EVIDENCEFOCUS: return "http://hl7.org/fhir/resource-types"; case EVIDENCEVARIABLE: return "http://hl7.org/fhir/resource-types"; case EXAMPLESCENARIO: return "http://hl7.org/fhir/resource-types"; case EXPLANATIONOFBENEFIT: return "http://hl7.org/fhir/resource-types"; @@ -4371,6 +4406,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "http://hl7.org/fhir/resource-types"; case NUTRITIONINTAKE: return "http://hl7.org/fhir/resource-types"; case NUTRITIONORDER: return "http://hl7.org/fhir/resource-types"; + case NUTRITIONPRODUCT: return "http://hl7.org/fhir/resource-types"; case OBSERVATION: return "http://hl7.org/fhir/resource-types"; case OBSERVATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; case OPERATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; @@ -4382,6 +4418,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "http://hl7.org/fhir/resource-types"; case PAYMENTNOTICE: return "http://hl7.org/fhir/resource-types"; case PAYMENTRECONCILIATION: return "http://hl7.org/fhir/resource-types"; + case PERMISSION: return "http://hl7.org/fhir/resource-types"; case PERSON: return "http://hl7.org/fhir/resource-types"; case PLANDEFINITION: return "http://hl7.org/fhir/resource-types"; case PRACTITIONER: return "http://hl7.org/fhir/resource-types"; @@ -4406,6 +4443,8 @@ The primary difference between a medicationusage and a medicationadministration case STRUCTUREDEFINITION: return "http://hl7.org/fhir/resource-types"; case STRUCTUREMAP: return "http://hl7.org/fhir/resource-types"; case SUBSCRIPTION: return "http://hl7.org/fhir/resource-types"; + case SUBSCRIPTIONSTATUS: return "http://hl7.org/fhir/resource-types"; + case SUBSCRIPTIONTOPIC: return "http://hl7.org/fhir/resource-types"; case SUBSTANCE: return "http://hl7.org/fhir/resource-types"; case SUBSTANCEDEFINITION: return "http://hl7.org/fhir/resource-types"; case SUBSTANCENUCLEICACID: return "http://hl7.org/fhir/resource-types"; @@ -4419,7 +4458,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "http://hl7.org/fhir/resource-types"; case TESTREPORT: return "http://hl7.org/fhir/resource-types"; case TESTSCRIPT: return "http://hl7.org/fhir/resource-types"; - case TOPIC: return "http://hl7.org/fhir/resource-types"; case VALUESET: return "http://hl7.org/fhir/resource-types"; case VERIFICATIONRESULT: return "http://hl7.org/fhir/resource-types"; case VISIONPRESCRIPTION: return "http://hl7.org/fhir/resource-types"; @@ -4521,12 +4559,13 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "Catalog entries are wrappers that contextualize items included in a catalog."; case CHARGEITEM: return "The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation."; case CHARGEITEMDEFINITION: return "The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system."; + case CITATION: return "The Citation."; case CLAIM: return "A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement."; case CLAIMRESPONSE: return "This resource provides the adjudication details from the processing of a Claim resource."; case CLINICALIMPRESSION: return "A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called \"ClinicalImpression\" rather than \"ClinicalAssessment\" to avoid confusion with the recording of assessment tools such as Apgar score."; case CLINICALUSEISSUE: return "A single usage issue - either an indication, contraindication, interaction or an undesirable effect for a medicinal product, medication, device or procedure."; case CODESYSTEM: return "The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content."; - case COMMUNICATION: return "An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition."; + case COMMUNICATION: return "A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition."; case COMMUNICATIONREQUEST: return "A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition."; case COMPARTMENTDEFINITION: return "A compartment definition that defines how resources are accessed on a server."; case COMPOSITION: return "A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.)."; @@ -4543,7 +4582,7 @@ The primary difference between a medicationusage and a medicationadministration case DEVICEDEFINITION: return "The characteristics, operational status and capabilities of a medical-related component of a medical device."; case DEVICEMETRIC: return "Describes a measurement, calculation or setting capability of a medical device."; case DEVICEREQUEST: return "Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker."; - case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or another clinician."; + case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or a clinician."; case DIAGNOSTICREPORT: return "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports."; case DOCUMENTMANIFEST: return "A collection of documents compiled for a purpose together with metadata that applies to the collection."; case DOCUMENTREFERENCE: return "A reference to a document of any kind for any purpose. While the term “document” implies a more narrow focus, for this resource this \"document\" encompasses *any* serialized object with a mime-type, it includes formal patient-centric documents (CDA), clinical notes, scanned paper, non-patient specific documents like policy text, as well as a photo, video, or audio recording acquired or used in healthcare. The DocumentReference resource provides metadata about the document so that the document can be discovered and managed. The actual content may be inline base64 encoded data or provided by direct reference."; @@ -4555,7 +4594,8 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time."; case EVENTDEFINITION: return "The EventDefinition resource provides a reusable description of when a particular event can occur."; case EVIDENCE: return "This represents statistics, certainty, both the intended and actual population, and evidence variables."; - case EVIDENCEVARIABLE: return "The EvidenceVariable resource describes a \"PICO\" element that knowledge (evidence, assertion, recommendation) is about."; + case EVIDENCEFOCUS: return "EvidenceFocus."; + case EVIDENCEVARIABLE: return "The EvidenceVariable resource describes an element that knowledge (Evidence) is about."; case EXAMPLESCENARIO: return "Example of workflow instance."; case EXPLANATIONOFBENEFIT: return "This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided."; case FAMILYMEMBERHISTORY: return "Significant health conditions for a person related to the patient relevant in the context of care for the patient."; @@ -4593,6 +4633,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a \"System\" used within the Identifier and Coding data types."; case NUTRITIONINTAKE: return "A record of food or fluid that is being consumed by a patient. A NutritionIntake may indicate that the patient may be consuming the food or fluid now or has consumed the food or fluid in the past. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay or through an app that tracks food or fluids consumed. The consumption information may come from sources such as the patient's memory, from a nutrition label, or from a clinician documenting observed intake."; case NUTRITIONORDER: return "A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident."; + case NUTRITIONPRODUCT: return "A food or fluid product that is consumed by patients."; case OBSERVATION: return "Measurements and simple assertions made about a patient, device or other subject."; case OBSERVATIONDEFINITION: return "Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service."; case OPERATIONDEFINITION: return "A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction)."; @@ -4604,6 +4645,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "Demographics and other administrative information about an individual or animal receiving care or other health-related services."; case PAYMENTNOTICE: return "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."; case PAYMENTRECONCILIATION: return "This resource provides the details including amount of a payment and allocates the payment items being paid."; + case PERMISSION: return "Permission."; case PERSON: return "Demographics and administrative information about a person independent of a specific health-related context."; case PLANDEFINITION: return "This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols."; case PRACTITIONER: return "A person who is directly or indirectly involved in the provisioning of healthcare."; @@ -4612,7 +4654,7 @@ The primary difference between a medicationusage and a medicationadministration case PROVENANCE: return "Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies."; case QUESTIONNAIRE: return "A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection."; case QUESTIONNAIRERESPONSE: return "A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to."; - case REGULATEDAUTHORIZATION: return "The regulatory authorization of a medicinal product."; + case REGULATEDAUTHORIZATION: return "The regulatory authorization of a medicinal product, device or process."; case RELATEDPERSON: return "Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process."; case REQUESTGROUP: return "A group of related requests that can be used to capture intended activities that have inter-dependencies such as \"give this medication after that one\"."; case RESEARCHSTUDY: return "A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects."; @@ -4627,7 +4669,9 @@ The primary difference between a medicationusage and a medicationadministration case SPECIMENDEFINITION: return "A kind of specimen with associated set of requirements."; case STRUCTUREDEFINITION: return "A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types."; case STRUCTUREMAP: return "A Map of relationships between 2 structures that can be used to transform data."; - case SUBSCRIPTION: return "The subscription resource describes a particular client's request to be notified about a Topic."; + case SUBSCRIPTION: return "The subscription resource describes a particular client's request to be notified about a SubscriptionTopic."; + case SUBSCRIPTIONSTATUS: return "The SubscriptionStatus resource describes the state of a Subscription during notifications."; + case SUBSCRIPTIONTOPIC: return "Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic."; case SUBSTANCE: return "A homogeneous material with a definite composition."; case SUBSTANCEDEFINITION: return "The detailed description of a substance, typically at a level beyond what is used for prescribing."; case SUBSTANCENUCLEICACID: return "Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5’-3’ direction."; @@ -4641,7 +4685,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; case TESTREPORT: return "A summary of information based on the results of executing a TestScript."; case TESTSCRIPT: return "A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification."; - case TOPIC: return "Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic."; case VALUESET: return "A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html)."; case VERIFICATIONRESULT: return "Describes validation requirements, source(s), status and dates for one or more elements."; case VISIONPRESCRIPTION: return "An authorization for the provision of glasses and/or contact lenses to a patient."; @@ -4743,6 +4786,7 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "CatalogEntry"; case CHARGEITEM: return "ChargeItem"; case CHARGEITEMDEFINITION: return "ChargeItemDefinition"; + case CITATION: return "Citation"; case CLAIM: return "Claim"; case CLAIMRESPONSE: return "ClaimResponse"; case CLINICALIMPRESSION: return "ClinicalImpression"; @@ -4777,6 +4821,7 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "EpisodeOfCare"; case EVENTDEFINITION: return "EventDefinition"; case EVIDENCE: return "Evidence"; + case EVIDENCEFOCUS: return "EvidenceFocus"; case EVIDENCEVARIABLE: return "EvidenceVariable"; case EXAMPLESCENARIO: return "ExampleScenario"; case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; @@ -4815,6 +4860,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "NamingSystem"; case NUTRITIONINTAKE: return "NutritionIntake"; case NUTRITIONORDER: return "NutritionOrder"; + case NUTRITIONPRODUCT: return "NutritionProduct"; case OBSERVATION: return "Observation"; case OBSERVATIONDEFINITION: return "ObservationDefinition"; case OPERATIONDEFINITION: return "OperationDefinition"; @@ -4826,6 +4872,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "Patient"; case PAYMENTNOTICE: return "PaymentNotice"; case PAYMENTRECONCILIATION: return "PaymentReconciliation"; + case PERMISSION: return "Permission"; case PERSON: return "Person"; case PLANDEFINITION: return "PlanDefinition"; case PRACTITIONER: return "Practitioner"; @@ -4850,6 +4897,8 @@ The primary difference between a medicationusage and a medicationadministration case STRUCTUREDEFINITION: return "StructureDefinition"; case STRUCTUREMAP: return "StructureMap"; case SUBSCRIPTION: return "Subscription"; + case SUBSCRIPTIONSTATUS: return "SubscriptionStatus"; + case SUBSCRIPTIONTOPIC: return "SubscriptionTopic"; case SUBSTANCE: return "Substance"; case SUBSTANCEDEFINITION: return "SubstanceDefinition"; case SUBSTANCENUCLEICACID: return "SubstanceNucleicAcid"; @@ -4863,7 +4912,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "TerminologyCapabilities"; case TESTREPORT: return "TestReport"; case TESTSCRIPT: return "TestScript"; - case TOPIC: return "Topic"; case VALUESET: return "ValueSet"; case VERIFICATIONRESULT: return "VerificationResult"; case VISIONPRESCRIPTION: return "VisionPrescription"; @@ -5061,6 +5109,8 @@ The primary difference between a medicationusage and a medicationadministration return FHIRAllTypes.CHARGEITEM; if ("ChargeItemDefinition".equals(codeString)) return FHIRAllTypes.CHARGEITEMDEFINITION; + if ("Citation".equals(codeString)) + return FHIRAllTypes.CITATION; if ("Claim".equals(codeString)) return FHIRAllTypes.CLAIM; if ("ClaimResponse".equals(codeString)) @@ -5129,6 +5179,8 @@ The primary difference between a medicationusage and a medicationadministration return FHIRAllTypes.EVENTDEFINITION; if ("Evidence".equals(codeString)) return FHIRAllTypes.EVIDENCE; + if ("EvidenceFocus".equals(codeString)) + return FHIRAllTypes.EVIDENCEFOCUS; if ("EvidenceVariable".equals(codeString)) return FHIRAllTypes.EVIDENCEVARIABLE; if ("ExampleScenario".equals(codeString)) @@ -5205,6 +5257,8 @@ The primary difference between a medicationusage and a medicationadministration return FHIRAllTypes.NUTRITIONINTAKE; if ("NutritionOrder".equals(codeString)) return FHIRAllTypes.NUTRITIONORDER; + if ("NutritionProduct".equals(codeString)) + return FHIRAllTypes.NUTRITIONPRODUCT; if ("Observation".equals(codeString)) return FHIRAllTypes.OBSERVATION; if ("ObservationDefinition".equals(codeString)) @@ -5227,6 +5281,8 @@ The primary difference between a medicationusage and a medicationadministration return FHIRAllTypes.PAYMENTNOTICE; if ("PaymentReconciliation".equals(codeString)) return FHIRAllTypes.PAYMENTRECONCILIATION; + if ("Permission".equals(codeString)) + return FHIRAllTypes.PERMISSION; if ("Person".equals(codeString)) return FHIRAllTypes.PERSON; if ("PlanDefinition".equals(codeString)) @@ -5275,6 +5331,10 @@ The primary difference between a medicationusage and a medicationadministration return FHIRAllTypes.STRUCTUREMAP; if ("Subscription".equals(codeString)) return FHIRAllTypes.SUBSCRIPTION; + if ("SubscriptionStatus".equals(codeString)) + return FHIRAllTypes.SUBSCRIPTIONSTATUS; + if ("SubscriptionTopic".equals(codeString)) + return FHIRAllTypes.SUBSCRIPTIONTOPIC; if ("Substance".equals(codeString)) return FHIRAllTypes.SUBSTANCE; if ("SubstanceDefinition".equals(codeString)) @@ -5301,8 +5361,6 @@ The primary difference between a medicationusage and a medicationadministration return FHIRAllTypes.TESTREPORT; if ("TestScript".equals(codeString)) return FHIRAllTypes.TESTSCRIPT; - if ("Topic".equals(codeString)) - return FHIRAllTypes.TOPIC; if ("ValueSet".equals(codeString)) return FHIRAllTypes.VALUESET; if ("VerificationResult".equals(codeString)) @@ -5505,6 +5563,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRAllTypes.CHARGEITEM); if ("ChargeItemDefinition".equals(codeString)) return new Enumeration(this, FHIRAllTypes.CHARGEITEMDEFINITION); + if ("Citation".equals(codeString)) + return new Enumeration(this, FHIRAllTypes.CITATION); if ("Claim".equals(codeString)) return new Enumeration(this, FHIRAllTypes.CLAIM); if ("ClaimResponse".equals(codeString)) @@ -5573,6 +5633,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRAllTypes.EVENTDEFINITION); if ("Evidence".equals(codeString)) return new Enumeration(this, FHIRAllTypes.EVIDENCE); + if ("EvidenceFocus".equals(codeString)) + return new Enumeration(this, FHIRAllTypes.EVIDENCEFOCUS); if ("EvidenceVariable".equals(codeString)) return new Enumeration(this, FHIRAllTypes.EVIDENCEVARIABLE); if ("ExampleScenario".equals(codeString)) @@ -5649,6 +5711,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRAllTypes.NUTRITIONINTAKE); if ("NutritionOrder".equals(codeString)) return new Enumeration(this, FHIRAllTypes.NUTRITIONORDER); + if ("NutritionProduct".equals(codeString)) + return new Enumeration(this, FHIRAllTypes.NUTRITIONPRODUCT); if ("Observation".equals(codeString)) return new Enumeration(this, FHIRAllTypes.OBSERVATION); if ("ObservationDefinition".equals(codeString)) @@ -5671,6 +5735,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRAllTypes.PAYMENTNOTICE); if ("PaymentReconciliation".equals(codeString)) return new Enumeration(this, FHIRAllTypes.PAYMENTRECONCILIATION); + if ("Permission".equals(codeString)) + return new Enumeration(this, FHIRAllTypes.PERMISSION); if ("Person".equals(codeString)) return new Enumeration(this, FHIRAllTypes.PERSON); if ("PlanDefinition".equals(codeString)) @@ -5719,6 +5785,10 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRAllTypes.STRUCTUREMAP); if ("Subscription".equals(codeString)) return new Enumeration(this, FHIRAllTypes.SUBSCRIPTION); + if ("SubscriptionStatus".equals(codeString)) + return new Enumeration(this, FHIRAllTypes.SUBSCRIPTIONSTATUS); + if ("SubscriptionTopic".equals(codeString)) + return new Enumeration(this, FHIRAllTypes.SUBSCRIPTIONTOPIC); if ("Substance".equals(codeString)) return new Enumeration(this, FHIRAllTypes.SUBSTANCE); if ("SubstanceDefinition".equals(codeString)) @@ -5745,8 +5815,6 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRAllTypes.TESTREPORT); if ("TestScript".equals(codeString)) return new Enumeration(this, FHIRAllTypes.TESTSCRIPT); - if ("Topic".equals(codeString)) - return new Enumeration(this, FHIRAllTypes.TOPIC); if ("ValueSet".equals(codeString)) return new Enumeration(this, FHIRAllTypes.VALUESET); if ("VerificationResult".equals(codeString)) @@ -5942,6 +6010,8 @@ The primary difference between a medicationusage and a medicationadministration return "ChargeItem"; if (code == FHIRAllTypes.CHARGEITEMDEFINITION) return "ChargeItemDefinition"; + if (code == FHIRAllTypes.CITATION) + return "Citation"; if (code == FHIRAllTypes.CLAIM) return "Claim"; if (code == FHIRAllTypes.CLAIMRESPONSE) @@ -6010,6 +6080,8 @@ The primary difference between a medicationusage and a medicationadministration return "EventDefinition"; if (code == FHIRAllTypes.EVIDENCE) return "Evidence"; + if (code == FHIRAllTypes.EVIDENCEFOCUS) + return "EvidenceFocus"; if (code == FHIRAllTypes.EVIDENCEVARIABLE) return "EvidenceVariable"; if (code == FHIRAllTypes.EXAMPLESCENARIO) @@ -6086,6 +6158,8 @@ The primary difference between a medicationusage and a medicationadministration return "NutritionIntake"; if (code == FHIRAllTypes.NUTRITIONORDER) return "NutritionOrder"; + if (code == FHIRAllTypes.NUTRITIONPRODUCT) + return "NutritionProduct"; if (code == FHIRAllTypes.OBSERVATION) return "Observation"; if (code == FHIRAllTypes.OBSERVATIONDEFINITION) @@ -6108,6 +6182,8 @@ The primary difference between a medicationusage and a medicationadministration return "PaymentNotice"; if (code == FHIRAllTypes.PAYMENTRECONCILIATION) return "PaymentReconciliation"; + if (code == FHIRAllTypes.PERMISSION) + return "Permission"; if (code == FHIRAllTypes.PERSON) return "Person"; if (code == FHIRAllTypes.PLANDEFINITION) @@ -6156,6 +6232,10 @@ The primary difference between a medicationusage and a medicationadministration return "StructureMap"; if (code == FHIRAllTypes.SUBSCRIPTION) return "Subscription"; + if (code == FHIRAllTypes.SUBSCRIPTIONSTATUS) + return "SubscriptionStatus"; + if (code == FHIRAllTypes.SUBSCRIPTIONTOPIC) + return "SubscriptionTopic"; if (code == FHIRAllTypes.SUBSTANCE) return "Substance"; if (code == FHIRAllTypes.SUBSTANCEDEFINITION) @@ -6182,8 +6262,6 @@ The primary difference between a medicationusage and a medicationadministration return "TestReport"; if (code == FHIRAllTypes.TESTSCRIPT) return "TestScript"; - if (code == FHIRAllTypes.TOPIC) - return "Topic"; if (code == FHIRAllTypes.VALUESET) return "ValueSet"; if (code == FHIRAllTypes.VERIFICATIONRESULT) @@ -6294,6 +6372,10 @@ The primary difference between a medicationusage and a medicationadministration * FHIR Release 4 (Normative + STU) with 1 technical errata. */ _4_0_1, + /** + * Interim Version. + */ + _4_1_0, /** * R5 Preview #1. */ @@ -6355,6 +6437,8 @@ The primary difference between a medicationusage and a medicationadministration return _4_0_0; if ("4.0.1".equals(codeString)) return _4_0_1; + if ("4.1.0".equals(codeString)) + return _4_1_0; if ("4.2.0".equals(codeString)) return _4_2_0; if ("4.4.0".equals(codeString)) @@ -6386,6 +6470,7 @@ The primary difference between a medicationusage and a medicationadministration case _3_5_0: return "3.5.0"; case _4_0_0: return "4.0.0"; case _4_0_1: return "4.0.1"; + case _4_1_0: return "4.1.0"; case _4_2_0: return "4.2.0"; case _4_4_0: return "4.4.0"; default: return "?"; @@ -6416,7 +6501,9 @@ The primary difference between a medicationusage and a medicationadministration case _3_5_0: return "http://hl7.org/fhir/FHIR-version"; case _4_0_0: return "http://hl7.org/fhir/FHIR-version"; case _4_0_1: return "http://hl7.org/fhir/FHIR-version"; + case _4_1_0: return "http://hl7.org/fhir/FHIR-version"; case _4_2_0: return "http://hl7.org/fhir/FHIR-version"; + case _4_4_0: return "http://hl7.org/fhir/FHIR-version"; default: return "?"; } } @@ -6445,7 +6532,9 @@ The primary difference between a medicationusage and a medicationadministration case _3_5_0: return "R4 Ballot #2."; case _4_0_0: return "FHIR Release 4 (Normative + STU)."; case _4_0_1: return "FHIR Release 4 (Normative + STU) with 1 technical errata."; + case _4_1_0: return "Interim Version."; case _4_2_0: return "R5 Preview #1."; + case _4_4_0: return "R5 Preview #2."; default: return "?"; } } @@ -6474,6 +6563,7 @@ The primary difference between a medicationusage and a medicationadministration case _3_5_0: return "3.5.0"; case _4_0_0: return "4.0.0"; case _4_0_1: return "4.0.1"; + case _4_1_0: return "4.1.0"; case _4_2_0: return "4.2.0"; case _4_4_0: return "4.4.0"; default: return "?"; @@ -6535,8 +6625,6 @@ The primary difference between a medicationusage and a medicationadministration return true; if ("4.2.0".equals(codeString)) return true; - if ("4.4.0".equals(codeString)) - return true; return false; } @@ -6599,6 +6687,8 @@ The primary difference between a medicationusage and a medicationadministration return FHIRVersion._4_0_0; if ("4.0.1".equals(codeString)) return FHIRVersion._4_0_1; + if ("4.1.0".equals(codeString)) + return FHIRVersion._4_1_0; if ("4.2.0".equals(codeString)) return FHIRVersion._4_2_0; if ("4.4.0".equals(codeString)) @@ -6659,6 +6749,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, FHIRVersion._4_0_0); if ("4.0.1".equals(codeString)) return new Enumeration(this, FHIRVersion._4_0_1); + if ("4.1.0".equals(codeString)) + return new Enumeration(this, FHIRVersion._4_1_0); if ("4.2.0".equals(codeString)) return new Enumeration(this, FHIRVersion._4_2_0); if ("4.4.0".equals(codeString)) @@ -6712,6 +6804,8 @@ The primary difference between a medicationusage and a medicationadministration return "4.0.0"; if (code == FHIRVersion._4_0_1) return "4.0.1"; + if (code == FHIRVersion._4_1_0) + return "4.1.0"; if (code == FHIRVersion._4_2_0) return "4.2.0"; if (code == FHIRVersion._4_4_0) @@ -8724,7 +8818,7 @@ The primary difference between a medicationusage and a medicationadministration */ BINARY, /** - * A material substance originating from a biological entity intended to be transplanted or infused + * A material substance originating from a biological entity intended to be transplanted or infused into another (possibly the same) biological entity. */ BIOLOGICALLYDERIVEDPRODUCT, @@ -8764,6 +8858,10 @@ into another (possibly the same) biological entity. * The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system. */ CHARGEITEMDEFINITION, + /** + * The Citation. + */ + CITATION, /** * A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement. */ @@ -8785,7 +8883,7 @@ into another (possibly the same) biological entity. */ CODESYSTEM, /** - * An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. + * A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. */ COMMUNICATION, /** @@ -8853,7 +8951,7 @@ into another (possibly the same) biological entity. */ DEVICEREQUEST, /** - * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. + * A record of a device being used by a patient where the record is the result of a report from the patient or a clinician. */ DEVICEUSESTATEMENT, /** @@ -8901,7 +8999,11 @@ into another (possibly the same) biological entity. */ EVIDENCE, /** - * The EvidenceVariable resource describes a "PICO" element that knowledge (evidence, assertion, recommendation) is about. + * EvidenceFocus. + */ + EVIDENCEFOCUS, + /** + * The EvidenceVariable resource describes an element that knowledge (Evidence) is about. */ EVIDENCEVARIABLE, /** @@ -9021,8 +9123,8 @@ into another (possibly the same) biological entity. */ MEDICATIONREQUEST, /** - * A record of a medication that is being consumed by a patient. A MedicationUsage may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains. - + * A record of a medication that is being consumed by a patient. A MedicationUsage may indicate that the patient may be taking the medication now or has taken the medication in the past or will be taking the medication in the future. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay. The medication information may come from sources such as the patient's memory, from a prescription bottle, or from a list of medications the patient, clinician or other party maintains. + The primary difference between a medicationusage and a medicationadministration is that the medication administration has complete administration information and is based on actual administration information from the person who administered the medication. A medicationusage is often, if not always, less specific. There is no required date/time when the medication was administered, in fact we only know that a source has reported the patient is taking this medication, where details such as time, quantity, or rate or even medication product may be incomplete or missing or less precise. As stated earlier, the Medication Usage information may come from the patient's memory, from a prescription bottle or from a list of medications the patient, clinician or other party maintains. Medication administration is more formal and is not missing detailed information. */ MEDICATIONUSAGE, @@ -9054,6 +9156,10 @@ The primary difference between a medicationusage and a medicationadministration * A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident. */ NUTRITIONORDER, + /** + * A food or fluid product that is consumed by patients. + */ + NUTRITIONPRODUCT, /** * Measurements and simple assertions made about a patient, device or other subject. */ @@ -9098,6 +9204,10 @@ The primary difference between a medicationusage and a medicationadministration * This resource provides the details including amount of a payment and allocates the payment items being paid. */ PAYMENTRECONCILIATION, + /** + * Permission. + */ + PERMISSION, /** * Demographics and administrative information about a person independent of a specific health-related context. */ @@ -9131,7 +9241,7 @@ The primary difference between a medicationusage and a medicationadministration */ QUESTIONNAIRERESPONSE, /** - * The regulatory authorization of a medicinal product. + * The regulatory authorization of a medicinal product, device or process. */ REGULATEDAUTHORIZATION, /** @@ -9191,9 +9301,17 @@ The primary difference between a medicationusage and a medicationadministration */ STRUCTUREMAP, /** - * The subscription resource describes a particular client's request to be notified about a Topic. + * The subscription resource describes a particular client's request to be notified about a SubscriptionTopic. */ SUBSCRIPTION, + /** + * The SubscriptionStatus resource describes the state of a Subscription during notifications. + */ + SUBSCRIPTIONSTATUS, + /** + * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. + */ + SUBSCRIPTIONTOPIC, /** * A homogeneous material with a definite composition. */ @@ -9246,10 +9364,6 @@ The primary difference between a medicationusage and a medicationadministration * A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification. */ TESTSCRIPT, - /** - * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. - */ - TOPIC, /** * A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html). */ @@ -9309,6 +9423,8 @@ The primary difference between a medicationusage and a medicationadministration return CHARGEITEM; if ("ChargeItemDefinition".equals(codeString)) return CHARGEITEMDEFINITION; + if ("Citation".equals(codeString)) + return CITATION; if ("Claim".equals(codeString)) return CLAIM; if ("ClaimResponse".equals(codeString)) @@ -9377,6 +9493,8 @@ The primary difference between a medicationusage and a medicationadministration return EVENTDEFINITION; if ("Evidence".equals(codeString)) return EVIDENCE; + if ("EvidenceFocus".equals(codeString)) + return EVIDENCEFOCUS; if ("EvidenceVariable".equals(codeString)) return EVIDENCEVARIABLE; if ("ExampleScenario".equals(codeString)) @@ -9453,6 +9571,8 @@ The primary difference between a medicationusage and a medicationadministration return NUTRITIONINTAKE; if ("NutritionOrder".equals(codeString)) return NUTRITIONORDER; + if ("NutritionProduct".equals(codeString)) + return NUTRITIONPRODUCT; if ("Observation".equals(codeString)) return OBSERVATION; if ("ObservationDefinition".equals(codeString)) @@ -9475,6 +9595,8 @@ The primary difference between a medicationusage and a medicationadministration return PAYMENTNOTICE; if ("PaymentReconciliation".equals(codeString)) return PAYMENTRECONCILIATION; + if ("Permission".equals(codeString)) + return PERMISSION; if ("Person".equals(codeString)) return PERSON; if ("PlanDefinition".equals(codeString)) @@ -9523,6 +9645,10 @@ The primary difference between a medicationusage and a medicationadministration return STRUCTUREMAP; if ("Subscription".equals(codeString)) return SUBSCRIPTION; + if ("SubscriptionStatus".equals(codeString)) + return SUBSCRIPTIONSTATUS; + if ("SubscriptionTopic".equals(codeString)) + return SUBSCRIPTIONTOPIC; if ("Substance".equals(codeString)) return SUBSTANCE; if ("SubstanceDefinition".equals(codeString)) @@ -9549,8 +9675,6 @@ The primary difference between a medicationusage and a medicationadministration return TESTREPORT; if ("TestScript".equals(codeString)) return TESTSCRIPT; - if ("Topic".equals(codeString)) - return TOPIC; if ("ValueSet".equals(codeString)) return VALUESET; if ("VerificationResult".equals(codeString)) @@ -9581,6 +9705,7 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "CatalogEntry"; case CHARGEITEM: return "ChargeItem"; case CHARGEITEMDEFINITION: return "ChargeItemDefinition"; + case CITATION: return "Citation"; case CLAIM: return "Claim"; case CLAIMRESPONSE: return "ClaimResponse"; case CLINICALIMPRESSION: return "ClinicalImpression"; @@ -9615,6 +9740,7 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "EpisodeOfCare"; case EVENTDEFINITION: return "EventDefinition"; case EVIDENCE: return "Evidence"; + case EVIDENCEFOCUS: return "EvidenceFocus"; case EVIDENCEVARIABLE: return "EvidenceVariable"; case EXAMPLESCENARIO: return "ExampleScenario"; case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; @@ -9653,6 +9779,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "NamingSystem"; case NUTRITIONINTAKE: return "NutritionIntake"; case NUTRITIONORDER: return "NutritionOrder"; + case NUTRITIONPRODUCT: return "NutritionProduct"; case OBSERVATION: return "Observation"; case OBSERVATIONDEFINITION: return "ObservationDefinition"; case OPERATIONDEFINITION: return "OperationDefinition"; @@ -9664,6 +9791,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "Patient"; case PAYMENTNOTICE: return "PaymentNotice"; case PAYMENTRECONCILIATION: return "PaymentReconciliation"; + case PERMISSION: return "Permission"; case PERSON: return "Person"; case PLANDEFINITION: return "PlanDefinition"; case PRACTITIONER: return "Practitioner"; @@ -9688,6 +9816,8 @@ The primary difference between a medicationusage and a medicationadministration case STRUCTUREDEFINITION: return "StructureDefinition"; case STRUCTUREMAP: return "StructureMap"; case SUBSCRIPTION: return "Subscription"; + case SUBSCRIPTIONSTATUS: return "SubscriptionStatus"; + case SUBSCRIPTIONTOPIC: return "SubscriptionTopic"; case SUBSTANCE: return "Substance"; case SUBSTANCEDEFINITION: return "SubstanceDefinition"; case SUBSTANCENUCLEICACID: return "SubstanceNucleicAcid"; @@ -9701,7 +9831,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "TerminologyCapabilities"; case TESTREPORT: return "TestReport"; case TESTSCRIPT: return "TestScript"; - case TOPIC: return "Topic"; case VALUESET: return "ValueSet"; case VERIFICATIONRESULT: return "VerificationResult"; case VISIONPRESCRIPTION: return "VisionPrescription"; @@ -9730,6 +9859,7 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "http://hl7.org/fhir/resource-types"; case CHARGEITEM: return "http://hl7.org/fhir/resource-types"; case CHARGEITEMDEFINITION: return "http://hl7.org/fhir/resource-types"; + case CITATION: return "http://hl7.org/fhir/resource-types"; case CLAIM: return "http://hl7.org/fhir/resource-types"; case CLAIMRESPONSE: return "http://hl7.org/fhir/resource-types"; case CLINICALIMPRESSION: return "http://hl7.org/fhir/resource-types"; @@ -9764,6 +9894,7 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "http://hl7.org/fhir/resource-types"; case EVENTDEFINITION: return "http://hl7.org/fhir/resource-types"; case EVIDENCE: return "http://hl7.org/fhir/resource-types"; + case EVIDENCEFOCUS: return "http://hl7.org/fhir/resource-types"; case EVIDENCEVARIABLE: return "http://hl7.org/fhir/resource-types"; case EXAMPLESCENARIO: return "http://hl7.org/fhir/resource-types"; case EXPLANATIONOFBENEFIT: return "http://hl7.org/fhir/resource-types"; @@ -9802,6 +9933,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "http://hl7.org/fhir/resource-types"; case NUTRITIONINTAKE: return "http://hl7.org/fhir/resource-types"; case NUTRITIONORDER: return "http://hl7.org/fhir/resource-types"; + case NUTRITIONPRODUCT: return "http://hl7.org/fhir/resource-types"; case OBSERVATION: return "http://hl7.org/fhir/resource-types"; case OBSERVATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; case OPERATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; @@ -9813,6 +9945,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "http://hl7.org/fhir/resource-types"; case PAYMENTNOTICE: return "http://hl7.org/fhir/resource-types"; case PAYMENTRECONCILIATION: return "http://hl7.org/fhir/resource-types"; + case PERMISSION: return "http://hl7.org/fhir/resource-types"; case PERSON: return "http://hl7.org/fhir/resource-types"; case PLANDEFINITION: return "http://hl7.org/fhir/resource-types"; case PRACTITIONER: return "http://hl7.org/fhir/resource-types"; @@ -9837,6 +9970,8 @@ The primary difference between a medicationusage and a medicationadministration case STRUCTUREDEFINITION: return "http://hl7.org/fhir/resource-types"; case STRUCTUREMAP: return "http://hl7.org/fhir/resource-types"; case SUBSCRIPTION: return "http://hl7.org/fhir/resource-types"; + case SUBSCRIPTIONSTATUS: return "http://hl7.org/fhir/resource-types"; + case SUBSCRIPTIONTOPIC: return "http://hl7.org/fhir/resource-types"; case SUBSTANCE: return "http://hl7.org/fhir/resource-types"; case SUBSTANCEDEFINITION: return "http://hl7.org/fhir/resource-types"; case SUBSTANCENUCLEICACID: return "http://hl7.org/fhir/resource-types"; @@ -9850,7 +9985,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "http://hl7.org/fhir/resource-types"; case TESTREPORT: return "http://hl7.org/fhir/resource-types"; case TESTSCRIPT: return "http://hl7.org/fhir/resource-types"; - case TOPIC: return "http://hl7.org/fhir/resource-types"; case VALUESET: return "http://hl7.org/fhir/resource-types"; case VERIFICATIONRESULT: return "http://hl7.org/fhir/resource-types"; case VISIONPRESCRIPTION: return "http://hl7.org/fhir/resource-types"; @@ -9879,12 +10013,13 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "Catalog entries are wrappers that contextualize items included in a catalog."; case CHARGEITEM: return "The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation."; case CHARGEITEMDEFINITION: return "The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system."; + case CITATION: return "The Citation."; case CLAIM: return "A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement."; case CLAIMRESPONSE: return "This resource provides the adjudication details from the processing of a Claim resource."; case CLINICALIMPRESSION: return "A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called \"ClinicalImpression\" rather than \"ClinicalAssessment\" to avoid confusion with the recording of assessment tools such as Apgar score."; case CLINICALUSEISSUE: return "A single usage issue - either an indication, contraindication, interaction or an undesirable effect for a medicinal product, medication, device or procedure."; case CODESYSTEM: return "The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content."; - case COMMUNICATION: return "An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition."; + case COMMUNICATION: return "A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition."; case COMMUNICATIONREQUEST: return "A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition."; case COMPARTMENTDEFINITION: return "A compartment definition that defines how resources are accessed on a server."; case COMPOSITION: return "A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.)."; @@ -9901,7 +10036,7 @@ The primary difference between a medicationusage and a medicationadministration case DEVICEDEFINITION: return "The characteristics, operational status and capabilities of a medical-related component of a medical device."; case DEVICEMETRIC: return "Describes a measurement, calculation or setting capability of a medical device."; case DEVICEREQUEST: return "Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker."; - case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or another clinician."; + case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or a clinician."; case DIAGNOSTICREPORT: return "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports."; case DOCUMENTMANIFEST: return "A collection of documents compiled for a purpose together with metadata that applies to the collection."; case DOCUMENTREFERENCE: return "A reference to a document of any kind for any purpose. While the term “document” implies a more narrow focus, for this resource this \"document\" encompasses *any* serialized object with a mime-type, it includes formal patient-centric documents (CDA), clinical notes, scanned paper, non-patient specific documents like policy text, as well as a photo, video, or audio recording acquired or used in healthcare. The DocumentReference resource provides metadata about the document so that the document can be discovered and managed. The actual content may be inline base64 encoded data or provided by direct reference."; @@ -9913,7 +10048,8 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time."; case EVENTDEFINITION: return "The EventDefinition resource provides a reusable description of when a particular event can occur."; case EVIDENCE: return "This represents statistics, certainty, both the intended and actual population, and evidence variables."; - case EVIDENCEVARIABLE: return "The EvidenceVariable resource describes a \"PICO\" element that knowledge (evidence, assertion, recommendation) is about."; + case EVIDENCEFOCUS: return "EvidenceFocus."; + case EVIDENCEVARIABLE: return "The EvidenceVariable resource describes an element that knowledge (Evidence) is about."; case EXAMPLESCENARIO: return "Example of workflow instance."; case EXPLANATIONOFBENEFIT: return "This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided."; case FAMILYMEMBERHISTORY: return "Significant health conditions for a person related to the patient relevant in the context of care for the patient."; @@ -9951,6 +10087,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a \"System\" used within the Identifier and Coding data types."; case NUTRITIONINTAKE: return "A record of food or fluid that is being consumed by a patient. A NutritionIntake may indicate that the patient may be consuming the food or fluid now or has consumed the food or fluid in the past. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay or through an app that tracks food or fluids consumed. The consumption information may come from sources such as the patient's memory, from a nutrition label, or from a clinician documenting observed intake."; case NUTRITIONORDER: return "A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident."; + case NUTRITIONPRODUCT: return "A food or fluid product that is consumed by patients."; case OBSERVATION: return "Measurements and simple assertions made about a patient, device or other subject."; case OBSERVATIONDEFINITION: return "Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service."; case OPERATIONDEFINITION: return "A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction)."; @@ -9962,6 +10099,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "Demographics and other administrative information about an individual or animal receiving care or other health-related services."; case PAYMENTNOTICE: return "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."; case PAYMENTRECONCILIATION: return "This resource provides the details including amount of a payment and allocates the payment items being paid."; + case PERMISSION: return "Permission."; case PERSON: return "Demographics and administrative information about a person independent of a specific health-related context."; case PLANDEFINITION: return "This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols."; case PRACTITIONER: return "A person who is directly or indirectly involved in the provisioning of healthcare."; @@ -9970,7 +10108,7 @@ The primary difference between a medicationusage and a medicationadministration case PROVENANCE: return "Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies."; case QUESTIONNAIRE: return "A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection."; case QUESTIONNAIRERESPONSE: return "A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to."; - case REGULATEDAUTHORIZATION: return "The regulatory authorization of a medicinal product."; + case REGULATEDAUTHORIZATION: return "The regulatory authorization of a medicinal product, device or process."; case RELATEDPERSON: return "Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process."; case REQUESTGROUP: return "A group of related requests that can be used to capture intended activities that have inter-dependencies such as \"give this medication after that one\"."; case RESEARCHSTUDY: return "A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects."; @@ -9985,7 +10123,9 @@ The primary difference between a medicationusage and a medicationadministration case SPECIMENDEFINITION: return "A kind of specimen with associated set of requirements."; case STRUCTUREDEFINITION: return "A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types."; case STRUCTUREMAP: return "A Map of relationships between 2 structures that can be used to transform data."; - case SUBSCRIPTION: return "The subscription resource describes a particular client's request to be notified about a Topic."; + case SUBSCRIPTION: return "The subscription resource describes a particular client's request to be notified about a SubscriptionTopic."; + case SUBSCRIPTIONSTATUS: return "The SubscriptionStatus resource describes the state of a Subscription during notifications."; + case SUBSCRIPTIONTOPIC: return "Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic."; case SUBSTANCE: return "A homogeneous material with a definite composition."; case SUBSTANCEDEFINITION: return "The detailed description of a substance, typically at a level beyond what is used for prescribing."; case SUBSTANCENUCLEICACID: return "Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5’-3’ direction."; @@ -9999,7 +10139,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; case TESTREPORT: return "A summary of information based on the results of executing a TestScript."; case TESTSCRIPT: return "A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification."; - case TOPIC: return "Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic."; case VALUESET: return "A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html)."; case VERIFICATIONRESULT: return "Describes validation requirements, source(s), status and dates for one or more elements."; case VISIONPRESCRIPTION: return "An authorization for the provision of glasses and/or contact lenses to a patient."; @@ -10028,6 +10167,7 @@ The primary difference between a medicationusage and a medicationadministration case CATALOGENTRY: return "CatalogEntry"; case CHARGEITEM: return "ChargeItem"; case CHARGEITEMDEFINITION: return "ChargeItemDefinition"; + case CITATION: return "Citation"; case CLAIM: return "Claim"; case CLAIMRESPONSE: return "ClaimResponse"; case CLINICALIMPRESSION: return "ClinicalImpression"; @@ -10062,6 +10202,7 @@ The primary difference between a medicationusage and a medicationadministration case EPISODEOFCARE: return "EpisodeOfCare"; case EVENTDEFINITION: return "EventDefinition"; case EVIDENCE: return "Evidence"; + case EVIDENCEFOCUS: return "EvidenceFocus"; case EVIDENCEVARIABLE: return "EvidenceVariable"; case EXAMPLESCENARIO: return "ExampleScenario"; case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; @@ -10100,6 +10241,7 @@ The primary difference between a medicationusage and a medicationadministration case NAMINGSYSTEM: return "NamingSystem"; case NUTRITIONINTAKE: return "NutritionIntake"; case NUTRITIONORDER: return "NutritionOrder"; + case NUTRITIONPRODUCT: return "NutritionProduct"; case OBSERVATION: return "Observation"; case OBSERVATIONDEFINITION: return "ObservationDefinition"; case OPERATIONDEFINITION: return "OperationDefinition"; @@ -10111,6 +10253,7 @@ The primary difference between a medicationusage and a medicationadministration case PATIENT: return "Patient"; case PAYMENTNOTICE: return "PaymentNotice"; case PAYMENTRECONCILIATION: return "PaymentReconciliation"; + case PERMISSION: return "Permission"; case PERSON: return "Person"; case PLANDEFINITION: return "PlanDefinition"; case PRACTITIONER: return "Practitioner"; @@ -10135,6 +10278,8 @@ The primary difference between a medicationusage and a medicationadministration case STRUCTUREDEFINITION: return "StructureDefinition"; case STRUCTUREMAP: return "StructureMap"; case SUBSCRIPTION: return "Subscription"; + case SUBSCRIPTIONSTATUS: return "SubscriptionStatus"; + case SUBSCRIPTIONTOPIC: return "SubscriptionTopic"; case SUBSTANCE: return "Substance"; case SUBSTANCEDEFINITION: return "SubstanceDefinition"; case SUBSTANCENUCLEICACID: return "SubstanceNucleicAcid"; @@ -10148,7 +10293,6 @@ The primary difference between a medicationusage and a medicationadministration case TERMINOLOGYCAPABILITIES: return "TerminologyCapabilities"; case TESTREPORT: return "TestReport"; case TESTSCRIPT: return "TestScript"; - case TOPIC: return "Topic"; case VALUESET: return "ValueSet"; case VERIFICATIONRESULT: return "VerificationResult"; case VISIONPRESCRIPTION: return "VisionPrescription"; @@ -10202,6 +10346,8 @@ The primary difference between a medicationusage and a medicationadministration return ResourceTypeEnum.CHARGEITEM; if ("ChargeItemDefinition".equals(codeString)) return ResourceTypeEnum.CHARGEITEMDEFINITION; + if ("Citation".equals(codeString)) + return ResourceTypeEnum.CITATION; if ("Claim".equals(codeString)) return ResourceTypeEnum.CLAIM; if ("ClaimResponse".equals(codeString)) @@ -10270,6 +10416,8 @@ The primary difference between a medicationusage and a medicationadministration return ResourceTypeEnum.EVENTDEFINITION; if ("Evidence".equals(codeString)) return ResourceTypeEnum.EVIDENCE; + if ("EvidenceFocus".equals(codeString)) + return ResourceTypeEnum.EVIDENCEFOCUS; if ("EvidenceVariable".equals(codeString)) return ResourceTypeEnum.EVIDENCEVARIABLE; if ("ExampleScenario".equals(codeString)) @@ -10346,6 +10494,8 @@ The primary difference between a medicationusage and a medicationadministration return ResourceTypeEnum.NUTRITIONINTAKE; if ("NutritionOrder".equals(codeString)) return ResourceTypeEnum.NUTRITIONORDER; + if ("NutritionProduct".equals(codeString)) + return ResourceTypeEnum.NUTRITIONPRODUCT; if ("Observation".equals(codeString)) return ResourceTypeEnum.OBSERVATION; if ("ObservationDefinition".equals(codeString)) @@ -10368,6 +10518,8 @@ The primary difference between a medicationusage and a medicationadministration return ResourceTypeEnum.PAYMENTNOTICE; if ("PaymentReconciliation".equals(codeString)) return ResourceTypeEnum.PAYMENTRECONCILIATION; + if ("Permission".equals(codeString)) + return ResourceTypeEnum.PERMISSION; if ("Person".equals(codeString)) return ResourceTypeEnum.PERSON; if ("PlanDefinition".equals(codeString)) @@ -10416,6 +10568,10 @@ The primary difference between a medicationusage and a medicationadministration return ResourceTypeEnum.STRUCTUREMAP; if ("Subscription".equals(codeString)) return ResourceTypeEnum.SUBSCRIPTION; + if ("SubscriptionStatus".equals(codeString)) + return ResourceTypeEnum.SUBSCRIPTIONSTATUS; + if ("SubscriptionTopic".equals(codeString)) + return ResourceTypeEnum.SUBSCRIPTIONTOPIC; if ("Substance".equals(codeString)) return ResourceTypeEnum.SUBSTANCE; if ("SubstanceDefinition".equals(codeString)) @@ -10442,8 +10598,6 @@ The primary difference between a medicationusage and a medicationadministration return ResourceTypeEnum.TESTREPORT; if ("TestScript".equals(codeString)) return ResourceTypeEnum.TESTSCRIPT; - if ("Topic".equals(codeString)) - return ResourceTypeEnum.TOPIC; if ("ValueSet".equals(codeString)) return ResourceTypeEnum.VALUESET; if ("VerificationResult".equals(codeString)) @@ -10500,6 +10654,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, ResourceTypeEnum.CHARGEITEM); if ("ChargeItemDefinition".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.CHARGEITEMDEFINITION); + if ("Citation".equals(codeString)) + return new Enumeration(this, ResourceTypeEnum.CITATION); if ("Claim".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.CLAIM); if ("ClaimResponse".equals(codeString)) @@ -10568,6 +10724,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, ResourceTypeEnum.EVENTDEFINITION); if ("Evidence".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.EVIDENCE); + if ("EvidenceFocus".equals(codeString)) + return new Enumeration(this, ResourceTypeEnum.EVIDENCEFOCUS); if ("EvidenceVariable".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.EVIDENCEVARIABLE); if ("ExampleScenario".equals(codeString)) @@ -10644,6 +10802,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, ResourceTypeEnum.NUTRITIONINTAKE); if ("NutritionOrder".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.NUTRITIONORDER); + if ("NutritionProduct".equals(codeString)) + return new Enumeration(this, ResourceTypeEnum.NUTRITIONPRODUCT); if ("Observation".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.OBSERVATION); if ("ObservationDefinition".equals(codeString)) @@ -10666,6 +10826,8 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, ResourceTypeEnum.PAYMENTNOTICE); if ("PaymentReconciliation".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.PAYMENTRECONCILIATION); + if ("Permission".equals(codeString)) + return new Enumeration(this, ResourceTypeEnum.PERMISSION); if ("Person".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.PERSON); if ("PlanDefinition".equals(codeString)) @@ -10714,6 +10876,10 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, ResourceTypeEnum.STRUCTUREMAP); if ("Subscription".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.SUBSCRIPTION); + if ("SubscriptionStatus".equals(codeString)) + return new Enumeration(this, ResourceTypeEnum.SUBSCRIPTIONSTATUS); + if ("SubscriptionTopic".equals(codeString)) + return new Enumeration(this, ResourceTypeEnum.SUBSCRIPTIONTOPIC); if ("Substance".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.SUBSTANCE); if ("SubstanceDefinition".equals(codeString)) @@ -10740,8 +10906,6 @@ The primary difference between a medicationusage and a medicationadministration return new Enumeration(this, ResourceTypeEnum.TESTREPORT); if ("TestScript".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.TESTSCRIPT); - if ("Topic".equals(codeString)) - return new Enumeration(this, ResourceTypeEnum.TOPIC); if ("ValueSet".equals(codeString)) return new Enumeration(this, ResourceTypeEnum.VALUESET); if ("VerificationResult".equals(codeString)) @@ -10791,6 +10955,8 @@ The primary difference between a medicationusage and a medicationadministration return "ChargeItem"; if (code == ResourceTypeEnum.CHARGEITEMDEFINITION) return "ChargeItemDefinition"; + if (code == ResourceTypeEnum.CITATION) + return "Citation"; if (code == ResourceTypeEnum.CLAIM) return "Claim"; if (code == ResourceTypeEnum.CLAIMRESPONSE) @@ -10859,6 +11025,8 @@ The primary difference between a medicationusage and a medicationadministration return "EventDefinition"; if (code == ResourceTypeEnum.EVIDENCE) return "Evidence"; + if (code == ResourceTypeEnum.EVIDENCEFOCUS) + return "EvidenceFocus"; if (code == ResourceTypeEnum.EVIDENCEVARIABLE) return "EvidenceVariable"; if (code == ResourceTypeEnum.EXAMPLESCENARIO) @@ -10935,6 +11103,8 @@ The primary difference between a medicationusage and a medicationadministration return "NutritionIntake"; if (code == ResourceTypeEnum.NUTRITIONORDER) return "NutritionOrder"; + if (code == ResourceTypeEnum.NUTRITIONPRODUCT) + return "NutritionProduct"; if (code == ResourceTypeEnum.OBSERVATION) return "Observation"; if (code == ResourceTypeEnum.OBSERVATIONDEFINITION) @@ -10957,6 +11127,8 @@ The primary difference between a medicationusage and a medicationadministration return "PaymentNotice"; if (code == ResourceTypeEnum.PAYMENTRECONCILIATION) return "PaymentReconciliation"; + if (code == ResourceTypeEnum.PERMISSION) + return "Permission"; if (code == ResourceTypeEnum.PERSON) return "Person"; if (code == ResourceTypeEnum.PLANDEFINITION) @@ -11005,6 +11177,10 @@ The primary difference between a medicationusage and a medicationadministration return "StructureMap"; if (code == ResourceTypeEnum.SUBSCRIPTION) return "Subscription"; + if (code == ResourceTypeEnum.SUBSCRIPTIONSTATUS) + return "SubscriptionStatus"; + if (code == ResourceTypeEnum.SUBSCRIPTIONTOPIC) + return "SubscriptionTopic"; if (code == ResourceTypeEnum.SUBSTANCE) return "Substance"; if (code == ResourceTypeEnum.SUBSTANCEDEFINITION) @@ -11031,8 +11207,6 @@ The primary difference between a medicationusage and a medicationadministration return "TestReport"; if (code == ResourceTypeEnum.TESTSCRIPT) return "TestScript"; - if (code == ResourceTypeEnum.TOPIC) - return "Topic"; if (code == ResourceTypeEnum.VALUESET) return "ValueSet"; if (code == ResourceTypeEnum.VERIFICATIONRESULT) @@ -11336,6 +11510,424 @@ The primary difference between a medicationusage and a medicationadministration } } + public enum SubscriptionSearchModifier { + /** + * Used to match a value according to FHIR Search rules (e.g., Patient/123, Encounter/2002). + */ + EQUAL, + /** + * The value for the parameter in the resource is equal to the provided value. + */ + EQ, + /** + * The value for the parameter in the resource is not equal to the provided value. + */ + NE, + /** + * The value for the parameter in the resource is greater than the provided value. + */ + GT, + /** + * The value for the parameter in the resource is less than the provided value. + */ + LT, + /** + * The value for the parameter in the resource is greater or equal to the provided value. + */ + GE, + /** + * The value for the parameter in the resource is less or equal to the provided value. + */ + LE, + /** + * The value for the parameter in the resource starts after the provided value. + */ + SA, + /** + * The value for the parameter in the resource ends before the provided value. + */ + EB, + /** + * The value for the parameter in the resource is approximately the same to the provided value. Note that the recommended value for the approximation is 10% of the stated value (or for a date, 10% of the gap between now and the date), but systems may choose other values where appropriate. + */ + AP, + /** + * The search parameter is a concept with the form [system]|[code], and the search parameter tests whether the coding in a resource subsumes the specified search code. + */ + ABOVE, + /** + * The search parameter is a concept with the form [system]|[code], and the search parameter tests whether the coding in a resource is subsumed by the specified search code. + */ + BELOW, + /** + * The search parameter is a member of a Group or List, or the search parameter is a URI (relative or absolute) that identifies a value set, and the search parameter tests whether the value is present in the specified Group, List, or Value Set. + */ + IN, + /** + * The search parameter is a member of a Group or List, or the search parameter is a URI (relative or absolute) that identifies a value set, and the search parameter tests whether the value is NOT present in the specified Group, List, or Value Set. + */ + NOTIN, + /** + * The search parameter has the format system|code|value, where the system and code refer to a Identifier.type.coding.system and .code, and match if any of the type codes match. All 3 parts must be present. + */ + OFTYPE, + /** + * added to help the parsers + */ + NULL; + public static SubscriptionSearchModifier fromCode(String codeString) throws FHIRException { + if (codeString == null || "".equals(codeString)) + return null; + if ("=".equals(codeString)) + return EQUAL; + if ("eq".equals(codeString)) + return EQ; + if ("ne".equals(codeString)) + return NE; + if ("gt".equals(codeString)) + return GT; + if ("lt".equals(codeString)) + return LT; + if ("ge".equals(codeString)) + return GE; + if ("le".equals(codeString)) + return LE; + if ("sa".equals(codeString)) + return SA; + if ("eb".equals(codeString)) + return EB; + if ("ap".equals(codeString)) + return AP; + if ("above".equals(codeString)) + return ABOVE; + if ("below".equals(codeString)) + return BELOW; + if ("in".equals(codeString)) + return IN; + if ("not-in".equals(codeString)) + return NOTIN; + if ("of-type".equals(codeString)) + return OFTYPE; + throw new FHIRException("Unknown SubscriptionSearchModifier code '"+codeString+"'"); + } + public String toCode() { + switch (this) { + case EQUAL: return "="; + case EQ: return "eq"; + case NE: return "ne"; + case GT: return "gt"; + case LT: return "lt"; + case GE: return "ge"; + case LE: return "le"; + case SA: return "sa"; + case EB: return "eb"; + case AP: return "ap"; + case ABOVE: return "above"; + case BELOW: return "below"; + case IN: return "in"; + case NOTIN: return "not-in"; + case OFTYPE: return "of-type"; + default: return "?"; + } + } + public String getSystem() { + switch (this) { + case EQUAL: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case EQ: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case NE: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case GT: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case LT: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case GE: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case LE: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case SA: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case EB: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case AP: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case ABOVE: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case BELOW: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case IN: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case NOTIN: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + case OFTYPE: return "http://terminology.hl7.org/CodeSystem/subscription-search-modifier"; + default: return "?"; + } + } + public String getDefinition() { + switch (this) { + case EQUAL: return "Used to match a value according to FHIR Search rules (e.g., Patient/123, Encounter/2002)."; + case EQ: return "The value for the parameter in the resource is equal to the provided value."; + case NE: return "The value for the parameter in the resource is not equal to the provided value."; + case GT: return "The value for the parameter in the resource is greater than the provided value."; + case LT: return "The value for the parameter in the resource is less than the provided value."; + case GE: return "The value for the parameter in the resource is greater or equal to the provided value."; + case LE: return "The value for the parameter in the resource is less or equal to the provided value."; + case SA: return "The value for the parameter in the resource starts after the provided value."; + case EB: return "The value for the parameter in the resource ends before the provided value."; + case AP: return "The value for the parameter in the resource is approximately the same to the provided value. Note that the recommended value for the approximation is 10% of the stated value (or for a date, 10% of the gap between now and the date), but systems may choose other values where appropriate."; + case ABOVE: return "The search parameter is a concept with the form [system]|[code], and the search parameter tests whether the coding in a resource subsumes the specified search code."; + case BELOW: return "The search parameter is a concept with the form [system]|[code], and the search parameter tests whether the coding in a resource is subsumed by the specified search code."; + case IN: return "The search parameter is a member of a Group or List, or the search parameter is a URI (relative or absolute) that identifies a value set, and the search parameter tests whether the value is present in the specified Group, List, or Value Set."; + case NOTIN: return "The search parameter is a member of a Group or List, or the search parameter is a URI (relative or absolute) that identifies a value set, and the search parameter tests whether the value is NOT present in the specified Group, List, or Value Set."; + case OFTYPE: return "The search parameter has the format system|code|value, where the system and code refer to a Identifier.type.coding.system and .code, and match if any of the type codes match. All 3 parts must be present."; + default: return "?"; + } + } + public String getDisplay() { + switch (this) { + case EQUAL: return "="; + case EQ: return "Equal"; + case NE: return "Not Equal"; + case GT: return "Greater Than"; + case LT: return "Less Than"; + case GE: return "Greater Than or Equal"; + case LE: return "Less Than or Equal"; + case SA: return "Starts After"; + case EB: return "Ends Before"; + case AP: return "Approximately"; + case ABOVE: return "Above"; + case BELOW: return "Below"; + case IN: return "In"; + case NOTIN: return "Not In"; + case OFTYPE: return "Of Type"; + default: return "?"; + } + } + } + + public static class SubscriptionSearchModifierEnumFactory implements EnumFactory { + public SubscriptionSearchModifier fromCode(String codeString) throws IllegalArgumentException { + if (codeString == null || "".equals(codeString)) + if (codeString == null || "".equals(codeString)) + return null; + if ("=".equals(codeString)) + return SubscriptionSearchModifier.EQUAL; + if ("eq".equals(codeString)) + return SubscriptionSearchModifier.EQ; + if ("ne".equals(codeString)) + return SubscriptionSearchModifier.NE; + if ("gt".equals(codeString)) + return SubscriptionSearchModifier.GT; + if ("lt".equals(codeString)) + return SubscriptionSearchModifier.LT; + if ("ge".equals(codeString)) + return SubscriptionSearchModifier.GE; + if ("le".equals(codeString)) + return SubscriptionSearchModifier.LE; + if ("sa".equals(codeString)) + return SubscriptionSearchModifier.SA; + if ("eb".equals(codeString)) + return SubscriptionSearchModifier.EB; + if ("ap".equals(codeString)) + return SubscriptionSearchModifier.AP; + if ("above".equals(codeString)) + return SubscriptionSearchModifier.ABOVE; + if ("below".equals(codeString)) + return SubscriptionSearchModifier.BELOW; + if ("in".equals(codeString)) + return SubscriptionSearchModifier.IN; + if ("not-in".equals(codeString)) + return SubscriptionSearchModifier.NOTIN; + if ("of-type".equals(codeString)) + return SubscriptionSearchModifier.OFTYPE; + throw new IllegalArgumentException("Unknown SubscriptionSearchModifier code '"+codeString+"'"); + } + public Enumeration fromType(Base code) throws FHIRException { + if (code == null) + return null; + if (code.isEmpty()) + return new Enumeration(this); + String codeString = ((PrimitiveType) code).asStringValue(); + if (codeString == null || "".equals(codeString)) + return null; + if ("=".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.EQUAL); + if ("eq".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.EQ); + if ("ne".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.NE); + if ("gt".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.GT); + if ("lt".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.LT); + if ("ge".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.GE); + if ("le".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.LE); + if ("sa".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.SA); + if ("eb".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.EB); + if ("ap".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.AP); + if ("above".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.ABOVE); + if ("below".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.BELOW); + if ("in".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.IN); + if ("not-in".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.NOTIN); + if ("of-type".equals(codeString)) + return new Enumeration(this, SubscriptionSearchModifier.OFTYPE); + throw new FHIRException("Unknown SubscriptionSearchModifier code '"+codeString+"'"); + } + public String toCode(SubscriptionSearchModifier code) { + if (code == SubscriptionSearchModifier.EQUAL) + return "="; + if (code == SubscriptionSearchModifier.EQ) + return "eq"; + if (code == SubscriptionSearchModifier.NE) + return "ne"; + if (code == SubscriptionSearchModifier.GT) + return "gt"; + if (code == SubscriptionSearchModifier.LT) + return "lt"; + if (code == SubscriptionSearchModifier.GE) + return "ge"; + if (code == SubscriptionSearchModifier.LE) + return "le"; + if (code == SubscriptionSearchModifier.SA) + return "sa"; + if (code == SubscriptionSearchModifier.EB) + return "eb"; + if (code == SubscriptionSearchModifier.AP) + return "ap"; + if (code == SubscriptionSearchModifier.ABOVE) + return "above"; + if (code == SubscriptionSearchModifier.BELOW) + return "below"; + if (code == SubscriptionSearchModifier.IN) + return "in"; + if (code == SubscriptionSearchModifier.NOTIN) + return "not-in"; + if (code == SubscriptionSearchModifier.OFTYPE) + return "of-type"; + return "?"; + } + public String toSystem(SubscriptionSearchModifier code) { + return code.getSystem(); + } + } + + public enum SubscriptionState { + /** + * The client has requested the subscription, and the server has not yet set it up. + */ + REQUESTED, + /** + * The subscription is active. + */ + ACTIVE, + /** + * The server has an error executing the notification. + */ + ERROR, + /** + * Too many errors have occurred or the subscription has expired. + */ + OFF, + /** + * added to help the parsers + */ + NULL; + public static SubscriptionState fromCode(String codeString) throws FHIRException { + if (codeString == null || "".equals(codeString)) + return null; + if ("requested".equals(codeString)) + return REQUESTED; + if ("active".equals(codeString)) + return ACTIVE; + if ("error".equals(codeString)) + return ERROR; + if ("off".equals(codeString)) + return OFF; + throw new FHIRException("Unknown SubscriptionState code '"+codeString+"'"); + } + public String toCode() { + switch (this) { + case REQUESTED: return "requested"; + case ACTIVE: return "active"; + case ERROR: return "error"; + case OFF: return "off"; + default: return "?"; + } + } + public String getSystem() { + switch (this) { + case REQUESTED: return "http://terminology.hl7.org/CodeSystem/subscription-state"; + case ACTIVE: return "http://terminology.hl7.org/CodeSystem/subscription-state"; + case ERROR: return "http://terminology.hl7.org/CodeSystem/subscription-state"; + case OFF: return "http://terminology.hl7.org/CodeSystem/subscription-state"; + default: return "?"; + } + } + public String getDefinition() { + switch (this) { + case REQUESTED: return "The client has requested the subscription, and the server has not yet set it up."; + case ACTIVE: return "The subscription is active."; + case ERROR: return "The server has an error executing the notification."; + case OFF: return "Too many errors have occurred or the subscription has expired."; + default: return "?"; + } + } + public String getDisplay() { + switch (this) { + case REQUESTED: return "Requested"; + case ACTIVE: return "Active"; + case ERROR: return "Error"; + case OFF: return "Off"; + default: return "?"; + } + } + } + + public static class SubscriptionStateEnumFactory implements EnumFactory { + public SubscriptionState fromCode(String codeString) throws IllegalArgumentException { + if (codeString == null || "".equals(codeString)) + if (codeString == null || "".equals(codeString)) + return null; + if ("requested".equals(codeString)) + return SubscriptionState.REQUESTED; + if ("active".equals(codeString)) + return SubscriptionState.ACTIVE; + if ("error".equals(codeString)) + return SubscriptionState.ERROR; + if ("off".equals(codeString)) + return SubscriptionState.OFF; + throw new IllegalArgumentException("Unknown SubscriptionState code '"+codeString+"'"); + } + public Enumeration fromType(Base code) throws FHIRException { + if (code == null) + return null; + if (code.isEmpty()) + return new Enumeration(this); + String codeString = ((PrimitiveType) code).asStringValue(); + if (codeString == null || "".equals(codeString)) + return null; + if ("requested".equals(codeString)) + return new Enumeration(this, SubscriptionState.REQUESTED); + if ("active".equals(codeString)) + return new Enumeration(this, SubscriptionState.ACTIVE); + if ("error".equals(codeString)) + return new Enumeration(this, SubscriptionState.ERROR); + if ("off".equals(codeString)) + return new Enumeration(this, SubscriptionState.OFF); + throw new FHIRException("Unknown SubscriptionState code '"+codeString+"'"); + } + public String toCode(SubscriptionState code) { + if (code == SubscriptionState.REQUESTED) + return "requested"; + if (code == SubscriptionState.ACTIVE) + return "active"; + if (code == SubscriptionState.ERROR) + return "error"; + if (code == SubscriptionState.OFF) + return "off"; + return "?"; + } + public String toSystem(SubscriptionState code) { + return code.getSystem(); + } + } + public enum Use { /** * The treatment is complete and this represents a Claim for the services. diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EpisodeOfCare.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EpisodeOfCare.java index a684fc5f6..16fa08622 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EpisodeOfCare.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EpisodeOfCare.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1832,10 +1832,10 @@ public class EpisodeOfCare extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -1861,7 +1861,7 @@ public class EpisodeOfCare extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -1989,10 +1989,10 @@ public class EpisodeOfCare extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2033,7 +2033,7 @@ public class EpisodeOfCare extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EventDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EventDefinition.java index e3864ea36..068a1a87a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EventDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EventDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2256,7 +2256,7 @@ public class EventDefinition extends MetadataResource { * Path: EventDefinition.relatedArtifact.where(type='composed-of').resource
*

*/ - @SearchParamDefinition(name="composed-of", path="EventDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="composed-of", path="EventDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_COMPOSED_OF = "composed-of"; /** * Fluent Client search parameter constant for composed-of @@ -2402,7 +2402,7 @@ public class EventDefinition extends MetadataResource { * Path: EventDefinition.relatedArtifact.where(type='depends-on').resource
*

*/ - @SearchParamDefinition(name="depends-on", path="EventDefinition.relatedArtifact.where(type='depends-on').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="depends-on", path="EventDefinition.relatedArtifact.where(type='depends-on').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DEPENDS_ON = "depends-on"; /** * Fluent Client search parameter constant for depends-on @@ -2428,7 +2428,7 @@ public class EventDefinition extends MetadataResource { * Path: EventDefinition.relatedArtifact.where(type='derived-from').resource
*

*/ - @SearchParamDefinition(name="derived-from", path="EventDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="derived-from", path="EventDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DERIVED_FROM = "derived-from"; /** * Fluent Client search parameter constant for derived-from @@ -2554,7 +2554,7 @@ public class EventDefinition extends MetadataResource { * Path: EventDefinition.relatedArtifact.where(type='predecessor').resource
*

*/ - @SearchParamDefinition(name="predecessor", path="EventDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="predecessor", path="EventDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PREDECESSOR = "predecessor"; /** * Fluent Client search parameter constant for predecessor @@ -2620,7 +2620,7 @@ public class EventDefinition extends MetadataResource { * Path: EventDefinition.relatedArtifact.where(type='successor').resource
*

*/ - @SearchParamDefinition(name="successor", path="EventDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="successor", path="EventDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUCCESSOR = "successor"; /** * Fluent Client search parameter constant for successor diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Evidence.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Evidence.java index 079e34180..d3659a0a6 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Evidence.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Evidence.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -73,405 +73,6 @@ import ca.uhn.fhir.model.api.annotation.Block; @ResourceDef(name="Evidence", profile="http://hl7.org/fhir/StructureDefinition/Evidence") public class Evidence extends MetadataResource { - @Block() - public static class EvidenceReferentGroupComponent extends BackboneElement implements IBaseBackboneElement { - /** - * Textual description of referent group. - */ - @Child(name = "description", type = {MarkdownType.class}, order=1, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Textual description of referent group", formalDefinition="Textual description of referent group." ) - protected MarkdownType description; - - /** - * Footnotes and/or explanatory notes. - */ - @Child(name = "note", type = {Annotation.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Footnotes and/or explanatory notes", formalDefinition="Footnotes and/or explanatory notes." ) - protected List note; - - /** - * Various information categories of group. - */ - @Child(name = "evidenceSource", type = {Group.class}, order=3, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Various information categories of group", formalDefinition="Various information categories of group." ) - protected Reference evidenceSource; - - /** - * Non-actual group that is a set of characteristics. - */ - @Child(name = "intendedGroup", type = {Group.class}, order=4, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Non-actual group that is a set of characteristics", formalDefinition="Non-actual group that is a set of characteristics." ) - protected Reference intendedGroup; - - /** - * Indication of quality of match between intended group to actual group. - */ - @Child(name = "directnessMatch", type = {CodeableConcept.class}, order=5, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="low | moderate | high | exact", formalDefinition="Indication of quality of match between intended group to actual group." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/directness") - protected CodeableConcept directnessMatch; - - private static final long serialVersionUID = -444548956L; - - /** - * Constructor - */ - public EvidenceReferentGroupComponent() { - super(); - } - - /** - * @return {@link #description} (Textual description of referent group.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value - */ - public MarkdownType getDescriptionElement() { - if (this.description == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create EvidenceReferentGroupComponent.description"); - else if (Configuration.doAutoCreate()) - this.description = new MarkdownType(); // bb - return this.description; - } - - public boolean hasDescriptionElement() { - return this.description != null && !this.description.isEmpty(); - } - - public boolean hasDescription() { - return this.description != null && !this.description.isEmpty(); - } - - /** - * @param value {@link #description} (Textual description of referent group.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value - */ - public EvidenceReferentGroupComponent setDescriptionElement(MarkdownType value) { - this.description = value; - return this; - } - - /** - * @return Textual description of referent group. - */ - public String getDescription() { - return this.description == null ? null : this.description.getValue(); - } - - /** - * @param value Textual description of referent group. - */ - public EvidenceReferentGroupComponent setDescription(String value) { - if (value == null) - this.description = null; - else { - if (this.description == null) - this.description = new MarkdownType(); - this.description.setValue(value); - } - return this; - } - - /** - * @return {@link #note} (Footnotes and/or explanatory notes.) - */ - public List getNote() { - if (this.note == null) - this.note = new ArrayList(); - return this.note; - } - - /** - * @return Returns a reference to this for easy method chaining - */ - public EvidenceReferentGroupComponent setNote(List theNote) { - this.note = theNote; - return this; - } - - public boolean hasNote() { - if (this.note == null) - return false; - for (Annotation item : this.note) - if (!item.isEmpty()) - return true; - return false; - } - - public Annotation addNote() { //3 - Annotation t = new Annotation(); - if (this.note == null) - this.note = new ArrayList(); - this.note.add(t); - return t; - } - - public EvidenceReferentGroupComponent addNote(Annotation t) { //3 - if (t == null) - return this; - if (this.note == null) - this.note = new ArrayList(); - this.note.add(t); - return this; - } - - /** - * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} - */ - public Annotation getNoteFirstRep() { - if (getNote().isEmpty()) { - addNote(); - } - return getNote().get(0); - } - - /** - * @return {@link #evidenceSource} (Various information categories of group.) - */ - public Reference getEvidenceSource() { - if (this.evidenceSource == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create EvidenceReferentGroupComponent.evidenceSource"); - else if (Configuration.doAutoCreate()) - this.evidenceSource = new Reference(); // cc - return this.evidenceSource; - } - - public boolean hasEvidenceSource() { - return this.evidenceSource != null && !this.evidenceSource.isEmpty(); - } - - /** - * @param value {@link #evidenceSource} (Various information categories of group.) - */ - public EvidenceReferentGroupComponent setEvidenceSource(Reference value) { - this.evidenceSource = value; - return this; - } - - /** - * @return {@link #intendedGroup} (Non-actual group that is a set of characteristics.) - */ - public Reference getIntendedGroup() { - if (this.intendedGroup == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create EvidenceReferentGroupComponent.intendedGroup"); - else if (Configuration.doAutoCreate()) - this.intendedGroup = new Reference(); // cc - return this.intendedGroup; - } - - public boolean hasIntendedGroup() { - return this.intendedGroup != null && !this.intendedGroup.isEmpty(); - } - - /** - * @param value {@link #intendedGroup} (Non-actual group that is a set of characteristics.) - */ - public EvidenceReferentGroupComponent setIntendedGroup(Reference value) { - this.intendedGroup = value; - return this; - } - - /** - * @return {@link #directnessMatch} (Indication of quality of match between intended group to actual group.) - */ - public CodeableConcept getDirectnessMatch() { - if (this.directnessMatch == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create EvidenceReferentGroupComponent.directnessMatch"); - else if (Configuration.doAutoCreate()) - this.directnessMatch = new CodeableConcept(); // cc - return this.directnessMatch; - } - - public boolean hasDirectnessMatch() { - return this.directnessMatch != null && !this.directnessMatch.isEmpty(); - } - - /** - * @param value {@link #directnessMatch} (Indication of quality of match between intended group to actual group.) - */ - public EvidenceReferentGroupComponent setDirectnessMatch(CodeableConcept value) { - this.directnessMatch = value; - return this; - } - - protected void listChildren(List children) { - super.listChildren(children); - children.add(new Property("description", "markdown", "Textual description of referent group.", 0, 1, description)); - children.add(new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, note)); - children.add(new Property("evidenceSource", "Reference(Group)", "Various information categories of group.", 0, 1, evidenceSource)); - children.add(new Property("intendedGroup", "Reference(Group)", "Non-actual group that is a set of characteristics.", 0, 1, intendedGroup)); - children.add(new Property("directnessMatch", "CodeableConcept", "Indication of quality of match between intended group to actual group.", 0, 1, directnessMatch)); - } - - @Override - public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { - switch (_hash) { - case -1724546052: /*description*/ return new Property("description", "markdown", "Textual description of referent group.", 0, 1, description); - case 3387378: /*note*/ return new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, note); - case 324572498: /*evidenceSource*/ return new Property("evidenceSource", "Reference(Group)", "Various information categories of group.", 0, 1, evidenceSource); - case -777873132: /*intendedGroup*/ return new Property("intendedGroup", "Reference(Group)", "Non-actual group that is a set of characteristics.", 0, 1, intendedGroup); - case -2144864283: /*directnessMatch*/ return new Property("directnessMatch", "CodeableConcept", "Indication of quality of match between intended group to actual group.", 0, 1, directnessMatch); - default: return super.getNamedProperty(_hash, _name, _checkValid); - } - - } - - @Override - public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { - switch (hash) { - case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType - case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation - case 324572498: /*evidenceSource*/ return this.evidenceSource == null ? new Base[0] : new Base[] {this.evidenceSource}; // Reference - case -777873132: /*intendedGroup*/ return this.intendedGroup == null ? new Base[0] : new Base[] {this.intendedGroup}; // Reference - case -2144864283: /*directnessMatch*/ return this.directnessMatch == null ? new Base[0] : new Base[] {this.directnessMatch}; // CodeableConcept - default: return super.getProperty(hash, name, checkValid); - } - - } - - @Override - public Base setProperty(int hash, String name, Base value) throws FHIRException { - switch (hash) { - case -1724546052: // description - this.description = TypeConvertor.castToMarkdown(value); // MarkdownType - return value; - case 3387378: // note - this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation - return value; - case 324572498: // evidenceSource - this.evidenceSource = TypeConvertor.castToReference(value); // Reference - return value; - case -777873132: // intendedGroup - this.intendedGroup = TypeConvertor.castToReference(value); // Reference - return value; - case -2144864283: // directnessMatch - this.directnessMatch = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - return value; - default: return super.setProperty(hash, name, value); - } - - } - - @Override - public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("description")) { - this.description = TypeConvertor.castToMarkdown(value); // MarkdownType - } else if (name.equals("note")) { - this.getNote().add(TypeConvertor.castToAnnotation(value)); - } else if (name.equals("evidenceSource")) { - this.evidenceSource = TypeConvertor.castToReference(value); // Reference - } else if (name.equals("intendedGroup")) { - this.intendedGroup = TypeConvertor.castToReference(value); // Reference - } else if (name.equals("directnessMatch")) { - this.directnessMatch = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - } else - return super.setProperty(name, value); - return value; - } - - @Override - public Base makeProperty(int hash, String name) throws FHIRException { - switch (hash) { - case -1724546052: return getDescriptionElement(); - case 3387378: return addNote(); - case 324572498: return getEvidenceSource(); - case -777873132: return getIntendedGroup(); - case -2144864283: return getDirectnessMatch(); - default: return super.makeProperty(hash, name); - } - - } - - @Override - public String[] getTypesForProperty(int hash, String name) throws FHIRException { - switch (hash) { - case -1724546052: /*description*/ return new String[] {"markdown"}; - case 3387378: /*note*/ return new String[] {"Annotation"}; - case 324572498: /*evidenceSource*/ return new String[] {"Reference"}; - case -777873132: /*intendedGroup*/ return new String[] {"Reference"}; - case -2144864283: /*directnessMatch*/ return new String[] {"CodeableConcept"}; - default: return super.getTypesForProperty(hash, name); - } - - } - - @Override - public Base addChild(String name) throws FHIRException { - if (name.equals("description")) { - throw new FHIRException("Cannot call addChild on a primitive type Evidence.referentGroup.description"); - } - else if (name.equals("note")) { - return addNote(); - } - else if (name.equals("evidenceSource")) { - this.evidenceSource = new Reference(); - return this.evidenceSource; - } - else if (name.equals("intendedGroup")) { - this.intendedGroup = new Reference(); - return this.intendedGroup; - } - else if (name.equals("directnessMatch")) { - this.directnessMatch = new CodeableConcept(); - return this.directnessMatch; - } - else - return super.addChild(name); - } - - public EvidenceReferentGroupComponent copy() { - EvidenceReferentGroupComponent dst = new EvidenceReferentGroupComponent(); - copyValues(dst); - return dst; - } - - public void copyValues(EvidenceReferentGroupComponent dst) { - super.copyValues(dst); - dst.description = description == null ? null : description.copy(); - if (note != null) { - dst.note = new ArrayList(); - for (Annotation i : note) - dst.note.add(i.copy()); - }; - dst.evidenceSource = evidenceSource == null ? null : evidenceSource.copy(); - dst.intendedGroup = intendedGroup == null ? null : intendedGroup.copy(); - dst.directnessMatch = directnessMatch == null ? null : directnessMatch.copy(); - } - - @Override - public boolean equalsDeep(Base other_) { - if (!super.equalsDeep(other_)) - return false; - if (!(other_ instanceof EvidenceReferentGroupComponent)) - return false; - EvidenceReferentGroupComponent o = (EvidenceReferentGroupComponent) other_; - return compareDeep(description, o.description, true) && compareDeep(note, o.note, true) && compareDeep(evidenceSource, o.evidenceSource, true) - && compareDeep(intendedGroup, o.intendedGroup, true) && compareDeep(directnessMatch, o.directnessMatch, true) - ; - } - - @Override - public boolean equalsShallow(Base other_) { - if (!super.equalsShallow(other_)) - return false; - if (!(other_ instanceof EvidenceReferentGroupComponent)) - return false; - EvidenceReferentGroupComponent o = (EvidenceReferentGroupComponent) other_; - return compareValues(description, o.description, true); - } - - public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(description, note, evidenceSource - , intendedGroup, directnessMatch); - } - - public String fhirType() { - return "Evidence.referentGroup"; - - } - - } - @Block() public static class EvidenceVariableDefinitionComponent extends BackboneElement implements IBaseBackboneElement { /** @@ -489,26 +90,26 @@ public class Evidence extends MetadataResource { protected List note; /** - * exposure | referenceExposure | measuredVariable | confounder. + * population | subpopulation | exposure | referenceExposure | measuredVariable | confounder. */ - @Child(name = "variableRole", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="exposure | referenceExposure | measuredVariable | confounder", formalDefinition="exposure | referenceExposure | measuredVariable | confounder." ) + @Child(name = "variableRole", type = {CodeableConcept.class}, order=3, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="population | subpopulation | exposure | referenceExposure | measuredVariable | confounder", formalDefinition="population | subpopulation | exposure | referenceExposure | measuredVariable | confounder." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/variable-role") protected CodeableConcept variableRole; /** * Definition of the actual variable related to the statistic(s). */ - @Child(name = "actualDefinition", type = {EvidenceVariable.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Child(name = "observed", type = {Group.class, EvidenceVariable.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Definition of the actual variable related to the statistic(s)", formalDefinition="Definition of the actual variable related to the statistic(s)." ) - protected Reference actualDefinition; + protected Reference observed; /** * Definition of the intended variable related to the Evidence. */ - @Child(name = "intendedDefinition", type = {EvidenceVariable.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Child(name = "intended", type = {Group.class, EvidenceVariable.class}, order=5, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Definition of the intended variable related to the Evidence", formalDefinition="Definition of the intended variable related to the Evidence." ) - protected Reference intendedDefinition; + protected Reference intended; /** * Indication of quality of match between intended variable to actual variable. @@ -518,7 +119,7 @@ public class Evidence extends MetadataResource { @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/directness") protected CodeableConcept directnessMatch; - private static final long serialVersionUID = -1887907534L; + private static final long serialVersionUID = -702346164L; /** * Constructor @@ -527,6 +128,14 @@ public class Evidence extends MetadataResource { super(); } + /** + * Constructor + */ + public EvidenceVariableDefinitionComponent(CodeableConcept variableRole) { + super(); + this.setVariableRole(variableRole); + } + /** * @return {@link #description} (Description of the variable.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value */ @@ -630,7 +239,7 @@ public class Evidence extends MetadataResource { } /** - * @return {@link #variableRole} (exposure | referenceExposure | measuredVariable | confounder.) + * @return {@link #variableRole} (population | subpopulation | exposure | referenceExposure | measuredVariable | confounder.) */ public CodeableConcept getVariableRole() { if (this.variableRole == null) @@ -646,7 +255,7 @@ public class Evidence extends MetadataResource { } /** - * @param value {@link #variableRole} (exposure | referenceExposure | measuredVariable | confounder.) + * @param value {@link #variableRole} (population | subpopulation | exposure | referenceExposure | measuredVariable | confounder.) */ public EvidenceVariableDefinitionComponent setVariableRole(CodeableConcept value) { this.variableRole = value; @@ -654,50 +263,50 @@ public class Evidence extends MetadataResource { } /** - * @return {@link #actualDefinition} (Definition of the actual variable related to the statistic(s).) + * @return {@link #observed} (Definition of the actual variable related to the statistic(s).) */ - public Reference getActualDefinition() { - if (this.actualDefinition == null) + public Reference getObserved() { + if (this.observed == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create EvidenceVariableDefinitionComponent.actualDefinition"); + throw new Error("Attempt to auto-create EvidenceVariableDefinitionComponent.observed"); else if (Configuration.doAutoCreate()) - this.actualDefinition = new Reference(); // cc - return this.actualDefinition; + this.observed = new Reference(); // cc + return this.observed; } - public boolean hasActualDefinition() { - return this.actualDefinition != null && !this.actualDefinition.isEmpty(); + public boolean hasObserved() { + return this.observed != null && !this.observed.isEmpty(); } /** - * @param value {@link #actualDefinition} (Definition of the actual variable related to the statistic(s).) + * @param value {@link #observed} (Definition of the actual variable related to the statistic(s).) */ - public EvidenceVariableDefinitionComponent setActualDefinition(Reference value) { - this.actualDefinition = value; + public EvidenceVariableDefinitionComponent setObserved(Reference value) { + this.observed = value; return this; } /** - * @return {@link #intendedDefinition} (Definition of the intended variable related to the Evidence.) + * @return {@link #intended} (Definition of the intended variable related to the Evidence.) */ - public Reference getIntendedDefinition() { - if (this.intendedDefinition == null) + public Reference getIntended() { + if (this.intended == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create EvidenceVariableDefinitionComponent.intendedDefinition"); + throw new Error("Attempt to auto-create EvidenceVariableDefinitionComponent.intended"); else if (Configuration.doAutoCreate()) - this.intendedDefinition = new Reference(); // cc - return this.intendedDefinition; + this.intended = new Reference(); // cc + return this.intended; } - public boolean hasIntendedDefinition() { - return this.intendedDefinition != null && !this.intendedDefinition.isEmpty(); + public boolean hasIntended() { + return this.intended != null && !this.intended.isEmpty(); } /** - * @param value {@link #intendedDefinition} (Definition of the intended variable related to the Evidence.) + * @param value {@link #intended} (Definition of the intended variable related to the Evidence.) */ - public EvidenceVariableDefinitionComponent setIntendedDefinition(Reference value) { - this.intendedDefinition = value; + public EvidenceVariableDefinitionComponent setIntended(Reference value) { + this.intended = value; return this; } @@ -729,9 +338,9 @@ public class Evidence extends MetadataResource { super.listChildren(children); children.add(new Property("description", "markdown", "Description of the variable.", 0, 1, description)); children.add(new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, note)); - children.add(new Property("variableRole", "CodeableConcept", "exposure | referenceExposure | measuredVariable | confounder.", 0, 1, variableRole)); - children.add(new Property("actualDefinition", "Reference(EvidenceVariable)", "Definition of the actual variable related to the statistic(s).", 0, 1, actualDefinition)); - children.add(new Property("intendedDefinition", "Reference(EvidenceVariable)", "Definition of the intended variable related to the Evidence.", 0, 1, intendedDefinition)); + children.add(new Property("variableRole", "CodeableConcept", "population | subpopulation | exposure | referenceExposure | measuredVariable | confounder.", 0, 1, variableRole)); + children.add(new Property("observed", "Reference(Group|EvidenceVariable)", "Definition of the actual variable related to the statistic(s).", 0, 1, observed)); + children.add(new Property("intended", "Reference(Group|EvidenceVariable)", "Definition of the intended variable related to the Evidence.", 0, 1, intended)); children.add(new Property("directnessMatch", "CodeableConcept", "Indication of quality of match between intended variable to actual variable.", 0, 1, directnessMatch)); } @@ -740,9 +349,9 @@ public class Evidence extends MetadataResource { switch (_hash) { case -1724546052: /*description*/ return new Property("description", "markdown", "Description of the variable.", 0, 1, description); case 3387378: /*note*/ return new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, note); - case -372889326: /*variableRole*/ return new Property("variableRole", "CodeableConcept", "exposure | referenceExposure | measuredVariable | confounder.", 0, 1, variableRole); - case -2019122815: /*actualDefinition*/ return new Property("actualDefinition", "Reference(EvidenceVariable)", "Definition of the actual variable related to the statistic(s).", 0, 1, actualDefinition); - case -1749096482: /*intendedDefinition*/ return new Property("intendedDefinition", "Reference(EvidenceVariable)", "Definition of the intended variable related to the Evidence.", 0, 1, intendedDefinition); + case -372889326: /*variableRole*/ return new Property("variableRole", "CodeableConcept", "population | subpopulation | exposure | referenceExposure | measuredVariable | confounder.", 0, 1, variableRole); + case 348607176: /*observed*/ return new Property("observed", "Reference(Group|EvidenceVariable)", "Definition of the actual variable related to the statistic(s).", 0, 1, observed); + case 570282027: /*intended*/ return new Property("intended", "Reference(Group|EvidenceVariable)", "Definition of the intended variable related to the Evidence.", 0, 1, intended); case -2144864283: /*directnessMatch*/ return new Property("directnessMatch", "CodeableConcept", "Indication of quality of match between intended variable to actual variable.", 0, 1, directnessMatch); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -755,8 +364,8 @@ public class Evidence extends MetadataResource { case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation case -372889326: /*variableRole*/ return this.variableRole == null ? new Base[0] : new Base[] {this.variableRole}; // CodeableConcept - case -2019122815: /*actualDefinition*/ return this.actualDefinition == null ? new Base[0] : new Base[] {this.actualDefinition}; // Reference - case -1749096482: /*intendedDefinition*/ return this.intendedDefinition == null ? new Base[0] : new Base[] {this.intendedDefinition}; // Reference + case 348607176: /*observed*/ return this.observed == null ? new Base[0] : new Base[] {this.observed}; // Reference + case 570282027: /*intended*/ return this.intended == null ? new Base[0] : new Base[] {this.intended}; // Reference case -2144864283: /*directnessMatch*/ return this.directnessMatch == null ? new Base[0] : new Base[] {this.directnessMatch}; // CodeableConcept default: return super.getProperty(hash, name, checkValid); } @@ -775,11 +384,11 @@ public class Evidence extends MetadataResource { case -372889326: // variableRole this.variableRole = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; - case -2019122815: // actualDefinition - this.actualDefinition = TypeConvertor.castToReference(value); // Reference + case 348607176: // observed + this.observed = TypeConvertor.castToReference(value); // Reference return value; - case -1749096482: // intendedDefinition - this.intendedDefinition = TypeConvertor.castToReference(value); // Reference + case 570282027: // intended + this.intended = TypeConvertor.castToReference(value); // Reference return value; case -2144864283: // directnessMatch this.directnessMatch = TypeConvertor.castToCodeableConcept(value); // CodeableConcept @@ -797,10 +406,10 @@ public class Evidence extends MetadataResource { this.getNote().add(TypeConvertor.castToAnnotation(value)); } else if (name.equals("variableRole")) { this.variableRole = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - } else if (name.equals("actualDefinition")) { - this.actualDefinition = TypeConvertor.castToReference(value); // Reference - } else if (name.equals("intendedDefinition")) { - this.intendedDefinition = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("observed")) { + this.observed = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("intended")) { + this.intended = TypeConvertor.castToReference(value); // Reference } else if (name.equals("directnessMatch")) { this.directnessMatch = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else @@ -814,8 +423,8 @@ public class Evidence extends MetadataResource { case -1724546052: return getDescriptionElement(); case 3387378: return addNote(); case -372889326: return getVariableRole(); - case -2019122815: return getActualDefinition(); - case -1749096482: return getIntendedDefinition(); + case 348607176: return getObserved(); + case 570282027: return getIntended(); case -2144864283: return getDirectnessMatch(); default: return super.makeProperty(hash, name); } @@ -828,8 +437,8 @@ public class Evidence extends MetadataResource { case -1724546052: /*description*/ return new String[] {"markdown"}; case 3387378: /*note*/ return new String[] {"Annotation"}; case -372889326: /*variableRole*/ return new String[] {"CodeableConcept"}; - case -2019122815: /*actualDefinition*/ return new String[] {"Reference"}; - case -1749096482: /*intendedDefinition*/ return new String[] {"Reference"}; + case 348607176: /*observed*/ return new String[] {"Reference"}; + case 570282027: /*intended*/ return new String[] {"Reference"}; case -2144864283: /*directnessMatch*/ return new String[] {"CodeableConcept"}; default: return super.getTypesForProperty(hash, name); } @@ -848,13 +457,13 @@ public class Evidence extends MetadataResource { this.variableRole = new CodeableConcept(); return this.variableRole; } - else if (name.equals("actualDefinition")) { - this.actualDefinition = new Reference(); - return this.actualDefinition; + else if (name.equals("observed")) { + this.observed = new Reference(); + return this.observed; } - else if (name.equals("intendedDefinition")) { - this.intendedDefinition = new Reference(); - return this.intendedDefinition; + else if (name.equals("intended")) { + this.intended = new Reference(); + return this.intended; } else if (name.equals("directnessMatch")) { this.directnessMatch = new CodeableConcept(); @@ -879,8 +488,8 @@ public class Evidence extends MetadataResource { dst.note.add(i.copy()); }; dst.variableRole = variableRole == null ? null : variableRole.copy(); - dst.actualDefinition = actualDefinition == null ? null : actualDefinition.copy(); - dst.intendedDefinition = intendedDefinition == null ? null : intendedDefinition.copy(); + dst.observed = observed == null ? null : observed.copy(); + dst.intended = intended == null ? null : intended.copy(); dst.directnessMatch = directnessMatch == null ? null : directnessMatch.copy(); } @@ -892,8 +501,8 @@ public class Evidence extends MetadataResource { return false; EvidenceVariableDefinitionComponent o = (EvidenceVariableDefinitionComponent) other_; return compareDeep(description, o.description, true) && compareDeep(note, o.note, true) && compareDeep(variableRole, o.variableRole, true) - && compareDeep(actualDefinition, o.actualDefinition, true) && compareDeep(intendedDefinition, o.intendedDefinition, true) - && compareDeep(directnessMatch, o.directnessMatch, true); + && compareDeep(observed, o.observed, true) && compareDeep(intended, o.intended, true) && compareDeep(directnessMatch, o.directnessMatch, true) + ; } @Override @@ -908,7 +517,7 @@ public class Evidence extends MetadataResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(description, note, variableRole - , actualDefinition, intendedDefinition, directnessMatch); + , observed, intended, directnessMatch); } public String fhirType() { @@ -1312,17 +921,17 @@ public class Evidence extends MetadataResource { protected StringType description; /** - * Textual note of certainty subcomponent. + * Footnotes and/or explanatory notes. */ @Child(name = "note", type = {Annotation.class}, order=2, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Textual note of certainty subcomponent", formalDefinition="Textual note of certainty subcomponent." ) + @Description(shortDefinition="Footnotes and/or explanatory notes", formalDefinition="Footnotes and/or explanatory notes." ) protected Annotation note; /** - * Footnotes and/or explanatory notes. + * Type of certainty being rated. */ @Child(name = "type", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Footnotes and/or explanatory notes", formalDefinition="Footnotes and/or explanatory notes." ) + @Description(shortDefinition="Type of certainty being rated", formalDefinition="Type of certainty being rated." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/certainty-subcomponent-type") protected List type; @@ -1393,7 +1002,7 @@ public class Evidence extends MetadataResource { } /** - * @return {@link #note} (Textual note of certainty subcomponent.) + * @return {@link #note} (Footnotes and/or explanatory notes.) */ public Annotation getNote() { if (this.note == null) @@ -1409,7 +1018,7 @@ public class Evidence extends MetadataResource { } /** - * @param value {@link #note} (Textual note of certainty subcomponent.) + * @param value {@link #note} (Footnotes and/or explanatory notes.) */ public EvidenceCertaintyCertaintySubcomponentComponent setNote(Annotation value) { this.note = value; @@ -1417,7 +1026,7 @@ public class Evidence extends MetadataResource { } /** - * @return {@link #type} (Footnotes and/or explanatory notes.) + * @return {@link #type} (Type of certainty being rated.) */ public List getType() { if (this.type == null) @@ -1525,8 +1134,8 @@ public class Evidence extends MetadataResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("description", "string", "Textual description of certainty subcomponent.", 0, 1, description)); - children.add(new Property("note", "Annotation", "Textual note of certainty subcomponent.", 0, 1, note)); - children.add(new Property("type", "CodeableConcept", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, type)); + children.add(new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, 1, note)); + children.add(new Property("type", "CodeableConcept", "Type of certainty being rated.", 0, java.lang.Integer.MAX_VALUE, type)); children.add(new Property("rating", "CodeableConcept", "Rating of certainty subcomponent.", 0, java.lang.Integer.MAX_VALUE, rating)); } @@ -1534,8 +1143,8 @@ public class Evidence extends MetadataResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1724546052: /*description*/ return new Property("description", "string", "Textual description of certainty subcomponent.", 0, 1, description); - case 3387378: /*note*/ return new Property("note", "Annotation", "Textual note of certainty subcomponent.", 0, 1, note); - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, type); + case 3387378: /*note*/ return new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, 1, note); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Type of certainty being rated.", 0, java.lang.Integer.MAX_VALUE, type); case -938102371: /*rating*/ return new Property("rating", "CodeableConcept", "Rating of certainty subcomponent.", 0, java.lang.Integer.MAX_VALUE, rating); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1786,24 +1395,17 @@ public class Evidence extends MetadataResource { @Description(shortDefinition="Footnotes and/or explanatory notes", formalDefinition="Footnotes and/or explanatory notes." ) protected List note; - /** - * Group being referenced. - */ - @Child(name = "referentGroup", type = {}, order=14, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="Group being referenced", formalDefinition="Group being referenced." ) - protected EvidenceReferentGroupComponent referentGroup; - /** * Evidence variable. */ - @Child(name = "variableDefinition", type = {}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "variableDefinition", type = {}, order=14, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Evidence variable", formalDefinition="Evidence variable." ) protected List variableDefinition; /** * The particular type of synthesis if this is a synthesis summary. */ - @Child(name = "synthesisType", type = {CodeableConcept.class}, order=16, min=0, max=1, modifier=false, summary=false) + @Child(name = "synthesisType", type = {CodeableConcept.class}, order=15, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The particular type of synthesis if this is a synthesis summary", formalDefinition="The particular type of synthesis if this is a synthesis summary." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/synthesis-type") protected CodeableConcept synthesisType; @@ -1811,7 +1413,7 @@ public class Evidence extends MetadataResource { /** * The type of study that produced this summary. */ - @Child(name = "studyType", type = {CodeableConcept.class}, order=17, min=0, max=1, modifier=false, summary=false) + @Child(name = "studyType", type = {CodeableConcept.class}, order=16, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The type of study that produced this summary", formalDefinition="The type of study that produced this summary." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/study-type") protected CodeableConcept studyType; @@ -1819,25 +1421,25 @@ public class Evidence extends MetadataResource { /** * The statistic value(s). */ - @Child(name = "statistic", type = {Statistic.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "statistic", type = {Statistic.class}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Values and parameters for a single statistic", formalDefinition="The statistic value(s)." ) protected List statistic; /** * Ordered distribution. */ - @Child(name = "distribution", type = {OrderedDistribution.class}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "distribution", type = {OrderedDistribution.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="An ordered group of statistics", formalDefinition="Ordered distribution." ) protected List distribution; /** * Level of certainty. */ - @Child(name = "certainty", type = {}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "certainty", type = {}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Level of certainty", formalDefinition="Level of certainty." ) protected List certainty; - private static final long serialVersionUID = 1349199117L; + private static final long serialVersionUID = -1916823019L; /** * Constructor @@ -1849,10 +1451,10 @@ public class Evidence extends MetadataResource { /** * Constructor */ - public Evidence(PublicationStatus status, EvidenceReferentGroupComponent referentGroup) { + public Evidence(PublicationStatus status, EvidenceVariableDefinitionComponent variableDefinition) { super(); this.setStatus(status); - this.setReferentGroup(referentGroup); + this.addVariableDefinition(variableDefinition); } /** @@ -2557,30 +2159,6 @@ public class Evidence extends MetadataResource { return getNote().get(0); } - /** - * @return {@link #referentGroup} (Group being referenced.) - */ - public EvidenceReferentGroupComponent getReferentGroup() { - if (this.referentGroup == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Evidence.referentGroup"); - else if (Configuration.doAutoCreate()) - this.referentGroup = new EvidenceReferentGroupComponent(); // cc - return this.referentGroup; - } - - public boolean hasReferentGroup() { - return this.referentGroup != null && !this.referentGroup.isEmpty(); - } - - /** - * @param value {@link #referentGroup} (Group being referenced.) - */ - public Evidence setReferentGroup(EvidenceReferentGroupComponent value) { - this.referentGroup = value; - return this; - } - /** * @return {@link #variableDefinition} (Evidence variable.) */ @@ -3130,7 +2708,6 @@ public class Evidence extends MetadataResource { children.add(new Property("description", "markdown", "A free text natural language description of the evidence from a consumer's perspective.", 0, 1, description)); children.add(new Property("assertion", "markdown", "Declarative description of the Evidence.", 0, 1, assertion)); children.add(new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, note)); - children.add(new Property("referentGroup", "", "Group being referenced.", 0, 1, referentGroup)); children.add(new Property("variableDefinition", "", "Evidence variable.", 0, java.lang.Integer.MAX_VALUE, variableDefinition)); children.add(new Property("synthesisType", "CodeableConcept", "The particular type of synthesis if this is a synthesis summary.", 0, 1, synthesisType)); children.add(new Property("studyType", "CodeableConcept", "The type of study that produced this summary.", 0, 1, studyType)); @@ -3156,7 +2733,6 @@ public class Evidence extends MetadataResource { case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the evidence from a consumer's perspective.", 0, 1, description); case 1314395906: /*assertion*/ return new Property("assertion", "markdown", "Declarative description of the Evidence.", 0, 1, assertion); case 3387378: /*note*/ return new Property("note", "Annotation", "Footnotes and/or explanatory notes.", 0, java.lang.Integer.MAX_VALUE, note); - case 2060829908: /*referentGroup*/ return new Property("referentGroup", "", "Group being referenced.", 0, 1, referentGroup); case -1807222545: /*variableDefinition*/ return new Property("variableDefinition", "", "Evidence variable.", 0, java.lang.Integer.MAX_VALUE, variableDefinition); case 672726254: /*synthesisType*/ return new Property("synthesisType", "CodeableConcept", "The particular type of synthesis if this is a synthesis summary.", 0, 1, synthesisType); case -1955265373: /*studyType*/ return new Property("studyType", "CodeableConcept", "The type of study that produced this summary.", 0, 1, studyType); @@ -3185,7 +2761,6 @@ public class Evidence extends MetadataResource { case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType case 1314395906: /*assertion*/ return this.assertion == null ? new Base[0] : new Base[] {this.assertion}; // MarkdownType case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation - case 2060829908: /*referentGroup*/ return this.referentGroup == null ? new Base[0] : new Base[] {this.referentGroup}; // EvidenceReferentGroupComponent case -1807222545: /*variableDefinition*/ return this.variableDefinition == null ? new Base[0] : this.variableDefinition.toArray(new Base[this.variableDefinition.size()]); // EvidenceVariableDefinitionComponent case 672726254: /*synthesisType*/ return this.synthesisType == null ? new Base[0] : new Base[] {this.synthesisType}; // CodeableConcept case -1955265373: /*studyType*/ return this.studyType == null ? new Base[0] : new Base[] {this.studyType}; // CodeableConcept @@ -3243,9 +2818,6 @@ public class Evidence extends MetadataResource { case 3387378: // note this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation return value; - case 2060829908: // referentGroup - this.referentGroup = (EvidenceReferentGroupComponent) value; // EvidenceReferentGroupComponent - return value; case -1807222545: // variableDefinition this.getVariableDefinition().add((EvidenceVariableDefinitionComponent) value); // EvidenceVariableDefinitionComponent return value; @@ -3300,8 +2872,6 @@ public class Evidence extends MetadataResource { this.assertion = TypeConvertor.castToMarkdown(value); // MarkdownType } else if (name.equals("note")) { this.getNote().add(TypeConvertor.castToAnnotation(value)); - } else if (name.equals("referentGroup")) { - this.referentGroup = (EvidenceReferentGroupComponent) value; // EvidenceReferentGroupComponent } else if (name.equals("variableDefinition")) { this.getVariableDefinition().add((EvidenceVariableDefinitionComponent) value); } else if (name.equals("synthesisType")) { @@ -3336,7 +2906,6 @@ public class Evidence extends MetadataResource { case -1724546052: return getDescriptionElement(); case 1314395906: return getAssertionElement(); case 3387378: return addNote(); - case 2060829908: return getReferentGroup(); case -1807222545: return addVariableDefinition(); case 672726254: return getSynthesisType(); case -1955265373: return getStudyType(); @@ -3365,7 +2934,6 @@ public class Evidence extends MetadataResource { case -1724546052: /*description*/ return new String[] {"markdown"}; case 1314395906: /*assertion*/ return new String[] {"markdown"}; case 3387378: /*note*/ return new String[] {"Annotation"}; - case 2060829908: /*referentGroup*/ return new String[] {}; case -1807222545: /*variableDefinition*/ return new String[] {}; case 672726254: /*synthesisType*/ return new String[] {"CodeableConcept"}; case -1955265373: /*studyType*/ return new String[] {"CodeableConcept"}; @@ -3421,10 +2989,6 @@ public class Evidence extends MetadataResource { else if (name.equals("note")) { return addNote(); } - else if (name.equals("referentGroup")) { - this.referentGroup = new EvidenceReferentGroupComponent(); - return this.referentGroup; - } else if (name.equals("variableDefinition")) { return addVariableDefinition(); } @@ -3496,7 +3060,6 @@ public class Evidence extends MetadataResource { for (Annotation i : note) dst.note.add(i.copy()); }; - dst.referentGroup = referentGroup == null ? null : referentGroup.copy(); if (variableDefinition != null) { dst.variableDefinition = new ArrayList(); for (EvidenceVariableDefinitionComponent i : variableDefinition) @@ -3537,9 +3100,9 @@ public class Evidence extends MetadataResource { && compareDeep(useContext, o.useContext, true) && compareDeep(approvalDate, o.approvalDate, true) && compareDeep(lastReviewDate, o.lastReviewDate, true) && compareDeep(contributor, o.contributor, true) && compareDeep(relatedArtifact, o.relatedArtifact, true) && compareDeep(description, o.description, true) - && compareDeep(assertion, o.assertion, true) && compareDeep(note, o.note, true) && compareDeep(referentGroup, o.referentGroup, true) - && compareDeep(variableDefinition, o.variableDefinition, true) && compareDeep(synthesisType, o.synthesisType, true) - && compareDeep(studyType, o.studyType, true) && compareDeep(statistic, o.statistic, true) && compareDeep(distribution, o.distribution, true) + && compareDeep(assertion, o.assertion, true) && compareDeep(note, o.note, true) && compareDeep(variableDefinition, o.variableDefinition, true) + && compareDeep(synthesisType, o.synthesisType, true) && compareDeep(studyType, o.studyType, true) + && compareDeep(statistic, o.statistic, true) && compareDeep(distribution, o.distribution, true) && compareDeep(certainty, o.certainty, true); } @@ -3559,8 +3122,8 @@ public class Evidence extends MetadataResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, identifier, version , title, status, date, useContext, approvalDate, lastReviewDate, contributor, relatedArtifact - , description, assertion, note, referentGroup, variableDefinition, synthesisType - , studyType, statistic, distribution, certainty); + , description, assertion, note, variableDefinition, synthesisType, studyType, statistic + , distribution, certainty); } @Override diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceFocus.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceFocus.java new file mode 100644 index 000000000..8801793fd --- /dev/null +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceFocus.java @@ -0,0 +1,2048 @@ +package org.hl7.fhir.r5.model; + + +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.r5.model.Enumerations.*; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.instance.model.api.ICompositeType; +import ca.uhn.fhir.model.api.annotation.ResourceDef; +import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import ca.uhn.fhir.model.api.annotation.Child; +import ca.uhn.fhir.model.api.annotation.ChildOrder; +import ca.uhn.fhir.model.api.annotation.Description; +import ca.uhn.fhir.model.api.annotation.Block; + +/** + * EvidenceFocus. + */ +@ResourceDef(name="EvidenceFocus", profile="http://hl7.org/fhir/StructureDefinition/EvidenceFocus") +public class EvidenceFocus extends MetadataResource { + + @Block() + public static class EvidenceFocusCharacteristicComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Characteristic code. + */ + @Child(name = "code", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Characteristic code", formalDefinition="Characteristic code." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/evfocus-characteristic-code") + protected CodeableConcept code; + + /** + * Characteristic value. + */ + @Child(name = "value", type = {Reference.class, CodeableConcept.class, BooleanType.class, Quantity.class, Range.class}, order=2, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Characteristic value", formalDefinition="Characteristic value." ) + protected DataType value; + + /** + * Is used to express not the characteristic. + */ + @Child(name = "exclude", type = {BooleanType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Is used to express not the characteristic", formalDefinition="Is used to express not the characteristic." ) + protected BooleanType exclude; + + /** + * Timeframe for the characteristic. + */ + @Child(name = "period", type = {Period.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Timeframe for the characteristic", formalDefinition="Timeframe for the characteristic." ) + protected Period period; + + private static final long serialVersionUID = 279867823L; + + /** + * Constructor + */ + public EvidenceFocusCharacteristicComponent() { + super(); + } + + /** + * Constructor + */ + public EvidenceFocusCharacteristicComponent(CodeableConcept code, DataType value) { + super(); + this.setCode(code); + this.setValue(value); + } + + /** + * @return {@link #code} (Characteristic code.) + */ + public CodeableConcept getCode() { + if (this.code == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocusCharacteristicComponent.code"); + else if (Configuration.doAutoCreate()) + this.code = new CodeableConcept(); // cc + return this.code; + } + + public boolean hasCode() { + return this.code != null && !this.code.isEmpty(); + } + + /** + * @param value {@link #code} (Characteristic code.) + */ + public EvidenceFocusCharacteristicComponent setCode(CodeableConcept value) { + this.code = value; + return this; + } + + /** + * @return {@link #value} (Characteristic value.) + */ + public DataType getValue() { + return this.value; + } + + /** + * @return {@link #value} (Characteristic value.) + */ + public Reference getValueReference() throws FHIRException { + if (this.value == null) + this.value = new Reference(); + if (!(this.value instanceof Reference)) + throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Reference) this.value; + } + + public boolean hasValueReference() { + return this != null && this.value instanceof Reference; + } + + /** + * @return {@link #value} (Characteristic value.) + */ + public CodeableConcept getValueCodeableConcept() throws FHIRException { + if (this.value == null) + this.value = new CodeableConcept(); + if (!(this.value instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); + return (CodeableConcept) this.value; + } + + public boolean hasValueCodeableConcept() { + return this != null && this.value instanceof CodeableConcept; + } + + /** + * @return {@link #value} (Characteristic value.) + */ + public BooleanType getValueBooleanType() throws FHIRException { + if (this.value == null) + this.value = new BooleanType(); + if (!(this.value instanceof BooleanType)) + throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.value.getClass().getName()+" was encountered"); + return (BooleanType) this.value; + } + + public boolean hasValueBooleanType() { + return this != null && this.value instanceof BooleanType; + } + + /** + * @return {@link #value} (Characteristic value.) + */ + public Quantity getValueQuantity() throws FHIRException { + if (this.value == null) + this.value = new Quantity(); + if (!(this.value instanceof Quantity)) + throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Quantity) this.value; + } + + public boolean hasValueQuantity() { + return this != null && this.value instanceof Quantity; + } + + /** + * @return {@link #value} (Characteristic value.) + */ + public Range getValueRange() throws FHIRException { + if (this.value == null) + this.value = new Range(); + if (!(this.value instanceof Range)) + throw new FHIRException("Type mismatch: the type Range was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Range) this.value; + } + + public boolean hasValueRange() { + return this != null && this.value instanceof Range; + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); + } + + /** + * @param value {@link #value} (Characteristic value.) + */ + public EvidenceFocusCharacteristicComponent setValue(DataType value) { + if (value != null && !(value instanceof Reference || value instanceof CodeableConcept || value instanceof BooleanType || value instanceof Quantity || value instanceof Range)) + throw new Error("Not the right type for EvidenceFocus.characteristic.value[x]: "+value.fhirType()); + this.value = value; + return this; + } + + /** + * @return {@link #exclude} (Is used to express not the characteristic.). This is the underlying object with id, value and extensions. The accessor "getExclude" gives direct access to the value + */ + public BooleanType getExcludeElement() { + if (this.exclude == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocusCharacteristicComponent.exclude"); + else if (Configuration.doAutoCreate()) + this.exclude = new BooleanType(); // bb + return this.exclude; + } + + public boolean hasExcludeElement() { + return this.exclude != null && !this.exclude.isEmpty(); + } + + public boolean hasExclude() { + return this.exclude != null && !this.exclude.isEmpty(); + } + + /** + * @param value {@link #exclude} (Is used to express not the characteristic.). This is the underlying object with id, value and extensions. The accessor "getExclude" gives direct access to the value + */ + public EvidenceFocusCharacteristicComponent setExcludeElement(BooleanType value) { + this.exclude = value; + return this; + } + + /** + * @return Is used to express not the characteristic. + */ + public boolean getExclude() { + return this.exclude == null || this.exclude.isEmpty() ? false : this.exclude.getValue(); + } + + /** + * @param value Is used to express not the characteristic. + */ + public EvidenceFocusCharacteristicComponent setExclude(boolean value) { + if (this.exclude == null) + this.exclude = new BooleanType(); + this.exclude.setValue(value); + return this; + } + + /** + * @return {@link #period} (Timeframe for the characteristic.) + */ + public Period getPeriod() { + if (this.period == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocusCharacteristicComponent.period"); + else if (Configuration.doAutoCreate()) + this.period = new Period(); // cc + return this.period; + } + + public boolean hasPeriod() { + return this.period != null && !this.period.isEmpty(); + } + + /** + * @param value {@link #period} (Timeframe for the characteristic.) + */ + public EvidenceFocusCharacteristicComponent setPeriod(Period value) { + this.period = value; + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("code", "CodeableConcept", "Characteristic code.", 0, 1, code)); + children.add(new Property("value[x]", "Reference(Any)|CodeableConcept|boolean|Quantity|Range", "Characteristic value.", 0, 1, value)); + children.add(new Property("exclude", "boolean", "Is used to express not the characteristic.", 0, 1, exclude)); + children.add(new Property("period", "Period", "Timeframe for the characteristic.", 0, 1, period)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Characteristic code.", 0, 1, code); + case -1410166417: /*value[x]*/ return new Property("value[x]", "Reference(Any)|CodeableConcept|boolean|Quantity|Range", "Characteristic value.", 0, 1, value); + case 111972721: /*value*/ return new Property("value[x]", "Reference(Any)|CodeableConcept|boolean|Quantity|Range", "Characteristic value.", 0, 1, value); + case 1755241690: /*valueReference*/ return new Property("value[x]", "Reference(Any)", "Characteristic value.", 0, 1, value); + case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "Characteristic value.", 0, 1, value); + case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "Characteristic value.", 0, 1, value); + case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "Characteristic value.", 0, 1, value); + case 2030761548: /*valueRange*/ return new Property("value[x]", "Range", "Characteristic value.", 0, 1, value); + case -1321148966: /*exclude*/ return new Property("exclude", "boolean", "Is used to express not the characteristic.", 0, 1, exclude); + case -991726143: /*period*/ return new Property("period", "Period", "Timeframe for the characteristic.", 0, 1, period); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType + case -1321148966: /*exclude*/ return this.exclude == null ? new Base[0] : new Base[] {this.exclude}; // BooleanType + case -991726143: /*period*/ return this.period == null ? new Base[0] : new Base[] {this.period}; // Period + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3059181: // code + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 111972721: // value + this.value = TypeConvertor.castToType(value); // DataType + return value; + case -1321148966: // exclude + this.exclude = TypeConvertor.castToBoolean(value); // BooleanType + return value; + case -991726143: // period + this.period = TypeConvertor.castToPeriod(value); // Period + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("code")) { + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("value[x]")) { + this.value = TypeConvertor.castToType(value); // DataType + } else if (name.equals("exclude")) { + this.exclude = TypeConvertor.castToBoolean(value); // BooleanType + } else if (name.equals("period")) { + this.period = TypeConvertor.castToPeriod(value); // Period + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3059181: return getCode(); + case -1410166417: return getValue(); + case 111972721: return getValue(); + case -1321148966: return getExcludeElement(); + case -991726143: return getPeriod(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3059181: /*code*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"Reference", "CodeableConcept", "boolean", "Quantity", "Range"}; + case -1321148966: /*exclude*/ return new String[] {"boolean"}; + case -991726143: /*period*/ return new String[] {"Period"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("code")) { + this.code = new CodeableConcept(); + return this.code; + } + else if (name.equals("valueReference")) { + this.value = new Reference(); + return this.value; + } + else if (name.equals("valueCodeableConcept")) { + this.value = new CodeableConcept(); + return this.value; + } + else if (name.equals("valueBoolean")) { + this.value = new BooleanType(); + return this.value; + } + else if (name.equals("valueQuantity")) { + this.value = new Quantity(); + return this.value; + } + else if (name.equals("valueRange")) { + this.value = new Range(); + return this.value; + } + else if (name.equals("exclude")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.characteristic.exclude"); + } + else if (name.equals("period")) { + this.period = new Period(); + return this.period; + } + else + return super.addChild(name); + } + + public EvidenceFocusCharacteristicComponent copy() { + EvidenceFocusCharacteristicComponent dst = new EvidenceFocusCharacteristicComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(EvidenceFocusCharacteristicComponent dst) { + super.copyValues(dst); + dst.code = code == null ? null : code.copy(); + dst.value = value == null ? null : value.copy(); + dst.exclude = exclude == null ? null : exclude.copy(); + dst.period = period == null ? null : period.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof EvidenceFocusCharacteristicComponent)) + return false; + EvidenceFocusCharacteristicComponent o = (EvidenceFocusCharacteristicComponent) other_; + return compareDeep(code, o.code, true) && compareDeep(value, o.value, true) && compareDeep(exclude, o.exclude, true) + && compareDeep(period, o.period, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof EvidenceFocusCharacteristicComponent)) + return false; + EvidenceFocusCharacteristicComponent o = (EvidenceFocusCharacteristicComponent) other_; + return compareValues(exclude, o.exclude, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, value, exclude, period + ); + } + + public String fhirType() { + return "EvidenceFocus.characteristic"; + + } + + } + + /** + * An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers. + */ + @Child(name = "url", type = {UriType.class}, order=0, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Canonical identifier for this EvidenceFocus, represented as a globally unique URI", formalDefinition="An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers." ) + protected UriType url; + + /** + * A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance. + */ + @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Unique to the EvidenceFocus Resource", formalDefinition="A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance." ) + protected List identifier; + + /** + * The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. + */ + @Child(name = "version", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Business version of this summary", formalDefinition="The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence." ) + protected StringType version; + + /** + * A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation. + */ + @Child(name = "name", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Name", formalDefinition="A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation." ) + protected StringType name; + + /** + * The status of this summary. Enables tracking the life-cycle of the content. + */ + @Child(name = "status", type = {CodeType.class}, order=4, min=1, max=1, modifier=true, summary=true) + @Description(shortDefinition="draft | active | retired | unknown", formalDefinition="The status of this summary. Enables tracking the life-cycle of the content." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") + protected Enumeration status; + + /** + * The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence focus instances. + */ + @Child(name = "useContext", type = {UsageContext.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Use context", formalDefinition="The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence focus instances." ) + protected List useContext; + + /** + * The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes. + */ + @Child(name = "date", type = {DateTimeType.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Date created", formalDefinition="The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes." ) + protected DateTimeType date; + + /** + * Used for general notes and annotations not coded elsewhere. + */ + @Child(name = "note", type = {Annotation.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Footnotes and/or explanatory notes", formalDefinition="Used for general notes and annotations not coded elsewhere." ) + protected List note; + + /** + * A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus. + */ + @Child(name = "copyright", type = {MarkdownType.class}, order=8, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Copyright", formalDefinition="A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus." ) + protected MarkdownType copyright; + + /** + * Citation for this EvidenceFocus resource. + */ + @Child(name = "citeAs", type = {Citation.class}, order=9, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Citation for this EvidenceFocus resource", formalDefinition="Citation for this EvidenceFocus resource." ) + protected Reference citeAs; + + /** + * Characteristic. + */ + @Child(name = "characteristic", type = {}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Characteristic", formalDefinition="Characteristic." ) + protected List characteristic; + + /** + * Additional documentation. + */ + @Child(name = "relatedArtifact", type = {RelatedArtifact.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Additional documentation", formalDefinition="Additional documentation." ) + protected List relatedArtifact; + + private static final long serialVersionUID = 1053034569L; + + /** + * Constructor + */ + public EvidenceFocus() { + super(); + } + + /** + * Constructor + */ + public EvidenceFocus(PublicationStatus status) { + super(); + this.setStatus(status); + } + + /** + * @return {@link #url} (An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + */ + public UriType getUrlElement() { + if (this.url == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.url"); + else if (Configuration.doAutoCreate()) + this.url = new UriType(); // bb + return this.url; + } + + public boolean hasUrlElement() { + return this.url != null && !this.url.isEmpty(); + } + + public boolean hasUrl() { + return this.url != null && !this.url.isEmpty(); + } + + /** + * @param value {@link #url} (An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + */ + public EvidenceFocus setUrlElement(UriType value) { + this.url = value; + return this; + } + + /** + * @return An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers. + */ + public String getUrl() { + return this.url == null ? null : this.url.getValue(); + } + + /** + * @param value An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers. + */ + public EvidenceFocus setUrl(String value) { + if (Utilities.noString(value)) + this.url = null; + else { + if (this.url == null) + this.url = new UriType(); + this.url.setValue(value); + } + return this; + } + + /** + * @return {@link #identifier} (A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public EvidenceFocus addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + /** + * @return {@link #version} (The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value + */ + public StringType getVersionElement() { + if (this.version == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.version"); + else if (Configuration.doAutoCreate()) + this.version = new StringType(); // bb + return this.version; + } + + public boolean hasVersionElement() { + return this.version != null && !this.version.isEmpty(); + } + + public boolean hasVersion() { + return this.version != null && !this.version.isEmpty(); + } + + /** + * @param value {@link #version} (The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value + */ + public EvidenceFocus setVersionElement(StringType value) { + this.version = value; + return this; + } + + /** + * @return The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. + */ + public String getVersion() { + return this.version == null ? null : this.version.getValue(); + } + + /** + * @param value The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence. + */ + public EvidenceFocus setVersion(String value) { + if (Utilities.noString(value)) + this.version = null; + else { + if (this.version == null) + this.version = new StringType(); + this.version.setValue(value); + } + return this; + } + + /** + * @return {@link #name} (A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + */ + public StringType getNameElement() { + if (this.name == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.name"); + else if (Configuration.doAutoCreate()) + this.name = new StringType(); // bb + return this.name; + } + + public boolean hasNameElement() { + return this.name != null && !this.name.isEmpty(); + } + + public boolean hasName() { + return this.name != null && !this.name.isEmpty(); + } + + /** + * @param value {@link #name} (A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + */ + public EvidenceFocus setNameElement(StringType value) { + this.name = value; + return this; + } + + /** + * @return A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation. + */ + public String getName() { + return this.name == null ? null : this.name.getValue(); + } + + /** + * @param value A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation. + */ + public EvidenceFocus setName(String value) { + if (Utilities.noString(value)) + this.name = null; + else { + if (this.name == null) + this.name = new StringType(); + this.name.setValue(value); + } + return this; + } + + /** + * @return {@link #status} (The status of this summary. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Enumeration getStatusElement() { + if (this.status == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.status"); + else if (Configuration.doAutoCreate()) + this.status = new Enumeration(new PublicationStatusEnumFactory()); // bb + return this.status; + } + + public boolean hasStatusElement() { + return this.status != null && !this.status.isEmpty(); + } + + public boolean hasStatus() { + return this.status != null && !this.status.isEmpty(); + } + + /** + * @param value {@link #status} (The status of this summary. Enables tracking the life-cycle of the content.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public EvidenceFocus setStatusElement(Enumeration value) { + this.status = value; + return this; + } + + /** + * @return The status of this summary. Enables tracking the life-cycle of the content. + */ + public PublicationStatus getStatus() { + return this.status == null ? null : this.status.getValue(); + } + + /** + * @param value The status of this summary. Enables tracking the life-cycle of the content. + */ + public EvidenceFocus setStatus(PublicationStatus value) { + if (this.status == null) + this.status = new Enumeration(new PublicationStatusEnumFactory()); + this.status.setValue(value); + return this; + } + + /** + * @return {@link #useContext} (The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence focus instances.) + */ + public List getUseContext() { + if (this.useContext == null) + this.useContext = new ArrayList(); + return this.useContext; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setUseContext(List theUseContext) { + this.useContext = theUseContext; + return this; + } + + public boolean hasUseContext() { + if (this.useContext == null) + return false; + for (UsageContext item : this.useContext) + if (!item.isEmpty()) + return true; + return false; + } + + public UsageContext addUseContext() { //3 + UsageContext t = new UsageContext(); + if (this.useContext == null) + this.useContext = new ArrayList(); + this.useContext.add(t); + return t; + } + + public EvidenceFocus addUseContext(UsageContext t) { //3 + if (t == null) + return this; + if (this.useContext == null) + this.useContext = new ArrayList(); + this.useContext.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #useContext}, creating it if it does not already exist {3} + */ + public UsageContext getUseContextFirstRep() { + if (getUseContext().isEmpty()) { + addUseContext(); + } + return getUseContext().get(0); + } + + /** + * @return {@link #date} (The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value + */ + public DateTimeType getDateElement() { + if (this.date == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.date"); + else if (Configuration.doAutoCreate()) + this.date = new DateTimeType(); // bb + return this.date; + } + + public boolean hasDateElement() { + return this.date != null && !this.date.isEmpty(); + } + + public boolean hasDate() { + return this.date != null && !this.date.isEmpty(); + } + + /** + * @param value {@link #date} (The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value + */ + public EvidenceFocus setDateElement(DateTimeType value) { + this.date = value; + return this; + } + + /** + * @return The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes. + */ + public Date getDate() { + return this.date == null ? null : this.date.getValue(); + } + + /** + * @param value The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes. + */ + public EvidenceFocus setDate(Date value) { + if (value == null) + this.date = null; + else { + if (this.date == null) + this.date = new DateTimeType(); + this.date.setValue(value); + } + return this; + } + + /** + * @return {@link #note} (Used for general notes and annotations not coded elsewhere.) + */ + public List getNote() { + if (this.note == null) + this.note = new ArrayList(); + return this.note; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setNote(List theNote) { + this.note = theNote; + return this; + } + + public boolean hasNote() { + if (this.note == null) + return false; + for (Annotation item : this.note) + if (!item.isEmpty()) + return true; + return false; + } + + public Annotation addNote() { //3 + Annotation t = new Annotation(); + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return t; + } + + public EvidenceFocus addNote(Annotation t) { //3 + if (t == null) + return this; + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} + */ + public Annotation getNoteFirstRep() { + if (getNote().isEmpty()) { + addNote(); + } + return getNote().get(0); + } + + /** + * @return {@link #copyright} (A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value + */ + public MarkdownType getCopyrightElement() { + if (this.copyright == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.copyright"); + else if (Configuration.doAutoCreate()) + this.copyright = new MarkdownType(); // bb + return this.copyright; + } + + public boolean hasCopyrightElement() { + return this.copyright != null && !this.copyright.isEmpty(); + } + + public boolean hasCopyright() { + return this.copyright != null && !this.copyright.isEmpty(); + } + + /** + * @param value {@link #copyright} (A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value + */ + public EvidenceFocus setCopyrightElement(MarkdownType value) { + this.copyright = value; + return this; + } + + /** + * @return A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus. + */ + public String getCopyright() { + return this.copyright == null ? null : this.copyright.getValue(); + } + + /** + * @param value A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus. + */ + public EvidenceFocus setCopyright(String value) { + if (value == null) + this.copyright = null; + else { + if (this.copyright == null) + this.copyright = new MarkdownType(); + this.copyright.setValue(value); + } + return this; + } + + /** + * @return {@link #citeAs} (Citation for this EvidenceFocus resource.) + */ + public Reference getCiteAs() { + if (this.citeAs == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceFocus.citeAs"); + else if (Configuration.doAutoCreate()) + this.citeAs = new Reference(); // cc + return this.citeAs; + } + + public boolean hasCiteAs() { + return this.citeAs != null && !this.citeAs.isEmpty(); + } + + /** + * @param value {@link #citeAs} (Citation for this EvidenceFocus resource.) + */ + public EvidenceFocus setCiteAs(Reference value) { + this.citeAs = value; + return this; + } + + /** + * @return {@link #characteristic} (Characteristic.) + */ + public List getCharacteristic() { + if (this.characteristic == null) + this.characteristic = new ArrayList(); + return this.characteristic; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setCharacteristic(List theCharacteristic) { + this.characteristic = theCharacteristic; + return this; + } + + public boolean hasCharacteristic() { + if (this.characteristic == null) + return false; + for (EvidenceFocusCharacteristicComponent item : this.characteristic) + if (!item.isEmpty()) + return true; + return false; + } + + public EvidenceFocusCharacteristicComponent addCharacteristic() { //3 + EvidenceFocusCharacteristicComponent t = new EvidenceFocusCharacteristicComponent(); + if (this.characteristic == null) + this.characteristic = new ArrayList(); + this.characteristic.add(t); + return t; + } + + public EvidenceFocus addCharacteristic(EvidenceFocusCharacteristicComponent t) { //3 + if (t == null) + return this; + if (this.characteristic == null) + this.characteristic = new ArrayList(); + this.characteristic.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #characteristic}, creating it if it does not already exist {3} + */ + public EvidenceFocusCharacteristicComponent getCharacteristicFirstRep() { + if (getCharacteristic().isEmpty()) { + addCharacteristic(); + } + return getCharacteristic().get(0); + } + + /** + * @return {@link #relatedArtifact} (Additional documentation.) + */ + public List getRelatedArtifact() { + if (this.relatedArtifact == null) + this.relatedArtifact = new ArrayList(); + return this.relatedArtifact; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setRelatedArtifact(List theRelatedArtifact) { + this.relatedArtifact = theRelatedArtifact; + return this; + } + + public boolean hasRelatedArtifact() { + if (this.relatedArtifact == null) + return false; + for (RelatedArtifact item : this.relatedArtifact) + if (!item.isEmpty()) + return true; + return false; + } + + public RelatedArtifact addRelatedArtifact() { //3 + RelatedArtifact t = new RelatedArtifact(); + if (this.relatedArtifact == null) + this.relatedArtifact = new ArrayList(); + this.relatedArtifact.add(t); + return t; + } + + public EvidenceFocus addRelatedArtifact(RelatedArtifact t) { //3 + if (t == null) + return this; + if (this.relatedArtifact == null) + this.relatedArtifact = new ArrayList(); + this.relatedArtifact.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #relatedArtifact}, creating it if it does not already exist {3} + */ + public RelatedArtifact getRelatedArtifactFirstRep() { + if (getRelatedArtifact().isEmpty()) { + addRelatedArtifact(); + } + return getRelatedArtifact().get(0); + } + + /** + * not supported on this implementation + */ + @Override + public int getTitleMax() { + return 0; + } + /** + * @return {@link #title} (A short, descriptive, user-friendly title for the evidence focus.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public StringType getTitleElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"title\""); + } + + public boolean hasTitleElement() { + return false; + } + public boolean hasTitle() { + return false; + } + + /** + * @param value {@link #title} (A short, descriptive, user-friendly title for the evidence focus.). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + */ + public EvidenceFocus setTitleElement(StringType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"title\""); + } + public String getTitle() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"title\""); + } + /** + * @param value A short, descriptive, user-friendly title for the evidence focus. + */ + public EvidenceFocus setTitle(String value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"title\""); + } + /** + * not supported on this implementation + */ + @Override + public int getExperimentalMax() { + return 0; + } + /** + * @return {@link #experimental} (A Boolean value to indicate that this evidence focus is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value + */ + public BooleanType getExperimentalElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"experimental\""); + } + + public boolean hasExperimentalElement() { + return false; + } + public boolean hasExperimental() { + return false; + } + + /** + * @param value {@link #experimental} (A Boolean value to indicate that this evidence focus is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value + */ + public EvidenceFocus setExperimentalElement(BooleanType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"experimental\""); + } + public boolean getExperimental() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"experimental\""); + } + /** + * @param value A Boolean value to indicate that this evidence focus is authored for testing purposes (or education/evaluation/marketing) and is not intended to be used for genuine usage. + */ + public EvidenceFocus setExperimental(boolean value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"experimental\""); + } + /** + * not supported on this implementation + */ + @Override + public int getPublisherMax() { + return 0; + } + /** + * @return {@link #publisher} (The name of the organization or individual that published the evidence focus.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value + */ + public StringType getPublisherElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"publisher\""); + } + + public boolean hasPublisherElement() { + return false; + } + public boolean hasPublisher() { + return false; + } + + /** + * @param value {@link #publisher} (The name of the organization or individual that published the evidence focus.). This is the underlying object with id, value and extensions. The accessor "getPublisher" gives direct access to the value + */ + public EvidenceFocus setPublisherElement(StringType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"publisher\""); + } + public String getPublisher() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"publisher\""); + } + /** + * @param value The name of the organization or individual that published the evidence focus. + */ + public EvidenceFocus setPublisher(String value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"publisher\""); + } + /** + * not supported on this implementation + */ + @Override + public int getContactMax() { + return 0; + } + /** + * @return {@link #contact} (Contact details to assist a user in finding and communicating with the publisher.) + */ + public List getContact() { + return new ArrayList<>(); + } + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setContact(List theContact) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"contact\""); + } + public boolean hasContact() { + return false; + } + + public ContactDetail addContact() { //3 + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"contact\""); + } + public EvidenceFocus addContact(ContactDetail t) { //3 + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"contact\""); + } + /** + * @return The first repetition of repeating field {@link #contact}, creating it if it does not already exist {2} + */ + public ContactDetail getContactFirstRep() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"contact\""); + } + /** + * not supported on this implementation + */ + @Override + public int getDescriptionMax() { + return 0; + } + /** + * @return {@link #description} (A free text natural language description of the evidence focus from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public MarkdownType getDescriptionElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"description\""); + } + + public boolean hasDescriptionElement() { + return false; + } + public boolean hasDescription() { + return false; + } + + /** + * @param value {@link #description} (A free text natural language description of the evidence focus from a consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public EvidenceFocus setDescriptionElement(MarkdownType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"description\""); + } + public String getDescription() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"description\""); + } + /** + * @param value A free text natural language description of the evidence focus from a consumer's perspective. + */ + public EvidenceFocus setDescription(String value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"description\""); + } + /** + * not supported on this implementation + */ + @Override + public int getJurisdictionMax() { + return 0; + } + /** + * @return {@link #jurisdiction} (A legal or geographic region in which the evidence focus is intended to be used.) + */ + public List getJurisdiction() { + return new ArrayList<>(); + } + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceFocus setJurisdiction(List theJurisdiction) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"jurisdiction\""); + } + public boolean hasJurisdiction() { + return false; + } + + public CodeableConcept addJurisdiction() { //3 + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"jurisdiction\""); + } + public EvidenceFocus addJurisdiction(CodeableConcept t) { //3 + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"jurisdiction\""); + } + /** + * @return The first repetition of repeating field {@link #jurisdiction}, creating it if it does not already exist {2} + */ + public CodeableConcept getJurisdictionFirstRep() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"jurisdiction\""); + } + /** + * not supported on this implementation + */ + @Override + public int getPurposeMax() { + return 0; + } + /** + * @return {@link #purpose} (Explanation of why this evidence focus is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value + */ + public MarkdownType getPurposeElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"purpose\""); + } + + public boolean hasPurposeElement() { + return false; + } + public boolean hasPurpose() { + return false; + } + + /** + * @param value {@link #purpose} (Explanation of why this evidence focus is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value + */ + public EvidenceFocus setPurposeElement(MarkdownType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"purpose\""); + } + public String getPurpose() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"purpose\""); + } + /** + * @param value Explanation of why this evidence focus is needed and why it has been designed as it has. + */ + public EvidenceFocus setPurpose(String value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"purpose\""); + } + /** + * not supported on this implementation + */ + @Override + public int getApprovalDateMax() { + return 0; + } + /** + * @return {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value + */ + public DateType getApprovalDateElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"approvalDate\""); + } + + public boolean hasApprovalDateElement() { + return false; + } + public boolean hasApprovalDate() { + return false; + } + + /** + * @param value {@link #approvalDate} (The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value + */ + public EvidenceFocus setApprovalDateElement(DateType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"approvalDate\""); + } + public Date getApprovalDate() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"approvalDate\""); + } + /** + * @param value The date on which the resource content was approved by the publisher. Approval happens once when the content is officially approved for usage. + */ + public EvidenceFocus setApprovalDate(Date value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"approvalDate\""); + } + /** + * not supported on this implementation + */ + @Override + public int getLastReviewDateMax() { + return 0; + } + /** + * @return {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value + */ + public DateType getLastReviewDateElement() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"lastReviewDate\""); + } + + public boolean hasLastReviewDateElement() { + return false; + } + public boolean hasLastReviewDate() { + return false; + } + + /** + * @param value {@link #lastReviewDate} (The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value + */ + public EvidenceFocus setLastReviewDateElement(DateType value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"lastReviewDate\""); + } + public Date getLastReviewDate() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"lastReviewDate\""); + } + /** + * @param value The date on which the resource content was last reviewed. Review happens periodically after approval but does not change the original approval date. + */ + public EvidenceFocus setLastReviewDate(Date value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"lastReviewDate\""); + } + /** + * not supported on this implementation + */ + @Override + public int getEffectivePeriodMax() { + return 0; + } + /** + * @return {@link #effectivePeriod} (The period during which the evidence focus content was or is planned to be in active use.) + */ + public Period getEffectivePeriod() { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"effectivePeriod\""); + } + public boolean hasEffectivePeriod() { + return false; + } + /** + * @param value {@link #effectivePeriod} (The period during which the evidence focus content was or is planned to be in active use.) + */ + public EvidenceFocus setEffectivePeriod(Period value) { + throw new Error("The resource type \"EvidenceFocus\" does not implement the property \"effectivePeriod\""); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("url", "uri", "An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.", 0, 1, url)); + children.add(new Property("identifier", "Identifier", "A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("version", "string", "The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.", 0, 1, version)); + children.add(new Property("name", "string", "A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name)); + children.add(new Property("status", "code", "The status of this summary. Enables tracking the life-cycle of the content.", 0, 1, status)); + children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence focus instances.", 0, java.lang.Integer.MAX_VALUE, useContext)); + children.add(new Property("date", "dateTime", "The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes.", 0, 1, date)); + children.add(new Property("note", "Annotation", "Used for general notes and annotations not coded elsewhere.", 0, java.lang.Integer.MAX_VALUE, note)); + children.add(new Property("copyright", "markdown", "A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus.", 0, 1, copyright)); + children.add(new Property("citeAs", "Reference(Citation)", "Citation for this EvidenceFocus resource.", 0, 1, citeAs)); + children.add(new Property("characteristic", "", "Characteristic.", 0, java.lang.Integer.MAX_VALUE, characteristic)); + children.add(new Property("relatedArtifact", "RelatedArtifact", "Additional documentation.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 116079: /*url*/ return new Property("url", "uri", "An absolute URI that is used to identify this EvidenceFocus when it is referenced in a specification, model, design or an instance; also called its canonical identifier. This SHOULD be globally unique and SHOULD be a literal address at which at which an authoritative instance of this summary is (or will be) published. This URL can be the target of a canonical reference. It SHALL remain the same when the summary is stored on different servers.", 0, 1, url); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A formal identifier that is used to identify this summary when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 351608024: /*version*/ return new Property("version", "string", "The identifier that is used to identify this version of the summary when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the summary author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions can be placed in a lexicographical sequence.", 0, 1, version); + case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the evidence focus. This name should be usable as an identifier for the module by machine processing applications such as code generation.", 0, 1, name); + case -892481550: /*status*/ return new Property("status", "code", "The status of this summary. Enables tracking the life-cycle of the content.", 0, 1, status); + case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These contexts may be general categories (gender, age, ...) or may be references to specific programs (insurance plans, studies, ...) and may be used to assist with indexing and searching for appropriate evidence focus instances.", 0, java.lang.Integer.MAX_VALUE, useContext); + case 3076014: /*date*/ return new Property("date", "dateTime", "The date (and optionally time) when the evidence focus was published. The date must change when the business version changes and it must change if the status code changes. In addition, it should change when the substantive content of the evidence focus changes.", 0, 1, date); + case 3387378: /*note*/ return new Property("note", "Annotation", "Used for general notes and annotations not coded elsewhere.", 0, java.lang.Integer.MAX_VALUE, note); + case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the evidence focus and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the evidence focus.", 0, 1, copyright); + case -1360156695: /*citeAs*/ return new Property("citeAs", "Reference(Citation)", "Citation for this EvidenceFocus resource.", 0, 1, citeAs); + case 366313883: /*characteristic*/ return new Property("characteristic", "", "Characteristic.", 0, java.lang.Integer.MAX_VALUE, characteristic); + case 666807069: /*relatedArtifact*/ return new Property("relatedArtifact", "RelatedArtifact", "Additional documentation.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 116079: /*url*/ return this.url == null ? new Base[0] : new Base[] {this.url}; // UriType + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType + case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case -669707736: /*useContext*/ return this.useContext == null ? new Base[0] : this.useContext.toArray(new Base[this.useContext.size()]); // UsageContext + case 3076014: /*date*/ return this.date == null ? new Base[0] : new Base[] {this.date}; // DateTimeType + case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation + case 1522889671: /*copyright*/ return this.copyright == null ? new Base[0] : new Base[] {this.copyright}; // MarkdownType + case -1360156695: /*citeAs*/ return this.citeAs == null ? new Base[0] : new Base[] {this.citeAs}; // Reference + case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // EvidenceFocusCharacteristicComponent + case 666807069: /*relatedArtifact*/ return this.relatedArtifact == null ? new Base[0] : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 116079: // url + this.url = TypeConvertor.castToUri(value); // UriType + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case 351608024: // version + this.version = TypeConvertor.castToString(value); // StringType + return value; + case 3373707: // name + this.name = TypeConvertor.castToString(value); // StringType + return value; + case -892481550: // status + value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + return value; + case -669707736: // useContext + this.getUseContext().add(TypeConvertor.castToUsageContext(value)); // UsageContext + return value; + case 3076014: // date + this.date = TypeConvertor.castToDateTime(value); // DateTimeType + return value; + case 3387378: // note + this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation + return value; + case 1522889671: // copyright + this.copyright = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; + case -1360156695: // citeAs + this.citeAs = TypeConvertor.castToReference(value); // Reference + return value; + case 366313883: // characteristic + this.getCharacteristic().add((EvidenceFocusCharacteristicComponent) value); // EvidenceFocusCharacteristicComponent + return value; + case 666807069: // relatedArtifact + this.getRelatedArtifact().add(TypeConvertor.castToRelatedArtifact(value)); // RelatedArtifact + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("url")) { + this.url = TypeConvertor.castToUri(value); // UriType + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("version")) { + this.version = TypeConvertor.castToString(value); // StringType + } else if (name.equals("name")) { + this.name = TypeConvertor.castToString(value); // StringType + } else if (name.equals("status")) { + value = new PublicationStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + } else if (name.equals("useContext")) { + this.getUseContext().add(TypeConvertor.castToUsageContext(value)); + } else if (name.equals("date")) { + this.date = TypeConvertor.castToDateTime(value); // DateTimeType + } else if (name.equals("note")) { + this.getNote().add(TypeConvertor.castToAnnotation(value)); + } else if (name.equals("copyright")) { + this.copyright = TypeConvertor.castToMarkdown(value); // MarkdownType + } else if (name.equals("citeAs")) { + this.citeAs = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("characteristic")) { + this.getCharacteristic().add((EvidenceFocusCharacteristicComponent) value); + } else if (name.equals("relatedArtifact")) { + this.getRelatedArtifact().add(TypeConvertor.castToRelatedArtifact(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 116079: return getUrlElement(); + case -1618432855: return addIdentifier(); + case 351608024: return getVersionElement(); + case 3373707: return getNameElement(); + case -892481550: return getStatusElement(); + case -669707736: return addUseContext(); + case 3076014: return getDateElement(); + case 3387378: return addNote(); + case 1522889671: return getCopyrightElement(); + case -1360156695: return getCiteAs(); + case 366313883: return addCharacteristic(); + case 666807069: return addRelatedArtifact(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 116079: /*url*/ return new String[] {"uri"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 351608024: /*version*/ return new String[] {"string"}; + case 3373707: /*name*/ return new String[] {"string"}; + case -892481550: /*status*/ return new String[] {"code"}; + case -669707736: /*useContext*/ return new String[] {"UsageContext"}; + case 3076014: /*date*/ return new String[] {"dateTime"}; + case 3387378: /*note*/ return new String[] {"Annotation"}; + case 1522889671: /*copyright*/ return new String[] {"markdown"}; + case -1360156695: /*citeAs*/ return new String[] {"Reference"}; + case 366313883: /*characteristic*/ return new String[] {}; + case 666807069: /*relatedArtifact*/ return new String[] {"RelatedArtifact"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("url")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.url"); + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else if (name.equals("version")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.version"); + } + else if (name.equals("name")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.name"); + } + else if (name.equals("status")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.status"); + } + else if (name.equals("useContext")) { + return addUseContext(); + } + else if (name.equals("date")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.date"); + } + else if (name.equals("note")) { + return addNote(); + } + else if (name.equals("copyright")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceFocus.copyright"); + } + else if (name.equals("citeAs")) { + this.citeAs = new Reference(); + return this.citeAs; + } + else if (name.equals("characteristic")) { + return addCharacteristic(); + } + else if (name.equals("relatedArtifact")) { + return addRelatedArtifact(); + } + else + return super.addChild(name); + } + + public String fhirType() { + return "EvidenceFocus"; + + } + + public EvidenceFocus copy() { + EvidenceFocus dst = new EvidenceFocus(); + copyValues(dst); + return dst; + } + + public void copyValues(EvidenceFocus dst) { + super.copyValues(dst); + dst.url = url == null ? null : url.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + dst.version = version == null ? null : version.copy(); + dst.name = name == null ? null : name.copy(); + dst.status = status == null ? null : status.copy(); + if (useContext != null) { + dst.useContext = new ArrayList(); + for (UsageContext i : useContext) + dst.useContext.add(i.copy()); + }; + dst.date = date == null ? null : date.copy(); + if (note != null) { + dst.note = new ArrayList(); + for (Annotation i : note) + dst.note.add(i.copy()); + }; + dst.copyright = copyright == null ? null : copyright.copy(); + dst.citeAs = citeAs == null ? null : citeAs.copy(); + if (characteristic != null) { + dst.characteristic = new ArrayList(); + for (EvidenceFocusCharacteristicComponent i : characteristic) + dst.characteristic.add(i.copy()); + }; + if (relatedArtifact != null) { + dst.relatedArtifact = new ArrayList(); + for (RelatedArtifact i : relatedArtifact) + dst.relatedArtifact.add(i.copy()); + }; + } + + protected EvidenceFocus typedCopy() { + return copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof EvidenceFocus)) + return false; + EvidenceFocus o = (EvidenceFocus) other_; + return compareDeep(url, o.url, true) && compareDeep(identifier, o.identifier, true) && compareDeep(version, o.version, true) + && compareDeep(name, o.name, true) && compareDeep(status, o.status, true) && compareDeep(useContext, o.useContext, true) + && compareDeep(date, o.date, true) && compareDeep(note, o.note, true) && compareDeep(copyright, o.copyright, true) + && compareDeep(citeAs, o.citeAs, true) && compareDeep(characteristic, o.characteristic, true) && compareDeep(relatedArtifact, o.relatedArtifact, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof EvidenceFocus)) + return false; + EvidenceFocus o = (EvidenceFocus) other_; + return compareValues(url, o.url, true) && compareValues(version, o.version, true) && compareValues(name, o.name, true) + && compareValues(status, o.status, true) && compareValues(date, o.date, true) && compareValues(copyright, o.copyright, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, identifier, version + , name, status, useContext, date, note, copyright, citeAs, characteristic, relatedArtifact + ); + } + + @Override + public ResourceType getResourceType() { + return ResourceType.EvidenceFocus; + } + + /** + * Search parameter: context-quantity + *

+ * Description: A quantity- or range-valued use context assigned to the evidence focus
+ * Type: quantity
+ * Path: (EvidenceFocus.useContext.value as Quantity) | (EvidenceFocus.useContext.value as Range)
+ *

+ */ + @SearchParamDefinition(name="context-quantity", path="(EvidenceFocus.useContext.value as Quantity) | (EvidenceFocus.useContext.value as Range)", description="A quantity- or range-valued use context assigned to the evidence focus", type="quantity" ) + public static final String SP_CONTEXT_QUANTITY = "context-quantity"; + /** + * Fluent Client search parameter constant for context-quantity + *

+ * Description: A quantity- or range-valued use context assigned to the evidence focus
+ * Type: quantity
+ * Path: (EvidenceFocus.useContext.value as Quantity) | (EvidenceFocus.useContext.value as Range)
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.QuantityClientParam CONTEXT_QUANTITY = new ca.uhn.fhir.rest.gclient.QuantityClientParam(SP_CONTEXT_QUANTITY); + + /** + * Search parameter: context-type-quantity + *

+ * Description: A use context type and quantity- or range-based value assigned to the evidence focus
+ * Type: composite
+ * Path: EvidenceFocus.useContext
+ *

+ */ + @SearchParamDefinition(name="context-type-quantity", path="EvidenceFocus.useContext", description="A use context type and quantity- or range-based value assigned to the evidence focus", type="composite", compositeOf={"context-type", "context-quantity"} ) + public static final String SP_CONTEXT_TYPE_QUANTITY = "context-type-quantity"; + /** + * Fluent Client search parameter constant for context-type-quantity + *

+ * Description: A use context type and quantity- or range-based value assigned to the evidence focus
+ * Type: composite
+ * Path: EvidenceFocus.useContext
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.CompositeClientParam CONTEXT_TYPE_QUANTITY = new ca.uhn.fhir.rest.gclient.CompositeClientParam(SP_CONTEXT_TYPE_QUANTITY); + + /** + * Search parameter: context-type-value + *

+ * Description: A use context type and value assigned to the evidence focus
+ * Type: composite
+ * Path: EvidenceFocus.useContext
+ *

+ */ + @SearchParamDefinition(name="context-type-value", path="EvidenceFocus.useContext", description="A use context type and value assigned to the evidence focus", type="composite", compositeOf={"context-type", "context"} ) + public static final String SP_CONTEXT_TYPE_VALUE = "context-type-value"; + /** + * Fluent Client search parameter constant for context-type-value + *

+ * Description: A use context type and value assigned to the evidence focus
+ * Type: composite
+ * Path: EvidenceFocus.useContext
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.CompositeClientParam CONTEXT_TYPE_VALUE = new ca.uhn.fhir.rest.gclient.CompositeClientParam(SP_CONTEXT_TYPE_VALUE); + + /** + * Search parameter: context-type + *

+ * Description: A type of use context assigned to the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.useContext.code
+ *

+ */ + @SearchParamDefinition(name="context-type", path="EvidenceFocus.useContext.code", description="A type of use context assigned to the evidence focus", type="token" ) + public static final String SP_CONTEXT_TYPE = "context-type"; + /** + * Fluent Client search parameter constant for context-type + *

+ * Description: A type of use context assigned to the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.useContext.code
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT_TYPE); + + /** + * Search parameter: context + *

+ * Description: A use context assigned to the evidence focus
+ * Type: token
+ * Path: (EvidenceFocus.useContext.value as CodeableConcept)
+ *

+ */ + @SearchParamDefinition(name="context", path="(EvidenceFocus.useContext.value as CodeableConcept)", description="A use context assigned to the evidence focus", type="token" ) + public static final String SP_CONTEXT = "context"; + /** + * Fluent Client search parameter constant for context + *

+ * Description: A use context assigned to the evidence focus
+ * Type: token
+ * Path: (EvidenceFocus.useContext.value as CodeableConcept)
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CONTEXT = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CONTEXT); + + /** + * Search parameter: date + *

+ * Description: The evidence focus publication date
+ * Type: date
+ * Path: EvidenceFocus.date
+ *

+ */ + @SearchParamDefinition(name="date", path="EvidenceFocus.date", description="The evidence focus publication date", type="date" ) + public static final String SP_DATE = "date"; + /** + * Fluent Client search parameter constant for date + *

+ * Description: The evidence focus publication date
+ * Type: date
+ * Path: EvidenceFocus.date
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); + + /** + * Search parameter: identifier + *

+ * Description: External identifier for the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.identifier
+ *

+ */ + @SearchParamDefinition(name="identifier", path="EvidenceFocus.identifier", description="External identifier for the evidence focus", type="token" ) + public static final String SP_IDENTIFIER = "identifier"; + /** + * Fluent Client search parameter constant for identifier + *

+ * Description: External identifier for the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.identifier
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); + + /** + * Search parameter: name + *

+ * Description: Computationally friendly name of the evidence focus
+ * Type: string
+ * Path: EvidenceFocus.name
+ *

+ */ + @SearchParamDefinition(name="name", path="EvidenceFocus.name", description="Computationally friendly name of the evidence focus", type="string" ) + public static final String SP_NAME = "name"; + /** + * Fluent Client search parameter constant for name + *

+ * Description: Computationally friendly name of the evidence focus
+ * Type: string
+ * Path: EvidenceFocus.name
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); + + /** + * Search parameter: status + *

+ * Description: The current status of the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.status
+ *

+ */ + @SearchParamDefinition(name="status", path="EvidenceFocus.status", description="The current status of the evidence focus", type="token" ) + public static final String SP_STATUS = "status"; + /** + * Fluent Client search parameter constant for status + *

+ * Description: The current status of the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.status
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + + /** + * Search parameter: url + *

+ * Description: The uri that identifies the evidence focus
+ * Type: uri
+ * Path: EvidenceFocus.url
+ *

+ */ + @SearchParamDefinition(name="url", path="EvidenceFocus.url", description="The uri that identifies the evidence focus", type="uri" ) + public static final String SP_URL = "url"; + /** + * Fluent Client search parameter constant for url + *

+ * Description: The uri that identifies the evidence focus
+ * Type: uri
+ * Path: EvidenceFocus.url
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); + + /** + * Search parameter: version + *

+ * Description: The business version of the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.version
+ *

+ */ + @SearchParamDefinition(name="version", path="EvidenceFocus.version", description="The business version of the evidence focus", type="token" ) + public static final String SP_VERSION = "version"; + /** + * Fluent Client search parameter constant for version + *

+ * Description: The business version of the evidence focus
+ * Type: token
+ * Path: EvidenceFocus.version
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); + + +} + diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceVariable.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceVariable.java index 2a5316eb7..c682a2500 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceVariable.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/EvidenceVariable.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -68,11 +68,103 @@ import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Block; /** - * The EvidenceVariable resource describes a "PICO" element that knowledge (evidence, assertion, recommendation) is about. + * The EvidenceVariable resource describes an element that knowledge (Evidence) is about. */ @ResourceDef(name="EvidenceVariable", profile="http://hl7.org/fhir/StructureDefinition/EvidenceVariable") public class EvidenceVariable extends MetadataResource { + public enum CharacteristicCombination { + /** + * Combine characteristics with AND. + */ + INTERSECTION, + /** + * Combine characteristics with OR. + */ + UNION, + /** + * added to help the parsers with the generic types + */ + NULL; + public static CharacteristicCombination fromCode(String codeString) throws FHIRException { + if (codeString == null || "".equals(codeString)) + return null; + if ("intersection".equals(codeString)) + return INTERSECTION; + if ("union".equals(codeString)) + return UNION; + if (Configuration.isAcceptInvalidEnums()) + return null; + else + throw new FHIRException("Unknown CharacteristicCombination code '"+codeString+"'"); + } + public String toCode() { + switch (this) { + case INTERSECTION: return "intersection"; + case UNION: return "union"; + default: return "?"; + } + } + public String getSystem() { + switch (this) { + case INTERSECTION: return "http://hl7.org/fhir/characteristic-combination"; + case UNION: return "http://hl7.org/fhir/characteristic-combination"; + default: return "?"; + } + } + public String getDefinition() { + switch (this) { + case INTERSECTION: return "Combine characteristics with AND."; + case UNION: return "Combine characteristics with OR."; + default: return "?"; + } + } + public String getDisplay() { + switch (this) { + case INTERSECTION: return "intersection"; + case UNION: return "union"; + default: return "?"; + } + } + } + + public static class CharacteristicCombinationEnumFactory implements EnumFactory { + public CharacteristicCombination fromCode(String codeString) throws IllegalArgumentException { + if (codeString == null || "".equals(codeString)) + if (codeString == null || "".equals(codeString)) + return null; + if ("intersection".equals(codeString)) + return CharacteristicCombination.INTERSECTION; + if ("union".equals(codeString)) + return CharacteristicCombination.UNION; + throw new IllegalArgumentException("Unknown CharacteristicCombination code '"+codeString+"'"); + } + public Enumeration fromType(Base code) throws FHIRException { + if (code == null) + return null; + if (code.isEmpty()) + return new Enumeration(this); + String codeString = ((PrimitiveType) code).asStringValue(); + if (codeString == null || "".equals(codeString)) + return null; + if ("intersection".equals(codeString)) + return new Enumeration(this, CharacteristicCombination.INTERSECTION); + if ("union".equals(codeString)) + return new Enumeration(this, CharacteristicCombination.UNION); + throw new FHIRException("Unknown CharacteristicCombination code '"+codeString+"'"); + } + public String toCode(CharacteristicCombination code) { + if (code == CharacteristicCombination.INTERSECTION) + return "intersection"; + if (code == CharacteristicCombination.UNION) + return "union"; + return "?"; + } + public String toSystem(CharacteristicCombination code) { + return code.getSystem(); + } + } + public enum EvidenceVariableType { /** * The variable is dichotomous, such as present or absent. @@ -349,7 +441,7 @@ public class EvidenceVariable extends MetadataResource { /** * Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year). */ - @Child(name = "definition", type = {Group.class, CanonicalType.class, CodeableConcept.class, Expression.class, DataRequirement.class, TriggerDefinition.class}, order=2, min=1, max=1, modifier=false, summary=true) + @Child(name = "definition", type = {Group.class, EvidenceVariable.class, CanonicalType.class, CodeableConcept.class, Expression.class}, order=2, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="What code or expression defines members?", formalDefinition="Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year)." ) protected DataType definition; @@ -368,43 +460,29 @@ public class EvidenceVariable extends MetadataResource { @Description(shortDefinition="Device used for determining characteristic", formalDefinition="Device used for determining characteristic." ) protected Reference device; - /** - * Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings. - */ - @Child(name = "booleanSet", type = {StringType.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="What code/value pairs define members?", formalDefinition="Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings." ) - protected List booleanSet; - /** * When true, members with this characteristic are excluded from the element. */ - @Child(name = "exclude", type = {BooleanType.class}, order=6, min=0, max=1, modifier=false, summary=false) + @Child(name = "exclude", type = {BooleanType.class}, order=5, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Whether the characteristic includes or excludes members", formalDefinition="When true, members with this characteristic are excluded from the element." ) protected BooleanType exclude; /** - * Indicates what effective period the study covers. + * Indicates duration, period, or point of observation from the participant's study entry. */ - @Child(name = "participantEffective", type = {DateTimeType.class, Period.class, Duration.class, Timing.class}, order=7, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="What time period do participants cover", formalDefinition="Indicates what effective period the study covers." ) - protected DataType participantEffective; - - /** - * Indicates duration from the participant's study entry. - */ - @Child(name = "timeFromStart", type = {Duration.class}, order=8, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Observation time from study start", formalDefinition="Indicates duration from the participant's study entry." ) - protected Duration timeFromStart; + @Child(name = "timeFromStart", type = {}, order=6, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Observation time from study start", formalDefinition="Indicates duration, period, or point of observation from the participant's study entry." ) + protected EvidenceVariableCharacteristicTimeFromStartComponent timeFromStart; /** * Indicates how elements are aggregated within the study effective period. */ - @Child(name = "groupMeasure", type = {CodeType.class}, order=9, min=0, max=1, modifier=false, summary=false) + @Child(name = "groupMeasure", type = {CodeType.class}, order=7, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="mean | median | mean-of-mean | mean-of-median | median-of-mean | median-of-median", formalDefinition="Indicates how elements are aggregated within the study effective period." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/group-measure") protected Enumeration groupMeasure; - private static final long serialVersionUID = -1566117434L; + private static final long serialVersionUID = 173999603L; /** * Constructor @@ -537,36 +615,6 @@ public class EvidenceVariable extends MetadataResource { return this != null && this.definition instanceof Expression; } - /** - * @return {@link #definition} (Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).) - */ - public DataRequirement getDefinitionDataRequirement() throws FHIRException { - if (this.definition == null) - this.definition = new DataRequirement(); - if (!(this.definition instanceof DataRequirement)) - throw new FHIRException("Type mismatch: the type DataRequirement was expected, but "+this.definition.getClass().getName()+" was encountered"); - return (DataRequirement) this.definition; - } - - public boolean hasDefinitionDataRequirement() { - return this != null && this.definition instanceof DataRequirement; - } - - /** - * @return {@link #definition} (Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).) - */ - public TriggerDefinition getDefinitionTriggerDefinition() throws FHIRException { - if (this.definition == null) - this.definition = new TriggerDefinition(); - if (!(this.definition instanceof TriggerDefinition)) - throw new FHIRException("Type mismatch: the type TriggerDefinition was expected, but "+this.definition.getClass().getName()+" was encountered"); - return (TriggerDefinition) this.definition; - } - - public boolean hasDefinitionTriggerDefinition() { - return this != null && this.definition instanceof TriggerDefinition; - } - public boolean hasDefinition() { return this.definition != null && !this.definition.isEmpty(); } @@ -575,7 +623,7 @@ public class EvidenceVariable extends MetadataResource { * @param value {@link #definition} (Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).) */ public EvidenceVariableCharacteristicComponent setDefinition(DataType value) { - if (value != null && !(value instanceof Reference || value instanceof CanonicalType || value instanceof CodeableConcept || value instanceof Expression || value instanceof DataRequirement || value instanceof TriggerDefinition)) + if (value != null && !(value instanceof Reference || value instanceof CanonicalType || value instanceof CodeableConcept || value instanceof Expression)) throw new Error("Not the right type for EvidenceVariable.characteristic.definition[x]: "+value.fhirType()); this.definition = value; return this; @@ -629,67 +677,6 @@ public class EvidenceVariable extends MetadataResource { return this; } - /** - * @return {@link #booleanSet} (Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings.) - */ - public List getBooleanSet() { - if (this.booleanSet == null) - this.booleanSet = new ArrayList(); - return this.booleanSet; - } - - /** - * @return Returns a reference to this for easy method chaining - */ - public EvidenceVariableCharacteristicComponent setBooleanSet(List theBooleanSet) { - this.booleanSet = theBooleanSet; - return this; - } - - public boolean hasBooleanSet() { - if (this.booleanSet == null) - return false; - for (StringType item : this.booleanSet) - if (!item.isEmpty()) - return true; - return false; - } - - /** - * @return {@link #booleanSet} (Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings.) - */ - public StringType addBooleanSetElement() {//2 - StringType t = new StringType(); - if (this.booleanSet == null) - this.booleanSet = new ArrayList(); - this.booleanSet.add(t); - return t; - } - - /** - * @param value {@link #booleanSet} (Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings.) - */ - public EvidenceVariableCharacteristicComponent addBooleanSet(String value) { //1 - StringType t = new StringType(); - t.setValue(value); - if (this.booleanSet == null) - this.booleanSet = new ArrayList(); - this.booleanSet.add(t); - return this; - } - - /** - * @param value {@link #booleanSet} (Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings.) - */ - public boolean hasBooleanSet(String value) { - if (this.booleanSet == null) - return false; - for (StringType v : this.booleanSet) - if (v.getValue().equals(value)) // string - return true; - return false; - } - /** * @return {@link #exclude} (When true, members with this characteristic are excluded from the element.). This is the underlying object with id, value and extensions. The accessor "getExclude" gives direct access to the value */ @@ -736,95 +723,14 @@ public class EvidenceVariable extends MetadataResource { } /** - * @return {@link #participantEffective} (Indicates what effective period the study covers.) + * @return {@link #timeFromStart} (Indicates duration, period, or point of observation from the participant's study entry.) */ - public DataType getParticipantEffective() { - return this.participantEffective; - } - - /** - * @return {@link #participantEffective} (Indicates what effective period the study covers.) - */ - public DateTimeType getParticipantEffectiveDateTimeType() throws FHIRException { - if (this.participantEffective == null) - this.participantEffective = new DateTimeType(); - if (!(this.participantEffective instanceof DateTimeType)) - throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.participantEffective.getClass().getName()+" was encountered"); - return (DateTimeType) this.participantEffective; - } - - public boolean hasParticipantEffectiveDateTimeType() { - return this != null && this.participantEffective instanceof DateTimeType; - } - - /** - * @return {@link #participantEffective} (Indicates what effective period the study covers.) - */ - public Period getParticipantEffectivePeriod() throws FHIRException { - if (this.participantEffective == null) - this.participantEffective = new Period(); - if (!(this.participantEffective instanceof Period)) - throw new FHIRException("Type mismatch: the type Period was expected, but "+this.participantEffective.getClass().getName()+" was encountered"); - return (Period) this.participantEffective; - } - - public boolean hasParticipantEffectivePeriod() { - return this != null && this.participantEffective instanceof Period; - } - - /** - * @return {@link #participantEffective} (Indicates what effective period the study covers.) - */ - public Duration getParticipantEffectiveDuration() throws FHIRException { - if (this.participantEffective == null) - this.participantEffective = new Duration(); - if (!(this.participantEffective instanceof Duration)) - throw new FHIRException("Type mismatch: the type Duration was expected, but "+this.participantEffective.getClass().getName()+" was encountered"); - return (Duration) this.participantEffective; - } - - public boolean hasParticipantEffectiveDuration() { - return this != null && this.participantEffective instanceof Duration; - } - - /** - * @return {@link #participantEffective} (Indicates what effective period the study covers.) - */ - public Timing getParticipantEffectiveTiming() throws FHIRException { - if (this.participantEffective == null) - this.participantEffective = new Timing(); - if (!(this.participantEffective instanceof Timing)) - throw new FHIRException("Type mismatch: the type Timing was expected, but "+this.participantEffective.getClass().getName()+" was encountered"); - return (Timing) this.participantEffective; - } - - public boolean hasParticipantEffectiveTiming() { - return this != null && this.participantEffective instanceof Timing; - } - - public boolean hasParticipantEffective() { - return this.participantEffective != null && !this.participantEffective.isEmpty(); - } - - /** - * @param value {@link #participantEffective} (Indicates what effective period the study covers.) - */ - public EvidenceVariableCharacteristicComponent setParticipantEffective(DataType value) { - if (value != null && !(value instanceof DateTimeType || value instanceof Period || value instanceof Duration || value instanceof Timing)) - throw new Error("Not the right type for EvidenceVariable.characteristic.participantEffective[x]: "+value.fhirType()); - this.participantEffective = value; - return this; - } - - /** - * @return {@link #timeFromStart} (Indicates duration from the participant's study entry.) - */ - public Duration getTimeFromStart() { + public EvidenceVariableCharacteristicTimeFromStartComponent getTimeFromStart() { if (this.timeFromStart == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create EvidenceVariableCharacteristicComponent.timeFromStart"); else if (Configuration.doAutoCreate()) - this.timeFromStart = new Duration(); // cc + this.timeFromStart = new EvidenceVariableCharacteristicTimeFromStartComponent(); // cc return this.timeFromStart; } @@ -833,9 +739,9 @@ public class EvidenceVariable extends MetadataResource { } /** - * @param value {@link #timeFromStart} (Indicates duration from the participant's study entry.) + * @param value {@link #timeFromStart} (Indicates duration, period, or point of observation from the participant's study entry.) */ - public EvidenceVariableCharacteristicComponent setTimeFromStart(Duration value) { + public EvidenceVariableCharacteristicComponent setTimeFromStart(EvidenceVariableCharacteristicTimeFromStartComponent value) { this.timeFromStart = value; return this; } @@ -892,13 +798,11 @@ public class EvidenceVariable extends MetadataResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("description", "string", "A short, natural language description of the characteristic that could be used to communicate the criteria to an end-user.", 0, 1, description)); - children.add(new Property("definition[x]", "Reference(Group)|canonical(ActivityDefinition)|CodeableConcept|Expression|DataRequirement|TriggerDefinition", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition)); + children.add(new Property("definition[x]", "Reference(Group|EvidenceVariable)|canonical(Any)|CodeableConcept|Expression", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition)); children.add(new Property("method", "CodeableConcept", "Method used for describing characteristic.", 0, 1, method)); children.add(new Property("device", "Reference(Device|DeviceMetric)", "Device used for determining characteristic.", 0, 1, device)); - children.add(new Property("booleanSet", "string", "Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings.", 0, java.lang.Integer.MAX_VALUE, booleanSet)); children.add(new Property("exclude", "boolean", "When true, members with this characteristic are excluded from the element.", 0, 1, exclude)); - children.add(new Property("participantEffective[x]", "dateTime|Period|Duration|Timing", "Indicates what effective period the study covers.", 0, 1, participantEffective)); - children.add(new Property("timeFromStart", "Duration", "Indicates duration from the participant's study entry.", 0, 1, timeFromStart)); + children.add(new Property("timeFromStart", "", "Indicates duration, period, or point of observation from the participant's study entry.", 0, 1, timeFromStart)); children.add(new Property("groupMeasure", "code", "Indicates how elements are aggregated within the study effective period.", 0, 1, groupMeasure)); } @@ -906,25 +810,16 @@ public class EvidenceVariable extends MetadataResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1724546052: /*description*/ return new Property("description", "string", "A short, natural language description of the characteristic that could be used to communicate the criteria to an end-user.", 0, 1, description); - case -1139422643: /*definition[x]*/ return new Property("definition[x]", "Reference(Group)|canonical(ActivityDefinition)|CodeableConcept|Expression|DataRequirement|TriggerDefinition", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); - case -1014418093: /*definition*/ return new Property("definition[x]", "Reference(Group)|canonical(ActivityDefinition)|CodeableConcept|Expression|DataRequirement|TriggerDefinition", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); - case -820021448: /*definitionReference*/ return new Property("definition[x]", "Reference(Group)", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); - case 933485793: /*definitionCanonical*/ return new Property("definition[x]", "canonical(ActivityDefinition)", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); + case -1139422643: /*definition[x]*/ return new Property("definition[x]", "Reference(Group|EvidenceVariable)|canonical(Any)|CodeableConcept|Expression", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); + case -1014418093: /*definition*/ return new Property("definition[x]", "Reference(Group|EvidenceVariable)|canonical(Any)|CodeableConcept|Expression", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); + case -820021448: /*definitionReference*/ return new Property("definition[x]", "Reference(Group|EvidenceVariable)", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); + case 933485793: /*definitionCanonical*/ return new Property("definition[x]", "canonical(Any)", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); case -1446002226: /*definitionCodeableConcept*/ return new Property("definition[x]", "CodeableConcept", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); case 1463703627: /*definitionExpression*/ return new Property("definition[x]", "Expression", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); - case -660350874: /*definitionDataRequirement*/ return new Property("definition[x]", "DataRequirement", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); - case -1130324968: /*definitionTriggerDefinition*/ return new Property("definition[x]", "TriggerDefinition", "Define members of the evidence element using Codes (such as condition, medication, or observation), Expressions ( using an expression language such as FHIRPath or CQL) or DataRequirements (such as Diabetes diagnosis onset in the last year).", 0, 1, definition); case -1077554975: /*method*/ return new Property("method", "CodeableConcept", "Method used for describing characteristic.", 0, 1, method); case -1335157162: /*device*/ return new Property("device", "Reference(Device|DeviceMetric)", "Device used for determining characteristic.", 0, 1, device); - case -613382374: /*booleanSet*/ return new Property("booleanSet", "string", "Use booleanSet to define the members of the population, such as Age Ranges, Genders, Settings.", 0, java.lang.Integer.MAX_VALUE, booleanSet); case -1321148966: /*exclude*/ return new Property("exclude", "boolean", "When true, members with this characteristic are excluded from the element.", 0, 1, exclude); - case 1777308748: /*participantEffective[x]*/ return new Property("participantEffective[x]", "dateTime|Period|Duration|Timing", "Indicates what effective period the study covers.", 0, 1, participantEffective); - case 1376306100: /*participantEffective*/ return new Property("participantEffective[x]", "dateTime|Period|Duration|Timing", "Indicates what effective period the study covers.", 0, 1, participantEffective); - case -1721146513: /*participantEffectiveDateTime*/ return new Property("participantEffective[x]", "dateTime", "Indicates what effective period the study covers.", 0, 1, participantEffective); - case -883650923: /*participantEffectivePeriod*/ return new Property("participantEffective[x]", "Period", "Indicates what effective period the study covers.", 0, 1, participantEffective); - case -1210941080: /*participantEffectiveDuration*/ return new Property("participantEffective[x]", "Duration", "Indicates what effective period the study covers.", 0, 1, participantEffective); - case -765589218: /*participantEffectiveTiming*/ return new Property("participantEffective[x]", "Timing", "Indicates what effective period the study covers.", 0, 1, participantEffective); - case 2100140683: /*timeFromStart*/ return new Property("timeFromStart", "Duration", "Indicates duration from the participant's study entry.", 0, 1, timeFromStart); + case 2100140683: /*timeFromStart*/ return new Property("timeFromStart", "", "Indicates duration, period, or point of observation from the participant's study entry.", 0, 1, timeFromStart); case 588892639: /*groupMeasure*/ return new Property("groupMeasure", "code", "Indicates how elements are aggregated within the study effective period.", 0, 1, groupMeasure); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -938,10 +833,8 @@ public class EvidenceVariable extends MetadataResource { case -1014418093: /*definition*/ return this.definition == null ? new Base[0] : new Base[] {this.definition}; // DataType case -1077554975: /*method*/ return this.method == null ? new Base[0] : new Base[] {this.method}; // CodeableConcept case -1335157162: /*device*/ return this.device == null ? new Base[0] : new Base[] {this.device}; // Reference - case -613382374: /*booleanSet*/ return this.booleanSet == null ? new Base[0] : this.booleanSet.toArray(new Base[this.booleanSet.size()]); // StringType case -1321148966: /*exclude*/ return this.exclude == null ? new Base[0] : new Base[] {this.exclude}; // BooleanType - case 1376306100: /*participantEffective*/ return this.participantEffective == null ? new Base[0] : new Base[] {this.participantEffective}; // DataType - case 2100140683: /*timeFromStart*/ return this.timeFromStart == null ? new Base[0] : new Base[] {this.timeFromStart}; // Duration + case 2100140683: /*timeFromStart*/ return this.timeFromStart == null ? new Base[0] : new Base[] {this.timeFromStart}; // EvidenceVariableCharacteristicTimeFromStartComponent case 588892639: /*groupMeasure*/ return this.groupMeasure == null ? new Base[0] : new Base[] {this.groupMeasure}; // Enumeration default: return super.getProperty(hash, name, checkValid); } @@ -963,17 +856,11 @@ public class EvidenceVariable extends MetadataResource { case -1335157162: // device this.device = TypeConvertor.castToReference(value); // Reference return value; - case -613382374: // booleanSet - this.getBooleanSet().add(TypeConvertor.castToString(value)); // StringType - return value; case -1321148966: // exclude this.exclude = TypeConvertor.castToBoolean(value); // BooleanType return value; - case 1376306100: // participantEffective - this.participantEffective = TypeConvertor.castToType(value); // DataType - return value; case 2100140683: // timeFromStart - this.timeFromStart = TypeConvertor.castToDuration(value); // Duration + this.timeFromStart = (EvidenceVariableCharacteristicTimeFromStartComponent) value; // EvidenceVariableCharacteristicTimeFromStartComponent return value; case 588892639: // groupMeasure value = new GroupMeasureEnumFactory().fromType(TypeConvertor.castToCode(value)); @@ -994,14 +881,10 @@ public class EvidenceVariable extends MetadataResource { this.method = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("device")) { this.device = TypeConvertor.castToReference(value); // Reference - } else if (name.equals("booleanSet")) { - this.getBooleanSet().add(TypeConvertor.castToString(value)); } else if (name.equals("exclude")) { this.exclude = TypeConvertor.castToBoolean(value); // BooleanType - } else if (name.equals("participantEffective[x]")) { - this.participantEffective = TypeConvertor.castToType(value); // DataType } else if (name.equals("timeFromStart")) { - this.timeFromStart = TypeConvertor.castToDuration(value); // Duration + this.timeFromStart = (EvidenceVariableCharacteristicTimeFromStartComponent) value; // EvidenceVariableCharacteristicTimeFromStartComponent } else if (name.equals("groupMeasure")) { value = new GroupMeasureEnumFactory().fromType(TypeConvertor.castToCode(value)); this.groupMeasure = (Enumeration) value; // Enumeration @@ -1018,10 +901,7 @@ public class EvidenceVariable extends MetadataResource { case -1014418093: return getDefinition(); case -1077554975: return getMethod(); case -1335157162: return getDevice(); - case -613382374: return addBooleanSetElement(); case -1321148966: return getExcludeElement(); - case 1777308748: return getParticipantEffective(); - case 1376306100: return getParticipantEffective(); case 2100140683: return getTimeFromStart(); case 588892639: return getGroupMeasureElement(); default: return super.makeProperty(hash, name); @@ -1033,13 +913,11 @@ public class EvidenceVariable extends MetadataResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -1724546052: /*description*/ return new String[] {"string"}; - case -1014418093: /*definition*/ return new String[] {"Reference", "canonical", "CodeableConcept", "Expression", "DataRequirement", "TriggerDefinition"}; + case -1014418093: /*definition*/ return new String[] {"Reference", "canonical", "CodeableConcept", "Expression"}; case -1077554975: /*method*/ return new String[] {"CodeableConcept"}; case -1335157162: /*device*/ return new String[] {"Reference"}; - case -613382374: /*booleanSet*/ return new String[] {"string"}; case -1321148966: /*exclude*/ return new String[] {"boolean"}; - case 1376306100: /*participantEffective*/ return new String[] {"dateTime", "Period", "Duration", "Timing"}; - case 2100140683: /*timeFromStart*/ return new String[] {"Duration"}; + case 2100140683: /*timeFromStart*/ return new String[] {}; case 588892639: /*groupMeasure*/ return new String[] {"code"}; default: return super.getTypesForProperty(hash, name); } @@ -1067,14 +945,6 @@ public class EvidenceVariable extends MetadataResource { this.definition = new Expression(); return this.definition; } - else if (name.equals("definitionDataRequirement")) { - this.definition = new DataRequirement(); - return this.definition; - } - else if (name.equals("definitionTriggerDefinition")) { - this.definition = new TriggerDefinition(); - return this.definition; - } else if (name.equals("method")) { this.method = new CodeableConcept(); return this.method; @@ -1083,30 +953,11 @@ public class EvidenceVariable extends MetadataResource { this.device = new Reference(); return this.device; } - else if (name.equals("booleanSet")) { - throw new FHIRException("Cannot call addChild on a primitive type EvidenceVariable.characteristic.booleanSet"); - } else if (name.equals("exclude")) { throw new FHIRException("Cannot call addChild on a primitive type EvidenceVariable.characteristic.exclude"); } - else if (name.equals("participantEffectiveDateTime")) { - this.participantEffective = new DateTimeType(); - return this.participantEffective; - } - else if (name.equals("participantEffectivePeriod")) { - this.participantEffective = new Period(); - return this.participantEffective; - } - else if (name.equals("participantEffectiveDuration")) { - this.participantEffective = new Duration(); - return this.participantEffective; - } - else if (name.equals("participantEffectiveTiming")) { - this.participantEffective = new Timing(); - return this.participantEffective; - } else if (name.equals("timeFromStart")) { - this.timeFromStart = new Duration(); + this.timeFromStart = new EvidenceVariableCharacteristicTimeFromStartComponent(); return this.timeFromStart; } else if (name.equals("groupMeasure")) { @@ -1128,13 +979,7 @@ public class EvidenceVariable extends MetadataResource { dst.definition = definition == null ? null : definition.copy(); dst.method = method == null ? null : method.copy(); dst.device = device == null ? null : device.copy(); - if (booleanSet != null) { - dst.booleanSet = new ArrayList(); - for (StringType i : booleanSet) - dst.booleanSet.add(i.copy()); - }; dst.exclude = exclude == null ? null : exclude.copy(); - dst.participantEffective = participantEffective == null ? null : participantEffective.copy(); dst.timeFromStart = timeFromStart == null ? null : timeFromStart.copy(); dst.groupMeasure = groupMeasure == null ? null : groupMeasure.copy(); } @@ -1147,8 +992,7 @@ public class EvidenceVariable extends MetadataResource { return false; EvidenceVariableCharacteristicComponent o = (EvidenceVariableCharacteristicComponent) other_; return compareDeep(description, o.description, true) && compareDeep(definition, o.definition, true) - && compareDeep(method, o.method, true) && compareDeep(device, o.device, true) && compareDeep(booleanSet, o.booleanSet, true) - && compareDeep(exclude, o.exclude, true) && compareDeep(participantEffective, o.participantEffective, true) + && compareDeep(method, o.method, true) && compareDeep(device, o.device, true) && compareDeep(exclude, o.exclude, true) && compareDeep(timeFromStart, o.timeFromStart, true) && compareDeep(groupMeasure, o.groupMeasure, true) ; } @@ -1160,14 +1004,13 @@ public class EvidenceVariable extends MetadataResource { if (!(other_ instanceof EvidenceVariableCharacteristicComponent)) return false; EvidenceVariableCharacteristicComponent o = (EvidenceVariableCharacteristicComponent) other_; - return compareValues(description, o.description, true) && compareValues(booleanSet, o.booleanSet, true) - && compareValues(exclude, o.exclude, true) && compareValues(groupMeasure, o.groupMeasure, true); + return compareValues(description, o.description, true) && compareValues(exclude, o.exclude, true) && compareValues(groupMeasure, o.groupMeasure, true) + ; } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(description, definition, method - , device, booleanSet, exclude, participantEffective, timeFromStart, groupMeasure - ); + , device, exclude, timeFromStart, groupMeasure); } public String fhirType() { @@ -1175,6 +1018,357 @@ public class EvidenceVariable extends MetadataResource { } + } + + @Block() + public static class EvidenceVariableCharacteristicTimeFromStartComponent extends BackboneElement implements IBaseBackboneElement { + /** + * A short, natural language description. + */ + @Child(name = "description", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Human readable description", formalDefinition="A short, natural language description." ) + protected StringType description; + + /** + * Used to express the observation at a defined amount of time after the study start. + */ + @Child(name = "quantity", type = {Quantity.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to express the observation at a defined amount of time after the study start", formalDefinition="Used to express the observation at a defined amount of time after the study start." ) + protected Quantity quantity; + + /** + * Used to express the observation within a period after the study start. + */ + @Child(name = "range", type = {Range.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Used to express the observation within a period after the study start", formalDefinition="Used to express the observation within a period after the study start." ) + protected Range range; + + /** + * A human-readable string to clarify or explain concepts about the resource. + */ + @Child(name = "note", type = {Annotation.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Used for footnotes or explanatory notes", formalDefinition="A human-readable string to clarify or explain concepts about the resource." ) + protected List note; + + private static final long serialVersionUID = 949972898L; + + /** + * Constructor + */ + public EvidenceVariableCharacteristicTimeFromStartComponent() { + super(); + } + + /** + * @return {@link #description} (A short, natural language description.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public StringType getDescriptionElement() { + if (this.description == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceVariableCharacteristicTimeFromStartComponent.description"); + else if (Configuration.doAutoCreate()) + this.description = new StringType(); // bb + return this.description; + } + + public boolean hasDescriptionElement() { + return this.description != null && !this.description.isEmpty(); + } + + public boolean hasDescription() { + return this.description != null && !this.description.isEmpty(); + } + + /** + * @param value {@link #description} (A short, natural language description.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public EvidenceVariableCharacteristicTimeFromStartComponent setDescriptionElement(StringType value) { + this.description = value; + return this; + } + + /** + * @return A short, natural language description. + */ + public String getDescription() { + return this.description == null ? null : this.description.getValue(); + } + + /** + * @param value A short, natural language description. + */ + public EvidenceVariableCharacteristicTimeFromStartComponent setDescription(String value) { + if (Utilities.noString(value)) + this.description = null; + else { + if (this.description == null) + this.description = new StringType(); + this.description.setValue(value); + } + return this; + } + + /** + * @return {@link #quantity} (Used to express the observation at a defined amount of time after the study start.) + */ + public Quantity getQuantity() { + if (this.quantity == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceVariableCharacteristicTimeFromStartComponent.quantity"); + else if (Configuration.doAutoCreate()) + this.quantity = new Quantity(); // cc + return this.quantity; + } + + public boolean hasQuantity() { + return this.quantity != null && !this.quantity.isEmpty(); + } + + /** + * @param value {@link #quantity} (Used to express the observation at a defined amount of time after the study start.) + */ + public EvidenceVariableCharacteristicTimeFromStartComponent setQuantity(Quantity value) { + this.quantity = value; + return this; + } + + /** + * @return {@link #range} (Used to express the observation within a period after the study start.) + */ + public Range getRange() { + if (this.range == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceVariableCharacteristicTimeFromStartComponent.range"); + else if (Configuration.doAutoCreate()) + this.range = new Range(); // cc + return this.range; + } + + public boolean hasRange() { + return this.range != null && !this.range.isEmpty(); + } + + /** + * @param value {@link #range} (Used to express the observation within a period after the study start.) + */ + public EvidenceVariableCharacteristicTimeFromStartComponent setRange(Range value) { + this.range = value; + return this; + } + + /** + * @return {@link #note} (A human-readable string to clarify or explain concepts about the resource.) + */ + public List getNote() { + if (this.note == null) + this.note = new ArrayList(); + return this.note; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public EvidenceVariableCharacteristicTimeFromStartComponent setNote(List theNote) { + this.note = theNote; + return this; + } + + public boolean hasNote() { + if (this.note == null) + return false; + for (Annotation item : this.note) + if (!item.isEmpty()) + return true; + return false; + } + + public Annotation addNote() { //3 + Annotation t = new Annotation(); + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return t; + } + + public EvidenceVariableCharacteristicTimeFromStartComponent addNote(Annotation t) { //3 + if (t == null) + return this; + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} + */ + public Annotation getNoteFirstRep() { + if (getNote().isEmpty()) { + addNote(); + } + return getNote().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("description", "string", "A short, natural language description.", 0, 1, description)); + children.add(new Property("quantity", "Quantity", "Used to express the observation at a defined amount of time after the study start.", 0, 1, quantity)); + children.add(new Property("range", "Range", "Used to express the observation within a period after the study start.", 0, 1, range)); + children.add(new Property("note", "Annotation", "A human-readable string to clarify or explain concepts about the resource.", 0, java.lang.Integer.MAX_VALUE, note)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1724546052: /*description*/ return new Property("description", "string", "A short, natural language description.", 0, 1, description); + case -1285004149: /*quantity*/ return new Property("quantity", "Quantity", "Used to express the observation at a defined amount of time after the study start.", 0, 1, quantity); + case 108280125: /*range*/ return new Property("range", "Range", "Used to express the observation within a period after the study start.", 0, 1, range); + case 3387378: /*note*/ return new Property("note", "Annotation", "A human-readable string to clarify or explain concepts about the resource.", 0, java.lang.Integer.MAX_VALUE, note); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType + case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity + case 108280125: /*range*/ return this.range == null ? new Base[0] : new Base[] {this.range}; // Range + case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1724546052: // description + this.description = TypeConvertor.castToString(value); // StringType + return value; + case -1285004149: // quantity + this.quantity = TypeConvertor.castToQuantity(value); // Quantity + return value; + case 108280125: // range + this.range = TypeConvertor.castToRange(value); // Range + return value; + case 3387378: // note + this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("description")) { + this.description = TypeConvertor.castToString(value); // StringType + } else if (name.equals("quantity")) { + this.quantity = TypeConvertor.castToQuantity(value); // Quantity + } else if (name.equals("range")) { + this.range = TypeConvertor.castToRange(value); // Range + } else if (name.equals("note")) { + this.getNote().add(TypeConvertor.castToAnnotation(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1724546052: return getDescriptionElement(); + case -1285004149: return getQuantity(); + case 108280125: return getRange(); + case 3387378: return addNote(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1724546052: /*description*/ return new String[] {"string"}; + case -1285004149: /*quantity*/ return new String[] {"Quantity"}; + case 108280125: /*range*/ return new String[] {"Range"}; + case 3387378: /*note*/ return new String[] {"Annotation"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("description")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceVariable.characteristic.timeFromStart.description"); + } + else if (name.equals("quantity")) { + this.quantity = new Quantity(); + return this.quantity; + } + else if (name.equals("range")) { + this.range = new Range(); + return this.range; + } + else if (name.equals("note")) { + return addNote(); + } + else + return super.addChild(name); + } + + public EvidenceVariableCharacteristicTimeFromStartComponent copy() { + EvidenceVariableCharacteristicTimeFromStartComponent dst = new EvidenceVariableCharacteristicTimeFromStartComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(EvidenceVariableCharacteristicTimeFromStartComponent dst) { + super.copyValues(dst); + dst.description = description == null ? null : description.copy(); + dst.quantity = quantity == null ? null : quantity.copy(); + dst.range = range == null ? null : range.copy(); + if (note != null) { + dst.note = new ArrayList(); + for (Annotation i : note) + dst.note.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof EvidenceVariableCharacteristicTimeFromStartComponent)) + return false; + EvidenceVariableCharacteristicTimeFromStartComponent o = (EvidenceVariableCharacteristicTimeFromStartComponent) other_; + return compareDeep(description, o.description, true) && compareDeep(quantity, o.quantity, true) + && compareDeep(range, o.range, true) && compareDeep(note, o.note, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof EvidenceVariableCharacteristicTimeFromStartComponent)) + return false; + EvidenceVariableCharacteristicTimeFromStartComponent o = (EvidenceVariableCharacteristicTimeFromStartComponent) other_; + return compareValues(description, o.description, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(description, quantity, range + , note); + } + + public String fhirType() { + return "EvidenceVariable.characteristic.timeFromStart"; + + } + } /** @@ -1356,10 +1550,10 @@ public class EvidenceVariable extends MetadataResource { protected List relatedArtifact; /** - * The type of evidence element, a population, an exposure, or an outcome. + * Used for an outcome to classify. */ @Child(name = "type", type = {CodeType.class}, order=25, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="dichotomous | continuous | descriptive", formalDefinition="The type of evidence element, a population, an exposure, or an outcome." ) + @Description(shortDefinition="dichotomous | continuous | descriptive", formalDefinition="Used for an outcome to classify." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/variable-type") protected Enumeration type; @@ -1370,14 +1564,22 @@ public class EvidenceVariable extends MetadataResource { @Description(shortDefinition="Actual or conceptual", formalDefinition="True if the actual variable measured, false if a conceptual representation of the intended variable." ) protected BooleanType actual; + /** + * Used to specify if two or more characteristics are combined with OR or AND. + */ + @Child(name = "characteristicCombination", type = {CodeType.class}, order=27, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="intersection | union", formalDefinition="Used to specify if two or more characteristics are combined with OR or AND." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/characteristic-combination") + protected Enumeration characteristicCombination; + /** * A characteristic that defines the members of the evidence element. Multiple characteristics are applied with "and" semantics. */ - @Child(name = "characteristic", type = {}, order=27, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "characteristic", type = {}, order=28, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="What defines the members of the evidence element", formalDefinition="A characteristic that defines the members of the evidence element. Multiple characteristics are applied with \"and\" semantics." ) protected List characteristic; - private static final long serialVersionUID = -544472546L; + private static final long serialVersionUID = 769110431L; /** * Constructor @@ -2635,7 +2837,7 @@ public class EvidenceVariable extends MetadataResource { } /** - * @return {@link #type} (The type of evidence element, a population, an exposure, or an outcome.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value + * @return {@link #type} (Used for an outcome to classify.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value */ public Enumeration getTypeElement() { if (this.type == null) @@ -2655,7 +2857,7 @@ public class EvidenceVariable extends MetadataResource { } /** - * @param value {@link #type} (The type of evidence element, a population, an exposure, or an outcome.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value + * @param value {@link #type} (Used for an outcome to classify.). This is the underlying object with id, value and extensions. The accessor "getType" gives direct access to the value */ public EvidenceVariable setTypeElement(Enumeration value) { this.type = value; @@ -2663,14 +2865,14 @@ public class EvidenceVariable extends MetadataResource { } /** - * @return The type of evidence element, a population, an exposure, or an outcome. + * @return Used for an outcome to classify. */ public EvidenceVariableType getType() { return this.type == null ? null : this.type.getValue(); } /** - * @param value The type of evidence element, a population, an exposure, or an outcome. + * @param value Used for an outcome to classify. */ public EvidenceVariable setType(EvidenceVariableType value) { if (value == null) @@ -2728,6 +2930,55 @@ public class EvidenceVariable extends MetadataResource { return this; } + /** + * @return {@link #characteristicCombination} (Used to specify if two or more characteristics are combined with OR or AND.). This is the underlying object with id, value and extensions. The accessor "getCharacteristicCombination" gives direct access to the value + */ + public Enumeration getCharacteristicCombinationElement() { + if (this.characteristicCombination == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create EvidenceVariable.characteristicCombination"); + else if (Configuration.doAutoCreate()) + this.characteristicCombination = new Enumeration(new CharacteristicCombinationEnumFactory()); // bb + return this.characteristicCombination; + } + + public boolean hasCharacteristicCombinationElement() { + return this.characteristicCombination != null && !this.characteristicCombination.isEmpty(); + } + + public boolean hasCharacteristicCombination() { + return this.characteristicCombination != null && !this.characteristicCombination.isEmpty(); + } + + /** + * @param value {@link #characteristicCombination} (Used to specify if two or more characteristics are combined with OR or AND.). This is the underlying object with id, value and extensions. The accessor "getCharacteristicCombination" gives direct access to the value + */ + public EvidenceVariable setCharacteristicCombinationElement(Enumeration value) { + this.characteristicCombination = value; + return this; + } + + /** + * @return Used to specify if two or more characteristics are combined with OR or AND. + */ + public CharacteristicCombination getCharacteristicCombination() { + return this.characteristicCombination == null ? null : this.characteristicCombination.getValue(); + } + + /** + * @param value Used to specify if two or more characteristics are combined with OR or AND. + */ + public EvidenceVariable setCharacteristicCombination(CharacteristicCombination value) { + if (value == null) + this.characteristicCombination = null; + else { + if (this.characteristicCombination == null) + this.characteristicCombination = new Enumeration(new CharacteristicCombinationEnumFactory()); + this.characteristicCombination.setValue(value); + } + return this; + } + /** * @return {@link #characteristic} (A characteristic that defines the members of the evidence element. Multiple characteristics are applied with "and" semantics.) */ @@ -2880,8 +3131,9 @@ public class EvidenceVariable extends MetadataResource { children.add(new Property("reviewer", "ContactDetail", "An individual or organization primarily responsible for review of some aspect of the content.", 0, java.lang.Integer.MAX_VALUE, reviewer)); children.add(new Property("endorser", "ContactDetail", "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, java.lang.Integer.MAX_VALUE, endorser)); children.add(new Property("relatedArtifact", "RelatedArtifact", "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact)); - children.add(new Property("type", "code", "The type of evidence element, a population, an exposure, or an outcome.", 0, 1, type)); + children.add(new Property("type", "code", "Used for an outcome to classify.", 0, 1, type)); children.add(new Property("actual", "boolean", "True if the actual variable measured, false if a conceptual representation of the intended variable.", 0, 1, actual)); + children.add(new Property("characteristicCombination", "code", "Used to specify if two or more characteristics are combined with OR or AND.", 0, 1, characteristicCombination)); children.add(new Property("characteristic", "", "A characteristic that defines the members of the evidence element. Multiple characteristics are applied with \"and\" semantics.", 0, java.lang.Integer.MAX_VALUE, characteristic)); } @@ -2913,8 +3165,9 @@ public class EvidenceVariable extends MetadataResource { case -261190139: /*reviewer*/ return new Property("reviewer", "ContactDetail", "An individual or organization primarily responsible for review of some aspect of the content.", 0, java.lang.Integer.MAX_VALUE, reviewer); case 1740277666: /*endorser*/ return new Property("endorser", "ContactDetail", "An individual or organization responsible for officially endorsing the content for use in some setting.", 0, java.lang.Integer.MAX_VALUE, endorser); case 666807069: /*relatedArtifact*/ return new Property("relatedArtifact", "RelatedArtifact", "Related artifacts such as additional documentation, justification, or bibliographic references.", 0, java.lang.Integer.MAX_VALUE, relatedArtifact); - case 3575610: /*type*/ return new Property("type", "code", "The type of evidence element, a population, an exposure, or an outcome.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "code", "Used for an outcome to classify.", 0, 1, type); case -1422939762: /*actual*/ return new Property("actual", "boolean", "True if the actual variable measured, false if a conceptual representation of the intended variable.", 0, 1, actual); + case -861347276: /*characteristicCombination*/ return new Property("characteristicCombination", "code", "Used to specify if two or more characteristics are combined with OR or AND.", 0, 1, characteristicCombination); case 366313883: /*characteristic*/ return new Property("characteristic", "", "A characteristic that defines the members of the evidence element. Multiple characteristics are applied with \"and\" semantics.", 0, java.lang.Integer.MAX_VALUE, characteristic); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -2951,6 +3204,7 @@ public class EvidenceVariable extends MetadataResource { case 666807069: /*relatedArtifact*/ return this.relatedArtifact == null ? new Base[0] : this.relatedArtifact.toArray(new Base[this.relatedArtifact.size()]); // RelatedArtifact case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Enumeration case -1422939762: /*actual*/ return this.actual == null ? new Base[0] : new Base[] {this.actual}; // BooleanType + case -861347276: /*characteristicCombination*/ return this.characteristicCombination == null ? new Base[0] : new Base[] {this.characteristicCombination}; // Enumeration case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // EvidenceVariableCharacteristicComponent default: return super.getProperty(hash, name, checkValid); } @@ -3043,6 +3297,10 @@ public class EvidenceVariable extends MetadataResource { case -1422939762: // actual this.actual = TypeConvertor.castToBoolean(value); // BooleanType return value; + case -861347276: // characteristicCombination + value = new CharacteristicCombinationEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.characteristicCombination = (Enumeration) value; // Enumeration + return value; case 366313883: // characteristic this.getCharacteristic().add((EvidenceVariableCharacteristicComponent) value); // EvidenceVariableCharacteristicComponent return value; @@ -3109,6 +3367,9 @@ public class EvidenceVariable extends MetadataResource { this.type = (Enumeration) value; // Enumeration } else if (name.equals("actual")) { this.actual = TypeConvertor.castToBoolean(value); // BooleanType + } else if (name.equals("characteristicCombination")) { + value = new CharacteristicCombinationEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.characteristicCombination = (Enumeration) value; // Enumeration } else if (name.equals("characteristic")) { this.getCharacteristic().add((EvidenceVariableCharacteristicComponent) value); } else @@ -3146,6 +3407,7 @@ public class EvidenceVariable extends MetadataResource { case 666807069: return addRelatedArtifact(); case 3575610: return getTypeElement(); case -1422939762: return getActualElement(); + case -861347276: return getCharacteristicCombinationElement(); case 366313883: return addCharacteristic(); default: return super.makeProperty(hash, name); } @@ -3182,6 +3444,7 @@ public class EvidenceVariable extends MetadataResource { case 666807069: /*relatedArtifact*/ return new String[] {"RelatedArtifact"}; case 3575610: /*type*/ return new String[] {"code"}; case -1422939762: /*actual*/ return new String[] {"boolean"}; + case -861347276: /*characteristicCombination*/ return new String[] {"code"}; case 366313883: /*characteristic*/ return new String[] {}; default: return super.getTypesForProperty(hash, name); } @@ -3272,6 +3535,9 @@ public class EvidenceVariable extends MetadataResource { else if (name.equals("actual")) { throw new FHIRException("Cannot call addChild on a primitive type EvidenceVariable.actual"); } + else if (name.equals("characteristicCombination")) { + throw new FHIRException("Cannot call addChild on a primitive type EvidenceVariable.characteristicCombination"); + } else if (name.equals("characteristic")) { return addCharacteristic(); } @@ -3363,6 +3629,7 @@ public class EvidenceVariable extends MetadataResource { }; dst.type = type == null ? null : type.copy(); dst.actual = actual == null ? null : actual.copy(); + dst.characteristicCombination = characteristicCombination == null ? null : characteristicCombination.copy(); if (characteristic != null) { dst.characteristic = new ArrayList(); for (EvidenceVariableCharacteristicComponent i : characteristic) @@ -3390,8 +3657,8 @@ public class EvidenceVariable extends MetadataResource { && compareDeep(lastReviewDate, o.lastReviewDate, true) && compareDeep(effectivePeriod, o.effectivePeriod, true) && compareDeep(topic, o.topic, true) && compareDeep(author, o.author, true) && compareDeep(editor, o.editor, true) && compareDeep(reviewer, o.reviewer, true) && compareDeep(endorser, o.endorser, true) && compareDeep(relatedArtifact, o.relatedArtifact, true) - && compareDeep(type, o.type, true) && compareDeep(actual, o.actual, true) && compareDeep(characteristic, o.characteristic, true) - ; + && compareDeep(type, o.type, true) && compareDeep(actual, o.actual, true) && compareDeep(characteristicCombination, o.characteristicCombination, true) + && compareDeep(characteristic, o.characteristic, true); } @Override @@ -3406,15 +3673,15 @@ public class EvidenceVariable extends MetadataResource { && compareValues(status, o.status, true) && compareValues(date, o.date, true) && compareValues(publisher, o.publisher, true) && compareValues(description, o.description, true) && compareValues(copyright, o.copyright, true) && compareValues(approvalDate, o.approvalDate, true) && compareValues(lastReviewDate, o.lastReviewDate, true) && compareValues(type, o.type, true) && compareValues(actual, o.actual, true) - ; + && compareValues(characteristicCombination, o.characteristicCombination, true); } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(url, identifier, version , name, title, shortTitle, subtitle, status, date, publisher, contact, description , note, useContext, jurisdiction, copyright, approvalDate, lastReviewDate, effectivePeriod - , topic, author, editor, reviewer, endorser, relatedArtifact, type, actual, characteristic - ); + , topic, author, editor, reviewer, endorser, relatedArtifact, type, actual, characteristicCombination + , characteristic); } @Override @@ -3430,7 +3697,7 @@ public class EvidenceVariable extends MetadataResource { * Path: EvidenceVariable.relatedArtifact.where(type='composed-of').resource
*

*/ - @SearchParamDefinition(name="composed-of", path="EvidenceVariable.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="composed-of", path="EvidenceVariable.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_COMPOSED_OF = "composed-of"; /** * Fluent Client search parameter constant for composed-of @@ -3576,7 +3843,7 @@ public class EvidenceVariable extends MetadataResource { * Path: EvidenceVariable.relatedArtifact.where(type='depends-on').resource
*

*/ - @SearchParamDefinition(name="depends-on", path="EvidenceVariable.relatedArtifact.where(type='depends-on').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="depends-on", path="EvidenceVariable.relatedArtifact.where(type='depends-on').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DEPENDS_ON = "depends-on"; /** * Fluent Client search parameter constant for depends-on @@ -3602,7 +3869,7 @@ public class EvidenceVariable extends MetadataResource { * Path: EvidenceVariable.relatedArtifact.where(type='derived-from').resource
*

*/ - @SearchParamDefinition(name="derived-from", path="EvidenceVariable.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="derived-from", path="EvidenceVariable.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DERIVED_FROM = "derived-from"; /** * Fluent Client search parameter constant for derived-from @@ -3728,7 +3995,7 @@ public class EvidenceVariable extends MetadataResource { * Path: EvidenceVariable.relatedArtifact.where(type='predecessor').resource
*

*/ - @SearchParamDefinition(name="predecessor", path="EvidenceVariable.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="predecessor", path="EvidenceVariable.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PREDECESSOR = "predecessor"; /** * Fluent Client search parameter constant for predecessor @@ -3794,7 +4061,7 @@ public class EvidenceVariable extends MetadataResource { * Path: EvidenceVariable.relatedArtifact.where(type='successor').resource
*

*/ - @SearchParamDefinition(name="successor", path="EvidenceVariable.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="successor", path="EvidenceVariable.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUCCESSOR = "successor"; /** * Fluent Client search parameter constant for successor diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExampleScenario.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExampleScenario.java index f053522a0..6648d8a28 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExampleScenario.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExampleScenario.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExplanationOfBenefit.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExplanationOfBenefit.java index 722ee9b48..6ef352819 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExplanationOfBenefit.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ExplanationOfBenefit.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Expression.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Expression.java index 92f385546..ae24ed52d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Expression.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Expression.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Extension.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Extension.java index 55f0f204a..4d55655e9 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Extension.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Extension.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/FamilyMemberHistory.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/FamilyMemberHistory.java index 1e58102bb..d0ae1d9cb 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/FamilyMemberHistory.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/FamilyMemberHistory.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2804,10 +2804,10 @@ public class FamilyMemberHistory extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2830,7 +2830,7 @@ public class FamilyMemberHistory extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2859,10 +2859,10 @@ public class FamilyMemberHistory extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -2888,7 +2888,7 @@ public class FamilyMemberHistory extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -3016,10 +3016,10 @@ public class FamilyMemberHistory extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3060,7 +3060,7 @@ public class FamilyMemberHistory extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Flag.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Flag.java index 89593fb0b..db7c75410 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Flag.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Flag.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -881,10 +881,10 @@ public class Flag extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -910,7 +910,7 @@ public class Flag extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -1008,10 +1008,10 @@ public class Flag extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1052,7 +1052,7 @@ public class Flag extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Goal.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Goal.java index 0879625fc..c06389f22 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Goal.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Goal.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2139,10 +2139,10 @@ public class Goal extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2183,7 +2183,7 @@ public class Goal extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GraphDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GraphDefinition.java index f33708e8a..9aa1d9a07 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GraphDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GraphDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Group.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Group.java index c42d00cc8..1186d189c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Group.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Group.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GuidanceResponse.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GuidanceResponse.java index 18d6b01ba..a8627b38e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GuidanceResponse.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/GuidanceResponse.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HealthcareService.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HealthcareService.java index dd2e4196c..2ec73df31 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HealthcareService.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HealthcareService.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HumanName.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HumanName.java index 5fce0d560..7ebfd9dd0 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HumanName.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/HumanName.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Identifier.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Identifier.java index 577cdfcf3..05ec8ab72 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Identifier.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Identifier.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImagingStudy.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImagingStudy.java index 590b072e8..d95b40ce3 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImagingStudy.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImagingStudy.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -3736,10 +3736,10 @@ public class ImagingStudy extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3780,7 +3780,7 @@ public class ImagingStudy extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Immunization.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Immunization.java index aa4e12811..dc60ebbcf 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Immunization.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Immunization.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1102,20 +1102,20 @@ public class Immunization extends DomainResource { protected List targetDisease; /** - * Nominal position in a series. + * Nominal position in a series as intended by the practitioner administering the dose. */ - @Child(name = "doseNumber", type = {PositiveIntType.class, StringType.class}, order=4, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="Dose number within series", formalDefinition="Nominal position in a series." ) - protected DataType doseNumber; + @Child(name = "doseNumber", type = {StringType.class}, order=4, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="Dose number within series", formalDefinition="Nominal position in a series as intended by the practitioner administering the dose." ) + protected StringType doseNumber; /** - * The recommended number of doses to achieve immunity. + * The recommended number of doses to achieve immunity as intended by the practitioner administering the dose. */ - @Child(name = "seriesDoses", type = {PositiveIntType.class, StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity." ) - protected DataType seriesDoses; + @Child(name = "seriesDoses", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity as intended by the practitioner administering the dose." ) + protected StringType seriesDoses; - private static final long serialVersionUID = 193176765L; + private static final long serialVersionUID = 660613103L; /** * Constructor @@ -1127,7 +1127,7 @@ public class Immunization extends DomainResource { /** * Constructor */ - public ImmunizationProtocolAppliedComponent(DataType doseNumber) { + public ImmunizationProtocolAppliedComponent(String doseNumber) { super(); this.setDoseNumber(doseNumber); } @@ -1259,40 +1259,19 @@ public class Immunization extends DomainResource { } /** - * @return {@link #doseNumber} (Nominal position in a series.) + * @return {@link #doseNumber} (Nominal position in a series as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value */ - public DataType getDoseNumber() { + public StringType getDoseNumberElement() { + if (this.doseNumber == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ImmunizationProtocolAppliedComponent.doseNumber"); + else if (Configuration.doAutoCreate()) + this.doseNumber = new StringType(); // bb return this.doseNumber; } - /** - * @return {@link #doseNumber} (Nominal position in a series.) - */ - public PositiveIntType getDoseNumberPositiveIntType() throws FHIRException { - if (this.doseNumber == null) - this.doseNumber = new PositiveIntType(); - if (!(this.doseNumber instanceof PositiveIntType)) - throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.doseNumber.getClass().getName()+" was encountered"); - return (PositiveIntType) this.doseNumber; - } - - public boolean hasDoseNumberPositiveIntType() { - return this != null && this.doseNumber instanceof PositiveIntType; - } - - /** - * @return {@link #doseNumber} (Nominal position in a series.) - */ - public StringType getDoseNumberStringType() throws FHIRException { - if (this.doseNumber == null) - this.doseNumber = new StringType(); - if (!(this.doseNumber instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.doseNumber.getClass().getName()+" was encountered"); - return (StringType) this.doseNumber; - } - - public boolean hasDoseNumberStringType() { - return this != null && this.doseNumber instanceof StringType; + public boolean hasDoseNumberElement() { + return this.doseNumber != null && !this.doseNumber.isEmpty(); } public boolean hasDoseNumber() { @@ -1300,50 +1279,44 @@ public class Immunization extends DomainResource { } /** - * @param value {@link #doseNumber} (Nominal position in a series.) + * @param value {@link #doseNumber} (Nominal position in a series as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value */ - public ImmunizationProtocolAppliedComponent setDoseNumber(DataType value) { - if (value != null && !(value instanceof PositiveIntType || value instanceof StringType)) - throw new Error("Not the right type for Immunization.protocolApplied.doseNumber[x]: "+value.fhirType()); + public ImmunizationProtocolAppliedComponent setDoseNumberElement(StringType value) { this.doseNumber = value; return this; } /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) + * @return Nominal position in a series as intended by the practitioner administering the dose. */ - public DataType getSeriesDoses() { + public String getDoseNumber() { + return this.doseNumber == null ? null : this.doseNumber.getValue(); + } + + /** + * @param value Nominal position in a series as intended by the practitioner administering the dose. + */ + public ImmunizationProtocolAppliedComponent setDoseNumber(String value) { + if (this.doseNumber == null) + this.doseNumber = new StringType(); + this.doseNumber.setValue(value); + return this; + } + + /** + * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value + */ + public StringType getSeriesDosesElement() { + if (this.seriesDoses == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ImmunizationProtocolAppliedComponent.seriesDoses"); + else if (Configuration.doAutoCreate()) + this.seriesDoses = new StringType(); // bb return this.seriesDoses; } - /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) - */ - public PositiveIntType getSeriesDosesPositiveIntType() throws FHIRException { - if (this.seriesDoses == null) - this.seriesDoses = new PositiveIntType(); - if (!(this.seriesDoses instanceof PositiveIntType)) - throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.seriesDoses.getClass().getName()+" was encountered"); - return (PositiveIntType) this.seriesDoses; - } - - public boolean hasSeriesDosesPositiveIntType() { - return this != null && this.seriesDoses instanceof PositiveIntType; - } - - /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) - */ - public StringType getSeriesDosesStringType() throws FHIRException { - if (this.seriesDoses == null) - this.seriesDoses = new StringType(); - if (!(this.seriesDoses instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.seriesDoses.getClass().getName()+" was encountered"); - return (StringType) this.seriesDoses; - } - - public boolean hasSeriesDosesStringType() { - return this != null && this.seriesDoses instanceof StringType; + public boolean hasSeriesDosesElement() { + return this.seriesDoses != null && !this.seriesDoses.isEmpty(); } public boolean hasSeriesDoses() { @@ -1351,22 +1324,41 @@ public class Immunization extends DomainResource { } /** - * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity.) + * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value */ - public ImmunizationProtocolAppliedComponent setSeriesDoses(DataType value) { - if (value != null && !(value instanceof PositiveIntType || value instanceof StringType)) - throw new Error("Not the right type for Immunization.protocolApplied.seriesDoses[x]: "+value.fhirType()); + public ImmunizationProtocolAppliedComponent setSeriesDosesElement(StringType value) { this.seriesDoses = value; return this; } + /** + * @return The recommended number of doses to achieve immunity as intended by the practitioner administering the dose. + */ + public String getSeriesDoses() { + return this.seriesDoses == null ? null : this.seriesDoses.getValue(); + } + + /** + * @param value The recommended number of doses to achieve immunity as intended by the practitioner administering the dose. + */ + public ImmunizationProtocolAppliedComponent setSeriesDoses(String value) { + if (Utilities.noString(value)) + this.seriesDoses = null; + else { + if (this.seriesDoses == null) + this.seriesDoses = new StringType(); + this.seriesDoses.setValue(value); + } + return this; + } + protected void listChildren(List children) { super.listChildren(children); children.add(new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series)); children.add(new Property("authority", "Reference(Organization)", "Indicates the authority who published the protocol (e.g. ACIP) that is being followed.", 0, 1, authority)); children.add(new Property("targetDisease", "CodeableConcept", "The vaccine preventable disease the dose is being administered against.", 0, java.lang.Integer.MAX_VALUE, targetDisease)); - children.add(new Property("doseNumber[x]", "positiveInt|string", "Nominal position in a series.", 0, 1, doseNumber)); - children.add(new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses)); + children.add(new Property("doseNumber", "string", "Nominal position in a series as intended by the practitioner administering the dose.", 0, 1, doseNumber)); + children.add(new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.", 0, 1, seriesDoses)); } @Override @@ -1375,14 +1367,8 @@ public class Immunization extends DomainResource { case -905838985: /*series*/ return new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series); case 1475610435: /*authority*/ return new Property("authority", "Reference(Organization)", "Indicates the authority who published the protocol (e.g. ACIP) that is being followed.", 0, 1, authority); case -319593813: /*targetDisease*/ return new Property("targetDisease", "CodeableConcept", "The vaccine preventable disease the dose is being administered against.", 0, java.lang.Integer.MAX_VALUE, targetDisease); - case -1632295686: /*doseNumber[x]*/ return new Property("doseNumber[x]", "positiveInt|string", "Nominal position in a series.", 0, 1, doseNumber); - case -887709242: /*doseNumber*/ return new Property("doseNumber[x]", "positiveInt|string", "Nominal position in a series.", 0, 1, doseNumber); - case -1826134640: /*doseNumberPositiveInt*/ return new Property("doseNumber[x]", "positiveInt", "Nominal position in a series.", 0, 1, doseNumber); - case -333053577: /*doseNumberString*/ return new Property("doseNumber[x]", "string", "Nominal position in a series.", 0, 1, doseNumber); - case 1553560673: /*seriesDoses[x]*/ return new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -1936727105: /*seriesDoses*/ return new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -220897801: /*seriesDosesPositiveInt*/ return new Property("seriesDoses[x]", "positiveInt", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -673569616: /*seriesDosesString*/ return new Property("seriesDoses[x]", "string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); + case -887709242: /*doseNumber*/ return new Property("doseNumber", "string", "Nominal position in a series as intended by the practitioner administering the dose.", 0, 1, doseNumber); + case -1936727105: /*seriesDoses*/ return new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as intended by the practitioner administering the dose.", 0, 1, seriesDoses); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1394,8 +1380,8 @@ public class Immunization extends DomainResource { case -905838985: /*series*/ return this.series == null ? new Base[0] : new Base[] {this.series}; // StringType case 1475610435: /*authority*/ return this.authority == null ? new Base[0] : new Base[] {this.authority}; // Reference case -319593813: /*targetDisease*/ return this.targetDisease == null ? new Base[0] : this.targetDisease.toArray(new Base[this.targetDisease.size()]); // CodeableConcept - case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // DataType - case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // DataType + case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // StringType + case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // StringType default: return super.getProperty(hash, name, checkValid); } @@ -1414,10 +1400,10 @@ public class Immunization extends DomainResource { this.getTargetDisease().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case -887709242: // doseNumber - this.doseNumber = TypeConvertor.castToType(value); // DataType + this.doseNumber = TypeConvertor.castToString(value); // StringType return value; case -1936727105: // seriesDoses - this.seriesDoses = TypeConvertor.castToType(value); // DataType + this.seriesDoses = TypeConvertor.castToString(value); // StringType return value; default: return super.setProperty(hash, name, value); } @@ -1432,10 +1418,10 @@ public class Immunization extends DomainResource { this.authority = TypeConvertor.castToReference(value); // Reference } else if (name.equals("targetDisease")) { this.getTargetDisease().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("doseNumber[x]")) { - this.doseNumber = TypeConvertor.castToType(value); // DataType - } else if (name.equals("seriesDoses[x]")) { - this.seriesDoses = TypeConvertor.castToType(value); // DataType + } else if (name.equals("doseNumber")) { + this.doseNumber = TypeConvertor.castToString(value); // StringType + } else if (name.equals("seriesDoses")) { + this.seriesDoses = TypeConvertor.castToString(value); // StringType } else return super.setProperty(name, value); return value; @@ -1447,10 +1433,8 @@ public class Immunization extends DomainResource { case -905838985: return getSeriesElement(); case 1475610435: return getAuthority(); case -319593813: return addTargetDisease(); - case -1632295686: return getDoseNumber(); - case -887709242: return getDoseNumber(); - case 1553560673: return getSeriesDoses(); - case -1936727105: return getSeriesDoses(); + case -887709242: return getDoseNumberElement(); + case -1936727105: return getSeriesDosesElement(); default: return super.makeProperty(hash, name); } @@ -1462,8 +1446,8 @@ public class Immunization extends DomainResource { case -905838985: /*series*/ return new String[] {"string"}; case 1475610435: /*authority*/ return new String[] {"Reference"}; case -319593813: /*targetDisease*/ return new String[] {"CodeableConcept"}; - case -887709242: /*doseNumber*/ return new String[] {"positiveInt", "string"}; - case -1936727105: /*seriesDoses*/ return new String[] {"positiveInt", "string"}; + case -887709242: /*doseNumber*/ return new String[] {"string"}; + case -1936727105: /*seriesDoses*/ return new String[] {"string"}; default: return super.getTypesForProperty(hash, name); } @@ -1481,21 +1465,11 @@ public class Immunization extends DomainResource { else if (name.equals("targetDisease")) { return addTargetDisease(); } - else if (name.equals("doseNumberPositiveInt")) { - this.doseNumber = new PositiveIntType(); - return this.doseNumber; + else if (name.equals("doseNumber")) { + throw new FHIRException("Cannot call addChild on a primitive type Immunization.protocolApplied.doseNumber"); } - else if (name.equals("doseNumberString")) { - this.doseNumber = new StringType(); - return this.doseNumber; - } - else if (name.equals("seriesDosesPositiveInt")) { - this.seriesDoses = new PositiveIntType(); - return this.seriesDoses; - } - else if (name.equals("seriesDosesString")) { - this.seriesDoses = new StringType(); - return this.seriesDoses; + else if (name.equals("seriesDoses")) { + throw new FHIRException("Cannot call addChild on a primitive type Immunization.protocolApplied.seriesDoses"); } else return super.addChild(name); @@ -1539,7 +1513,8 @@ public class Immunization extends DomainResource { if (!(other_ instanceof ImmunizationProtocolAppliedComponent)) return false; ImmunizationProtocolAppliedComponent o = (ImmunizationProtocolAppliedComponent) other_; - return compareValues(series, o.series, true); + return compareValues(series, o.series, true) && compareValues(doseNumber, o.doseNumber, true) && compareValues(seriesDoses, o.seriesDoses, true) + ; } public boolean isEmpty() { @@ -3754,10 +3729,10 @@ public class Immunization extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -3783,7 +3758,7 @@ public class Immunization extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -3911,10 +3886,10 @@ public class Immunization extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3955,7 +3930,7 @@ public class Immunization extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationEvaluation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationEvaluation.java index a207558c2..f63e06193 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationEvaluation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationEvaluation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -107,8 +107,8 @@ public class ImmunizationEvaluation extends DomainResource { } public String getSystem() { switch (this) { - case COMPLETED: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case ENTEREDINERROR: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; + case COMPLETED: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case ENTEREDINERROR: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; default: return "?"; } } @@ -247,20 +247,20 @@ public class ImmunizationEvaluation extends DomainResource { protected StringType series; /** - * Nominal position in a series. + * Nominal position in a series as determined by the outcome of the evaluation process. */ - @Child(name = "doseNumber", type = {PositiveIntType.class, StringType.class}, order=11, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Dose number within series", formalDefinition="Nominal position in a series." ) - protected DataType doseNumber; + @Child(name = "doseNumber", type = {StringType.class}, order=11, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Dose number within series", formalDefinition="Nominal position in a series as determined by the outcome of the evaluation process." ) + protected StringType doseNumber; /** - * The recommended number of doses to achieve immunity. + * The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process. */ - @Child(name = "seriesDoses", type = {PositiveIntType.class, StringType.class}, order=12, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity." ) - protected DataType seriesDoses; + @Child(name = "seriesDoses", type = {StringType.class}, order=12, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process." ) + protected StringType seriesDoses; - private static final long serialVersionUID = -1208122003L; + private static final long serialVersionUID = -434973409L; /** * Constructor @@ -700,40 +700,19 @@ public class ImmunizationEvaluation extends DomainResource { } /** - * @return {@link #doseNumber} (Nominal position in a series.) + * @return {@link #doseNumber} (Nominal position in a series as determined by the outcome of the evaluation process.). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value */ - public DataType getDoseNumber() { + public StringType getDoseNumberElement() { + if (this.doseNumber == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ImmunizationEvaluation.doseNumber"); + else if (Configuration.doAutoCreate()) + this.doseNumber = new StringType(); // bb return this.doseNumber; } - /** - * @return {@link #doseNumber} (Nominal position in a series.) - */ - public PositiveIntType getDoseNumberPositiveIntType() throws FHIRException { - if (this.doseNumber == null) - this.doseNumber = new PositiveIntType(); - if (!(this.doseNumber instanceof PositiveIntType)) - throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.doseNumber.getClass().getName()+" was encountered"); - return (PositiveIntType) this.doseNumber; - } - - public boolean hasDoseNumberPositiveIntType() { - return this != null && this.doseNumber instanceof PositiveIntType; - } - - /** - * @return {@link #doseNumber} (Nominal position in a series.) - */ - public StringType getDoseNumberStringType() throws FHIRException { - if (this.doseNumber == null) - this.doseNumber = new StringType(); - if (!(this.doseNumber instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.doseNumber.getClass().getName()+" was encountered"); - return (StringType) this.doseNumber; - } - - public boolean hasDoseNumberStringType() { - return this != null && this.doseNumber instanceof StringType; + public boolean hasDoseNumberElement() { + return this.doseNumber != null && !this.doseNumber.isEmpty(); } public boolean hasDoseNumber() { @@ -741,50 +720,48 @@ public class ImmunizationEvaluation extends DomainResource { } /** - * @param value {@link #doseNumber} (Nominal position in a series.) + * @param value {@link #doseNumber} (Nominal position in a series as determined by the outcome of the evaluation process.). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value */ - public ImmunizationEvaluation setDoseNumber(DataType value) { - if (value != null && !(value instanceof PositiveIntType || value instanceof StringType)) - throw new Error("Not the right type for ImmunizationEvaluation.doseNumber[x]: "+value.fhirType()); + public ImmunizationEvaluation setDoseNumberElement(StringType value) { this.doseNumber = value; return this; } /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) + * @return Nominal position in a series as determined by the outcome of the evaluation process. */ - public DataType getSeriesDoses() { + public String getDoseNumber() { + return this.doseNumber == null ? null : this.doseNumber.getValue(); + } + + /** + * @param value Nominal position in a series as determined by the outcome of the evaluation process. + */ + public ImmunizationEvaluation setDoseNumber(String value) { + if (Utilities.noString(value)) + this.doseNumber = null; + else { + if (this.doseNumber == null) + this.doseNumber = new StringType(); + this.doseNumber.setValue(value); + } + return this; + } + + /** + * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value + */ + public StringType getSeriesDosesElement() { + if (this.seriesDoses == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ImmunizationEvaluation.seriesDoses"); + else if (Configuration.doAutoCreate()) + this.seriesDoses = new StringType(); // bb return this.seriesDoses; } - /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) - */ - public PositiveIntType getSeriesDosesPositiveIntType() throws FHIRException { - if (this.seriesDoses == null) - this.seriesDoses = new PositiveIntType(); - if (!(this.seriesDoses instanceof PositiveIntType)) - throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.seriesDoses.getClass().getName()+" was encountered"); - return (PositiveIntType) this.seriesDoses; - } - - public boolean hasSeriesDosesPositiveIntType() { - return this != null && this.seriesDoses instanceof PositiveIntType; - } - - /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) - */ - public StringType getSeriesDosesStringType() throws FHIRException { - if (this.seriesDoses == null) - this.seriesDoses = new StringType(); - if (!(this.seriesDoses instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.seriesDoses.getClass().getName()+" was encountered"); - return (StringType) this.seriesDoses; - } - - public boolean hasSeriesDosesStringType() { - return this != null && this.seriesDoses instanceof StringType; + public boolean hasSeriesDosesElement() { + return this.seriesDoses != null && !this.seriesDoses.isEmpty(); } public boolean hasSeriesDoses() { @@ -792,15 +769,34 @@ public class ImmunizationEvaluation extends DomainResource { } /** - * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity.) + * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value */ - public ImmunizationEvaluation setSeriesDoses(DataType value) { - if (value != null && !(value instanceof PositiveIntType || value instanceof StringType)) - throw new Error("Not the right type for ImmunizationEvaluation.seriesDoses[x]: "+value.fhirType()); + public ImmunizationEvaluation setSeriesDosesElement(StringType value) { this.seriesDoses = value; return this; } + /** + * @return The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process. + */ + public String getSeriesDoses() { + return this.seriesDoses == null ? null : this.seriesDoses.getValue(); + } + + /** + * @param value The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process. + */ + public ImmunizationEvaluation setSeriesDoses(String value) { + if (Utilities.noString(value)) + this.seriesDoses = null; + else { + if (this.seriesDoses == null) + this.seriesDoses = new StringType(); + this.seriesDoses.setValue(value); + } + return this; + } + protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "A unique identifier assigned to this immunization evaluation record.", 0, java.lang.Integer.MAX_VALUE, identifier)); @@ -814,8 +810,8 @@ public class ImmunizationEvaluation extends DomainResource { children.add(new Property("doseStatusReason", "CodeableConcept", "Provides an explanation as to why the vaccine administration event is valid or not relative to the published recommendations.", 0, java.lang.Integer.MAX_VALUE, doseStatusReason)); children.add(new Property("description", "string", "Additional information about the evaluation.", 0, 1, description)); children.add(new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series)); - children.add(new Property("doseNumber[x]", "positiveInt|string", "Nominal position in a series.", 0, 1, doseNumber)); - children.add(new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses)); + children.add(new Property("doseNumber", "string", "Nominal position in a series as determined by the outcome of the evaluation process.", 0, 1, doseNumber)); + children.add(new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process.", 0, 1, seriesDoses)); } @Override @@ -832,14 +828,8 @@ public class ImmunizationEvaluation extends DomainResource { case 662783379: /*doseStatusReason*/ return new Property("doseStatusReason", "CodeableConcept", "Provides an explanation as to why the vaccine administration event is valid or not relative to the published recommendations.", 0, java.lang.Integer.MAX_VALUE, doseStatusReason); case -1724546052: /*description*/ return new Property("description", "string", "Additional information about the evaluation.", 0, 1, description); case -905838985: /*series*/ return new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series); - case -1632295686: /*doseNumber[x]*/ return new Property("doseNumber[x]", "positiveInt|string", "Nominal position in a series.", 0, 1, doseNumber); - case -887709242: /*doseNumber*/ return new Property("doseNumber[x]", "positiveInt|string", "Nominal position in a series.", 0, 1, doseNumber); - case -1826134640: /*doseNumberPositiveInt*/ return new Property("doseNumber[x]", "positiveInt", "Nominal position in a series.", 0, 1, doseNumber); - case -333053577: /*doseNumberString*/ return new Property("doseNumber[x]", "string", "Nominal position in a series.", 0, 1, doseNumber); - case 1553560673: /*seriesDoses[x]*/ return new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -1936727105: /*seriesDoses*/ return new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -220897801: /*seriesDosesPositiveInt*/ return new Property("seriesDoses[x]", "positiveInt", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -673569616: /*seriesDosesString*/ return new Property("seriesDoses[x]", "string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); + case -887709242: /*doseNumber*/ return new Property("doseNumber", "string", "Nominal position in a series as determined by the outcome of the evaluation process.", 0, 1, doseNumber); + case -1936727105: /*seriesDoses*/ return new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as determined by the outcome of the evaluation process.", 0, 1, seriesDoses); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -859,8 +849,8 @@ public class ImmunizationEvaluation extends DomainResource { case 662783379: /*doseStatusReason*/ return this.doseStatusReason == null ? new Base[0] : this.doseStatusReason.toArray(new Base[this.doseStatusReason.size()]); // CodeableConcept case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType case -905838985: /*series*/ return this.series == null ? new Base[0] : new Base[] {this.series}; // StringType - case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // DataType - case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // DataType + case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // StringType + case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // StringType default: return super.getProperty(hash, name, checkValid); } @@ -904,10 +894,10 @@ public class ImmunizationEvaluation extends DomainResource { this.series = TypeConvertor.castToString(value); // StringType return value; case -887709242: // doseNumber - this.doseNumber = TypeConvertor.castToType(value); // DataType + this.doseNumber = TypeConvertor.castToString(value); // StringType return value; case -1936727105: // seriesDoses - this.seriesDoses = TypeConvertor.castToType(value); // DataType + this.seriesDoses = TypeConvertor.castToString(value); // StringType return value; default: return super.setProperty(hash, name, value); } @@ -939,10 +929,10 @@ public class ImmunizationEvaluation extends DomainResource { this.description = TypeConvertor.castToString(value); // StringType } else if (name.equals("series")) { this.series = TypeConvertor.castToString(value); // StringType - } else if (name.equals("doseNumber[x]")) { - this.doseNumber = TypeConvertor.castToType(value); // DataType - } else if (name.equals("seriesDoses[x]")) { - this.seriesDoses = TypeConvertor.castToType(value); // DataType + } else if (name.equals("doseNumber")) { + this.doseNumber = TypeConvertor.castToString(value); // StringType + } else if (name.equals("seriesDoses")) { + this.seriesDoses = TypeConvertor.castToString(value); // StringType } else return super.setProperty(name, value); return value; @@ -962,10 +952,8 @@ public class ImmunizationEvaluation extends DomainResource { case 662783379: return addDoseStatusReason(); case -1724546052: return getDescriptionElement(); case -905838985: return getSeriesElement(); - case -1632295686: return getDoseNumber(); - case -887709242: return getDoseNumber(); - case 1553560673: return getSeriesDoses(); - case -1936727105: return getSeriesDoses(); + case -887709242: return getDoseNumberElement(); + case -1936727105: return getSeriesDosesElement(); default: return super.makeProperty(hash, name); } @@ -985,8 +973,8 @@ public class ImmunizationEvaluation extends DomainResource { case 662783379: /*doseStatusReason*/ return new String[] {"CodeableConcept"}; case -1724546052: /*description*/ return new String[] {"string"}; case -905838985: /*series*/ return new String[] {"string"}; - case -887709242: /*doseNumber*/ return new String[] {"positiveInt", "string"}; - case -1936727105: /*seriesDoses*/ return new String[] {"positiveInt", "string"}; + case -887709242: /*doseNumber*/ return new String[] {"string"}; + case -1936727105: /*seriesDoses*/ return new String[] {"string"}; default: return super.getTypesForProperty(hash, name); } @@ -1032,21 +1020,11 @@ public class ImmunizationEvaluation extends DomainResource { else if (name.equals("series")) { throw new FHIRException("Cannot call addChild on a primitive type ImmunizationEvaluation.series"); } - else if (name.equals("doseNumberPositiveInt")) { - this.doseNumber = new PositiveIntType(); - return this.doseNumber; + else if (name.equals("doseNumber")) { + throw new FHIRException("Cannot call addChild on a primitive type ImmunizationEvaluation.doseNumber"); } - else if (name.equals("doseNumberString")) { - this.doseNumber = new StringType(); - return this.doseNumber; - } - else if (name.equals("seriesDosesPositiveInt")) { - this.seriesDoses = new PositiveIntType(); - return this.seriesDoses; - } - else if (name.equals("seriesDosesString")) { - this.seriesDoses = new StringType(); - return this.seriesDoses; + else if (name.equals("seriesDoses")) { + throw new FHIRException("Cannot call addChild on a primitive type ImmunizationEvaluation.seriesDoses"); } else return super.addChild(name); @@ -1115,7 +1093,8 @@ public class ImmunizationEvaluation extends DomainResource { return false; ImmunizationEvaluation o = (ImmunizationEvaluation) other_; return compareValues(status, o.status, true) && compareValues(date, o.date, true) && compareValues(description, o.description, true) - && compareValues(series, o.series, true); + && compareValues(series, o.series, true) && compareValues(doseNumber, o.doseNumber, true) && compareValues(seriesDoses, o.seriesDoses, true) + ; } public boolean isEmpty() { diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationRecommendation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationRecommendation.java index e6dcb4802..810a59d39 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationRecommendation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImmunizationRecommendation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -137,18 +137,18 @@ public class ImmunizationRecommendation extends DomainResource { protected StringType series; /** - * Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose). + * Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose). */ - @Child(name = "doseNumber", type = {PositiveIntType.class, StringType.class}, order=9, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Recommended dose number within series", formalDefinition="Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose)." ) - protected DataType doseNumber; + @Child(name = "doseNumber", type = {StringType.class}, order=9, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Recommended dose number within series", formalDefinition="Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose)." ) + protected StringType doseNumber; /** - * The recommended number of doses to achieve immunity. + * The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process. */ - @Child(name = "seriesDoses", type = {PositiveIntType.class, StringType.class}, order=10, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity." ) - protected DataType seriesDoses; + @Child(name = "seriesDoses", type = {StringType.class}, order=10, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Recommended number of doses for immunity", formalDefinition="The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process." ) + protected StringType seriesDoses; /** * Immunization event history and/or evaluation that supports the status and recommendation. @@ -164,7 +164,7 @@ public class ImmunizationRecommendation extends DomainResource { @Description(shortDefinition="Patient observations supporting recommendation", formalDefinition="Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information." ) protected List supportingPatientInformation; - private static final long serialVersionUID = -297345622L; + private static final long serialVersionUID = 1333936348L; /** * Constructor @@ -569,40 +569,19 @@ public class ImmunizationRecommendation extends DomainResource { } /** - * @return {@link #doseNumber} (Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).) + * @return {@link #doseNumber} (Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose).). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value */ - public DataType getDoseNumber() { + public StringType getDoseNumberElement() { + if (this.doseNumber == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.doseNumber"); + else if (Configuration.doAutoCreate()) + this.doseNumber = new StringType(); // bb return this.doseNumber; } - /** - * @return {@link #doseNumber} (Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).) - */ - public PositiveIntType getDoseNumberPositiveIntType() throws FHIRException { - if (this.doseNumber == null) - this.doseNumber = new PositiveIntType(); - if (!(this.doseNumber instanceof PositiveIntType)) - throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.doseNumber.getClass().getName()+" was encountered"); - return (PositiveIntType) this.doseNumber; - } - - public boolean hasDoseNumberPositiveIntType() { - return this != null && this.doseNumber instanceof PositiveIntType; - } - - /** - * @return {@link #doseNumber} (Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).) - */ - public StringType getDoseNumberStringType() throws FHIRException { - if (this.doseNumber == null) - this.doseNumber = new StringType(); - if (!(this.doseNumber instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.doseNumber.getClass().getName()+" was encountered"); - return (StringType) this.doseNumber; - } - - public boolean hasDoseNumberStringType() { - return this != null && this.doseNumber instanceof StringType; + public boolean hasDoseNumberElement() { + return this.doseNumber != null && !this.doseNumber.isEmpty(); } public boolean hasDoseNumber() { @@ -610,50 +589,48 @@ public class ImmunizationRecommendation extends DomainResource { } /** - * @param value {@link #doseNumber} (Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).) + * @param value {@link #doseNumber} (Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose).). This is the underlying object with id, value and extensions. The accessor "getDoseNumber" gives direct access to the value */ - public ImmunizationRecommendationRecommendationComponent setDoseNumber(DataType value) { - if (value != null && !(value instanceof PositiveIntType || value instanceof StringType)) - throw new Error("Not the right type for ImmunizationRecommendation.recommendation.doseNumber[x]: "+value.fhirType()); + public ImmunizationRecommendationRecommendationComponent setDoseNumberElement(StringType value) { this.doseNumber = value; return this; } /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) + * @return Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose). */ - public DataType getSeriesDoses() { + public String getDoseNumber() { + return this.doseNumber == null ? null : this.doseNumber.getValue(); + } + + /** + * @param value Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose). + */ + public ImmunizationRecommendationRecommendationComponent setDoseNumber(String value) { + if (Utilities.noString(value)) + this.doseNumber = null; + else { + if (this.doseNumber == null) + this.doseNumber = new StringType(); + this.doseNumber.setValue(value); + } + return this; + } + + /** + * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value + */ + public StringType getSeriesDosesElement() { + if (this.seriesDoses == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create ImmunizationRecommendationRecommendationComponent.seriesDoses"); + else if (Configuration.doAutoCreate()) + this.seriesDoses = new StringType(); // bb return this.seriesDoses; } - /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) - */ - public PositiveIntType getSeriesDosesPositiveIntType() throws FHIRException { - if (this.seriesDoses == null) - this.seriesDoses = new PositiveIntType(); - if (!(this.seriesDoses instanceof PositiveIntType)) - throw new FHIRException("Type mismatch: the type PositiveIntType was expected, but "+this.seriesDoses.getClass().getName()+" was encountered"); - return (PositiveIntType) this.seriesDoses; - } - - public boolean hasSeriesDosesPositiveIntType() { - return this != null && this.seriesDoses instanceof PositiveIntType; - } - - /** - * @return {@link #seriesDoses} (The recommended number of doses to achieve immunity.) - */ - public StringType getSeriesDosesStringType() throws FHIRException { - if (this.seriesDoses == null) - this.seriesDoses = new StringType(); - if (!(this.seriesDoses instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.seriesDoses.getClass().getName()+" was encountered"); - return (StringType) this.seriesDoses; - } - - public boolean hasSeriesDosesStringType() { - return this != null && this.seriesDoses instanceof StringType; + public boolean hasSeriesDosesElement() { + return this.seriesDoses != null && !this.seriesDoses.isEmpty(); } public boolean hasSeriesDoses() { @@ -661,15 +638,34 @@ public class ImmunizationRecommendation extends DomainResource { } /** - * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity.) + * @param value {@link #seriesDoses} (The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process.). This is the underlying object with id, value and extensions. The accessor "getSeriesDoses" gives direct access to the value */ - public ImmunizationRecommendationRecommendationComponent setSeriesDoses(DataType value) { - if (value != null && !(value instanceof PositiveIntType || value instanceof StringType)) - throw new Error("Not the right type for ImmunizationRecommendation.recommendation.seriesDoses[x]: "+value.fhirType()); + public ImmunizationRecommendationRecommendationComponent setSeriesDosesElement(StringType value) { this.seriesDoses = value; return this; } + /** + * @return The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process. + */ + public String getSeriesDoses() { + return this.seriesDoses == null ? null : this.seriesDoses.getValue(); + } + + /** + * @param value The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process. + */ + public ImmunizationRecommendationRecommendationComponent setSeriesDoses(String value) { + if (Utilities.noString(value)) + this.seriesDoses = null; + else { + if (this.seriesDoses == null) + this.seriesDoses = new StringType(); + this.seriesDoses.setValue(value); + } + return this; + } + /** * @return {@link #supportingImmunization} (Immunization event history and/or evaluation that supports the status and recommendation.) */ @@ -786,8 +782,8 @@ public class ImmunizationRecommendation extends DomainResource { children.add(new Property("dateCriterion", "", "Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc.", 0, java.lang.Integer.MAX_VALUE, dateCriterion)); children.add(new Property("description", "string", "Contains the description about the protocol under which the vaccine was administered.", 0, 1, description)); children.add(new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series)); - children.add(new Property("doseNumber[x]", "positiveInt|string", "Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber)); - children.add(new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses)); + children.add(new Property("doseNumber", "string", "Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber)); + children.add(new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process.", 0, 1, seriesDoses)); children.add(new Property("supportingImmunization", "Reference(Immunization|ImmunizationEvaluation)", "Immunization event history and/or evaluation that supports the status and recommendation.", 0, java.lang.Integer.MAX_VALUE, supportingImmunization)); children.add(new Property("supportingPatientInformation", "Reference(Any)", "Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.", 0, java.lang.Integer.MAX_VALUE, supportingPatientInformation)); } @@ -803,14 +799,8 @@ public class ImmunizationRecommendation extends DomainResource { case 2087518867: /*dateCriterion*/ return new Property("dateCriterion", "", "Vaccine date recommendations. For example, earliest date to administer, latest date to administer, etc.", 0, java.lang.Integer.MAX_VALUE, dateCriterion); case -1724546052: /*description*/ return new Property("description", "string", "Contains the description about the protocol under which the vaccine was administered.", 0, 1, description); case -905838985: /*series*/ return new Property("series", "string", "One possible path to achieve presumed immunity against a disease - within the context of an authority.", 0, 1, series); - case -1632295686: /*doseNumber[x]*/ return new Property("doseNumber[x]", "positiveInt|string", "Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber); - case -887709242: /*doseNumber*/ return new Property("doseNumber[x]", "positiveInt|string", "Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber); - case -1826134640: /*doseNumberPositiveInt*/ return new Property("doseNumber[x]", "positiveInt", "Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber); - case -333053577: /*doseNumberString*/ return new Property("doseNumber[x]", "string", "Nominal position of the recommended dose in a series (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber); - case 1553560673: /*seriesDoses[x]*/ return new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -1936727105: /*seriesDoses*/ return new Property("seriesDoses[x]", "positiveInt|string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -220897801: /*seriesDosesPositiveInt*/ return new Property("seriesDoses[x]", "positiveInt", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); - case -673569616: /*seriesDosesString*/ return new Property("seriesDoses[x]", "string", "The recommended number of doses to achieve immunity.", 0, 1, seriesDoses); + case -887709242: /*doseNumber*/ return new Property("doseNumber", "string", "Nominal position of the recommended dose in a series as determined by the evaluation and forecasting process (e.g. dose 2 is the next recommended dose).", 0, 1, doseNumber); + case -1936727105: /*seriesDoses*/ return new Property("seriesDoses", "string", "The recommended number of doses to achieve immunity as determined by the evaluation and forecasting process.", 0, 1, seriesDoses); case 1171592021: /*supportingImmunization*/ return new Property("supportingImmunization", "Reference(Immunization|ImmunizationEvaluation)", "Immunization event history and/or evaluation that supports the status and recommendation.", 0, java.lang.Integer.MAX_VALUE, supportingImmunization); case -1234160646: /*supportingPatientInformation*/ return new Property("supportingPatientInformation", "Reference(Any)", "Patient Information that supports the status and recommendation. This includes patient observations, adverse reactions and allergy/intolerance information.", 0, java.lang.Integer.MAX_VALUE, supportingPatientInformation); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -829,8 +819,8 @@ public class ImmunizationRecommendation extends DomainResource { case 2087518867: /*dateCriterion*/ return this.dateCriterion == null ? new Base[0] : this.dateCriterion.toArray(new Base[this.dateCriterion.size()]); // ImmunizationRecommendationRecommendationDateCriterionComponent case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType case -905838985: /*series*/ return this.series == null ? new Base[0] : new Base[] {this.series}; // StringType - case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // DataType - case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // DataType + case -887709242: /*doseNumber*/ return this.doseNumber == null ? new Base[0] : new Base[] {this.doseNumber}; // StringType + case -1936727105: /*seriesDoses*/ return this.seriesDoses == null ? new Base[0] : new Base[] {this.seriesDoses}; // StringType case 1171592021: /*supportingImmunization*/ return this.supportingImmunization == null ? new Base[0] : this.supportingImmunization.toArray(new Base[this.supportingImmunization.size()]); // Reference case -1234160646: /*supportingPatientInformation*/ return this.supportingPatientInformation == null ? new Base[0] : this.supportingPatientInformation.toArray(new Base[this.supportingPatientInformation.size()]); // Reference default: return super.getProperty(hash, name, checkValid); @@ -866,10 +856,10 @@ public class ImmunizationRecommendation extends DomainResource { this.series = TypeConvertor.castToString(value); // StringType return value; case -887709242: // doseNumber - this.doseNumber = TypeConvertor.castToType(value); // DataType + this.doseNumber = TypeConvertor.castToString(value); // StringType return value; case -1936727105: // seriesDoses - this.seriesDoses = TypeConvertor.castToType(value); // DataType + this.seriesDoses = TypeConvertor.castToString(value); // StringType return value; case 1171592021: // supportingImmunization this.getSupportingImmunization().add(TypeConvertor.castToReference(value)); // Reference @@ -900,10 +890,10 @@ public class ImmunizationRecommendation extends DomainResource { this.description = TypeConvertor.castToString(value); // StringType } else if (name.equals("series")) { this.series = TypeConvertor.castToString(value); // StringType - } else if (name.equals("doseNumber[x]")) { - this.doseNumber = TypeConvertor.castToType(value); // DataType - } else if (name.equals("seriesDoses[x]")) { - this.seriesDoses = TypeConvertor.castToType(value); // DataType + } else if (name.equals("doseNumber")) { + this.doseNumber = TypeConvertor.castToString(value); // StringType + } else if (name.equals("seriesDoses")) { + this.seriesDoses = TypeConvertor.castToString(value); // StringType } else if (name.equals("supportingImmunization")) { this.getSupportingImmunization().add(TypeConvertor.castToReference(value)); } else if (name.equals("supportingPatientInformation")) { @@ -924,10 +914,8 @@ public class ImmunizationRecommendation extends DomainResource { case 2087518867: return addDateCriterion(); case -1724546052: return getDescriptionElement(); case -905838985: return getSeriesElement(); - case -1632295686: return getDoseNumber(); - case -887709242: return getDoseNumber(); - case 1553560673: return getSeriesDoses(); - case -1936727105: return getSeriesDoses(); + case -887709242: return getDoseNumberElement(); + case -1936727105: return getSeriesDosesElement(); case 1171592021: return addSupportingImmunization(); case -1234160646: return addSupportingPatientInformation(); default: return super.makeProperty(hash, name); @@ -946,8 +934,8 @@ public class ImmunizationRecommendation extends DomainResource { case 2087518867: /*dateCriterion*/ return new String[] {}; case -1724546052: /*description*/ return new String[] {"string"}; case -905838985: /*series*/ return new String[] {"string"}; - case -887709242: /*doseNumber*/ return new String[] {"positiveInt", "string"}; - case -1936727105: /*seriesDoses*/ return new String[] {"positiveInt", "string"}; + case -887709242: /*doseNumber*/ return new String[] {"string"}; + case -1936727105: /*seriesDoses*/ return new String[] {"string"}; case 1171592021: /*supportingImmunization*/ return new String[] {"Reference"}; case -1234160646: /*supportingPatientInformation*/ return new String[] {"Reference"}; default: return super.getTypesForProperty(hash, name); @@ -982,21 +970,11 @@ public class ImmunizationRecommendation extends DomainResource { else if (name.equals("series")) { throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.recommendation.series"); } - else if (name.equals("doseNumberPositiveInt")) { - this.doseNumber = new PositiveIntType(); - return this.doseNumber; + else if (name.equals("doseNumber")) { + throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.recommendation.doseNumber"); } - else if (name.equals("doseNumberString")) { - this.doseNumber = new StringType(); - return this.doseNumber; - } - else if (name.equals("seriesDosesPositiveInt")) { - this.seriesDoses = new PositiveIntType(); - return this.seriesDoses; - } - else if (name.equals("seriesDosesString")) { - this.seriesDoses = new StringType(); - return this.seriesDoses; + else if (name.equals("seriesDoses")) { + throw new FHIRException("Cannot call addChild on a primitive type ImmunizationRecommendation.recommendation.seriesDoses"); } else if (name.equals("supportingImmunization")) { return addSupportingImmunization(); @@ -1080,7 +1058,8 @@ public class ImmunizationRecommendation extends DomainResource { if (!(other_ instanceof ImmunizationRecommendationRecommendationComponent)) return false; ImmunizationRecommendationRecommendationComponent o = (ImmunizationRecommendationRecommendationComponent) other_; - return compareValues(description, o.description, true) && compareValues(series, o.series, true); + return compareValues(description, o.description, true) && compareValues(series, o.series, true) && compareValues(doseNumber, o.doseNumber, true) + && compareValues(seriesDoses, o.seriesDoses, true); } public boolean isEmpty() { @@ -1817,7 +1796,7 @@ public class ImmunizationRecommendation extends DomainResource { * Path: ImmunizationRecommendation.recommendation.supportingPatientInformation
*

*/ - @SearchParamDefinition(name="information", path="ImmunizationRecommendation.recommendation.supportingPatientInformation", description="Patient observations supporting recommendation", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="information", path="ImmunizationRecommendation.recommendation.supportingPatientInformation", description="Patient observations supporting recommendation", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_INFORMATION = "information"; /** * Fluent Client search parameter constant for information diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImplementationGuide.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImplementationGuide.java index eed773beb..0a3a42a59 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImplementationGuide.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ImplementationGuide.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -9927,10 +9927,10 @@ public class ImplementationGuide extends CanonicalResource { protected Enumeration license; /** - * The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version. + * The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version. */ @Child(name = "fhirVersion", type = {CodeType.class}, order=15, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="FHIR Version(s) this Implementation Guide targets", formalDefinition="The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version." ) + @Description(shortDefinition="FHIR Version(s) this Implementation Guide targets", formalDefinition="The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/FHIR-version") protected List> fhirVersion; @@ -10711,7 +10711,7 @@ public class ImplementationGuide extends CanonicalResource { } /** - * @return {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.) + * @return {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.) */ public List> getFhirVersion() { if (this.fhirVersion == null) @@ -10737,7 +10737,7 @@ public class ImplementationGuide extends CanonicalResource { } /** - * @return {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.) + * @return {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.) */ public Enumeration addFhirVersionElement() {//2 Enumeration t = new Enumeration(new FHIRVersionEnumFactory()); @@ -10748,7 +10748,7 @@ public class ImplementationGuide extends CanonicalResource { } /** - * @param value {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.) + * @param value {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.) */ public ImplementationGuide addFhirVersion(FHIRVersion value) { //1 Enumeration t = new Enumeration(new FHIRVersionEnumFactory()); @@ -10760,7 +10760,7 @@ public class ImplementationGuide extends CanonicalResource { } /** - * @param value {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.) + * @param value {@link #fhirVersion} (The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.) */ public boolean hasFhirVersion(FHIRVersion value) { if (this.fhirVersion == null) @@ -11013,7 +11013,7 @@ public class ImplementationGuide extends CanonicalResource { children.add(new Property("copyright", "markdown", "A copyright statement relating to the implementation guide and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the implementation guide.", 0, 1, copyright)); children.add(new Property("packageId", "id", "The NPM package name for this Implementation Guide, used in the NPM package distribution, which is the primary mechanism by which FHIR based tooling manages IG dependencies. This value must be globally unique, and should be assigned with care.", 0, 1, packageId)); children.add(new Property("license", "code", "The license that applies to this Implementation Guide, using an SPDX license code, or 'not-open-source'.", 0, 1, license)); - children.add(new Property("fhirVersion", "code", "The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.", 0, java.lang.Integer.MAX_VALUE, fhirVersion)); + children.add(new Property("fhirVersion", "code", "The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.", 0, java.lang.Integer.MAX_VALUE, fhirVersion)); children.add(new Property("dependsOn", "", "Another implementation guide that this implementation depends on. Typically, an implementation guide uses value sets, profiles etc.defined in other implementation guides.", 0, java.lang.Integer.MAX_VALUE, dependsOn)); children.add(new Property("global", "", "A set of profiles that all resources covered by this implementation guide must conform to.", 0, java.lang.Integer.MAX_VALUE, global)); children.add(new Property("definition", "", "The information needed by an IG publisher tool to publish the whole implementation guide.", 0, 1, definition)); @@ -11038,7 +11038,7 @@ public class ImplementationGuide extends CanonicalResource { case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the implementation guide and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the implementation guide.", 0, 1, copyright); case 1802060801: /*packageId*/ return new Property("packageId", "id", "The NPM package name for this Implementation Guide, used in the NPM package distribution, which is the primary mechanism by which FHIR based tooling manages IG dependencies. This value must be globally unique, and should be assigned with care.", 0, 1, packageId); case 166757441: /*license*/ return new Property("license", "code", "The license that applies to this Implementation Guide, using an SPDX license code, or 'not-open-source'.", 0, 1, license); - case 461006061: /*fhirVersion*/ return new Property("fhirVersion", "code", "The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.", 0, java.lang.Integer.MAX_VALUE, fhirVersion); + case 461006061: /*fhirVersion*/ return new Property("fhirVersion", "code", "The version(s) of the FHIR specification that this ImplementationGuide targets - e.g. describes how to use. The value of this element is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.", 0, java.lang.Integer.MAX_VALUE, fhirVersion); case -1109214266: /*dependsOn*/ return new Property("dependsOn", "", "Another implementation guide that this implementation depends on. Typically, an implementation guide uses value sets, profiles etc.defined in other implementation guides.", 0, java.lang.Integer.MAX_VALUE, dependsOn); case -1243020381: /*global*/ return new Property("global", "", "A set of profiles that all resources covered by this implementation guide must conform to.", 0, java.lang.Integer.MAX_VALUE, global); case -1014418093: /*definition*/ return new Property("definition", "", "The information needed by an IG publisher tool to publish the whole implementation guide.", 0, 1, definition); @@ -11507,7 +11507,7 @@ public class ImplementationGuide extends CanonicalResource { * Path: ImplementationGuide.definition.resource.reference
*

*/ - @SearchParamDefinition(name="resource", path="ImplementationGuide.definition.resource.reference", description="Location of the resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="resource", path="ImplementationGuide.definition.resource.reference", description="Location of the resource", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_RESOURCE = "resource"; /** * Fluent Client search parameter constant for resource diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ingredient.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ingredient.java index 389f60d97..0b5201c8c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ingredient.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ingredient.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -460,42 +460,56 @@ public class Ingredient extends DomainResource { @Description(shortDefinition="An upper limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the high limit, with the presentation attribute becoming the lower limit", formalDefinition="An upper limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the high limit, with the presentation attribute becoming the lower limit." ) protected Ratio presentationHighLimit; + /** + * A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio. + */ + @Child(name = "presentationText", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio", formalDefinition="A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio." ) + protected StringType presentationText; + /** * The strength per unitary volume (or mass). */ - @Child(name = "concentration", type = {Ratio.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Child(name = "concentration", type = {Ratio.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The strength per unitary volume (or mass)", formalDefinition="The strength per unitary volume (or mass)." ) protected Ratio concentration; /** * An upper limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the lower limit. */ - @Child(name = "concentrationHighLimit", type = {Ratio.class}, order=4, min=0, max=1, modifier=true, summary=true) + @Child(name = "concentrationHighLimit", type = {Ratio.class}, order=5, min=0, max=1, modifier=true, summary=true) @Description(shortDefinition="An upper limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the lower limit", formalDefinition="An upper limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the lower limit." ) protected Ratio concentrationHighLimit; + /** + * A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio. + */ + @Child(name = "concentrationText", type = {StringType.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio", formalDefinition="A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio." ) + protected StringType concentrationText; + /** * For when strength is measured at a particular point or distance. */ - @Child(name = "measurementPoint", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=true) + @Child(name = "measurementPoint", type = {StringType.class}, order=7, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="For when strength is measured at a particular point or distance", formalDefinition="For when strength is measured at a particular point or distance." ) protected StringType measurementPoint; /** * The country or countries for which the strength range applies. */ - @Child(name = "country", type = {CodeableConcept.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "country", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The country or countries for which the strength range applies", formalDefinition="The country or countries for which the strength range applies." ) protected List country; /** * Strength expressed in terms of a reference substance. */ - @Child(name = "referenceStrength", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "referenceStrength", type = {}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Strength expressed in terms of a reference substance", formalDefinition="Strength expressed in terms of a reference substance." ) protected List referenceStrength; - private static final long serialVersionUID = 790266823L; + private static final long serialVersionUID = 1809762128L; /** * Constructor @@ -552,6 +566,55 @@ public class Ingredient extends DomainResource { return this; } + /** + * @return {@link #presentationText} (A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio.). This is the underlying object with id, value and extensions. The accessor "getPresentationText" gives direct access to the value + */ + public StringType getPresentationTextElement() { + if (this.presentationText == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create IngredientSpecifiedSubstanceStrengthComponent.presentationText"); + else if (Configuration.doAutoCreate()) + this.presentationText = new StringType(); // bb + return this.presentationText; + } + + public boolean hasPresentationTextElement() { + return this.presentationText != null && !this.presentationText.isEmpty(); + } + + public boolean hasPresentationText() { + return this.presentationText != null && !this.presentationText.isEmpty(); + } + + /** + * @param value {@link #presentationText} (A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio.). This is the underlying object with id, value and extensions. The accessor "getPresentationText" gives direct access to the value + */ + public IngredientSpecifiedSubstanceStrengthComponent setPresentationTextElement(StringType value) { + this.presentationText = value; + return this; + } + + /** + * @return A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio. + */ + public String getPresentationText() { + return this.presentationText == null ? null : this.presentationText.getValue(); + } + + /** + * @param value A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio. + */ + public IngredientSpecifiedSubstanceStrengthComponent setPresentationText(String value) { + if (Utilities.noString(value)) + this.presentationText = null; + else { + if (this.presentationText == null) + this.presentationText = new StringType(); + this.presentationText.setValue(value); + } + return this; + } + /** * @return {@link #concentration} (The strength per unitary volume (or mass).) */ @@ -600,6 +663,55 @@ public class Ingredient extends DomainResource { return this; } + /** + * @return {@link #concentrationText} (A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio.). This is the underlying object with id, value and extensions. The accessor "getConcentrationText" gives direct access to the value + */ + public StringType getConcentrationTextElement() { + if (this.concentrationText == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create IngredientSpecifiedSubstanceStrengthComponent.concentrationText"); + else if (Configuration.doAutoCreate()) + this.concentrationText = new StringType(); // bb + return this.concentrationText; + } + + public boolean hasConcentrationTextElement() { + return this.concentrationText != null && !this.concentrationText.isEmpty(); + } + + public boolean hasConcentrationText() { + return this.concentrationText != null && !this.concentrationText.isEmpty(); + } + + /** + * @param value {@link #concentrationText} (A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio.). This is the underlying object with id, value and extensions. The accessor "getConcentrationText" gives direct access to the value + */ + public IngredientSpecifiedSubstanceStrengthComponent setConcentrationTextElement(StringType value) { + this.concentrationText = value; + return this; + } + + /** + * @return A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio. + */ + public String getConcentrationText() { + return this.concentrationText == null ? null : this.concentrationText.getValue(); + } + + /** + * @param value A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio. + */ + public IngredientSpecifiedSubstanceStrengthComponent setConcentrationText(String value) { + if (Utilities.noString(value)) + this.concentrationText = null; + else { + if (this.concentrationText == null) + this.concentrationText = new StringType(); + this.concentrationText.setValue(value); + } + return this; + } + /** * @return {@link #measurementPoint} (For when strength is measured at a particular point or distance.). This is the underlying object with id, value and extensions. The accessor "getMeasurementPoint" gives direct access to the value */ @@ -759,8 +871,10 @@ public class Ingredient extends DomainResource { super.listChildren(children); children.add(new Property("presentation", "Ratio", "The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item.", 0, 1, presentation)); children.add(new Property("presentationHighLimit", "Ratio", "An upper limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the high limit, with the presentation attribute becoming the lower limit.", 0, 1, presentationHighLimit)); + children.add(new Property("presentationText", "string", "A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio.", 0, 1, presentationText)); children.add(new Property("concentration", "Ratio", "The strength per unitary volume (or mass).", 0, 1, concentration)); children.add(new Property("concentrationHighLimit", "Ratio", "An upper limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the lower limit.", 0, 1, concentrationHighLimit)); + children.add(new Property("concentrationText", "string", "A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio.", 0, 1, concentrationText)); children.add(new Property("measurementPoint", "string", "For when strength is measured at a particular point or distance.", 0, 1, measurementPoint)); children.add(new Property("country", "CodeableConcept", "The country or countries for which the strength range applies.", 0, java.lang.Integer.MAX_VALUE, country)); children.add(new Property("referenceStrength", "", "Strength expressed in terms of a reference substance.", 0, java.lang.Integer.MAX_VALUE, referenceStrength)); @@ -771,8 +885,10 @@ public class Ingredient extends DomainResource { switch (_hash) { case 696975130: /*presentation*/ return new Property("presentation", "Ratio", "The quantity of substance in the unit of presentation, or in the volume (or mass) of the single pharmaceutical product or manufactured item.", 0, 1, presentation); case 904802623: /*presentationHighLimit*/ return new Property("presentationHighLimit", "Ratio", "An upper limit for the quantity of substance in the unit of presentation. For use when there is a range of strengths, this is the high limit, with the presentation attribute becoming the lower limit.", 0, 1, presentationHighLimit); + case 1602853735: /*presentationText*/ return new Property("presentationText", "string", "A textual represention of either the whole of the presentation strength or a part of it - with the rest being in Strength.presentation as a ratio.", 0, 1, presentationText); case -410557331: /*concentration*/ return new Property("concentration", "Ratio", "The strength per unitary volume (or mass).", 0, 1, concentration); case -1595729588: /*concentrationHighLimit*/ return new Property("concentrationHighLimit", "Ratio", "An upper limit for the strength per unitary volume (or mass), for when there is a range. The concentration attribute then becomes the lower limit.", 0, 1, concentrationHighLimit); + case 1398611770: /*concentrationText*/ return new Property("concentrationText", "string", "A textual represention of either the whole of the concentration strength or a part of it - with the rest being in Strength.concentration as a ratio.", 0, 1, concentrationText); case 235437876: /*measurementPoint*/ return new Property("measurementPoint", "string", "For when strength is measured at a particular point or distance.", 0, 1, measurementPoint); case 957831062: /*country*/ return new Property("country", "CodeableConcept", "The country or countries for which the strength range applies.", 0, java.lang.Integer.MAX_VALUE, country); case 1943566508: /*referenceStrength*/ return new Property("referenceStrength", "", "Strength expressed in terms of a reference substance.", 0, java.lang.Integer.MAX_VALUE, referenceStrength); @@ -786,8 +902,10 @@ public class Ingredient extends DomainResource { switch (hash) { case 696975130: /*presentation*/ return this.presentation == null ? new Base[0] : new Base[] {this.presentation}; // Ratio case 904802623: /*presentationHighLimit*/ return this.presentationHighLimit == null ? new Base[0] : new Base[] {this.presentationHighLimit}; // Ratio + case 1602853735: /*presentationText*/ return this.presentationText == null ? new Base[0] : new Base[] {this.presentationText}; // StringType case -410557331: /*concentration*/ return this.concentration == null ? new Base[0] : new Base[] {this.concentration}; // Ratio case -1595729588: /*concentrationHighLimit*/ return this.concentrationHighLimit == null ? new Base[0] : new Base[] {this.concentrationHighLimit}; // Ratio + case 1398611770: /*concentrationText*/ return this.concentrationText == null ? new Base[0] : new Base[] {this.concentrationText}; // StringType case 235437876: /*measurementPoint*/ return this.measurementPoint == null ? new Base[0] : new Base[] {this.measurementPoint}; // StringType case 957831062: /*country*/ return this.country == null ? new Base[0] : this.country.toArray(new Base[this.country.size()]); // CodeableConcept case 1943566508: /*referenceStrength*/ return this.referenceStrength == null ? new Base[0] : this.referenceStrength.toArray(new Base[this.referenceStrength.size()]); // IngredientSpecifiedSubstanceStrengthReferenceStrengthComponent @@ -805,12 +923,18 @@ public class Ingredient extends DomainResource { case 904802623: // presentationHighLimit this.presentationHighLimit = TypeConvertor.castToRatio(value); // Ratio return value; + case 1602853735: // presentationText + this.presentationText = TypeConvertor.castToString(value); // StringType + return value; case -410557331: // concentration this.concentration = TypeConvertor.castToRatio(value); // Ratio return value; case -1595729588: // concentrationHighLimit this.concentrationHighLimit = TypeConvertor.castToRatio(value); // Ratio return value; + case 1398611770: // concentrationText + this.concentrationText = TypeConvertor.castToString(value); // StringType + return value; case 235437876: // measurementPoint this.measurementPoint = TypeConvertor.castToString(value); // StringType return value; @@ -831,10 +955,14 @@ public class Ingredient extends DomainResource { this.presentation = TypeConvertor.castToRatio(value); // Ratio } else if (name.equals("presentationHighLimit")) { this.presentationHighLimit = TypeConvertor.castToRatio(value); // Ratio + } else if (name.equals("presentationText")) { + this.presentationText = TypeConvertor.castToString(value); // StringType } else if (name.equals("concentration")) { this.concentration = TypeConvertor.castToRatio(value); // Ratio } else if (name.equals("concentrationHighLimit")) { this.concentrationHighLimit = TypeConvertor.castToRatio(value); // Ratio + } else if (name.equals("concentrationText")) { + this.concentrationText = TypeConvertor.castToString(value); // StringType } else if (name.equals("measurementPoint")) { this.measurementPoint = TypeConvertor.castToString(value); // StringType } else if (name.equals("country")) { @@ -851,8 +979,10 @@ public class Ingredient extends DomainResource { switch (hash) { case 696975130: return getPresentation(); case 904802623: return getPresentationHighLimit(); + case 1602853735: return getPresentationTextElement(); case -410557331: return getConcentration(); case -1595729588: return getConcentrationHighLimit(); + case 1398611770: return getConcentrationTextElement(); case 235437876: return getMeasurementPointElement(); case 957831062: return addCountry(); case 1943566508: return addReferenceStrength(); @@ -866,8 +996,10 @@ public class Ingredient extends DomainResource { switch (hash) { case 696975130: /*presentation*/ return new String[] {"Ratio"}; case 904802623: /*presentationHighLimit*/ return new String[] {"Ratio"}; + case 1602853735: /*presentationText*/ return new String[] {"string"}; case -410557331: /*concentration*/ return new String[] {"Ratio"}; case -1595729588: /*concentrationHighLimit*/ return new String[] {"Ratio"}; + case 1398611770: /*concentrationText*/ return new String[] {"string"}; case 235437876: /*measurementPoint*/ return new String[] {"string"}; case 957831062: /*country*/ return new String[] {"CodeableConcept"}; case 1943566508: /*referenceStrength*/ return new String[] {}; @@ -886,6 +1018,9 @@ public class Ingredient extends DomainResource { this.presentationHighLimit = new Ratio(); return this.presentationHighLimit; } + else if (name.equals("presentationText")) { + throw new FHIRException("Cannot call addChild on a primitive type Ingredient.specifiedSubstance.strength.presentationText"); + } else if (name.equals("concentration")) { this.concentration = new Ratio(); return this.concentration; @@ -894,6 +1029,9 @@ public class Ingredient extends DomainResource { this.concentrationHighLimit = new Ratio(); return this.concentrationHighLimit; } + else if (name.equals("concentrationText")) { + throw new FHIRException("Cannot call addChild on a primitive type Ingredient.specifiedSubstance.strength.concentrationText"); + } else if (name.equals("measurementPoint")) { throw new FHIRException("Cannot call addChild on a primitive type Ingredient.specifiedSubstance.strength.measurementPoint"); } @@ -917,8 +1055,10 @@ public class Ingredient extends DomainResource { super.copyValues(dst); dst.presentation = presentation == null ? null : presentation.copy(); dst.presentationHighLimit = presentationHighLimit == null ? null : presentationHighLimit.copy(); + dst.presentationText = presentationText == null ? null : presentationText.copy(); dst.concentration = concentration == null ? null : concentration.copy(); dst.concentrationHighLimit = concentrationHighLimit == null ? null : concentrationHighLimit.copy(); + dst.concentrationText = concentrationText == null ? null : concentrationText.copy(); dst.measurementPoint = measurementPoint == null ? null : measurementPoint.copy(); if (country != null) { dst.country = new ArrayList(); @@ -940,7 +1080,8 @@ public class Ingredient extends DomainResource { return false; IngredientSpecifiedSubstanceStrengthComponent o = (IngredientSpecifiedSubstanceStrengthComponent) other_; return compareDeep(presentation, o.presentation, true) && compareDeep(presentationHighLimit, o.presentationHighLimit, true) - && compareDeep(concentration, o.concentration, true) && compareDeep(concentrationHighLimit, o.concentrationHighLimit, true) + && compareDeep(presentationText, o.presentationText, true) && compareDeep(concentration, o.concentration, true) + && compareDeep(concentrationHighLimit, o.concentrationHighLimit, true) && compareDeep(concentrationText, o.concentrationText, true) && compareDeep(measurementPoint, o.measurementPoint, true) && compareDeep(country, o.country, true) && compareDeep(referenceStrength, o.referenceStrength, true); } @@ -952,13 +1093,14 @@ public class Ingredient extends DomainResource { if (!(other_ instanceof IngredientSpecifiedSubstanceStrengthComponent)) return false; IngredientSpecifiedSubstanceStrengthComponent o = (IngredientSpecifiedSubstanceStrengthComponent) other_; - return compareValues(measurementPoint, o.measurementPoint, true); + return compareValues(presentationText, o.presentationText, true) && compareValues(concentrationText, o.concentrationText, true) + && compareValues(measurementPoint, o.measurementPoint, true); } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(presentation, presentationHighLimit - , concentration, concentrationHighLimit, measurementPoint, country, referenceStrength - ); + , presentationText, concentration, concentrationHighLimit, concentrationText, measurementPoint + , country, referenceStrength); } public String fhirType() { @@ -1693,41 +1835,55 @@ public class Ingredient extends DomainResource { protected Identifier identifier; /** - * Ingredient role e.g. Active ingredient, excipient. + * Ingredient role within a drug product e.g. Active ingredient, Excipient. */ @Child(name = "role", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="Ingredient role e.g. Active ingredient, excipient", formalDefinition="Ingredient role e.g. Active ingredient, excipient." ) + @Description(shortDefinition="Ingredient role within a drug product e.g. Active ingredient, Excipient", formalDefinition="Ingredient role within a drug product e.g. Active ingredient, Excipient." ) protected CodeableConcept role; + /** + * A classification of the ingredient identifying its precise purpose(s) in the drug product. This extends the Ingredient.role to add more detail. Example: Antioxidant, Alkalizing Agent. + */ + @Child(name = "function", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="A classification of the ingredient identifying its precise purpose(s) in the drug product. This extends the Ingredient.role to add more detail. Example: Antioxidant, Alkalizing Agent", formalDefinition="A classification of the ingredient identifying its precise purpose(s) in the drug product. This extends the Ingredient.role to add more detail. Example: Antioxidant, Alkalizing Agent." ) + protected List function; + + /** + * A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients. + */ + @Child(name = "description", type = {MarkdownType.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients", formalDefinition="A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients." ) + protected MarkdownType description; + /** * If the ingredient is a known or suspected allergen. */ - @Child(name = "allergenicIndicator", type = {BooleanType.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "allergenicIndicator", type = {BooleanType.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="If the ingredient is a known or suspected allergen", formalDefinition="If the ingredient is a known or suspected allergen." ) protected BooleanType allergenicIndicator; /** * The organization that manufactures this ingredient. */ - @Child(name = "manufacturer", type = {Organization.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "manufacturer", type = {Organization.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The organization that manufactures this ingredient", formalDefinition="The organization that manufactures this ingredient." ) protected List manufacturer; /** * A specified substance that comprises this ingredient. */ - @Child(name = "specifiedSubstance", type = {}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "specifiedSubstance", type = {}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="A specified substance that comprises this ingredient", formalDefinition="A specified substance that comprises this ingredient." ) protected List specifiedSubstance; /** * The substance that comprises this ingredient. */ - @Child(name = "substance", type = {}, order=5, min=0, max=1, modifier=false, summary=true) + @Child(name = "substance", type = {}, order=7, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The substance that comprises this ingredient", formalDefinition="The substance that comprises this ingredient." ) protected IngredientSubstanceComponent substance; - private static final long serialVersionUID = 1070468172L; + private static final long serialVersionUID = 463176628L; /** * Constructor @@ -1769,7 +1925,7 @@ public class Ingredient extends DomainResource { } /** - * @return {@link #role} (Ingredient role e.g. Active ingredient, excipient.) + * @return {@link #role} (Ingredient role within a drug product e.g. Active ingredient, Excipient.) */ public CodeableConcept getRole() { if (this.role == null) @@ -1785,13 +1941,115 @@ public class Ingredient extends DomainResource { } /** - * @param value {@link #role} (Ingredient role e.g. Active ingredient, excipient.) + * @param value {@link #role} (Ingredient role within a drug product e.g. Active ingredient, Excipient.) */ public Ingredient setRole(CodeableConcept value) { this.role = value; return this; } + /** + * @return {@link #function} (A classification of the ingredient identifying its precise purpose(s) in the drug product. This extends the Ingredient.role to add more detail. Example: Antioxidant, Alkalizing Agent.) + */ + public List getFunction() { + if (this.function == null) + this.function = new ArrayList(); + return this.function; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Ingredient setFunction(List theFunction) { + this.function = theFunction; + return this; + } + + public boolean hasFunction() { + if (this.function == null) + return false; + for (CodeableConcept item : this.function) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addFunction() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.function == null) + this.function = new ArrayList(); + this.function.add(t); + return t; + } + + public Ingredient addFunction(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.function == null) + this.function = new ArrayList(); + this.function.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #function}, creating it if it does not already exist {3} + */ + public CodeableConcept getFunctionFirstRep() { + if (getFunction().isEmpty()) { + addFunction(); + } + return getFunction().get(0); + } + + /** + * @return {@link #description} (A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public MarkdownType getDescriptionElement() { + if (this.description == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Ingredient.description"); + else if (Configuration.doAutoCreate()) + this.description = new MarkdownType(); // bb + return this.description; + } + + public boolean hasDescriptionElement() { + return this.description != null && !this.description.isEmpty(); + } + + public boolean hasDescription() { + return this.description != null && !this.description.isEmpty(); + } + + /** + * @param value {@link #description} (A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public Ingredient setDescriptionElement(MarkdownType value) { + this.description = value; + return this; + } + + /** + * @return A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients. + */ + public String getDescription() { + return this.description == null ? null : this.description.getValue(); + } + + /** + * @param value A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients. + */ + public Ingredient setDescription(String value) { + if (value == null) + this.description = null; + else { + if (this.description == null) + this.description = new MarkdownType(); + this.description.setValue(value); + } + return this; + } + /** * @return {@link #allergenicIndicator} (If the ingredient is a known or suspected allergen.). This is the underlying object with id, value and extensions. The accessor "getAllergenicIndicator" gives direct access to the value */ @@ -1970,7 +2228,9 @@ public class Ingredient extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "The identifier(s) of this Ingredient that are assigned by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate.", 0, 1, identifier)); - children.add(new Property("role", "CodeableConcept", "Ingredient role e.g. Active ingredient, excipient.", 0, 1, role)); + children.add(new Property("role", "CodeableConcept", "Ingredient role within a drug product e.g. Active ingredient, Excipient.", 0, 1, role)); + children.add(new Property("function", "CodeableConcept", "A classification of the ingredient identifying its precise purpose(s) in the drug product. This extends the Ingredient.role to add more detail. Example: Antioxidant, Alkalizing Agent.", 0, java.lang.Integer.MAX_VALUE, function)); + children.add(new Property("description", "markdown", "A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients.", 0, 1, description)); children.add(new Property("allergenicIndicator", "boolean", "If the ingredient is a known or suspected allergen.", 0, 1, allergenicIndicator)); children.add(new Property("manufacturer", "Reference(Organization)", "The organization that manufactures this ingredient.", 0, java.lang.Integer.MAX_VALUE, manufacturer)); children.add(new Property("specifiedSubstance", "", "A specified substance that comprises this ingredient.", 0, java.lang.Integer.MAX_VALUE, specifiedSubstance)); @@ -1981,7 +2241,9 @@ public class Ingredient extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "The identifier(s) of this Ingredient that are assigned by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate.", 0, 1, identifier); - case 3506294: /*role*/ return new Property("role", "CodeableConcept", "Ingredient role e.g. Active ingredient, excipient.", 0, 1, role); + case 3506294: /*role*/ return new Property("role", "CodeableConcept", "Ingredient role within a drug product e.g. Active ingredient, Excipient.", 0, 1, role); + case 1380938712: /*function*/ return new Property("function", "CodeableConcept", "A classification of the ingredient identifying its precise purpose(s) in the drug product. This extends the Ingredient.role to add more detail. Example: Antioxidant, Alkalizing Agent.", 0, java.lang.Integer.MAX_VALUE, function); + case -1724546052: /*description*/ return new Property("description", "markdown", "A general description of the ingredient, or any supporting text. May be used for an unstructured list of excipients.", 0, 1, description); case 75406931: /*allergenicIndicator*/ return new Property("allergenicIndicator", "boolean", "If the ingredient is a known or suspected allergen.", 0, 1, allergenicIndicator); case -1969347631: /*manufacturer*/ return new Property("manufacturer", "Reference(Organization)", "The organization that manufactures this ingredient.", 0, java.lang.Integer.MAX_VALUE, manufacturer); case -331477600: /*specifiedSubstance*/ return new Property("specifiedSubstance", "", "A specified substance that comprises this ingredient.", 0, java.lang.Integer.MAX_VALUE, specifiedSubstance); @@ -1996,6 +2258,8 @@ public class Ingredient extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : new Base[] {this.identifier}; // Identifier case 3506294: /*role*/ return this.role == null ? new Base[0] : new Base[] {this.role}; // CodeableConcept + case 1380938712: /*function*/ return this.function == null ? new Base[0] : this.function.toArray(new Base[this.function.size()]); // CodeableConcept + case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType case 75406931: /*allergenicIndicator*/ return this.allergenicIndicator == null ? new Base[0] : new Base[] {this.allergenicIndicator}; // BooleanType case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : this.manufacturer.toArray(new Base[this.manufacturer.size()]); // Reference case -331477600: /*specifiedSubstance*/ return this.specifiedSubstance == null ? new Base[0] : this.specifiedSubstance.toArray(new Base[this.specifiedSubstance.size()]); // IngredientSpecifiedSubstanceComponent @@ -2014,6 +2278,12 @@ public class Ingredient extends DomainResource { case 3506294: // role this.role = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; + case 1380938712: // function + this.getFunction().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case -1724546052: // description + this.description = TypeConvertor.castToMarkdown(value); // MarkdownType + return value; case 75406931: // allergenicIndicator this.allergenicIndicator = TypeConvertor.castToBoolean(value); // BooleanType return value; @@ -2037,6 +2307,10 @@ public class Ingredient extends DomainResource { this.identifier = TypeConvertor.castToIdentifier(value); // Identifier } else if (name.equals("role")) { this.role = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("function")) { + this.getFunction().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("description")) { + this.description = TypeConvertor.castToMarkdown(value); // MarkdownType } else if (name.equals("allergenicIndicator")) { this.allergenicIndicator = TypeConvertor.castToBoolean(value); // BooleanType } else if (name.equals("manufacturer")) { @@ -2055,6 +2329,8 @@ public class Ingredient extends DomainResource { switch (hash) { case -1618432855: return getIdentifier(); case 3506294: return getRole(); + case 1380938712: return addFunction(); + case -1724546052: return getDescriptionElement(); case 75406931: return getAllergenicIndicatorElement(); case -1969347631: return addManufacturer(); case -331477600: return addSpecifiedSubstance(); @@ -2069,6 +2345,8 @@ public class Ingredient extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; case 3506294: /*role*/ return new String[] {"CodeableConcept"}; + case 1380938712: /*function*/ return new String[] {"CodeableConcept"}; + case -1724546052: /*description*/ return new String[] {"markdown"}; case 75406931: /*allergenicIndicator*/ return new String[] {"boolean"}; case -1969347631: /*manufacturer*/ return new String[] {"Reference"}; case -331477600: /*specifiedSubstance*/ return new String[] {}; @@ -2088,6 +2366,12 @@ public class Ingredient extends DomainResource { this.role = new CodeableConcept(); return this.role; } + else if (name.equals("function")) { + return addFunction(); + } + else if (name.equals("description")) { + throw new FHIRException("Cannot call addChild on a primitive type Ingredient.description"); + } else if (name.equals("allergenicIndicator")) { throw new FHIRException("Cannot call addChild on a primitive type Ingredient.allergenicIndicator"); } @@ -2120,6 +2404,12 @@ public class Ingredient extends DomainResource { super.copyValues(dst); dst.identifier = identifier == null ? null : identifier.copy(); dst.role = role == null ? null : role.copy(); + if (function != null) { + dst.function = new ArrayList(); + for (CodeableConcept i : function) + dst.function.add(i.copy()); + }; + dst.description = description == null ? null : description.copy(); dst.allergenicIndicator = allergenicIndicator == null ? null : allergenicIndicator.copy(); if (manufacturer != null) { dst.manufacturer = new ArrayList(); @@ -2145,7 +2435,8 @@ public class Ingredient extends DomainResource { if (!(other_ instanceof Ingredient)) return false; Ingredient o = (Ingredient) other_; - return compareDeep(identifier, o.identifier, true) && compareDeep(role, o.role, true) && compareDeep(allergenicIndicator, o.allergenicIndicator, true) + return compareDeep(identifier, o.identifier, true) && compareDeep(role, o.role, true) && compareDeep(function, o.function, true) + && compareDeep(description, o.description, true) && compareDeep(allergenicIndicator, o.allergenicIndicator, true) && compareDeep(manufacturer, o.manufacturer, true) && compareDeep(specifiedSubstance, o.specifiedSubstance, true) && compareDeep(substance, o.substance, true); } @@ -2157,12 +2448,13 @@ public class Ingredient extends DomainResource { if (!(other_ instanceof Ingredient)) return false; Ingredient o = (Ingredient) other_; - return compareValues(allergenicIndicator, o.allergenicIndicator, true); + return compareValues(description, o.description, true) && compareValues(allergenicIndicator, o.allergenicIndicator, true) + ; } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, role, allergenicIndicator - , manufacturer, specifiedSubstance, substance); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, role, function + , description, allergenicIndicator, manufacturer, specifiedSubstance, substance); } @Override diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/InsurancePlan.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/InsurancePlan.java index d4b29df40..5a82985c3 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/InsurancePlan.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/InsurancePlan.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Integer64Type.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Integer64Type.java index 759f175c0..6d92fece0 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Integer64Type.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Integer64Type.java @@ -52,13 +52,15 @@ package org.hl7.fhir.r5.model; */ +import org.hl7.fhir.instance.model.api.IBaseIntegerDatatype; + import ca.uhn.fhir.model.api.annotation.DatatypeDef; /** - * Primitive type "integer" in FHIR: A signed 64-bit integer + * Primitive type "integer" in FHIR: A signed 32-bit integer */ -@DatatypeDef(name = "integer64") -public class Integer64Type extends PrimitiveType { +@DatatypeDef(name = "integer") +public class Integer64Type extends PrimitiveType /* implements IBaseInteger64Datatype */ { private static final long serialVersionUID = 3L; @@ -95,8 +97,12 @@ public class Integer64Type extends PrimitiveType { * @throws IllegalArgumentException If the value is too large to fit in a signed integer */ public Integer64Type(Long theValue) { + if (theValue < java.lang.Long.MIN_VALUE || theValue > java.lang.Long.MAX_VALUE) { + throw new IllegalArgumentException + (theValue + " cannot be cast to int without changing its value."); + } if(theValue!=null) { - setValue(theValue); + setValue((long)theValue.longValue()); } } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Invoice.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Invoice.java index 21f926cd3..733dcb944 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Invoice.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Invoice.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Library.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Library.java index 89e1d124a..3dd04117e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Library.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Library.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2460,7 +2460,7 @@ public class Library extends MetadataResource { * Path: Library.relatedArtifact.where(type='composed-of').resource
*

*/ - @SearchParamDefinition(name="composed-of", path="Library.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="composed-of", path="Library.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_COMPOSED_OF = "composed-of"; /** * Fluent Client search parameter constant for composed-of @@ -2626,7 +2626,7 @@ public class Library extends MetadataResource { * Path: Library.relatedArtifact.where(type='depends-on').resource
*

*/ - @SearchParamDefinition(name="depends-on", path="Library.relatedArtifact.where(type='depends-on').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="depends-on", path="Library.relatedArtifact.where(type='depends-on').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DEPENDS_ON = "depends-on"; /** * Fluent Client search parameter constant for depends-on @@ -2652,7 +2652,7 @@ public class Library extends MetadataResource { * Path: Library.relatedArtifact.where(type='derived-from').resource
*

*/ - @SearchParamDefinition(name="derived-from", path="Library.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="derived-from", path="Library.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DERIVED_FROM = "derived-from"; /** * Fluent Client search parameter constant for derived-from @@ -2778,7 +2778,7 @@ public class Library extends MetadataResource { * Path: Library.relatedArtifact.where(type='predecessor').resource
*

*/ - @SearchParamDefinition(name="predecessor", path="Library.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="predecessor", path="Library.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PREDECESSOR = "predecessor"; /** * Fluent Client search parameter constant for predecessor @@ -2844,7 +2844,7 @@ public class Library extends MetadataResource { * Path: Library.relatedArtifact.where(type='successor').resource
*

*/ - @SearchParamDefinition(name="successor", path="Library.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="successor", path="Library.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUCCESSOR = "successor"; /** * Fluent Client search parameter constant for successor diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Linkage.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Linkage.java index 5c72c753b..5fad1dce5 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Linkage.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Linkage.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -761,7 +761,7 @@ public class Linkage extends DomainResource { * Path: Linkage.item.resource
*

*/ - @SearchParamDefinition(name="item", path="Linkage.item.resource", description="Matches on any item in the Linkage", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="item", path="Linkage.item.resource", description="Matches on any item in the Linkage", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_ITEM = "item"; /** * Fluent Client search parameter constant for item @@ -787,7 +787,7 @@ public class Linkage extends DomainResource { * Path: Linkage.item.resource
*

*/ - @SearchParamDefinition(name="source", path="Linkage.item.resource", description="Matches on any item in the Linkage with a type of 'source'", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="source", path="Linkage.item.resource", description="Matches on any item in the Linkage with a type of 'source'", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SOURCE = "source"; /** * Fluent Client search parameter constant for source diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ListResource.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ListResource.java index 931ff74af..6b2663e02 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ListResource.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ListResource.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1478,7 +1478,7 @@ public class ListResource extends DomainResource { * Path: List.entry.item
*

*/ - @SearchParamDefinition(name="item", path="List.entry.item", description="Actual entry", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="item", path="List.entry.item", description="Actual entry", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_ITEM = "item"; /** * Fluent Client search parameter constant for item @@ -1629,10 +1629,10 @@ public class ListResource extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -1655,7 +1655,7 @@ public class ListResource extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -1684,10 +1684,10 @@ public class ListResource extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -1713,7 +1713,7 @@ public class ListResource extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -1895,10 +1895,10 @@ public class ListResource extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1939,7 +1939,7 @@ public class ListResource extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Location.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Location.java index 265fe2eff..0120a0aa2 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Location.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Location.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ManufacturedItemDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ManufacturedItemDefinition.java index e878ffd5f..8c5b80fd9 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ManufacturedItemDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ManufacturedItemDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -73,59 +73,59 @@ import ca.uhn.fhir.model.api.annotation.Block; public class ManufacturedItemDefinition extends DomainResource { @Block() - public static class ManufacturedItemDefinitionCharacteristicComponent extends BackboneElement implements IBaseBackboneElement { + public static class ManufacturedItemDefinitionPropertyComponent extends BackboneElement implements IBaseBackboneElement { /** * A code expressing the type of characteristic. */ - @Child(name = "code", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="A code expressing the type of characteristic", formalDefinition="A code expressing the type of characteristic." ) - protected CodeableConcept code; + protected CodeableConcept type; /** * A value for the characteristic. */ - @Child(name = "value", type = {Coding.class, Quantity.class, StringType.class, DateType.class, BooleanType.class, Attachment.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "value", type = {CodeableConcept.class, Quantity.class, DateType.class, BooleanType.class, Attachment.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="A value for the characteristic", formalDefinition="A value for the characteristic." ) protected DataType value; - private static final long serialVersionUID = -1950789033L; + private static final long serialVersionUID = -1659186716L; /** * Constructor */ - public ManufacturedItemDefinitionCharacteristicComponent() { + public ManufacturedItemDefinitionPropertyComponent() { super(); } /** * Constructor */ - public ManufacturedItemDefinitionCharacteristicComponent(CodeableConcept code) { + public ManufacturedItemDefinitionPropertyComponent(CodeableConcept type) { super(); - this.setCode(code); + this.setType(type); } /** - * @return {@link #code} (A code expressing the type of characteristic.) + * @return {@link #type} (A code expressing the type of characteristic.) */ - public CodeableConcept getCode() { - if (this.code == null) + public CodeableConcept getType() { + if (this.type == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create ManufacturedItemDefinitionCharacteristicComponent.code"); + throw new Error("Attempt to auto-create ManufacturedItemDefinitionPropertyComponent.type"); else if (Configuration.doAutoCreate()) - this.code = new CodeableConcept(); // cc - return this.code; + this.type = new CodeableConcept(); // cc + return this.type; } - public boolean hasCode() { - return this.code != null && !this.code.isEmpty(); + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); } /** - * @param value {@link #code} (A code expressing the type of characteristic.) + * @param value {@link #type} (A code expressing the type of characteristic.) */ - public ManufacturedItemDefinitionCharacteristicComponent setCode(CodeableConcept value) { - this.code = value; + public ManufacturedItemDefinitionPropertyComponent setType(CodeableConcept value) { + this.type = value; return this; } @@ -139,16 +139,16 @@ public class ManufacturedItemDefinition extends DomainResource { /** * @return {@link #value} (A value for the characteristic.) */ - public Coding getValueCoding() throws FHIRException { + public CodeableConcept getValueCodeableConcept() throws FHIRException { if (this.value == null) - this.value = new Coding(); - if (!(this.value instanceof Coding)) - throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); - return (Coding) this.value; + this.value = new CodeableConcept(); + if (!(this.value instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); + return (CodeableConcept) this.value; } - public boolean hasValueCoding() { - return this != null && this.value instanceof Coding; + public boolean hasValueCodeableConcept() { + return this != null && this.value instanceof CodeableConcept; } /** @@ -166,21 +166,6 @@ public class ManufacturedItemDefinition extends DomainResource { return this != null && this.value instanceof Quantity; } - /** - * @return {@link #value} (A value for the characteristic.) - */ - public StringType getValueStringType() throws FHIRException { - if (this.value == null) - this.value = new StringType(); - if (!(this.value instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); - return (StringType) this.value; - } - - public boolean hasValueStringType() { - return this != null && this.value instanceof StringType; - } - /** * @return {@link #value} (A value for the characteristic.) */ @@ -233,28 +218,27 @@ public class ManufacturedItemDefinition extends DomainResource { /** * @param value {@link #value} (A value for the characteristic.) */ - public ManufacturedItemDefinitionCharacteristicComponent setValue(DataType value) { - if (value != null && !(value instanceof Coding || value instanceof Quantity || value instanceof StringType || value instanceof DateType || value instanceof BooleanType || value instanceof Attachment)) - throw new Error("Not the right type for ManufacturedItemDefinition.characteristic.value[x]: "+value.fhirType()); + public ManufacturedItemDefinitionPropertyComponent setValue(DataType value) { + if (value != null && !(value instanceof CodeableConcept || value instanceof Quantity || value instanceof DateType || value instanceof BooleanType || value instanceof Attachment)) + throw new Error("Not the right type for ManufacturedItemDefinition.property.value[x]: "+value.fhirType()); this.value = value; return this; } protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("code", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, code)); - children.add(new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value)); + children.add(new Property("type", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, type)); + children.add(new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, code); - case -1410166417: /*value[x]*/ return new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); - case 111972721: /*value*/ return new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); - case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "A value for the characteristic.", 0, 1, value); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, type); + case -1410166417: /*value[x]*/ return new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); + case 111972721: /*value*/ return new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); + case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "A value for the characteristic.", 0, 1, value); case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "A value for the characteristic.", 0, 1, value); - case -1424603934: /*valueString*/ return new Property("value[x]", "string", "A value for the characteristic.", 0, 1, value); case -766192449: /*valueDate*/ return new Property("value[x]", "date", "A value for the characteristic.", 0, 1, value); case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "A value for the characteristic.", 0, 1, value); case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "A value for the characteristic.", 0, 1, value); @@ -266,7 +250,7 @@ public class ManufacturedItemDefinition extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType default: return super.getProperty(hash, name, checkValid); } @@ -276,8 +260,8 @@ public class ManufacturedItemDefinition extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 3059181: // code - this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case 111972721: // value this.value = TypeConvertor.castToType(value); // DataType @@ -289,8 +273,8 @@ public class ManufacturedItemDefinition extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("code")) { - this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("value[x]")) { this.value = TypeConvertor.castToType(value); // DataType } else @@ -301,7 +285,7 @@ public class ManufacturedItemDefinition extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3059181: return getCode(); + case 3575610: return getType(); case -1410166417: return getValue(); case 111972721: return getValue(); default: return super.makeProperty(hash, name); @@ -312,8 +296,8 @@ public class ManufacturedItemDefinition extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3059181: /*code*/ return new String[] {"CodeableConcept"}; - case 111972721: /*value*/ return new String[] {"Coding", "Quantity", "string", "date", "boolean", "Attachment"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"CodeableConcept", "Quantity", "date", "boolean", "Attachment"}; default: return super.getTypesForProperty(hash, name); } @@ -321,22 +305,18 @@ public class ManufacturedItemDefinition extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("code")) { - this.code = new CodeableConcept(); - return this.code; + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; } - else if (name.equals("valueCoding")) { - this.value = new Coding(); + else if (name.equals("valueCodeableConcept")) { + this.value = new CodeableConcept(); return this.value; } else if (name.equals("valueQuantity")) { this.value = new Quantity(); return this.value; } - else if (name.equals("valueString")) { - this.value = new StringType(); - return this.value; - } else if (name.equals("valueDate")) { this.value = new DateType(); return this.value; @@ -353,15 +333,15 @@ public class ManufacturedItemDefinition extends DomainResource { return super.addChild(name); } - public ManufacturedItemDefinitionCharacteristicComponent copy() { - ManufacturedItemDefinitionCharacteristicComponent dst = new ManufacturedItemDefinitionCharacteristicComponent(); + public ManufacturedItemDefinitionPropertyComponent copy() { + ManufacturedItemDefinitionPropertyComponent dst = new ManufacturedItemDefinitionPropertyComponent(); copyValues(dst); return dst; } - public void copyValues(ManufacturedItemDefinitionCharacteristicComponent dst) { + public void copyValues(ManufacturedItemDefinitionPropertyComponent dst) { super.copyValues(dst); - dst.code = code == null ? null : code.copy(); + dst.type = type == null ? null : type.copy(); dst.value = value == null ? null : value.copy(); } @@ -369,28 +349,28 @@ public class ManufacturedItemDefinition extends DomainResource { public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof ManufacturedItemDefinitionCharacteristicComponent)) + if (!(other_ instanceof ManufacturedItemDefinitionPropertyComponent)) return false; - ManufacturedItemDefinitionCharacteristicComponent o = (ManufacturedItemDefinitionCharacteristicComponent) other_; - return compareDeep(code, o.code, true) && compareDeep(value, o.value, true); + ManufacturedItemDefinitionPropertyComponent o = (ManufacturedItemDefinitionPropertyComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(value, o.value, true); } @Override public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof ManufacturedItemDefinitionCharacteristicComponent)) + if (!(other_ instanceof ManufacturedItemDefinitionPropertyComponent)) return false; - ManufacturedItemDefinitionCharacteristicComponent o = (ManufacturedItemDefinitionCharacteristicComponent) other_; + ManufacturedItemDefinitionPropertyComponent o = (ManufacturedItemDefinitionPropertyComponent) other_; return true; } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, value); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value); } public String fhirType() { - return "ManufacturedItemDefinition.characteristic"; + return "ManufacturedItemDefinition.property"; } @@ -434,11 +414,11 @@ public class ManufacturedItemDefinition extends DomainResource { /** * General characteristics of this item. */ - @Child(name = "characteristic", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "property", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="General characteristics of this item", formalDefinition="General characteristics of this item." ) - protected List characteristic; + protected List property; - private static final long serialVersionUID = -2112474361L; + private static final long serialVersionUID = 604232519L; /** * Constructor @@ -663,56 +643,56 @@ public class ManufacturedItemDefinition extends DomainResource { } /** - * @return {@link #characteristic} (General characteristics of this item.) + * @return {@link #property} (General characteristics of this item.) */ - public List getCharacteristic() { - if (this.characteristic == null) - this.characteristic = new ArrayList(); - return this.characteristic; + public List getProperty() { + if (this.property == null) + this.property = new ArrayList(); + return this.property; } /** * @return Returns a reference to this for easy method chaining */ - public ManufacturedItemDefinition setCharacteristic(List theCharacteristic) { - this.characteristic = theCharacteristic; + public ManufacturedItemDefinition setProperty(List theProperty) { + this.property = theProperty; return this; } - public boolean hasCharacteristic() { - if (this.characteristic == null) + public boolean hasProperty() { + if (this.property == null) return false; - for (ManufacturedItemDefinitionCharacteristicComponent item : this.characteristic) + for (ManufacturedItemDefinitionPropertyComponent item : this.property) if (!item.isEmpty()) return true; return false; } - public ManufacturedItemDefinitionCharacteristicComponent addCharacteristic() { //3 - ManufacturedItemDefinitionCharacteristicComponent t = new ManufacturedItemDefinitionCharacteristicComponent(); - if (this.characteristic == null) - this.characteristic = new ArrayList(); - this.characteristic.add(t); + public ManufacturedItemDefinitionPropertyComponent addProperty() { //3 + ManufacturedItemDefinitionPropertyComponent t = new ManufacturedItemDefinitionPropertyComponent(); + if (this.property == null) + this.property = new ArrayList(); + this.property.add(t); return t; } - public ManufacturedItemDefinition addCharacteristic(ManufacturedItemDefinitionCharacteristicComponent t) { //3 + public ManufacturedItemDefinition addProperty(ManufacturedItemDefinitionPropertyComponent t) { //3 if (t == null) return this; - if (this.characteristic == null) - this.characteristic = new ArrayList(); - this.characteristic.add(t); + if (this.property == null) + this.property = new ArrayList(); + this.property.add(t); return this; } /** - * @return The first repetition of repeating field {@link #characteristic}, creating it if it does not already exist {3} + * @return The first repetition of repeating field {@link #property}, creating it if it does not already exist {3} */ - public ManufacturedItemDefinitionCharacteristicComponent getCharacteristicFirstRep() { - if (getCharacteristic().isEmpty()) { - addCharacteristic(); + public ManufacturedItemDefinitionPropertyComponent getPropertyFirstRep() { + if (getProperty().isEmpty()) { + addProperty(); } - return getCharacteristic().get(0); + return getProperty().get(0); } protected void listChildren(List children) { @@ -722,7 +702,7 @@ public class ManufacturedItemDefinition extends DomainResource { children.add(new Property("unitOfPresentation", "CodeableConcept", "The “real world” units in which the quantity of the manufactured item is described.", 0, 1, unitOfPresentation)); children.add(new Property("manufacturer", "Reference(Organization)", "Manufacturer of the item (Note that this should be named \"manufacturer\" but it currently causes technical issues).", 0, java.lang.Integer.MAX_VALUE, manufacturer)); children.add(new Property("ingredient", "Reference(Ingredient)", "The ingredients that make up this manufactured item.", 0, java.lang.Integer.MAX_VALUE, ingredient)); - children.add(new Property("characteristic", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, characteristic)); + children.add(new Property("property", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, property)); } @Override @@ -733,7 +713,7 @@ public class ManufacturedItemDefinition extends DomainResource { case -1427765963: /*unitOfPresentation*/ return new Property("unitOfPresentation", "CodeableConcept", "The “real world” units in which the quantity of the manufactured item is described.", 0, 1, unitOfPresentation); case -1969347631: /*manufacturer*/ return new Property("manufacturer", "Reference(Organization)", "Manufacturer of the item (Note that this should be named \"manufacturer\" but it currently causes technical issues).", 0, java.lang.Integer.MAX_VALUE, manufacturer); case -206409263: /*ingredient*/ return new Property("ingredient", "Reference(Ingredient)", "The ingredients that make up this manufactured item.", 0, java.lang.Integer.MAX_VALUE, ingredient); - case 366313883: /*characteristic*/ return new Property("characteristic", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, characteristic); + case -993141291: /*property*/ return new Property("property", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, property); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -747,7 +727,7 @@ public class ManufacturedItemDefinition extends DomainResource { case -1427765963: /*unitOfPresentation*/ return this.unitOfPresentation == null ? new Base[0] : new Base[] {this.unitOfPresentation}; // CodeableConcept case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : this.manufacturer.toArray(new Base[this.manufacturer.size()]); // Reference case -206409263: /*ingredient*/ return this.ingredient == null ? new Base[0] : this.ingredient.toArray(new Base[this.ingredient.size()]); // Reference - case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // ManufacturedItemDefinitionCharacteristicComponent + case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // ManufacturedItemDefinitionPropertyComponent default: return super.getProperty(hash, name, checkValid); } @@ -771,8 +751,8 @@ public class ManufacturedItemDefinition extends DomainResource { case -206409263: // ingredient this.getIngredient().add(TypeConvertor.castToReference(value)); // Reference return value; - case 366313883: // characteristic - this.getCharacteristic().add((ManufacturedItemDefinitionCharacteristicComponent) value); // ManufacturedItemDefinitionCharacteristicComponent + case -993141291: // property + this.getProperty().add((ManufacturedItemDefinitionPropertyComponent) value); // ManufacturedItemDefinitionPropertyComponent return value; default: return super.setProperty(hash, name, value); } @@ -791,8 +771,8 @@ public class ManufacturedItemDefinition extends DomainResource { this.getManufacturer().add(TypeConvertor.castToReference(value)); } else if (name.equals("ingredient")) { this.getIngredient().add(TypeConvertor.castToReference(value)); - } else if (name.equals("characteristic")) { - this.getCharacteristic().add((ManufacturedItemDefinitionCharacteristicComponent) value); + } else if (name.equals("property")) { + this.getProperty().add((ManufacturedItemDefinitionPropertyComponent) value); } else return super.setProperty(name, value); return value; @@ -806,7 +786,7 @@ public class ManufacturedItemDefinition extends DomainResource { case -1427765963: return getUnitOfPresentation(); case -1969347631: return addManufacturer(); case -206409263: return addIngredient(); - case 366313883: return addCharacteristic(); + case -993141291: return addProperty(); default: return super.makeProperty(hash, name); } @@ -820,7 +800,7 @@ public class ManufacturedItemDefinition extends DomainResource { case -1427765963: /*unitOfPresentation*/ return new String[] {"CodeableConcept"}; case -1969347631: /*manufacturer*/ return new String[] {"Reference"}; case -206409263: /*ingredient*/ return new String[] {"Reference"}; - case 366313883: /*characteristic*/ return new String[] {}; + case -993141291: /*property*/ return new String[] {}; default: return super.getTypesForProperty(hash, name); } @@ -845,8 +825,8 @@ public class ManufacturedItemDefinition extends DomainResource { else if (name.equals("ingredient")) { return addIngredient(); } - else if (name.equals("characteristic")) { - return addCharacteristic(); + else if (name.equals("property")) { + return addProperty(); } else return super.addChild(name); @@ -882,10 +862,10 @@ public class ManufacturedItemDefinition extends DomainResource { for (Reference i : ingredient) dst.ingredient.add(i.copy()); }; - if (characteristic != null) { - dst.characteristic = new ArrayList(); - for (ManufacturedItemDefinitionCharacteristicComponent i : characteristic) - dst.characteristic.add(i.copy()); + if (property != null) { + dst.property = new ArrayList(); + for (ManufacturedItemDefinitionPropertyComponent i : property) + dst.property.add(i.copy()); }; } @@ -902,8 +882,7 @@ public class ManufacturedItemDefinition extends DomainResource { ManufacturedItemDefinition o = (ManufacturedItemDefinition) other_; return compareDeep(identifier, o.identifier, true) && compareDeep(manufacturedDoseForm, o.manufacturedDoseForm, true) && compareDeep(unitOfPresentation, o.unitOfPresentation, true) && compareDeep(manufacturer, o.manufacturer, true) - && compareDeep(ingredient, o.ingredient, true) && compareDeep(characteristic, o.characteristic, true) - ; + && compareDeep(ingredient, o.ingredient, true) && compareDeep(property, o.property, true); } @Override @@ -918,7 +897,7 @@ public class ManufacturedItemDefinition extends DomainResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, manufacturedDoseForm - , unitOfPresentation, manufacturer, ingredient, characteristic); + , unitOfPresentation, manufacturer, ingredient, property); } @Override diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MarketingStatus.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MarketingStatus.java index c7b422c61..ccd41370e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MarketingStatus.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MarketingStatus.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Measure.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Measure.java index d3f4bb28a..d4d7a01e1 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Measure.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Measure.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -4813,7 +4813,7 @@ public class Measure extends MetadataResource { * Path: Measure.relatedArtifact.where(type='composed-of').resource
*

*/ - @SearchParamDefinition(name="composed-of", path="Measure.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="composed-of", path="Measure.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_COMPOSED_OF = "composed-of"; /** * Fluent Client search parameter constant for composed-of @@ -4959,7 +4959,7 @@ public class Measure extends MetadataResource { * Path: Measure.relatedArtifact.where(type='depends-on').resource | Measure.library
*

*/ - @SearchParamDefinition(name="depends-on", path="Measure.relatedArtifact.where(type='depends-on').resource | Measure.library", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="depends-on", path="Measure.relatedArtifact.where(type='depends-on').resource | Measure.library", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DEPENDS_ON = "depends-on"; /** * Fluent Client search parameter constant for depends-on @@ -4985,7 +4985,7 @@ public class Measure extends MetadataResource { * Path: Measure.relatedArtifact.where(type='derived-from').resource
*

*/ - @SearchParamDefinition(name="derived-from", path="Measure.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="derived-from", path="Measure.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DERIVED_FROM = "derived-from"; /** * Fluent Client search parameter constant for derived-from @@ -5111,7 +5111,7 @@ public class Measure extends MetadataResource { * Path: Measure.relatedArtifact.where(type='predecessor').resource
*

*/ - @SearchParamDefinition(name="predecessor", path="Measure.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="predecessor", path="Measure.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PREDECESSOR = "predecessor"; /** * Fluent Client search parameter constant for predecessor @@ -5177,7 +5177,7 @@ public class Measure extends MetadataResource { * Path: Measure.relatedArtifact.where(type='successor').resource
*

*/ - @SearchParamDefinition(name="successor", path="Measure.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="successor", path="Measure.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUCCESSOR = "successor"; /** * Fluent Client search parameter constant for successor diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MeasureReport.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MeasureReport.java index 605619ba4..673ef12e4 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MeasureReport.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MeasureReport.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2891,7 +2891,7 @@ public class MeasureReport extends DomainResource { * Path: MeasureReport.evaluatedResource
*

*/ - @SearchParamDefinition(name="evaluated-resource", path="MeasureReport.evaluatedResource", description="An evaluated resource referenced by the measure report", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="evaluated-resource", path="MeasureReport.evaluatedResource", description="An evaluated resource referenced by the measure report", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_EVALUATED_RESOURCE = "evaluated-resource"; /** * Fluent Client search parameter constant for evaluated-resource diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Medication.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Medication.java index ef89928f0..f4332ccc6 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Medication.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Medication.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -186,9 +186,9 @@ public class Medication extends DomainResource { /** * The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication). */ - @Child(name = "item", type = {CodeableConcept.class, Substance.class, Medication.class}, order=1, min=1, max=1, modifier=false, summary=false) + @Child(name = "item", type = {CodeableReference.class}, order=1, min=1, max=1, modifier=false, summary=false) @Description(shortDefinition="The ingredient (substance or medication) that the ingredient.strength relates to", formalDefinition="The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication)." ) - protected DataType item; + protected CodeableReference item; /** * Indication of whether this ingredient affects the therapeutic action of the drug. @@ -205,7 +205,7 @@ public class Medication extends DomainResource { @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-ingredientstrength") protected DataType strength; - private static final long serialVersionUID = 1297277898L; + private static final long serialVersionUID = -979760018L; /** * Constructor @@ -217,7 +217,7 @@ public class Medication extends DomainResource { /** * Constructor */ - public MedicationIngredientComponent(DataType item) { + public MedicationIngredientComponent(CodeableReference item) { super(); this.setItem(item); } @@ -225,40 +225,15 @@ public class Medication extends DomainResource { /** * @return {@link #item} (The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).) */ - public DataType getItem() { + public CodeableReference getItem() { + if (this.item == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationIngredientComponent.item"); + else if (Configuration.doAutoCreate()) + this.item = new CodeableReference(); // cc return this.item; } - /** - * @return {@link #item} (The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).) - */ - public CodeableConcept getItemCodeableConcept() throws FHIRException { - if (this.item == null) - this.item = new CodeableConcept(); - if (!(this.item instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.item.getClass().getName()+" was encountered"); - return (CodeableConcept) this.item; - } - - public boolean hasItemCodeableConcept() { - return this != null && this.item instanceof CodeableConcept; - } - - /** - * @return {@link #item} (The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).) - */ - public Reference getItemReference() throws FHIRException { - if (this.item == null) - this.item = new Reference(); - if (!(this.item instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.item.getClass().getName()+" was encountered"); - return (Reference) this.item; - } - - public boolean hasItemReference() { - return this != null && this.item instanceof Reference; - } - public boolean hasItem() { return this.item != null && !this.item.isEmpty(); } @@ -266,9 +241,7 @@ public class Medication extends DomainResource { /** * @param value {@link #item} (The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).) */ - public MedicationIngredientComponent setItem(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for Medication.ingredient.item[x]: "+value.fhirType()); + public MedicationIngredientComponent setItem(CodeableReference value) { this.item = value; return this; } @@ -386,7 +359,7 @@ public class Medication extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("item[x]", "CodeableConcept|Reference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item)); + children.add(new Property("item", "CodeableReference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item)); children.add(new Property("isActive", "boolean", "Indication of whether this ingredient affects the therapeutic action of the drug.", 0, 1, isActive)); children.add(new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength)); } @@ -394,10 +367,7 @@ public class Medication extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 2116201613: /*item[x]*/ return new Property("item[x]", "CodeableConcept|Reference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item); - case 3242771: /*item*/ return new Property("item[x]", "CodeableConcept|Reference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item); - case 106644494: /*itemCodeableConcept*/ return new Property("item[x]", "CodeableConcept", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item); - case 1376364920: /*itemReference*/ return new Property("item[x]", "Reference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item); + case 3242771: /*item*/ return new Property("item", "CodeableReference(Substance|Medication)", "The ingredient (substance or medication) that the ingredient.strength relates to. This is represented as a concept from a code system or described in another resource (Substance or Medication).", 0, 1, item); case -748916528: /*isActive*/ return new Property("isActive", "boolean", "Indication of whether this ingredient affects the therapeutic action of the drug.", 0, 1, isActive); case 127377567: /*strength[x]*/ return new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); case 1791316033: /*strength*/ return new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); @@ -412,7 +382,7 @@ public class Medication extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // DataType + case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // CodeableReference case -748916528: /*isActive*/ return this.isActive == null ? new Base[0] : new Base[] {this.isActive}; // BooleanType case 1791316033: /*strength*/ return this.strength == null ? new Base[0] : new Base[] {this.strength}; // DataType default: return super.getProperty(hash, name, checkValid); @@ -424,7 +394,7 @@ public class Medication extends DomainResource { public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { case 3242771: // item - this.item = TypeConvertor.castToType(value); // DataType + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -748916528: // isActive this.isActive = TypeConvertor.castToBoolean(value); // BooleanType @@ -439,8 +409,8 @@ public class Medication extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("item[x]")) { - this.item = TypeConvertor.castToType(value); // DataType + if (name.equals("item")) { + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("isActive")) { this.isActive = TypeConvertor.castToBoolean(value); // BooleanType } else if (name.equals("strength[x]")) { @@ -453,7 +423,6 @@ public class Medication extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 2116201613: return getItem(); case 3242771: return getItem(); case -748916528: return getIsActiveElement(); case 127377567: return getStrength(); @@ -466,7 +435,7 @@ public class Medication extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3242771: /*item*/ return new String[] {"CodeableConcept", "Reference"}; + case 3242771: /*item*/ return new String[] {"CodeableReference"}; case -748916528: /*isActive*/ return new String[] {"boolean"}; case 1791316033: /*strength*/ return new String[] {"Ratio", "CodeableConcept", "Quantity"}; default: return super.getTypesForProperty(hash, name); @@ -476,12 +445,8 @@ public class Medication extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("itemCodeableConcept")) { - this.item = new CodeableConcept(); - return this.item; - } - else if (name.equals("itemReference")) { - this.item = new Reference(); + if (name.equals("item")) { + this.item = new CodeableReference(); return this.item; } else if (name.equals("isActive")) { @@ -1444,17 +1409,17 @@ public class Medication extends DomainResource { *

* Description: Returns medications for this ingredient code
* Type: token
- * Path: (Medication.ingredient.item as CodeableConcept)
+ * Path: Medication.ingredient.item.concept
*

*/ - @SearchParamDefinition(name="ingredient-code", path="(Medication.ingredient.item as CodeableConcept)", description="Returns medications for this ingredient code", type="token" ) + @SearchParamDefinition(name="ingredient-code", path="Medication.ingredient.item.concept", description="Returns medications for this ingredient code", type="token" ) public static final String SP_INGREDIENT_CODE = "ingredient-code"; /** * Fluent Client search parameter constant for ingredient-code *

* Description: Returns medications for this ingredient code
* Type: token
- * Path: (Medication.ingredient.item as CodeableConcept)
+ * Path: Medication.ingredient.item.concept
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam INGREDIENT_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_INGREDIENT_CODE); @@ -1464,17 +1429,17 @@ public class Medication extends DomainResource { *

* Description: Returns medications for this ingredient reference
* Type: reference
- * Path: (Medication.ingredient.item as Reference)
+ * Path: Medication.ingredient.item.reference
*

*/ - @SearchParamDefinition(name="ingredient", path="(Medication.ingredient.item as Reference)", description="Returns medications for this ingredient reference", type="reference", target={Medication.class, Substance.class } ) + @SearchParamDefinition(name="ingredient", path="Medication.ingredient.item.reference", description="Returns medications for this ingredient reference", type="reference" ) public static final String SP_INGREDIENT = "ingredient"; /** * Fluent Client search parameter constant for ingredient *

* Description: Returns medications for this ingredient reference
* Type: reference
- * Path: (Medication.ingredient.item as Reference)
+ * Path: Medication.ingredient.item.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam INGREDIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_INGREDIENT); @@ -1572,10 +1537,10 @@ public class Medication extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -1598,7 +1563,7 @@ public class Medication extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationAdministration.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationAdministration.java index 7d5c52867..e93c0afee 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationAdministration.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationAdministration.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -142,13 +142,13 @@ public class MedicationAdministration extends DomainResource { } public String getSystem() { switch (this) { - case INPROGRESS: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case NOTDONE: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case ONHOLD: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case COMPLETED: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case ENTEREDINERROR: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case STOPPED: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; - case UNKNOWN: return "http://terminology.hl7.org/CodeSystem/medication-admin-status"; + case INPROGRESS: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case NOTDONE: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case ONHOLD: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case COMPLETED: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case ENTEREDINERROR: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case STOPPED: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; + case UNKNOWN: return "http://hl7.org/fhir/CodeSystem/medication-admin-status"; default: return "?"; } } @@ -957,20 +957,20 @@ public class MedicationAdministration extends DomainResource { protected List statusReason; /** - * Indicates where the medication is expected to be consumed or administered. + * The type of medication administration (for example, drug classification like ATC, where meds would be administered, legal category of the medication). */ @Child(name = "category", type = {CodeableConcept.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Type of medication usage", formalDefinition="Indicates where the medication is expected to be consumed or administered." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-admin-category") + @Description(shortDefinition="Type of medication administration", formalDefinition="The type of medication administration (for example, drug classification like ATC, where meds would be administered, legal category of the medication)." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-admin-location") protected List category; /** * Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications. */ - @Child(name = "medication", type = {CodeableConcept.class, Medication.class}, order=8, min=1, max=1, modifier=false, summary=true) + @Child(name = "medication", type = {CodeableReference.class}, order=8, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="What was administered", formalDefinition="Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") - protected DataType medication; + protected CodeableReference medication; /** * The person or animal or group receiving the medication. @@ -1057,7 +1057,7 @@ public class MedicationAdministration extends DomainResource { @Description(shortDefinition="A list of events of interest in the lifecycle", formalDefinition="A summary of the events of interest that have occurred, such as when the administration was verified." ) protected List eventHistory; - private static final long serialVersionUID = -854071403L; + private static final long serialVersionUID = -1268367135L; /** * Constructor @@ -1069,7 +1069,7 @@ public class MedicationAdministration extends DomainResource { /** * Constructor */ - public MedicationAdministration(MedicationAdministrationStatusCodes status, DataType medication, Reference subject, DataType occurence) { + public MedicationAdministration(MedicationAdministrationStatusCodes status, CodeableReference medication, Reference subject, DataType occurence) { super(); this.setStatus(status); this.setMedication(medication); @@ -1457,7 +1457,7 @@ public class MedicationAdministration extends DomainResource { } /** - * @return {@link #category} (Indicates where the medication is expected to be consumed or administered.) + * @return {@link #category} (The type of medication administration (for example, drug classification like ATC, where meds would be administered, legal category of the medication).) */ public List getCategory() { if (this.category == null) @@ -1512,40 +1512,15 @@ public class MedicationAdministration extends DomainResource { /** * @return {@link #medication} (Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) */ - public DataType getMedication() { + public CodeableReference getMedication() { + if (this.medication == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationAdministration.medication"); + else if (Configuration.doAutoCreate()) + this.medication = new CodeableReference(); // cc return this.medication; } - /** - * @return {@link #medication} (Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) - */ - public CodeableConcept getMedicationCodeableConcept() throws FHIRException { - if (this.medication == null) - this.medication = new CodeableConcept(); - if (!(this.medication instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (CodeableConcept) this.medication; - } - - public boolean hasMedicationCodeableConcept() { - return this != null && this.medication instanceof CodeableConcept; - } - - /** - * @return {@link #medication} (Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) - */ - public Reference getMedicationReference() throws FHIRException { - if (this.medication == null) - this.medication = new Reference(); - if (!(this.medication instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (Reference) this.medication; - } - - public boolean hasMedicationReference() { - return this != null && this.medication instanceof Reference; - } - public boolean hasMedication() { return this.medication != null && !this.medication.isEmpty(); } @@ -1553,9 +1528,7 @@ public class MedicationAdministration extends DomainResource { /** * @param value {@link #medication} (Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) */ - public MedicationAdministration setMedication(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationAdministration.medication[x]: "+value.fhirType()); + public MedicationAdministration setMedication(CodeableReference value) { this.medication = value; return this; } @@ -2083,8 +2056,8 @@ public class MedicationAdministration extends DomainResource { children.add(new Property("partOf", "Reference(MedicationAdministration|Procedure)", "A larger event of which this particular event is a component or step.", 0, java.lang.Integer.MAX_VALUE, partOf)); children.add(new Property("status", "code", "Will generally be set to show that the administration has been completed. For some long running administrations such as infusions, it is possible for an administration to be started but not completed or it may be paused while some other process is under way.", 0, 1, status)); children.add(new Property("statusReason", "CodeableConcept", "A code indicating why the administration was not performed.", 0, java.lang.Integer.MAX_VALUE, statusReason)); - children.add(new Property("category", "CodeableConcept", "Indicates where the medication is expected to be consumed or administered.", 0, java.lang.Integer.MAX_VALUE, category)); - children.add(new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); + children.add(new Property("category", "CodeableConcept", "The type of medication administration (for example, drug classification like ATC, where meds would be administered, legal category of the medication).", 0, java.lang.Integer.MAX_VALUE, category)); + children.add(new Property("medication", "CodeableReference(Medication)", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); children.add(new Property("subject", "Reference(Patient|Group)", "The person or animal or group receiving the medication.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "The visit, admission, or other contact between patient and health care provider during which the medication administration was performed.", 0, 1, encounter)); children.add(new Property("supportingInformation", "Reference(Any)", "Additional information (for example, patient height and weight) that supports the administration of the medication. This attribute can be used to provide documentation of specific characteristics of the patient present at the time of administration. For example, if the dose says \"give \"x\" if the heartrate exceeds \"y\"\", then the heart rate can be included using this attribute.", 0, java.lang.Integer.MAX_VALUE, supportingInformation)); @@ -2109,11 +2082,8 @@ public class MedicationAdministration extends DomainResource { case -995410646: /*partOf*/ return new Property("partOf", "Reference(MedicationAdministration|Procedure)", "A larger event of which this particular event is a component or step.", 0, java.lang.Integer.MAX_VALUE, partOf); case -892481550: /*status*/ return new Property("status", "code", "Will generally be set to show that the administration has been completed. For some long running administrations such as infusions, it is possible for an administration to be started but not completed or it may be paused while some other process is under way.", 0, 1, status); case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableConcept", "A code indicating why the administration was not performed.", 0, java.lang.Integer.MAX_VALUE, statusReason); - case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates where the medication is expected to be consumed or administered.", 0, java.lang.Integer.MAX_VALUE, category); - case 1458402129: /*medication[x]*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 1998965455: /*medication*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case -209845038: /*medicationCodeableConcept*/ return new Property("medication[x]", "CodeableConcept", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 2104315196: /*medicationReference*/ return new Property("medication[x]", "Reference(Medication)", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "The type of medication administration (for example, drug classification like ATC, where meds would be administered, legal category of the medication).", 0, java.lang.Integer.MAX_VALUE, category); + case 1998965455: /*medication*/ return new Property("medication", "CodeableReference(Medication)", "Identifies the medication that was administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "The person or animal or group receiving the medication.", 0, 1, subject); case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The visit, admission, or other contact between patient and health care provider during which the medication administration was performed.", 0, 1, encounter); case -1248768647: /*supportingInformation*/ return new Property("supportingInformation", "Reference(Any)", "Additional information (for example, patient height and weight) that supports the administration of the medication. This attribute can be used to provide documentation of specific characteristics of the patient present at the time of administration. For example, if the dose says \"give \"x\" if the heartrate exceeds \"y\"\", then the heart rate can be included using this attribute.", 0, java.lang.Integer.MAX_VALUE, supportingInformation); @@ -2145,7 +2115,7 @@ public class MedicationAdministration extends DomainResource { case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : this.statusReason.toArray(new Base[this.statusReason.size()]); // CodeableConcept case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept - case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // DataType + case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // CodeableReference case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference case -1248768647: /*supportingInformation*/ return this.supportingInformation == null ? new Base[0] : this.supportingInformation.toArray(new Base[this.supportingInformation.size()]); // Reference @@ -2192,7 +2162,7 @@ public class MedicationAdministration extends DomainResource { this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case 1998965455: // medication - this.medication = TypeConvertor.castToType(value); // DataType + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -1867885268: // subject this.subject = TypeConvertor.castToReference(value); // Reference @@ -2254,8 +2224,8 @@ public class MedicationAdministration extends DomainResource { this.getStatusReason().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("category")) { this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("medication[x]")) { - this.medication = TypeConvertor.castToType(value); // DataType + } else if (name.equals("medication")) { + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("subject")) { this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("encounter")) { @@ -2296,7 +2266,6 @@ public class MedicationAdministration extends DomainResource { case -892481550: return getStatusElement(); case 2051346646: return addStatusReason(); case 50511102: return addCategory(); - case 1458402129: return getMedication(); case 1998965455: return getMedication(); case -1867885268: return getSubject(); case 1524132147: return getEncounter(); @@ -2327,7 +2296,7 @@ public class MedicationAdministration extends DomainResource { case -892481550: /*status*/ return new String[] {"code"}; case 2051346646: /*statusReason*/ return new String[] {"CodeableConcept"}; case 50511102: /*category*/ return new String[] {"CodeableConcept"}; - case 1998965455: /*medication*/ return new String[] {"CodeableConcept", "Reference"}; + case 1998965455: /*medication*/ return new String[] {"CodeableReference"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1524132147: /*encounter*/ return new String[] {"Reference"}; case -1248768647: /*supportingInformation*/ return new String[] {"Reference"}; @@ -2371,12 +2340,8 @@ public class MedicationAdministration extends DomainResource { else if (name.equals("category")) { return addCategory(); } - else if (name.equals("medicationCodeableConcept")) { - this.medication = new CodeableConcept(); - return this.medication; - } - else if (name.equals("medicationReference")) { - this.medication = new Reference(); + else if (name.equals("medication")) { + this.medication = new CodeableReference(); return this.medication; } else if (name.equals("subject")) { @@ -2614,24 +2579,50 @@ public class MedicationAdministration extends DomainResource { public static final ca.uhn.fhir.model.api.Include INCLUDE_PERFORMER = new ca.uhn.fhir.model.api.Include("MedicationAdministration:performer").toLocked(); /** - * Search parameter: reason-given + * Search parameter: reason-given-code *

* Description: Reasons for administering the medication
* Type: token
- * Path: null
+ * Path: MedicationAdministration.reason.concept
*

*/ - @SearchParamDefinition(name="reason-given", path="", description="Reasons for administering the medication", type="token" ) + @SearchParamDefinition(name="reason-given-code", path="MedicationAdministration.reason.concept", description="Reasons for administering the medication", type="token" ) + public static final String SP_REASON_GIVEN_CODE = "reason-given-code"; + /** + * Fluent Client search parameter constant for reason-given-code + *

+ * Description: Reasons for administering the medication
+ * Type: token
+ * Path: MedicationAdministration.reason.concept
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam REASON_GIVEN_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_REASON_GIVEN_CODE); + + /** + * Search parameter: reason-given + *

+ * Description: Reference to a resource (by instance)
+ * Type: reference
+ * Path: MedicationAdministration.reason.reference
+ *

+ */ + @SearchParamDefinition(name="reason-given", path="MedicationAdministration.reason.reference", description="Reference to a resource (by instance)", type="reference" ) public static final String SP_REASON_GIVEN = "reason-given"; /** * Fluent Client search parameter constant for reason-given *

- * Description: Reasons for administering the medication
- * Type: token
- * Path: null
+ * Description: Reference to a resource (by instance)
+ * Type: reference
+ * Path: MedicationAdministration.reason.reference
*

*/ - public static final ca.uhn.fhir.rest.gclient.TokenClientParam REASON_GIVEN = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_REASON_GIVEN); + public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam REASON_GIVEN = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_REASON_GIVEN); + +/** + * Constant for fluent queries to be used to add include statements. Specifies + * the path value of "MedicationAdministration:reason-given". + */ + public static final ca.uhn.fhir.model.api.Include INCLUDE_REASON_GIVEN = new ca.uhn.fhir.model.api.Include("MedicationAdministration:reason-given").toLocked(); /** * Search parameter: reason-not-given @@ -2726,10 +2717,10 @@ public class MedicationAdministration extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2752,7 +2743,7 @@ public class MedicationAdministration extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2880,10 +2871,10 @@ public class MedicationAdministration extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2924,7 +2915,7 @@ public class MedicationAdministration extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); @@ -3002,29 +2993,29 @@ public class MedicationAdministration extends DomainResource { *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ - @SearchParamDefinition(name="medication", path="(MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference", target={Medication.class } ) + @SearchParamDefinition(name="medication", path="MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference" ) public static final String SP_MEDICATION = "medication"; /** * Fluent Client search parameter constant for medication *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam MEDICATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_MEDICATION); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationDispense.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationDispense.java index e40ee884f..bc69b3450 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationDispense.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationDispense.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -156,15 +156,15 @@ public class MedicationDispense extends DomainResource { } public String getSystem() { switch (this) { - case PREPARATION: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case INPROGRESS: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case CANCELLED: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case ONHOLD: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case COMPLETED: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case ENTEREDINERROR: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case STOPPED: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case DECLINED: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; - case UNKNOWN: return "http://terminology.hl7.org/CodeSystem/medicationdispense-status"; + case PREPARATION: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case INPROGRESS: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case CANCELLED: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case ONHOLD: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case COMPLETED: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case ENTEREDINERROR: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case STOPPED: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case DECLINED: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; + case UNKNOWN: return "http://hl7.org/fhir/CodeSystem/medicationdispense-status"; default: return "?"; } } @@ -290,7 +290,7 @@ public class MedicationDispense extends DomainResource { /** * The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication. */ - @Child(name = "actor", type = {Practitioner.class, PractitionerRole.class, Organization.class, Patient.class, Device.class, RelatedPerson.class}, order=2, min=1, max=1, modifier=false, summary=false) + @Child(name = "actor", type = {Practitioner.class, PractitionerRole.class, Organization.class, Patient.class, Device.class, RelatedPerson.class, CareTeam.class}, order=2, min=1, max=1, modifier=false, summary=false) @Description(shortDefinition="Individual who was performing", formalDefinition="The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication." ) protected Reference actor; @@ -362,14 +362,14 @@ public class MedicationDispense extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("function", "CodeableConcept", "Distinguishes the type of performer in the dispense. For example, date enterer, packager, final checker.", 0, 1, function)); - children.add(new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|Patient|Device|RelatedPerson)", "The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication.", 0, 1, actor)); + children.add(new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|Patient|Device|RelatedPerson|CareTeam)", "The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication.", 0, 1, actor)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case 1380938712: /*function*/ return new Property("function", "CodeableConcept", "Distinguishes the type of performer in the dispense. For example, date enterer, packager, final checker.", 0, 1, function); - case 92645877: /*actor*/ return new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|Patient|Device|RelatedPerson)", "The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication.", 0, 1, actor); + case 92645877: /*actor*/ return new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|Patient|Device|RelatedPerson|CareTeam)", "The device, practitioner, etc. who performed the action. It should be assumed that the actor is the dispenser of the medication.", 0, 1, actor); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -876,26 +876,26 @@ public class MedicationDispense extends DomainResource { /** * Indicates the reason why a dispense was not performed. */ - @Child(name = "statusReason", type = {CodeableConcept.class, DetectedIssue.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Child(name = "statusReason", type = {CodeableReference.class}, order=4, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Why a dispense was not performed", formalDefinition="Indicates the reason why a dispense was not performed." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medicationdispense-status-reason") - protected DataType statusReason; + protected CodeableReference statusReason; /** - * Indicates the type of medication dispense (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)). + * Indicates the type of medication dispense (for example, drug classification like ATC, where meds would be administered, legal category of the medication.). */ @Child(name = "category", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Type of medication dispense", formalDefinition="Indicates the type of medication dispense (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient))." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medicationdispense-category") + @Description(shortDefinition="Type of medication dispense", formalDefinition="Indicates the type of medication dispense (for example, drug classification like ATC, where meds would be administered, legal category of the medication.)." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medicationdispense-admin-location") protected List category; /** * Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications. */ - @Child(name = "medication", type = {CodeableConcept.class, Medication.class}, order=6, min=1, max=1, modifier=false, summary=true) + @Child(name = "medication", type = {CodeableReference.class}, order=6, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="What medication was supplied", formalDefinition="Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") - protected DataType medication; + protected CodeableReference medication; /** * A link to a resource representing the person or the group to whom the medication will be given. @@ -1031,7 +1031,7 @@ public class MedicationDispense extends DomainResource { @Description(shortDefinition="A list of relevant lifecycle events", formalDefinition="A summary of the events of interest that have occurred, such as when the dispense was verified." ) protected List eventHistory; - private static final long serialVersionUID = -1013413036L; + private static final long serialVersionUID = 70964694L; /** * Constructor @@ -1043,7 +1043,7 @@ public class MedicationDispense extends DomainResource { /** * Constructor */ - public MedicationDispense(MedicationDispenseStatusCodes status, DataType medication) { + public MedicationDispense(MedicationDispenseStatusCodes status, CodeableReference medication) { super(); this.setStatus(status); this.setMedication(medication); @@ -1256,40 +1256,15 @@ public class MedicationDispense extends DomainResource { /** * @return {@link #statusReason} (Indicates the reason why a dispense was not performed.) */ - public DataType getStatusReason() { + public CodeableReference getStatusReason() { + if (this.statusReason == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationDispense.statusReason"); + else if (Configuration.doAutoCreate()) + this.statusReason = new CodeableReference(); // cc return this.statusReason; } - /** - * @return {@link #statusReason} (Indicates the reason why a dispense was not performed.) - */ - public CodeableConcept getStatusReasonCodeableConcept() throws FHIRException { - if (this.statusReason == null) - this.statusReason = new CodeableConcept(); - if (!(this.statusReason instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.statusReason.getClass().getName()+" was encountered"); - return (CodeableConcept) this.statusReason; - } - - public boolean hasStatusReasonCodeableConcept() { - return this != null && this.statusReason instanceof CodeableConcept; - } - - /** - * @return {@link #statusReason} (Indicates the reason why a dispense was not performed.) - */ - public Reference getStatusReasonReference() throws FHIRException { - if (this.statusReason == null) - this.statusReason = new Reference(); - if (!(this.statusReason instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.statusReason.getClass().getName()+" was encountered"); - return (Reference) this.statusReason; - } - - public boolean hasStatusReasonReference() { - return this != null && this.statusReason instanceof Reference; - } - public boolean hasStatusReason() { return this.statusReason != null && !this.statusReason.isEmpty(); } @@ -1297,15 +1272,13 @@ public class MedicationDispense extends DomainResource { /** * @param value {@link #statusReason} (Indicates the reason why a dispense was not performed.) */ - public MedicationDispense setStatusReason(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationDispense.statusReason[x]: "+value.fhirType()); + public MedicationDispense setStatusReason(CodeableReference value) { this.statusReason = value; return this; } /** - * @return {@link #category} (Indicates the type of medication dispense (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).) + * @return {@link #category} (Indicates the type of medication dispense (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).) */ public List getCategory() { if (this.category == null) @@ -1360,40 +1333,15 @@ public class MedicationDispense extends DomainResource { /** * @return {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) */ - public DataType getMedication() { + public CodeableReference getMedication() { + if (this.medication == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationDispense.medication"); + else if (Configuration.doAutoCreate()) + this.medication = new CodeableReference(); // cc return this.medication; } - /** - * @return {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) - */ - public CodeableConcept getMedicationCodeableConcept() throws FHIRException { - if (this.medication == null) - this.medication = new CodeableConcept(); - if (!(this.medication instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (CodeableConcept) this.medication; - } - - public boolean hasMedicationCodeableConcept() { - return this != null && this.medication instanceof CodeableConcept; - } - - /** - * @return {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) - */ - public Reference getMedicationReference() throws FHIRException { - if (this.medication == null) - this.medication = new Reference(); - if (!(this.medication instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (Reference) this.medication; - } - - public boolean hasMedicationReference() { - return this != null && this.medication instanceof Reference; - } - public boolean hasMedication() { return this.medication != null && !this.medication.isEmpty(); } @@ -1401,9 +1349,7 @@ public class MedicationDispense extends DomainResource { /** * @param value {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) */ - public MedicationDispense setMedication(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationDispense.medication[x]: "+value.fhirType()); + public MedicationDispense setMedication(CodeableReference value) { this.medication = value; return this; } @@ -2177,9 +2123,9 @@ public class MedicationDispense extends DomainResource { children.add(new Property("basedOn", "Reference(CarePlan)", "A plan that is fulfilled in whole or in part by this MedicationDispense.", 0, java.lang.Integer.MAX_VALUE, basedOn)); children.add(new Property("partOf", "Reference(Procedure)", "The procedure that trigger the dispense.", 0, java.lang.Integer.MAX_VALUE, partOf)); children.add(new Property("status", "code", "A code specifying the state of the set of dispense events.", 0, 1, status)); - children.add(new Property("statusReason[x]", "CodeableConcept|Reference(DetectedIssue)", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason)); - children.add(new Property("category", "CodeableConcept", "Indicates the type of medication dispense (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).", 0, java.lang.Integer.MAX_VALUE, category)); - children.add(new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); + children.add(new Property("statusReason", "CodeableReference(DetectedIssue)", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason)); + children.add(new Property("category", "CodeableConcept", "Indicates the type of medication dispense (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).", 0, java.lang.Integer.MAX_VALUE, category)); + children.add(new Property("medication", "CodeableReference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); children.add(new Property("subject", "Reference(Patient|Group)", "A link to a resource representing the person or the group to whom the medication will be given.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "The encounter that establishes the context for this event.", 0, 1, encounter)); children.add(new Property("supportingInformation", "Reference(Any)", "Additional information that supports the medication being dispensed. For example, there may be requirements that a specific lab test has been completed prior to dispensing or the patient's weight at the time of dispensing is documented.", 0, java.lang.Integer.MAX_VALUE, supportingInformation)); @@ -2208,15 +2154,9 @@ public class MedicationDispense extends DomainResource { case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(CarePlan)", "A plan that is fulfilled in whole or in part by this MedicationDispense.", 0, java.lang.Integer.MAX_VALUE, basedOn); case -995410646: /*partOf*/ return new Property("partOf", "Reference(Procedure)", "The procedure that trigger the dispense.", 0, java.lang.Integer.MAX_VALUE, partOf); case -892481550: /*status*/ return new Property("status", "code", "A code specifying the state of the set of dispense events.", 0, 1, status); - case -1421632534: /*statusReason[x]*/ return new Property("statusReason[x]", "CodeableConcept|Reference(DetectedIssue)", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason); - case 2051346646: /*statusReason*/ return new Property("statusReason[x]", "CodeableConcept|Reference(DetectedIssue)", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason); - case 2082934763: /*statusReasonCodeableConcept*/ return new Property("statusReason[x]", "CodeableConcept", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason); - case 1344200469: /*statusReasonReference*/ return new Property("statusReason[x]", "Reference(DetectedIssue)", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason); - case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates the type of medication dispense (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).", 0, java.lang.Integer.MAX_VALUE, category); - case 1458402129: /*medication[x]*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 1998965455: /*medication*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case -209845038: /*medicationCodeableConcept*/ return new Property("medication[x]", "CodeableConcept", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 2104315196: /*medicationReference*/ return new Property("medication[x]", "Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); + case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableReference(DetectedIssue)", "Indicates the reason why a dispense was not performed.", 0, 1, statusReason); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates the type of medication dispense (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).", 0, java.lang.Integer.MAX_VALUE, category); + case 1998965455: /*medication*/ return new Property("medication", "CodeableReference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "A link to a resource representing the person or the group to whom the medication will be given.", 0, 1, subject); case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The encounter that establishes the context for this event.", 0, 1, encounter); case -1248768647: /*supportingInformation*/ return new Property("supportingInformation", "Reference(Any)", "Additional information that supports the medication being dispensed. For example, there may be requirements that a specific lab test has been completed prior to dispensing or the patient's weight at the time of dispensing is documented.", 0, java.lang.Integer.MAX_VALUE, supportingInformation); @@ -2248,9 +2188,9 @@ public class MedicationDispense extends DomainResource { case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference case -995410646: /*partOf*/ return this.partOf == null ? new Base[0] : this.partOf.toArray(new Base[this.partOf.size()]); // Reference case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration - case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : new Base[] {this.statusReason}; // DataType + case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : new Base[] {this.statusReason}; // CodeableReference case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept - case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // DataType + case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // CodeableReference case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference case -1248768647: /*supportingInformation*/ return this.supportingInformation == null ? new Base[0] : this.supportingInformation.toArray(new Base[this.supportingInformation.size()]); // Reference @@ -2292,13 +2232,13 @@ public class MedicationDispense extends DomainResource { this.status = (Enumeration) value; // Enumeration return value; case 2051346646: // statusReason - this.statusReason = TypeConvertor.castToType(value); // DataType + this.statusReason = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case 50511102: // category this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case 1998965455: // medication - this.medication = TypeConvertor.castToType(value); // DataType + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -1867885268: // subject this.subject = TypeConvertor.castToReference(value); // Reference @@ -2373,12 +2313,12 @@ public class MedicationDispense extends DomainResource { } else if (name.equals("status")) { value = new MedicationDispenseStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); this.status = (Enumeration) value; // Enumeration - } else if (name.equals("statusReason[x]")) { - this.statusReason = TypeConvertor.castToType(value); // DataType + } else if (name.equals("statusReason")) { + this.statusReason = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("category")) { this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("medication[x]")) { - this.medication = TypeConvertor.castToType(value); // DataType + } else if (name.equals("medication")) { + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("subject")) { this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("encounter")) { @@ -2429,10 +2369,8 @@ public class MedicationDispense extends DomainResource { case -332612366: return addBasedOn(); case -995410646: return addPartOf(); case -892481550: return getStatusElement(); - case -1421632534: return getStatusReason(); case 2051346646: return getStatusReason(); case 50511102: return addCategory(); - case 1458402129: return getMedication(); case 1998965455: return getMedication(); case -1867885268: return getSubject(); case 1524132147: return getEncounter(); @@ -2465,9 +2403,9 @@ public class MedicationDispense extends DomainResource { case -332612366: /*basedOn*/ return new String[] {"Reference"}; case -995410646: /*partOf*/ return new String[] {"Reference"}; case -892481550: /*status*/ return new String[] {"code"}; - case 2051346646: /*statusReason*/ return new String[] {"CodeableConcept", "Reference"}; + case 2051346646: /*statusReason*/ return new String[] {"CodeableReference"}; case 50511102: /*category*/ return new String[] {"CodeableConcept"}; - case 1998965455: /*medication*/ return new String[] {"CodeableConcept", "Reference"}; + case 1998965455: /*medication*/ return new String[] {"CodeableReference"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1524132147: /*encounter*/ return new String[] {"Reference"}; case -1248768647: /*supportingInformation*/ return new String[] {"Reference"}; @@ -2506,23 +2444,15 @@ public class MedicationDispense extends DomainResource { else if (name.equals("status")) { throw new FHIRException("Cannot call addChild on a primitive type MedicationDispense.status"); } - else if (name.equals("statusReasonCodeableConcept")) { - this.statusReason = new CodeableConcept(); - return this.statusReason; - } - else if (name.equals("statusReasonReference")) { - this.statusReason = new Reference(); + else if (name.equals("statusReason")) { + this.statusReason = new CodeableReference(); return this.statusReason; } else if (name.equals("category")) { return addCategory(); } - else if (name.equals("medicationCodeableConcept")) { - this.medication = new CodeableConcept(); - return this.medication; - } - else if (name.equals("medicationReference")) { - this.medication = new Reference(); + else if (name.equals("medication")) { + this.medication = new CodeableReference(); return this.medication; } else if (name.equals("subject")) { @@ -2791,7 +2721,7 @@ public class MedicationDispense extends DomainResource { * Path: MedicationDispense.performer.actor
*

*/ - @SearchParamDefinition(name="performer", path="MedicationDispense.performer.actor", description="Returns dispenses performed by a specific individual", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) + @SearchParamDefinition(name="performer", path="MedicationDispense.performer.actor", description="Returns dispenses performed by a specific individual", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner") }, target={CareTeam.class, Device.class, Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) public static final String SP_PERFORMER = "performer"; /** * Fluent Client search parameter constant for performer @@ -2968,10 +2898,10 @@ public class MedicationDispense extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2994,7 +2924,7 @@ public class MedicationDispense extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -3122,10 +3052,10 @@ public class MedicationDispense extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3166,7 +3096,7 @@ public class MedicationDispense extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); @@ -3182,29 +3112,29 @@ public class MedicationDispense extends DomainResource { *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ - @SearchParamDefinition(name="medication", path="(MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference", target={Medication.class } ) + @SearchParamDefinition(name="medication", path="MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference" ) public static final String SP_MEDICATION = "medication"; /** * Fluent Client search parameter constant for medication *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam MEDICATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_MEDICATION); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationKnowledge.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationKnowledge.java index 4616b1ec6..d6aa90671 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationKnowledge.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationKnowledge.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -629,9 +629,9 @@ public class MedicationKnowledge extends DomainResource { /** * The actual ingredient - either a substance (simple ingredient) or another medication. */ - @Child(name = "item", type = {CodeableConcept.class, Ingredient.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Child(name = "item", type = {CodeableReference.class}, order=1, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Medication(s) or MedicinalProductIngredient(s) contained in the medication", formalDefinition="The actual ingredient - either a substance (simple ingredient) or another medication." ) - protected DataType item; + protected CodeableReference item; /** * Indication of whether this ingredient affects the therapeutic action of the drug. @@ -648,7 +648,7 @@ public class MedicationKnowledge extends DomainResource { @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-ingredientstrength") protected DataType strength; - private static final long serialVersionUID = 1297277898L; + private static final long serialVersionUID = -979760018L; /** * Constructor @@ -660,7 +660,7 @@ public class MedicationKnowledge extends DomainResource { /** * Constructor */ - public MedicationKnowledgeIngredientComponent(DataType item) { + public MedicationKnowledgeIngredientComponent(CodeableReference item) { super(); this.setItem(item); } @@ -668,40 +668,15 @@ public class MedicationKnowledge extends DomainResource { /** * @return {@link #item} (The actual ingredient - either a substance (simple ingredient) or another medication.) */ - public DataType getItem() { + public CodeableReference getItem() { + if (this.item == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationKnowledgeIngredientComponent.item"); + else if (Configuration.doAutoCreate()) + this.item = new CodeableReference(); // cc return this.item; } - /** - * @return {@link #item} (The actual ingredient - either a substance (simple ingredient) or another medication.) - */ - public CodeableConcept getItemCodeableConcept() throws FHIRException { - if (this.item == null) - this.item = new CodeableConcept(); - if (!(this.item instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.item.getClass().getName()+" was encountered"); - return (CodeableConcept) this.item; - } - - public boolean hasItemCodeableConcept() { - return this != null && this.item instanceof CodeableConcept; - } - - /** - * @return {@link #item} (The actual ingredient - either a substance (simple ingredient) or another medication.) - */ - public Reference getItemReference() throws FHIRException { - if (this.item == null) - this.item = new Reference(); - if (!(this.item instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.item.getClass().getName()+" was encountered"); - return (Reference) this.item; - } - - public boolean hasItemReference() { - return this != null && this.item instanceof Reference; - } - public boolean hasItem() { return this.item != null && !this.item.isEmpty(); } @@ -709,9 +684,7 @@ public class MedicationKnowledge extends DomainResource { /** * @param value {@link #item} (The actual ingredient - either a substance (simple ingredient) or another medication.) */ - public MedicationKnowledgeIngredientComponent setItem(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationKnowledge.ingredient.item[x]: "+value.fhirType()); + public MedicationKnowledgeIngredientComponent setItem(CodeableReference value) { this.item = value; return this; } @@ -829,7 +802,7 @@ public class MedicationKnowledge extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("item[x]", "CodeableConcept|Reference(Ingredient)", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item)); + children.add(new Property("item", "CodeableReference(Ingredient)", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item)); children.add(new Property("isActive", "boolean", "Indication of whether this ingredient affects the therapeutic action of the drug.", 0, 1, isActive)); children.add(new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength)); } @@ -837,10 +810,7 @@ public class MedicationKnowledge extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 2116201613: /*item[x]*/ return new Property("item[x]", "CodeableConcept|Reference(Ingredient)", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item); - case 3242771: /*item*/ return new Property("item[x]", "CodeableConcept|Reference(Ingredient)", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item); - case 106644494: /*itemCodeableConcept*/ return new Property("item[x]", "CodeableConcept", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item); - case 1376364920: /*itemReference*/ return new Property("item[x]", "Reference(Ingredient)", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item); + case 3242771: /*item*/ return new Property("item", "CodeableReference(Ingredient)", "The actual ingredient - either a substance (simple ingredient) or another medication.", 0, 1, item); case -748916528: /*isActive*/ return new Property("isActive", "boolean", "Indication of whether this ingredient affects the therapeutic action of the drug.", 0, 1, isActive); case 127377567: /*strength[x]*/ return new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); case 1791316033: /*strength*/ return new Property("strength[x]", "Ratio|CodeableConcept|Quantity", "Specifies how many (or how much) of the items there are in this Medication. For example, 250 mg per tablet. This is expressed as a ratio where the numerator is 250mg and the denominator is 1 tablet but can also be expressed a quantity when the denominator is assumed to be 1 tablet.", 0, 1, strength); @@ -855,7 +825,7 @@ public class MedicationKnowledge extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // DataType + case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // CodeableReference case -748916528: /*isActive*/ return this.isActive == null ? new Base[0] : new Base[] {this.isActive}; // BooleanType case 1791316033: /*strength*/ return this.strength == null ? new Base[0] : new Base[] {this.strength}; // DataType default: return super.getProperty(hash, name, checkValid); @@ -867,7 +837,7 @@ public class MedicationKnowledge extends DomainResource { public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { case 3242771: // item - this.item = TypeConvertor.castToType(value); // DataType + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -748916528: // isActive this.isActive = TypeConvertor.castToBoolean(value); // BooleanType @@ -882,8 +852,8 @@ public class MedicationKnowledge extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("item[x]")) { - this.item = TypeConvertor.castToType(value); // DataType + if (name.equals("item")) { + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("isActive")) { this.isActive = TypeConvertor.castToBoolean(value); // BooleanType } else if (name.equals("strength[x]")) { @@ -896,7 +866,6 @@ public class MedicationKnowledge extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 2116201613: return getItem(); case 3242771: return getItem(); case -748916528: return getIsActiveElement(); case 127377567: return getStrength(); @@ -909,7 +878,7 @@ public class MedicationKnowledge extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3242771: /*item*/ return new String[] {"CodeableConcept", "Reference"}; + case 3242771: /*item*/ return new String[] {"CodeableReference"}; case -748916528: /*isActive*/ return new String[] {"boolean"}; case 1791316033: /*strength*/ return new String[] {"Ratio", "CodeableConcept", "Quantity"}; default: return super.getTypesForProperty(hash, name); @@ -919,12 +888,8 @@ public class MedicationKnowledge extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("itemCodeableConcept")) { - this.item = new CodeableConcept(); - return this.item; - } - else if (name.equals("itemReference")) { - this.item = new Reference(); + if (name.equals("item")) { + this.item = new CodeableReference(); return this.item; } else if (name.equals("isActive")) { @@ -1510,9 +1475,9 @@ public class MedicationKnowledge extends DomainResource { /** * Indication or reason for use of the medication that applies to the specific administration guidelines. */ - @Child(name = "indication", type = {CodeableConcept.class, ClinicalUseIssue.class}, order=2, min=0, max=1, modifier=false, summary=false) + @Child(name = "indication", type = {CodeableReference.class}, order=2, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Indication for use that apply to the specific administration guidelines", formalDefinition="Indication or reason for use of the medication that applies to the specific administration guidelines." ) - protected DataType indication; + protected CodeableReference indication; /** * Characteristics of the patient that are relevant to the administration guidelines (for example, height, weight, gender, etc.). @@ -1521,7 +1486,7 @@ public class MedicationKnowledge extends DomainResource { @Description(shortDefinition="Characteristics of the patient that are relevant to the administration guidelines", formalDefinition="Characteristics of the patient that are relevant to the administration guidelines (for example, height, weight, gender, etc.)." ) protected List patientCharacteristic; - private static final long serialVersionUID = 237349004L; + private static final long serialVersionUID = 1786736896L; /** * Constructor @@ -1586,40 +1551,15 @@ public class MedicationKnowledge extends DomainResource { /** * @return {@link #indication} (Indication or reason for use of the medication that applies to the specific administration guidelines.) */ - public DataType getIndication() { + public CodeableReference getIndication() { + if (this.indication == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationKnowledgeAdministrationGuidelineComponent.indication"); + else if (Configuration.doAutoCreate()) + this.indication = new CodeableReference(); // cc return this.indication; } - /** - * @return {@link #indication} (Indication or reason for use of the medication that applies to the specific administration guidelines.) - */ - public CodeableConcept getIndicationCodeableConcept() throws FHIRException { - if (this.indication == null) - this.indication = new CodeableConcept(); - if (!(this.indication instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.indication.getClass().getName()+" was encountered"); - return (CodeableConcept) this.indication; - } - - public boolean hasIndicationCodeableConcept() { - return this != null && this.indication instanceof CodeableConcept; - } - - /** - * @return {@link #indication} (Indication or reason for use of the medication that applies to the specific administration guidelines.) - */ - public Reference getIndicationReference() throws FHIRException { - if (this.indication == null) - this.indication = new Reference(); - if (!(this.indication instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.indication.getClass().getName()+" was encountered"); - return (Reference) this.indication; - } - - public boolean hasIndicationReference() { - return this != null && this.indication instanceof Reference; - } - public boolean hasIndication() { return this.indication != null && !this.indication.isEmpty(); } @@ -1627,9 +1567,7 @@ public class MedicationKnowledge extends DomainResource { /** * @param value {@link #indication} (Indication or reason for use of the medication that applies to the specific administration guidelines.) */ - public MedicationKnowledgeAdministrationGuidelineComponent setIndication(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationKnowledge.administrationGuideline.indication[x]: "+value.fhirType()); + public MedicationKnowledgeAdministrationGuidelineComponent setIndication(CodeableReference value) { this.indication = value; return this; } @@ -1690,7 +1628,7 @@ public class MedicationKnowledge extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("dosage", "", "Dosage for the medication for the specific guidelines.", 0, java.lang.Integer.MAX_VALUE, dosage)); - children.add(new Property("indication[x]", "CodeableConcept|Reference(ClinicalUseIssue)", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication)); + children.add(new Property("indication", "CodeableReference(ClinicalUseIssue)", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication)); children.add(new Property("patientCharacteristic", "", "Characteristics of the patient that are relevant to the administration guidelines (for example, height, weight, gender, etc.).", 0, java.lang.Integer.MAX_VALUE, patientCharacteristic)); } @@ -1698,10 +1636,7 @@ public class MedicationKnowledge extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1326018889: /*dosage*/ return new Property("dosage", "", "Dosage for the medication for the specific guidelines.", 0, java.lang.Integer.MAX_VALUE, dosage); - case -501208668: /*indication[x]*/ return new Property("indication[x]", "CodeableConcept|Reference(ClinicalUseIssue)", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication); - case -597168804: /*indication*/ return new Property("indication[x]", "CodeableConcept|Reference(ClinicalUseIssue)", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication); - case -1094003035: /*indicationCodeableConcept*/ return new Property("indication[x]", "CodeableConcept", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication); - case 803518799: /*indicationReference*/ return new Property("indication[x]", "Reference(ClinicalUseIssue)", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication); + case -597168804: /*indication*/ return new Property("indication", "CodeableReference(ClinicalUseIssue)", "Indication or reason for use of the medication that applies to the specific administration guidelines.", 0, 1, indication); case 1770130432: /*patientCharacteristic*/ return new Property("patientCharacteristic", "", "Characteristics of the patient that are relevant to the administration guidelines (for example, height, weight, gender, etc.).", 0, java.lang.Integer.MAX_VALUE, patientCharacteristic); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1712,7 +1647,7 @@ public class MedicationKnowledge extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case -1326018889: /*dosage*/ return this.dosage == null ? new Base[0] : this.dosage.toArray(new Base[this.dosage.size()]); // MedicationKnowledgeAdministrationGuidelineDosageComponent - case -597168804: /*indication*/ return this.indication == null ? new Base[0] : new Base[] {this.indication}; // DataType + case -597168804: /*indication*/ return this.indication == null ? new Base[0] : new Base[] {this.indication}; // CodeableReference case 1770130432: /*patientCharacteristic*/ return this.patientCharacteristic == null ? new Base[0] : this.patientCharacteristic.toArray(new Base[this.patientCharacteristic.size()]); // MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent default: return super.getProperty(hash, name, checkValid); } @@ -1726,7 +1661,7 @@ public class MedicationKnowledge extends DomainResource { this.getDosage().add((MedicationKnowledgeAdministrationGuidelineDosageComponent) value); // MedicationKnowledgeAdministrationGuidelineDosageComponent return value; case -597168804: // indication - this.indication = TypeConvertor.castToType(value); // DataType + this.indication = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case 1770130432: // patientCharacteristic this.getPatientCharacteristic().add((MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent) value); // MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent @@ -1740,8 +1675,8 @@ public class MedicationKnowledge extends DomainResource { public Base setProperty(String name, Base value) throws FHIRException { if (name.equals("dosage")) { this.getDosage().add((MedicationKnowledgeAdministrationGuidelineDosageComponent) value); - } else if (name.equals("indication[x]")) { - this.indication = TypeConvertor.castToType(value); // DataType + } else if (name.equals("indication")) { + this.indication = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("patientCharacteristic")) { this.getPatientCharacteristic().add((MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent) value); } else @@ -1753,7 +1688,6 @@ public class MedicationKnowledge extends DomainResource { public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { case -1326018889: return addDosage(); - case -501208668: return getIndication(); case -597168804: return getIndication(); case 1770130432: return addPatientCharacteristic(); default: return super.makeProperty(hash, name); @@ -1765,7 +1699,7 @@ public class MedicationKnowledge extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -1326018889: /*dosage*/ return new String[] {}; - case -597168804: /*indication*/ return new String[] {"CodeableConcept", "Reference"}; + case -597168804: /*indication*/ return new String[] {"CodeableReference"}; case 1770130432: /*patientCharacteristic*/ return new String[] {}; default: return super.getTypesForProperty(hash, name); } @@ -1777,12 +1711,8 @@ public class MedicationKnowledge extends DomainResource { if (name.equals("dosage")) { return addDosage(); } - else if (name.equals("indicationCodeableConcept")) { - this.indication = new CodeableConcept(); - return this.indication; - } - else if (name.equals("indicationReference")) { - this.indication = new Reference(); + else if (name.equals("indication")) { + this.indication = new CodeableReference(); return this.indication; } else if (name.equals("patientCharacteristic")) { @@ -2091,20 +2021,20 @@ public class MedicationKnowledge extends DomainResource { @Block() public static class MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent extends BackboneElement implements IBaseBackboneElement { /** - * Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender). + * The categorization of the specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender). */ - @Child(name = "characteristic", type = {CodeableConcept.class, Quantity.class}, order=1, min=1, max=1, modifier=false, summary=false) - @Description(shortDefinition="Specific characteristic that is relevant to the administration guideline", formalDefinition="Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender)." ) - protected DataType characteristic; + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="Categorization of specific characteristic that is relevant to the administration guideline", formalDefinition="The categorization of the specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender)." ) + protected CodeableConcept type; /** * The specific characteristic (e.g. height, weight, gender, etc.). */ - @Child(name = "value", type = {StringType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "value", type = {CodeableConcept.class, Quantity.class}, order=2, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="The specific characteristic", formalDefinition="The specific characteristic (e.g. height, weight, gender, etc.)." ) - protected List value; + protected DataType value; - private static final long serialVersionUID = 1612053261L; + private static final long serialVersionUID = -1659186716L; /** * Constructor @@ -2116,137 +2046,100 @@ public class MedicationKnowledge extends DomainResource { /** * Constructor */ - public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent(DataType characteristic) { + public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent(CodeableConcept type) { super(); - this.setCharacteristic(characteristic); + this.setType(type); } /** - * @return {@link #characteristic} (Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).) + * @return {@link #type} (The categorization of the specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).) */ - public DataType getCharacteristic() { - return this.characteristic; + public CodeableConcept getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableConcept(); // cc + return this.type; + } + + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); } /** - * @return {@link #characteristic} (Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).) + * @param value {@link #type} (The categorization of the specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).) */ - public CodeableConcept getCharacteristicCodeableConcept() throws FHIRException { - if (this.characteristic == null) - this.characteristic = new CodeableConcept(); - if (!(this.characteristic instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.characteristic.getClass().getName()+" was encountered"); - return (CodeableConcept) this.characteristic; - } - - public boolean hasCharacteristicCodeableConcept() { - return this != null && this.characteristic instanceof CodeableConcept; - } - - /** - * @return {@link #characteristic} (Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).) - */ - public Quantity getCharacteristicQuantity() throws FHIRException { - if (this.characteristic == null) - this.characteristic = new Quantity(); - if (!(this.characteristic instanceof Quantity)) - throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.characteristic.getClass().getName()+" was encountered"); - return (Quantity) this.characteristic; - } - - public boolean hasCharacteristicQuantity() { - return this != null && this.characteristic instanceof Quantity; - } - - public boolean hasCharacteristic() { - return this.characteristic != null && !this.characteristic.isEmpty(); - } - - /** - * @param value {@link #characteristic} (Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).) - */ - public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent setCharacteristic(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Quantity)) - throw new Error("Not the right type for MedicationKnowledge.administrationGuideline.patientCharacteristic.characteristic[x]: "+value.fhirType()); - this.characteristic = value; + public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent setType(CodeableConcept value) { + this.type = value; return this; } /** * @return {@link #value} (The specific characteristic (e.g. height, weight, gender, etc.).) */ - public List getValue() { - if (this.value == null) - this.value = new ArrayList(); + public DataType getValue() { return this.value; } /** - * @return Returns a reference to this for easy method chaining + * @return {@link #value} (The specific characteristic (e.g. height, weight, gender, etc.).) */ - public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent setValue(List theValue) { - this.value = theValue; - return this; + public CodeableConcept getValueCodeableConcept() throws FHIRException { + if (this.value == null) + this.value = new CodeableConcept(); + if (!(this.value instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); + return (CodeableConcept) this.value; } - public boolean hasValue() { - if (this.value == null) - return false; - for (StringType item : this.value) - if (!item.isEmpty()) - return true; - return false; + public boolean hasValueCodeableConcept() { + return this != null && this.value instanceof CodeableConcept; } /** * @return {@link #value} (The specific characteristic (e.g. height, weight, gender, etc.).) */ - public StringType addValueElement() {//2 - StringType t = new StringType(); + public Quantity getValueQuantity() throws FHIRException { if (this.value == null) - this.value = new ArrayList(); - this.value.add(t); - return t; + this.value = new Quantity(); + if (!(this.value instanceof Quantity)) + throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Quantity) this.value; + } + + public boolean hasValueQuantity() { + return this != null && this.value instanceof Quantity; + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); } /** * @param value {@link #value} (The specific characteristic (e.g. height, weight, gender, etc.).) */ - public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent addValue(String value) { //1 - StringType t = new StringType(); - t.setValue(value); - if (this.value == null) - this.value = new ArrayList(); - this.value.add(t); + public MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent setValue(DataType value) { + if (value != null && !(value instanceof CodeableConcept || value instanceof Quantity)) + throw new Error("Not the right type for MedicationKnowledge.administrationGuideline.patientCharacteristic.value[x]: "+value.fhirType()); + this.value = value; return this; } - /** - * @param value {@link #value} (The specific characteristic (e.g. height, weight, gender, etc.).) - */ - public boolean hasValue(String value) { - if (this.value == null) - return false; - for (StringType v : this.value) - if (v.getValue().equals(value)) // string - return true; - return false; - } - protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("characteristic[x]", "CodeableConcept|Quantity", "Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, characteristic)); - children.add(new Property("value", "string", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, java.lang.Integer.MAX_VALUE, value)); + children.add(new Property("type", "CodeableConcept", "The categorization of the specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, type)); + children.add(new Property("value[x]", "CodeableConcept|Quantity", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, 1, value)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case -654919419: /*characteristic[x]*/ return new Property("characteristic[x]", "CodeableConcept|Quantity", "Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, characteristic); - case 366313883: /*characteristic*/ return new Property("characteristic[x]", "CodeableConcept|Quantity", "Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, characteristic); - case -1259840378: /*characteristicCodeableConcept*/ return new Property("characteristic[x]", "CodeableConcept", "Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, characteristic); - case 1769373510: /*characteristicQuantity*/ return new Property("characteristic[x]", "Quantity", "Specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, characteristic); - case 111972721: /*value*/ return new Property("value", "string", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, java.lang.Integer.MAX_VALUE, value); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The categorization of the specific characteristic that is relevant to the administration guideline (e.g. height, weight, gender).", 0, 1, type); + case -1410166417: /*value[x]*/ return new Property("value[x]", "CodeableConcept|Quantity", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, 1, value); + case 111972721: /*value*/ return new Property("value[x]", "CodeableConcept|Quantity", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, 1, value); + case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, 1, value); + case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "The specific characteristic (e.g. height, weight, gender, etc.).", 0, 1, value); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -2255,8 +2148,8 @@ public class MedicationKnowledge extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : new Base[] {this.characteristic}; // DataType - case 111972721: /*value*/ return this.value == null ? new Base[0] : this.value.toArray(new Base[this.value.size()]); // StringType + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType default: return super.getProperty(hash, name, checkValid); } @@ -2265,11 +2158,11 @@ public class MedicationKnowledge extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 366313883: // characteristic - this.characteristic = TypeConvertor.castToType(value); // DataType + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case 111972721: // value - this.getValue().add(TypeConvertor.castToString(value)); // StringType + this.value = TypeConvertor.castToType(value); // DataType return value; default: return super.setProperty(hash, name, value); } @@ -2278,10 +2171,10 @@ public class MedicationKnowledge extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("characteristic[x]")) { - this.characteristic = TypeConvertor.castToType(value); // DataType - } else if (name.equals("value")) { - this.getValue().add(TypeConvertor.castToString(value)); + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("value[x]")) { + this.value = TypeConvertor.castToType(value); // DataType } else return super.setProperty(name, value); return value; @@ -2290,9 +2183,9 @@ public class MedicationKnowledge extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case -654919419: return getCharacteristic(); - case 366313883: return getCharacteristic(); - case 111972721: return addValueElement(); + case 3575610: return getType(); + case -1410166417: return getValue(); + case 111972721: return getValue(); default: return super.makeProperty(hash, name); } @@ -2301,8 +2194,8 @@ public class MedicationKnowledge extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 366313883: /*characteristic*/ return new String[] {"CodeableConcept", "Quantity"}; - case 111972721: /*value*/ return new String[] {"string"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"CodeableConcept", "Quantity"}; default: return super.getTypesForProperty(hash, name); } @@ -2310,16 +2203,17 @@ public class MedicationKnowledge extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("characteristicCodeableConcept")) { - this.characteristic = new CodeableConcept(); - return this.characteristic; + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; } - else if (name.equals("characteristicQuantity")) { - this.characteristic = new Quantity(); - return this.characteristic; + else if (name.equals("valueCodeableConcept")) { + this.value = new CodeableConcept(); + return this.value; } - else if (name.equals("value")) { - throw new FHIRException("Cannot call addChild on a primitive type MedicationKnowledge.administrationGuideline.patientCharacteristic.value"); + else if (name.equals("valueQuantity")) { + this.value = new Quantity(); + return this.value; } else return super.addChild(name); @@ -2333,12 +2227,8 @@ public class MedicationKnowledge extends DomainResource { public void copyValues(MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent dst) { super.copyValues(dst); - dst.characteristic = characteristic == null ? null : characteristic.copy(); - if (value != null) { - dst.value = new ArrayList(); - for (StringType i : value) - dst.value.add(i.copy()); - }; + dst.type = type == null ? null : type.copy(); + dst.value = value == null ? null : value.copy(); } @Override @@ -2348,8 +2238,7 @@ public class MedicationKnowledge extends DomainResource { if (!(other_ instanceof MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent)) return false; MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent o = (MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent) other_; - return compareDeep(characteristic, o.characteristic, true) && compareDeep(value, o.value, true) - ; + return compareDeep(type, o.type, true) && compareDeep(value, o.value, true); } @Override @@ -2359,11 +2248,11 @@ public class MedicationKnowledge extends DomainResource { if (!(other_ instanceof MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent)) return false; MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent o = (MedicationKnowledgeAdministrationGuidelinePatientCharacteristicComponent) other_; - return compareValues(value, o.value, true); + return true; } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(characteristic, value); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value); } public String fhirType() { @@ -6269,19 +6158,19 @@ public class MedicationKnowledge extends DomainResource { /** * Search parameter: ingredient-code *

- * Description: Medication(s) or MedicinalProductIngredient(s) contained in the medication
+ * Description: Reference to a concept (by class)
* Type: token
- * Path: (MedicationKnowledge.ingredient.item as CodeableConcept)
+ * Path: MedicationKnowledge.ingredient.item.concept
*

*/ - @SearchParamDefinition(name="ingredient-code", path="(MedicationKnowledge.ingredient.item as CodeableConcept)", description="Medication(s) or MedicinalProductIngredient(s) contained in the medication", type="token" ) + @SearchParamDefinition(name="ingredient-code", path="MedicationKnowledge.ingredient.item.concept", description="Reference to a concept (by class)", type="token" ) public static final String SP_INGREDIENT_CODE = "ingredient-code"; /** * Fluent Client search parameter constant for ingredient-code *

- * Description: Medication(s) or MedicinalProductIngredient(s) contained in the medication
+ * Description: Reference to a concept (by class)
* Type: token
- * Path: (MedicationKnowledge.ingredient.item as CodeableConcept)
+ * Path: MedicationKnowledge.ingredient.item.concept
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam INGREDIENT_CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_INGREDIENT_CODE); @@ -6289,19 +6178,19 @@ public class MedicationKnowledge extends DomainResource { /** * Search parameter: ingredient *

- * Description: Medication(s) or MedicinalProductIngredient(s) contained in the medication
+ * Description: Reference to a resource (by instance)
* Type: reference
- * Path: (MedicationKnowledge.ingredient.item as Reference)
+ * Path: MedicationKnowledge.ingredient.item.reference
*

*/ - @SearchParamDefinition(name="ingredient", path="(MedicationKnowledge.ingredient.item as Reference)", description="Medication(s) or MedicinalProductIngredient(s) contained in the medication", type="reference", target={Ingredient.class } ) + @SearchParamDefinition(name="ingredient", path="MedicationKnowledge.ingredient.item.reference", description="Reference to a resource (by instance)", type="reference" ) public static final String SP_INGREDIENT = "ingredient"; /** * Fluent Client search parameter constant for ingredient *

- * Description: Medication(s) or MedicinalProductIngredient(s) contained in the medication
+ * Description: Reference to a resource (by instance)
* Type: reference
- * Path: (MedicationKnowledge.ingredient.item as Reference)
+ * Path: MedicationKnowledge.ingredient.item.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam INGREDIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_INGREDIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationRequest.java index 10426d7c3..d385fb55a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1384,11 +1384,11 @@ public class MedicationRequest extends DomainResource { protected Enumeration intent; /** - * Indicates the grouping or category of medication request (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)). + * Indicates the grouping or category of medication request (for example, drug classification like ATC, where meds would be administered, legal category of the medication.). */ @Child(name = "category", type = {CodeableConcept.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Grouping or category of medication request", formalDefinition="Indicates the grouping or category of medication request (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient))." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medicationrequest-category") + @Description(shortDefinition="Grouping or category of medication request", formalDefinition="Indicates the grouping or category of medication request (for example, drug classification like ATC, where meds would be administered, legal category of the medication.)." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medicationrequest-admin-location") protected List category; /** @@ -1423,10 +1423,10 @@ public class MedicationRequest extends DomainResource { /** * Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications. */ - @Child(name = "medication", type = {CodeableConcept.class, Medication.class}, order=9, min=1, max=1, modifier=false, summary=true) + @Child(name = "medication", type = {CodeableReference.class}, order=9, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Medication to be taken", formalDefinition="Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") - protected DataType medication; + protected CodeableReference medication; /** * A link to a resource representing the person or set of individuals to whom the medication will be given. @@ -1592,7 +1592,7 @@ public class MedicationRequest extends DomainResource { @Description(shortDefinition="A list of events of interest in the lifecycle", formalDefinition="Links to Provenance records for past versions of this resource or fulfilling request or event resources that identify key state transitions or updates that are likely to be relevant to a user looking at the current version of the resource." ) protected List eventHistory; - private static final long serialVersionUID = 1089528447L; + private static final long serialVersionUID = 2057320535L; /** * Constructor @@ -1604,7 +1604,7 @@ public class MedicationRequest extends DomainResource { /** * Constructor */ - public MedicationRequest(MedicationrequestStatus status, MedicationRequestIntent intent, DataType medication, Reference subject) { + public MedicationRequest(MedicationrequestStatus status, MedicationRequestIntent intent, CodeableReference medication, Reference subject) { super(); this.setStatus(status); this.setIntent(intent); @@ -1780,7 +1780,7 @@ public class MedicationRequest extends DomainResource { } /** - * @return {@link #category} (Indicates the grouping or category of medication request (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).) + * @return {@link #category} (Indicates the grouping or category of medication request (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).) */ public List getCategory() { if (this.category == null) @@ -1998,40 +1998,15 @@ public class MedicationRequest extends DomainResource { /** * @return {@link #medication} (Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.) */ - public DataType getMedication() { + public CodeableReference getMedication() { + if (this.medication == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationRequest.medication"); + else if (Configuration.doAutoCreate()) + this.medication = new CodeableReference(); // cc return this.medication; } - /** - * @return {@link #medication} (Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.) - */ - public CodeableConcept getMedicationCodeableConcept() throws FHIRException { - if (this.medication == null) - this.medication = new CodeableConcept(); - if (!(this.medication instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (CodeableConcept) this.medication; - } - - public boolean hasMedicationCodeableConcept() { - return this != null && this.medication instanceof CodeableConcept; - } - - /** - * @return {@link #medication} (Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.) - */ - public Reference getMedicationReference() throws FHIRException { - if (this.medication == null) - this.medication = new Reference(); - if (!(this.medication instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (Reference) this.medication; - } - - public boolean hasMedicationReference() { - return this != null && this.medication instanceof Reference; - } - public boolean hasMedication() { return this.medication != null && !this.medication.isEmpty(); } @@ -2039,9 +2014,7 @@ public class MedicationRequest extends DomainResource { /** * @param value {@link #medication} (Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.) */ - public MedicationRequest setMedication(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationRequest.medication[x]: "+value.fhirType()); + public MedicationRequest setMedication(CodeableReference value) { this.medication = value; return this; } @@ -2960,12 +2933,12 @@ public class MedicationRequest extends DomainResource { children.add(new Property("status", "code", "A code specifying the current state of the order. Generally, this will be active or completed state.", 0, 1, status)); children.add(new Property("statusReason", "CodeableConcept", "Captures the reason for the current state of the MedicationRequest.", 0, 1, statusReason)); children.add(new Property("intent", "code", "Whether the request is a proposal, plan, or an original order.", 0, 1, intent)); - children.add(new Property("category", "CodeableConcept", "Indicates the grouping or category of medication request (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).", 0, java.lang.Integer.MAX_VALUE, category)); + children.add(new Property("category", "CodeableConcept", "Indicates the grouping or category of medication request (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).", 0, java.lang.Integer.MAX_VALUE, category)); children.add(new Property("priority", "code", "Indicates how quickly the Medication Request should be addressed with respect to other requests.", 0, 1, priority)); children.add(new Property("doNotPerform", "boolean", "If true indicates that the provider is asking for the medication request not to occur.", 0, 1, doNotPerform)); children.add(new Property("reported", "boolean", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported)); children.add(new Property("informationSource", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "The person or organization who provided the information about this request, if the source is someone other than the requestor. This is often used when the MedicationRequest is reported by another person.", 0, 1, informationSource)); - children.add(new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); + children.add(new Property("medication", "CodeableReference(Medication)", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); children.add(new Property("subject", "Reference(Patient|Group)", "A link to a resource representing the person or set of individuals to whom the medication will be given.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "The Encounter during which this [x] was created or to which the creation of this record is tightly associated.", 0, 1, encounter)); children.add(new Property("supportingInformation", "Reference(Any)", "Include additional information (for example, patient height and weight, a MedicationUsage for the patient) that supports the ordering of the medication.", 0, java.lang.Integer.MAX_VALUE, supportingInformation)); @@ -2998,15 +2971,12 @@ public class MedicationRequest extends DomainResource { case -892481550: /*status*/ return new Property("status", "code", "A code specifying the current state of the order. Generally, this will be active or completed state.", 0, 1, status); case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableConcept", "Captures the reason for the current state of the MedicationRequest.", 0, 1, statusReason); case -1183762788: /*intent*/ return new Property("intent", "code", "Whether the request is a proposal, plan, or an original order.", 0, 1, intent); - case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates the grouping or category of medication request (for example, where the medication is expected to be consumed or administered (i.e. inpatient or outpatient)).", 0, java.lang.Integer.MAX_VALUE, category); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates the grouping or category of medication request (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).", 0, java.lang.Integer.MAX_VALUE, category); case -1165461084: /*priority*/ return new Property("priority", "code", "Indicates how quickly the Medication Request should be addressed with respect to other requests.", 0, 1, priority); case -1788508167: /*doNotPerform*/ return new Property("doNotPerform", "boolean", "If true indicates that the provider is asking for the medication request not to occur.", 0, 1, doNotPerform); case -427039533: /*reported*/ return new Property("reported", "boolean", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported); case -2123220889: /*informationSource*/ return new Property("informationSource", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "The person or organization who provided the information about this request, if the source is someone other than the requestor. This is often used when the MedicationRequest is reported by another person.", 0, 1, informationSource); - case 1458402129: /*medication[x]*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 1998965455: /*medication*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case -209845038: /*medicationCodeableConcept*/ return new Property("medication[x]", "CodeableConcept", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 2104315196: /*medicationReference*/ return new Property("medication[x]", "Reference(Medication)", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); + case 1998965455: /*medication*/ return new Property("medication", "CodeableReference(Medication)", "Identifies the medication being requested. This is a link to a resource that represents the medication which may be the details of the medication or simply an attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "A link to a resource representing the person or set of individuals to whom the medication will be given.", 0, 1, subject); case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The Encounter during which this [x] was created or to which the creation of this record is tightly associated.", 0, 1, encounter); case -1248768647: /*supportingInformation*/ return new Property("supportingInformation", "Reference(Any)", "Include additional information (for example, patient height and weight, a MedicationUsage for the patient) that supports the ordering of the medication.", 0, java.lang.Integer.MAX_VALUE, supportingInformation); @@ -3047,7 +3017,7 @@ public class MedicationRequest extends DomainResource { case -1788508167: /*doNotPerform*/ return this.doNotPerform == null ? new Base[0] : new Base[] {this.doNotPerform}; // BooleanType case -427039533: /*reported*/ return this.reported == null ? new Base[0] : new Base[] {this.reported}; // BooleanType case -2123220889: /*informationSource*/ return this.informationSource == null ? new Base[0] : new Base[] {this.informationSource}; // Reference - case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // DataType + case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // CodeableReference case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference case -1248768647: /*supportingInformation*/ return this.supportingInformation == null ? new Base[0] : this.supportingInformation.toArray(new Base[this.supportingInformation.size()]); // Reference @@ -3110,7 +3080,7 @@ public class MedicationRequest extends DomainResource { this.informationSource = TypeConvertor.castToReference(value); // Reference return value; case 1998965455: // medication - this.medication = TypeConvertor.castToType(value); // DataType + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -1867885268: // subject this.subject = TypeConvertor.castToReference(value); // Reference @@ -3209,8 +3179,8 @@ public class MedicationRequest extends DomainResource { this.reported = TypeConvertor.castToBoolean(value); // BooleanType } else if (name.equals("informationSource")) { this.informationSource = TypeConvertor.castToReference(value); // Reference - } else if (name.equals("medication[x]")) { - this.medication = TypeConvertor.castToType(value); // DataType + } else if (name.equals("medication")) { + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("subject")) { this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("encounter")) { @@ -3274,7 +3244,6 @@ public class MedicationRequest extends DomainResource { case -1788508167: return getDoNotPerformElement(); case -427039533: return getReportedElement(); case -2123220889: return getInformationSource(); - case 1458402129: return getMedication(); case 1998965455: return getMedication(); case -1867885268: return getSubject(); case 1524132147: return getEncounter(); @@ -3316,7 +3285,7 @@ public class MedicationRequest extends DomainResource { case -1788508167: /*doNotPerform*/ return new String[] {"boolean"}; case -427039533: /*reported*/ return new String[] {"boolean"}; case -2123220889: /*informationSource*/ return new String[] {"Reference"}; - case 1998965455: /*medication*/ return new String[] {"CodeableConcept", "Reference"}; + case 1998965455: /*medication*/ return new String[] {"CodeableReference"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1524132147: /*encounter*/ return new String[] {"Reference"}; case -1248768647: /*supportingInformation*/ return new String[] {"Reference"}; @@ -3376,12 +3345,8 @@ public class MedicationRequest extends DomainResource { this.informationSource = new Reference(); return this.informationSource; } - else if (name.equals("medicationCodeableConcept")) { - this.medication = new CodeableConcept(); - return this.medication; - } - else if (name.equals("medicationReference")) { - this.medication = new Reference(); + else if (name.equals("medication")) { + this.medication = new CodeableReference(); return this.medication; } else if (name.equals("subject")) { @@ -3843,10 +3808,10 @@ public class MedicationRequest extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -3869,7 +3834,7 @@ public class MedicationRequest extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -3997,10 +3962,10 @@ public class MedicationRequest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -4041,7 +4006,7 @@ public class MedicationRequest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); @@ -4119,29 +4084,29 @@ public class MedicationRequest extends DomainResource { *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ - @SearchParamDefinition(name="medication", path="(MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference", target={Medication.class } ) + @SearchParamDefinition(name="medication", path="MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference" ) public static final String SP_MEDICATION = "medication"; /** * Fluent Client search parameter constant for medication *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam MEDICATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_MEDICATION); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationUsage.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationUsage.java index c15e90963..4111866de 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationUsage.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicationUsage.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -301,20 +301,20 @@ public class MedicationUsage extends DomainResource { protected List statusReason; /** - * Indicates where the medication is expected to be consumed or administered. + * Type of medication usage (for example, drug classification like ATC, where meds would be administered, legal category of the medication.). */ @Child(name = "category", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Type of medication usage", formalDefinition="Indicates where the medication is expected to be consumed or administered." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-usage-category") + @Description(shortDefinition="Type of medication usage", formalDefinition="Type of medication usage (for example, drug classification like ATC, where meds would be administered, legal category of the medication.)." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-usage-admin-location") protected List category; /** * Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications. */ - @Child(name = "medication", type = {CodeableConcept.class, Medication.class}, order=6, min=1, max=1, modifier=false, summary=true) + @Child(name = "medication", type = {CodeableReference.class}, order=6, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="What medication was taken", formalDefinition="Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/medication-codes") - protected DataType medication; + protected CodeableReference medication; /** * The person, animal or group who is/was taking the medication. @@ -394,7 +394,7 @@ public class MedicationUsage extends DomainResource { @Description(shortDefinition="Indicates if the medication is being consumed or administered as prescribed", formalDefinition="Indicates if the medication is being consumed or administered as prescribed." ) protected BooleanType takenAsOrdered; - private static final long serialVersionUID = -1886428300L; + private static final long serialVersionUID = 1177242918L; /** * Constructor @@ -406,7 +406,7 @@ public class MedicationUsage extends DomainResource { /** * Constructor */ - public MedicationUsage(MedicationUsageStatusCodes status, DataType medication, Reference subject) { + public MedicationUsage(MedicationUsageStatusCodes status, CodeableReference medication, Reference subject) { super(); this.setStatus(status); this.setMedication(medication); @@ -671,7 +671,7 @@ public class MedicationUsage extends DomainResource { } /** - * @return {@link #category} (Indicates where the medication is expected to be consumed or administered.) + * @return {@link #category} (Type of medication usage (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).) */ public List getCategory() { if (this.category == null) @@ -726,40 +726,15 @@ public class MedicationUsage extends DomainResource { /** * @return {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) */ - public DataType getMedication() { + public CodeableReference getMedication() { + if (this.medication == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicationUsage.medication"); + else if (Configuration.doAutoCreate()) + this.medication = new CodeableReference(); // cc return this.medication; } - /** - * @return {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) - */ - public CodeableConcept getMedicationCodeableConcept() throws FHIRException { - if (this.medication == null) - this.medication = new CodeableConcept(); - if (!(this.medication instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (CodeableConcept) this.medication; - } - - public boolean hasMedicationCodeableConcept() { - return this != null && this.medication instanceof CodeableConcept; - } - - /** - * @return {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) - */ - public Reference getMedicationReference() throws FHIRException { - if (this.medication == null) - this.medication = new Reference(); - if (!(this.medication instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.medication.getClass().getName()+" was encountered"); - return (Reference) this.medication; - } - - public boolean hasMedicationReference() { - return this != null && this.medication instanceof Reference; - } - public boolean hasMedication() { return this.medication != null && !this.medication.isEmpty(); } @@ -767,9 +742,7 @@ public class MedicationUsage extends DomainResource { /** * @param value {@link #medication} (Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.) */ - public MedicationUsage setMedication(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for MedicationUsage.medication[x]: "+value.fhirType()); + public MedicationUsage setMedication(CodeableReference value) { this.medication = value; return this; } @@ -1259,8 +1232,8 @@ public class MedicationUsage extends DomainResource { children.add(new Property("partOf", "Reference(MedicationAdministration|MedicationDispense|MedicationUsage|Procedure|Observation)", "A larger event of which this particular event is a component or step.", 0, java.lang.Integer.MAX_VALUE, partOf)); children.add(new Property("status", "code", "A code representing the patient or other source's judgment about the state of the medication used that this usage is about. Generally, this will be active or completed.", 0, 1, status)); children.add(new Property("statusReason", "CodeableConcept", "Captures the reason for the current state of the MedicationUsage.", 0, java.lang.Integer.MAX_VALUE, statusReason)); - children.add(new Property("category", "CodeableConcept", "Indicates where the medication is expected to be consumed or administered.", 0, java.lang.Integer.MAX_VALUE, category)); - children.add(new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); + children.add(new Property("category", "CodeableConcept", "Type of medication usage (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).", 0, java.lang.Integer.MAX_VALUE, category)); + children.add(new Property("medication", "CodeableReference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication)); children.add(new Property("subject", "Reference(Patient|Group)", "The person, animal or group who is/was taking the medication.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "The encounter that establishes the context for this MedicationUsage.", 0, 1, encounter)); children.add(new Property("effective[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was/will be taking the medication (or was not taking, when the MedicationUsage.status element is NotTaken).", 0, 1, effective)); @@ -1282,11 +1255,8 @@ public class MedicationUsage extends DomainResource { case -995410646: /*partOf*/ return new Property("partOf", "Reference(MedicationAdministration|MedicationDispense|MedicationUsage|Procedure|Observation)", "A larger event of which this particular event is a component or step.", 0, java.lang.Integer.MAX_VALUE, partOf); case -892481550: /*status*/ return new Property("status", "code", "A code representing the patient or other source's judgment about the state of the medication used that this usage is about. Generally, this will be active or completed.", 0, 1, status); case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableConcept", "Captures the reason for the current state of the MedicationUsage.", 0, java.lang.Integer.MAX_VALUE, statusReason); - case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates where the medication is expected to be consumed or administered.", 0, java.lang.Integer.MAX_VALUE, category); - case 1458402129: /*medication[x]*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 1998965455: /*medication*/ return new Property("medication[x]", "CodeableConcept|Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case -209845038: /*medicationCodeableConcept*/ return new Property("medication[x]", "CodeableConcept", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); - case 2104315196: /*medicationReference*/ return new Property("medication[x]", "Reference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Type of medication usage (for example, drug classification like ATC, where meds would be administered, legal category of the medication.).", 0, java.lang.Integer.MAX_VALUE, category); + case 1998965455: /*medication*/ return new Property("medication", "CodeableReference(Medication)", "Identifies the medication being administered. This is either a link to a resource representing the details of the medication or a simple attribute carrying a code that identifies the medication from a known list of medications.", 0, 1, medication); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "The person, animal or group who is/was taking the medication.", 0, 1, subject); case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The encounter that establishes the context for this MedicationUsage.", 0, 1, encounter); case 247104889: /*effective[x]*/ return new Property("effective[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was/will be taking the medication (or was not taking, when the MedicationUsage.status element is NotTaken).", 0, 1, effective); @@ -1315,7 +1285,7 @@ public class MedicationUsage extends DomainResource { case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : this.statusReason.toArray(new Base[this.statusReason.size()]); // CodeableConcept case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept - case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // DataType + case 1998965455: /*medication*/ return this.medication == null ? new Base[0] : new Base[] {this.medication}; // CodeableReference case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference case -1468651097: /*effective*/ return this.effective == null ? new Base[0] : new Base[] {this.effective}; // DataType @@ -1355,7 +1325,7 @@ public class MedicationUsage extends DomainResource { this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case 1998965455: // medication - this.medication = TypeConvertor.castToType(value); // DataType + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -1867885268: // subject this.subject = TypeConvertor.castToReference(value); // Reference @@ -1410,8 +1380,8 @@ public class MedicationUsage extends DomainResource { this.getStatusReason().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("category")) { this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("medication[x]")) { - this.medication = TypeConvertor.castToType(value); // DataType + } else if (name.equals("medication")) { + this.medication = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("subject")) { this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("encounter")) { @@ -1448,7 +1418,6 @@ public class MedicationUsage extends DomainResource { case -892481550: return getStatusElement(); case 2051346646: return addStatusReason(); case 50511102: return addCategory(); - case 1458402129: return getMedication(); case 1998965455: return getMedication(); case -1867885268: return getSubject(); case 1524132147: return getEncounter(); @@ -1476,7 +1445,7 @@ public class MedicationUsage extends DomainResource { case -892481550: /*status*/ return new String[] {"code"}; case 2051346646: /*statusReason*/ return new String[] {"CodeableConcept"}; case 50511102: /*category*/ return new String[] {"CodeableConcept"}; - case 1998965455: /*medication*/ return new String[] {"CodeableConcept", "Reference"}; + case 1998965455: /*medication*/ return new String[] {"CodeableReference"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1524132147: /*encounter*/ return new String[] {"Reference"}; case -1468651097: /*effective*/ return new String[] {"dateTime", "Period"}; @@ -1513,12 +1482,8 @@ public class MedicationUsage extends DomainResource { else if (name.equals("category")) { return addCategory(); } - else if (name.equals("medicationCodeableConcept")) { - this.medication = new CodeableConcept(); - return this.medication; - } - else if (name.equals("medicationReference")) { - this.medication = new Reference(); + else if (name.equals("medication")) { + this.medication = new CodeableReference(); return this.medication; } else if (name.equals("subject")) { @@ -1863,10 +1828,10 @@ public class MedicationUsage extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -1889,7 +1854,7 @@ public class MedicationUsage extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2017,10 +1982,10 @@ public class MedicationUsage extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2061,7 +2026,7 @@ public class MedicationUsage extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); @@ -2077,29 +2042,29 @@ public class MedicationUsage extends DomainResource { *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ - @SearchParamDefinition(name="medication", path="(MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference", target={Medication.class } ) + @SearchParamDefinition(name="medication", path="MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference", description="Multiple Resources: \r\n\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication reference\r\n", type="reference" ) public static final String SP_MEDICATION = "medication"; /** * Fluent Client search parameter constant for medication *

* Description: Multiple Resources: -* [MedicationAdministration](medicationadministration.html): Return administrations of this medication resource +* [MedicationAdministration](medicationadministration.html): Return administrations of this medication reference * [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine resource * [MedicationRequest](medicationrequest.html): Return prescriptions for this medication reference * [MedicationUsage](medicationusage.html): Return statements of this medication reference
* Type: reference
- * Path: (MedicationAdministration.medication as Reference) | (MedicationDispense.medication as Reference) | (MedicationRequest.medication as Reference) | (MedicationUsage.medication as Reference)
+ * Path: MedicationAdministration.medication.reference | MedicationDispense.medication.reference | MedicationRequest.medication.reference | MedicationUsage.medication.reference
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam MEDICATION = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_MEDICATION); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicinalProductDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicinalProductDefinition.java index e067dc311..47487df61 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicinalProductDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MedicinalProductDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -294,9 +294,9 @@ public class MedicinalProductDefinition extends DomainResource { /** * Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary. */ - @Child(name = "type", type = {Coding.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary", formalDefinition="Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary." ) - protected Coding type; + protected CodeableConcept type; /** * Coding words or phrases of the name. @@ -312,7 +312,7 @@ public class MedicinalProductDefinition extends DomainResource { @Description(shortDefinition="Country where the name applies", formalDefinition="Country where the name applies." ) protected List countryLanguage; - private static final long serialVersionUID = -393861059L; + private static final long serialVersionUID = 829861294L; /** * Constructor @@ -377,12 +377,12 @@ public class MedicinalProductDefinition extends DomainResource { /** * @return {@link #type} (Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary.) */ - public Coding getType() { + public CodeableConcept getType() { if (this.type == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create MedicinalProductDefinitionNameComponent.type"); else if (Configuration.doAutoCreate()) - this.type = new Coding(); // cc + this.type = new CodeableConcept(); // cc return this.type; } @@ -393,7 +393,7 @@ public class MedicinalProductDefinition extends DomainResource { /** * @param value {@link #type} (Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary.) */ - public MedicinalProductDefinitionNameComponent setType(Coding value) { + public MedicinalProductDefinitionNameComponent setType(CodeableConcept value) { this.type = value; return this; } @@ -507,7 +507,7 @@ public class MedicinalProductDefinition extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("productName", "string", "The full product name.", 0, 1, productName)); - children.add(new Property("type", "Coding", "Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary.", 0, 1, type)); + children.add(new Property("type", "CodeableConcept", "Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary.", 0, 1, type)); children.add(new Property("namePart", "", "Coding words or phrases of the name.", 0, java.lang.Integer.MAX_VALUE, namePart)); children.add(new Property("countryLanguage", "", "Country where the name applies.", 0, java.lang.Integer.MAX_VALUE, countryLanguage)); } @@ -516,7 +516,7 @@ public class MedicinalProductDefinition extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1491817446: /*productName*/ return new Property("productName", "string", "The full product name.", 0, 1, productName); - case 3575610: /*type*/ return new Property("type", "Coding", "Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Type of product name, such as rINN, BAN, Proprietary, Non-Proprietary.", 0, 1, type); case 1840452894: /*namePart*/ return new Property("namePart", "", "Coding words or phrases of the name.", 0, java.lang.Integer.MAX_VALUE, namePart); case -141141746: /*countryLanguage*/ return new Property("countryLanguage", "", "Country where the name applies.", 0, java.lang.Integer.MAX_VALUE, countryLanguage); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -528,7 +528,7 @@ public class MedicinalProductDefinition extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case -1491817446: /*productName*/ return this.productName == null ? new Base[0] : new Base[] {this.productName}; // StringType - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Coding + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept case 1840452894: /*namePart*/ return this.namePart == null ? new Base[0] : this.namePart.toArray(new Base[this.namePart.size()]); // MedicinalProductDefinitionNameNamePartComponent case -141141746: /*countryLanguage*/ return this.countryLanguage == null ? new Base[0] : this.countryLanguage.toArray(new Base[this.countryLanguage.size()]); // MedicinalProductDefinitionNameCountryLanguageComponent default: return super.getProperty(hash, name, checkValid); @@ -543,7 +543,7 @@ public class MedicinalProductDefinition extends DomainResource { this.productName = TypeConvertor.castToString(value); // StringType return value; case 3575610: // type - this.type = TypeConvertor.castToCoding(value); // Coding + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case 1840452894: // namePart this.getNamePart().add((MedicinalProductDefinitionNameNamePartComponent) value); // MedicinalProductDefinitionNameNamePartComponent @@ -561,7 +561,7 @@ public class MedicinalProductDefinition extends DomainResource { if (name.equals("productName")) { this.productName = TypeConvertor.castToString(value); // StringType } else if (name.equals("type")) { - this.type = TypeConvertor.castToCoding(value); // Coding + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("namePart")) { this.getNamePart().add((MedicinalProductDefinitionNameNamePartComponent) value); } else if (name.equals("countryLanguage")) { @@ -587,7 +587,7 @@ public class MedicinalProductDefinition extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -1491817446: /*productName*/ return new String[] {"string"}; - case 3575610: /*type*/ return new String[] {"Coding"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; case 1840452894: /*namePart*/ return new String[] {}; case -141141746: /*countryLanguage*/ return new String[] {}; default: return super.getTypesForProperty(hash, name); @@ -601,7 +601,7 @@ public class MedicinalProductDefinition extends DomainResource { throw new FHIRException("Cannot call addChild on a primitive type MedicinalProductDefinition.name.productName"); } else if (name.equals("type")) { - this.type = new Coding(); + this.type = new CodeableConcept(); return this.type; } else if (name.equals("namePart")) { @@ -681,11 +681,11 @@ public class MedicinalProductDefinition extends DomainResource { /** * Idenifying type for this part of the name (e.g. strength part). */ - @Child(name = "type", type = {Coding.class}, order=2, min=1, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableConcept.class}, order=2, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Idenifying type for this part of the name (e.g. strength part)", formalDefinition="Idenifying type for this part of the name (e.g. strength part)." ) - protected Coding type; + protected CodeableConcept type; - private static final long serialVersionUID = -301533796L; + private static final long serialVersionUID = -1359126549L; /** * Constructor @@ -697,7 +697,7 @@ public class MedicinalProductDefinition extends DomainResource { /** * Constructor */ - public MedicinalProductDefinitionNameNamePartComponent(String part, Coding type) { + public MedicinalProductDefinitionNameNamePartComponent(String part, CodeableConcept type) { super(); this.setPart(part); this.setType(type); @@ -751,12 +751,12 @@ public class MedicinalProductDefinition extends DomainResource { /** * @return {@link #type} (Idenifying type for this part of the name (e.g. strength part).) */ - public Coding getType() { + public CodeableConcept getType() { if (this.type == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create MedicinalProductDefinitionNameNamePartComponent.type"); else if (Configuration.doAutoCreate()) - this.type = new Coding(); // cc + this.type = new CodeableConcept(); // cc return this.type; } @@ -767,7 +767,7 @@ public class MedicinalProductDefinition extends DomainResource { /** * @param value {@link #type} (Idenifying type for this part of the name (e.g. strength part).) */ - public MedicinalProductDefinitionNameNamePartComponent setType(Coding value) { + public MedicinalProductDefinitionNameNamePartComponent setType(CodeableConcept value) { this.type = value; return this; } @@ -775,14 +775,14 @@ public class MedicinalProductDefinition extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("part", "string", "A fragment of a product name.", 0, 1, part)); - children.add(new Property("type", "Coding", "Idenifying type for this part of the name (e.g. strength part).", 0, 1, type)); + children.add(new Property("type", "CodeableConcept", "Idenifying type for this part of the name (e.g. strength part).", 0, 1, type)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case 3433459: /*part*/ return new Property("part", "string", "A fragment of a product name.", 0, 1, part); - case 3575610: /*type*/ return new Property("type", "Coding", "Idenifying type for this part of the name (e.g. strength part).", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Idenifying type for this part of the name (e.g. strength part).", 0, 1, type); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -792,7 +792,7 @@ public class MedicinalProductDefinition extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case 3433459: /*part*/ return this.part == null ? new Base[0] : new Base[] {this.part}; // StringType - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Coding + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept default: return super.getProperty(hash, name, checkValid); } @@ -805,7 +805,7 @@ public class MedicinalProductDefinition extends DomainResource { this.part = TypeConvertor.castToString(value); // StringType return value; case 3575610: // type - this.type = TypeConvertor.castToCoding(value); // Coding + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; default: return super.setProperty(hash, name, value); } @@ -817,7 +817,7 @@ public class MedicinalProductDefinition extends DomainResource { if (name.equals("part")) { this.part = TypeConvertor.castToString(value); // StringType } else if (name.equals("type")) { - this.type = TypeConvertor.castToCoding(value); // Coding + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else return super.setProperty(name, value); return value; @@ -837,7 +837,7 @@ public class MedicinalProductDefinition extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case 3433459: /*part*/ return new String[] {"string"}; - case 3575610: /*type*/ return new String[] {"Coding"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; default: return super.getTypesForProperty(hash, name); } @@ -849,7 +849,7 @@ public class MedicinalProductDefinition extends DomainResource { throw new FHIRException("Cannot call addChild on a primitive type MedicinalProductDefinition.name.namePart.part"); } else if (name.equals("type")) { - this.type = new Coding(); + this.type = new CodeableConcept(); return this.type; } else @@ -1169,11 +1169,11 @@ public class MedicinalProductDefinition extends DomainResource { /** * The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version. */ - @Child(name = "type", type = {Coding.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version", formalDefinition="The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version." ) - protected Coding type; + protected CodeableConcept type; - private static final long serialVersionUID = 783327629L; + private static final long serialVersionUID = 606573338L; /** * Constructor @@ -1244,12 +1244,12 @@ public class MedicinalProductDefinition extends DomainResource { /** * @return {@link #type} (The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version.) */ - public Coding getType() { + public CodeableConcept getType() { if (this.type == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create MedicinalProductDefinitionCrossReferenceComponent.type"); else if (Configuration.doAutoCreate()) - this.type = new Coding(); // cc + this.type = new CodeableConcept(); // cc return this.type; } @@ -1260,7 +1260,7 @@ public class MedicinalProductDefinition extends DomainResource { /** * @param value {@link #type} (The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version.) */ - public MedicinalProductDefinitionCrossReferenceComponent setType(Coding value) { + public MedicinalProductDefinitionCrossReferenceComponent setType(CodeableConcept value) { this.type = value; return this; } @@ -1268,7 +1268,7 @@ public class MedicinalProductDefinition extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("product[x]", "Identifier|Reference(MedicinalProductDefinition)", "Reference to another product, e.g. for linking authorised to investigational product.", 0, 1, product)); - children.add(new Property("type", "Coding", "The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version.", 0, 1, type)); + children.add(new Property("type", "CodeableConcept", "The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version.", 0, 1, type)); } @Override @@ -1278,7 +1278,7 @@ public class MedicinalProductDefinition extends DomainResource { case -309474065: /*product*/ return new Property("product[x]", "Identifier|Reference(MedicinalProductDefinition)", "Reference to another product, e.g. for linking authorised to investigational product.", 0, 1, product); case 2006726392: /*productIdentifier*/ return new Property("product[x]", "Identifier", "Reference to another product, e.g. for linking authorised to investigational product.", 0, 1, product); case -669667556: /*productReference*/ return new Property("product[x]", "Reference(MedicinalProductDefinition)", "Reference to another product, e.g. for linking authorised to investigational product.", 0, 1, product); - case 3575610: /*type*/ return new Property("type", "Coding", "The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The type of relationship, for instance branded to generic, product to development product (investigational), parallel import version.", 0, 1, type); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1288,7 +1288,7 @@ public class MedicinalProductDefinition extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case -309474065: /*product*/ return this.product == null ? new Base[0] : new Base[] {this.product}; // DataType - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // Coding + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept default: return super.getProperty(hash, name, checkValid); } @@ -1301,7 +1301,7 @@ public class MedicinalProductDefinition extends DomainResource { this.product = TypeConvertor.castToType(value); // DataType return value; case 3575610: // type - this.type = TypeConvertor.castToCoding(value); // Coding + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; default: return super.setProperty(hash, name, value); } @@ -1313,7 +1313,7 @@ public class MedicinalProductDefinition extends DomainResource { if (name.equals("product[x]")) { this.product = TypeConvertor.castToType(value); // DataType } else if (name.equals("type")) { - this.type = TypeConvertor.castToCoding(value); // Coding + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else return super.setProperty(name, value); return value; @@ -1334,7 +1334,7 @@ public class MedicinalProductDefinition extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -309474065: /*product*/ return new String[] {"Identifier", "Reference"}; - case 3575610: /*type*/ return new String[] {"Coding"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; default: return super.getTypesForProperty(hash, name); } @@ -1351,7 +1351,7 @@ public class MedicinalProductDefinition extends DomainResource { return this.product; } else if (name.equals("type")) { - this.type = new Coding(); + this.type = new CodeableConcept(); return this.type; } else @@ -1406,9 +1406,9 @@ public class MedicinalProductDefinition extends DomainResource { /** * The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute. */ - @Child(name = "type", type = {Coding.class, ActivityDefinition.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableReference.class}, order=1, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute", formalDefinition="The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute." ) - protected DataType type; + protected CodeableReference type; /** * Date range of applicability. @@ -1438,7 +1438,7 @@ public class MedicinalProductDefinition extends DomainResource { @Description(shortDefinition="To indicate if this proces is commercially confidential", formalDefinition="To indicate if this proces is commercially confidential." ) protected CodeableConcept confidentialityIndicator; - private static final long serialVersionUID = 499207214L; + private static final long serialVersionUID = 1855392466L; /** * Constructor @@ -1450,40 +1450,15 @@ public class MedicinalProductDefinition extends DomainResource { /** * @return {@link #type} (The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.) */ - public DataType getType() { + public CodeableReference getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicinalProductDefinitionManufacturingBusinessOperationComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableReference(); // cc return this.type; } - /** - * @return {@link #type} (The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.) - */ - public Coding getTypeCoding() throws FHIRException { - if (this.type == null) - this.type = new Coding(); - if (!(this.type instanceof Coding)) - throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.type.getClass().getName()+" was encountered"); - return (Coding) this.type; - } - - public boolean hasTypeCoding() { - return this != null && this.type instanceof Coding; - } - - /** - * @return {@link #type} (The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.) - */ - public Reference getTypeReference() throws FHIRException { - if (this.type == null) - this.type = new Reference(); - if (!(this.type instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.type.getClass().getName()+" was encountered"); - return (Reference) this.type; - } - - public boolean hasTypeReference() { - return this != null && this.type instanceof Reference; - } - public boolean hasType() { return this.type != null && !this.type.isEmpty(); } @@ -1491,9 +1466,7 @@ public class MedicinalProductDefinition extends DomainResource { /** * @param value {@link #type} (The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.) */ - public MedicinalProductDefinitionManufacturingBusinessOperationComponent setType(DataType value) { - if (value != null && !(value instanceof Coding || value instanceof Reference)) - throw new Error("Not the right type for MedicinalProductDefinition.manufacturingBusinessOperation.type[x]: "+value.fhirType()); + public MedicinalProductDefinitionManufacturingBusinessOperationComponent setType(CodeableReference value) { this.type = value; return this; } @@ -1625,7 +1598,7 @@ public class MedicinalProductDefinition extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("type[x]", "Coding|Reference(ActivityDefinition)", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type)); + children.add(new Property("type", "CodeableReference(ActivityDefinition)", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type)); children.add(new Property("effectiveDate", "Period", "Date range of applicability.", 0, 1, effectiveDate)); children.add(new Property("manufacturer", "Reference(Organization)", "The manufacturer or establishment associated with the process.", 0, java.lang.Integer.MAX_VALUE, manufacturer)); children.add(new Property("authorization", "Reference(RegulatedAuthorization)", "An authorization for this process, either as a logical reference, holding just an identifier, or a full refererence to a resource that captures the details. The authorization mayu possibly apply to several products or a wider scope of process of which this is a part.", 0, 1, authorization)); @@ -1635,10 +1608,7 @@ public class MedicinalProductDefinition extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case -853093626: /*type[x]*/ return new Property("type[x]", "Coding|Reference(ActivityDefinition)", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type); - case 3575610: /*type*/ return new Property("type[x]", "Coding|Reference(ActivityDefinition)", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type); - case -1885820092: /*typeCoding*/ return new Property("type[x]", "Coding", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type); - case 2074825009: /*typeReference*/ return new Property("type[x]", "Reference(ActivityDefinition)", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type); + case 3575610: /*type*/ return new Property("type", "CodeableReference(ActivityDefinition)", "The type of manufacturing operation e.g. manufacturing itself, re-packaging. This may be a subtype of some other wider scope of authorized operation, referenced by the authorization attribute.", 0, 1, type); case -930389515: /*effectiveDate*/ return new Property("effectiveDate", "Period", "Date range of applicability.", 0, 1, effectiveDate); case -1969347631: /*manufacturer*/ return new Property("manufacturer", "Reference(Organization)", "The manufacturer or establishment associated with the process.", 0, java.lang.Integer.MAX_VALUE, manufacturer); case -1385570183: /*authorization*/ return new Property("authorization", "Reference(RegulatedAuthorization)", "An authorization for this process, either as a logical reference, holding just an identifier, or a full refererence to a resource that captures the details. The authorization mayu possibly apply to several products or a wider scope of process of which this is a part.", 0, 1, authorization); @@ -1651,7 +1621,7 @@ public class MedicinalProductDefinition extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // DataType + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableReference case -930389515: /*effectiveDate*/ return this.effectiveDate == null ? new Base[0] : new Base[] {this.effectiveDate}; // Period case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : this.manufacturer.toArray(new Base[this.manufacturer.size()]); // Reference case -1385570183: /*authorization*/ return this.authorization == null ? new Base[0] : new Base[] {this.authorization}; // Reference @@ -1665,7 +1635,7 @@ public class MedicinalProductDefinition extends DomainResource { public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { case 3575610: // type - this.type = TypeConvertor.castToType(value); // DataType + this.type = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -930389515: // effectiveDate this.effectiveDate = TypeConvertor.castToPeriod(value); // Period @@ -1686,8 +1656,8 @@ public class MedicinalProductDefinition extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("type[x]")) { - this.type = TypeConvertor.castToType(value); // DataType + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("effectiveDate")) { this.effectiveDate = TypeConvertor.castToPeriod(value); // Period } else if (name.equals("manufacturer")) { @@ -1704,7 +1674,6 @@ public class MedicinalProductDefinition extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case -853093626: return getType(); case 3575610: return getType(); case -930389515: return getEffectiveDate(); case -1969347631: return addManufacturer(); @@ -1718,7 +1687,7 @@ public class MedicinalProductDefinition extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3575610: /*type*/ return new String[] {"Coding", "Reference"}; + case 3575610: /*type*/ return new String[] {"CodeableReference"}; case -930389515: /*effectiveDate*/ return new String[] {"Period"}; case -1969347631: /*manufacturer*/ return new String[] {"Reference"}; case -1385570183: /*authorization*/ return new String[] {"Reference"}; @@ -1730,12 +1699,8 @@ public class MedicinalProductDefinition extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("typeCoding")) { - this.type = new Coding(); - return this.type; - } - else if (name.equals("typeReference")) { - this.type = new Reference(); + if (name.equals("type")) { + this.type = new CodeableReference(); return this.type; } else if (name.equals("effectiveDate")) { @@ -1827,9 +1792,9 @@ public class MedicinalProductDefinition extends DomainResource { /** * If this medicine applies to human or veterinary uses. */ - @Child(name = "domain", type = {Coding.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "domain", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="If this medicine applies to human or veterinary uses", formalDefinition="If this medicine applies to human or veterinary uses." ) - protected Coding domain; + protected CodeableConcept domain; /** * A business level identifier of the product. @@ -1841,145 +1806,159 @@ public class MedicinalProductDefinition extends DomainResource { /** * The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status. */ - @Child(name = "status", type = {Coding.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Child(name = "status", type = {CodeableConcept.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status", formalDefinition="The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") - protected Coding status; + protected CodeableConcept status; + + /** + * The date at which the given status became applicable. + */ + @Child(name = "statusDate", type = {DateTimeType.class}, order=5, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The date at which the given status became applicable", formalDefinition="The date at which the given status became applicable." ) + protected DateTimeType statusDate; /** * General description of this product. */ - @Child(name = "description", type = {MarkdownType.class}, order=5, min=0, max=1, modifier=false, summary=true) + @Child(name = "description", type = {MarkdownType.class}, order=6, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="General description of this product", formalDefinition="General description of this product." ) protected MarkdownType description; /** * The dose form for a single part product, or combined form of a multiple part product. */ - @Child(name = "combinedPharmaceuticalDoseForm", type = {CodeableConcept.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Child(name = "combinedPharmaceuticalDoseForm", type = {CodeableConcept.class}, order=7, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The dose form for a single part product, or combined form of a multiple part product", formalDefinition="The dose form for a single part product, or combined form of a multiple part product." ) protected CodeableConcept combinedPharmaceuticalDoseForm; /** * General combined description of indication(s) for this product. See also MedicinalProductDefinitionIndication. */ - @Child(name = "indication", type = {MarkdownType.class}, order=7, min=0, max=1, modifier=false, summary=true) + @Child(name = "indication", type = {MarkdownType.class}, order=8, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="General combined description of indication(s) for this product. See also MedicinalProductDefinitionIndication", formalDefinition="General combined description of indication(s) for this product. See also MedicinalProductDefinitionIndication." ) protected MarkdownType indication; /** * The legal status of supply of the medicinal product as classified by the regulator. */ - @Child(name = "legalStatusOfSupply", type = {CodeableConcept.class}, order=8, min=0, max=1, modifier=false, summary=true) + @Child(name = "legalStatusOfSupply", type = {CodeableConcept.class}, order=9, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The legal status of supply of the medicinal product as classified by the regulator", formalDefinition="The legal status of supply of the medicinal product as classified by the regulator." ) protected CodeableConcept legalStatusOfSupply; /** * Whether the Medicinal Product is subject to additional monitoring for regulatory reasons. */ - @Child(name = "additionalMonitoringIndicator", type = {CodeableConcept.class}, order=9, min=0, max=1, modifier=false, summary=true) + @Child(name = "additionalMonitoringIndicator", type = {CodeableConcept.class}, order=10, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Whether the Medicinal Product is subject to additional monitoring for regulatory reasons", formalDefinition="Whether the Medicinal Product is subject to additional monitoring for regulatory reasons." ) protected CodeableConcept additionalMonitoringIndicator; /** * Whether the Medicinal Product is subject to special measures for regulatory reasons. */ - @Child(name = "specialMeasures", type = {CodeableConcept.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "specialMeasures", type = {CodeableConcept.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Whether the Medicinal Product is subject to special measures for regulatory reasons", formalDefinition="Whether the Medicinal Product is subject to special measures for regulatory reasons." ) protected List specialMeasures; /** * If authorised for use in children. */ - @Child(name = "paediatricUseIndicator", type = {CodeableConcept.class}, order=11, min=0, max=1, modifier=false, summary=true) + @Child(name = "paediatricUseIndicator", type = {CodeableConcept.class}, order=12, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="If authorised for use in children", formalDefinition="If authorised for use in children." ) protected CodeableConcept paediatricUseIndicator; /** * Allows the product to be classified by various systems. */ - @Child(name = "productClassification", type = {CodeableConcept.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "productClassification", type = {CodeableConcept.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Allows the product to be classified by various systems", formalDefinition="Allows the product to be classified by various systems." ) protected List productClassification; + /** + * Allows the key product features to be recorded, such as "suger free", "modified release", "parallel import". + */ + @Child(name = "characteristic", type = {CodeableConcept.class}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Allows the key product features to be recorded, such as \"suger free\", \"modified release\", \"parallel import\"", formalDefinition="Allows the key product features to be recorded, such as \"suger free\", \"modified release\", \"parallel import\"." ) + protected List characteristic; + /** * Marketing status of the medicinal product, in contrast to marketing authorizaton. */ - @Child(name = "marketingStatus", type = {MarketingStatus.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "marketingStatus", type = {MarketingStatus.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Marketing status of the medicinal product, in contrast to marketing authorizaton", formalDefinition="Marketing status of the medicinal product, in contrast to marketing authorizaton." ) protected List marketingStatus; /** * Pharmaceutical aspects of product. */ - @Child(name = "pharmaceuticalProduct", type = {AdministrableProductDefinition.class}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "pharmaceuticalProduct", type = {AdministrableProductDefinition.class}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Pharmaceutical aspects of product", formalDefinition="Pharmaceutical aspects of product." ) protected List pharmaceuticalProduct; /** * Package representation for the product. */ - @Child(name = "packagedMedicinalProduct", type = {PackagedProductDefinition.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "packagedMedicinalProduct", type = {PackagedProductDefinition.class}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Package representation for the product", formalDefinition="Package representation for the product." ) protected List packagedMedicinalProduct; /** * The ingredients of this medicinal product - when not specified elsewhere. This is only needed if the ingredients are not specified by the pharmaceuticalProduct or packagedMedicinalProduct references above. In cases where those levels of detail are not used, the ingredients may be specified directly here. */ - @Child(name = "ingredient", type = {Ingredient.class}, order=16, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "ingredient", type = {Ingredient.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The ingredients of this medicinal product - when not specified elsewhere. This is only needed if the ingredients are not specified by the pharmaceuticalProduct or packagedMedicinalProduct references above. In cases where those levels of detail are not used, the ingredients may be specified directly here", formalDefinition="The ingredients of this medicinal product - when not specified elsewhere. This is only needed if the ingredients are not specified by the pharmaceuticalProduct or packagedMedicinalProduct references above. In cases where those levels of detail are not used, the ingredients may be specified directly here." ) protected List ingredient; /** * Supporting documentation, typically for regulatory submission. */ - @Child(name = "attachedDocument", type = {DocumentReference.class}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "attachedDocument", type = {DocumentReference.class}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Supporting documentation, typically for regulatory submission", formalDefinition="Supporting documentation, typically for regulatory submission." ) protected List attachedDocument; /** * A master file for to the medicinal product (e.g. Pharmacovigilance System Master File). */ - @Child(name = "masterFile", type = {DocumentReference.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "masterFile", type = {DocumentReference.class}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="A master file for to the medicinal product (e.g. Pharmacovigilance System Master File)", formalDefinition="A master file for to the medicinal product (e.g. Pharmacovigilance System Master File)." ) protected List masterFile; /** * A product specific contact, person (in a role), or an organization. */ - @Child(name = "contact", type = {}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "contact", type = {}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="A product specific contact, person (in a role), or an organization", formalDefinition="A product specific contact, person (in a role), or an organization." ) protected List contact; /** * Clinical trials or studies that this product is involved in. */ - @Child(name = "clinicalTrial", type = {ResearchStudy.class}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "clinicalTrial", type = {ResearchStudy.class}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Clinical trials or studies that this product is involved in", formalDefinition="Clinical trials or studies that this product is involved in." ) protected List clinicalTrial; /** * The product's name, including full name and possibly coded parts. */ - @Child(name = "name", type = {}, order=21, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "name", type = {}, order=23, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The product's name, including full name and possibly coded parts", formalDefinition="The product's name, including full name and possibly coded parts." ) protected List name; /** * Reference to another product, e.g. for linking authorised to investigational product. */ - @Child(name = "crossReference", type = {}, order=22, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "crossReference", type = {}, order=24, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Reference to another product, e.g. for linking authorised to investigational product", formalDefinition="Reference to another product, e.g. for linking authorised to investigational product." ) protected List crossReference; /** * An operation applied to the product, for manufacturing or adminsitrative purpose. */ - @Child(name = "manufacturingBusinessOperation", type = {}, order=23, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "manufacturingBusinessOperation", type = {}, order=25, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="An operation applied to the product, for manufacturing or adminsitrative purpose", formalDefinition="An operation applied to the product, for manufacturing or adminsitrative purpose." ) protected List manufacturingBusinessOperation; - private static final long serialVersionUID = -1839748079L; + private static final long serialVersionUID = -585909008L; /** * Constructor @@ -2076,12 +2055,12 @@ public class MedicinalProductDefinition extends DomainResource { /** * @return {@link #domain} (If this medicine applies to human or veterinary uses.) */ - public Coding getDomain() { + public CodeableConcept getDomain() { if (this.domain == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create MedicinalProductDefinition.domain"); else if (Configuration.doAutoCreate()) - this.domain = new Coding(); // cc + this.domain = new CodeableConcept(); // cc return this.domain; } @@ -2092,7 +2071,7 @@ public class MedicinalProductDefinition extends DomainResource { /** * @param value {@link #domain} (If this medicine applies to human or veterinary uses.) */ - public MedicinalProductDefinition setDomain(Coding value) { + public MedicinalProductDefinition setDomain(CodeableConcept value) { this.domain = value; return this; } @@ -2149,12 +2128,12 @@ public class MedicinalProductDefinition extends DomainResource { /** * @return {@link #status} (The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status.) */ - public Coding getStatus() { + public CodeableConcept getStatus() { if (this.status == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create MedicinalProductDefinition.status"); else if (Configuration.doAutoCreate()) - this.status = new Coding(); // cc + this.status = new CodeableConcept(); // cc return this.status; } @@ -2165,11 +2144,60 @@ public class MedicinalProductDefinition extends DomainResource { /** * @param value {@link #status} (The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status.) */ - public MedicinalProductDefinition setStatus(Coding value) { + public MedicinalProductDefinition setStatus(CodeableConcept value) { this.status = value; return this; } + /** + * @return {@link #statusDate} (The date at which the given status became applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value + */ + public DateTimeType getStatusDateElement() { + if (this.statusDate == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create MedicinalProductDefinition.statusDate"); + else if (Configuration.doAutoCreate()) + this.statusDate = new DateTimeType(); // bb + return this.statusDate; + } + + public boolean hasStatusDateElement() { + return this.statusDate != null && !this.statusDate.isEmpty(); + } + + public boolean hasStatusDate() { + return this.statusDate != null && !this.statusDate.isEmpty(); + } + + /** + * @param value {@link #statusDate} (The date at which the given status became applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value + */ + public MedicinalProductDefinition setStatusDateElement(DateTimeType value) { + this.statusDate = value; + return this; + } + + /** + * @return The date at which the given status became applicable. + */ + public Date getStatusDate() { + return this.statusDate == null ? null : this.statusDate.getValue(); + } + + /** + * @param value The date at which the given status became applicable. + */ + public MedicinalProductDefinition setStatusDate(Date value) { + if (value == null) + this.statusDate = null; + else { + if (this.statusDate == null) + this.statusDate = new DateTimeType(); + this.statusDate.setValue(value); + } + return this; + } + /** * @return {@link #description} (General description of this product.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value */ @@ -2470,6 +2498,59 @@ public class MedicinalProductDefinition extends DomainResource { return getProductClassification().get(0); } + /** + * @return {@link #characteristic} (Allows the key product features to be recorded, such as "suger free", "modified release", "parallel import".) + */ + public List getCharacteristic() { + if (this.characteristic == null) + this.characteristic = new ArrayList(); + return this.characteristic; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public MedicinalProductDefinition setCharacteristic(List theCharacteristic) { + this.characteristic = theCharacteristic; + return this; + } + + public boolean hasCharacteristic() { + if (this.characteristic == null) + return false; + for (CodeableConcept item : this.characteristic) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addCharacteristic() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.characteristic == null) + this.characteristic = new ArrayList(); + this.characteristic.add(t); + return t; + } + + public MedicinalProductDefinition addCharacteristic(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.characteristic == null) + this.characteristic = new ArrayList(); + this.characteristic.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #characteristic}, creating it if it does not already exist {3} + */ + public CodeableConcept getCharacteristicFirstRep() { + if (getCharacteristic().isEmpty()) { + addCharacteristic(); + } + return getCharacteristic().get(0); + } + /** * @return {@link #marketingStatus} (Marketing status of the medicinal product, in contrast to marketing authorizaton.) */ @@ -3057,9 +3138,10 @@ public class MedicinalProductDefinition extends DomainResource { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Business identifier for this product. Could be an MPID.", 0, java.lang.Integer.MAX_VALUE, identifier)); children.add(new Property("type", "CodeableConcept", "Regulatory type, e.g. Investigational or Authorized.", 0, 1, type)); - children.add(new Property("domain", "Coding", "If this medicine applies to human or veterinary uses.", 0, 1, domain)); + children.add(new Property("domain", "CodeableConcept", "If this medicine applies to human or veterinary uses.", 0, 1, domain)); children.add(new Property("version", "string", "A business level identifier of the product.", 0, 1, version)); - children.add(new Property("status", "Coding", "The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status.", 0, 1, status)); + children.add(new Property("status", "CodeableConcept", "The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status.", 0, 1, status)); + children.add(new Property("statusDate", "dateTime", "The date at which the given status became applicable.", 0, 1, statusDate)); children.add(new Property("description", "markdown", "General description of this product.", 0, 1, description)); children.add(new Property("combinedPharmaceuticalDoseForm", "CodeableConcept", "The dose form for a single part product, or combined form of a multiple part product.", 0, 1, combinedPharmaceuticalDoseForm)); children.add(new Property("indication", "markdown", "General combined description of indication(s) for this product. See also MedicinalProductDefinitionIndication.", 0, 1, indication)); @@ -3068,6 +3150,7 @@ public class MedicinalProductDefinition extends DomainResource { children.add(new Property("specialMeasures", "CodeableConcept", "Whether the Medicinal Product is subject to special measures for regulatory reasons.", 0, java.lang.Integer.MAX_VALUE, specialMeasures)); children.add(new Property("paediatricUseIndicator", "CodeableConcept", "If authorised for use in children.", 0, 1, paediatricUseIndicator)); children.add(new Property("productClassification", "CodeableConcept", "Allows the product to be classified by various systems.", 0, java.lang.Integer.MAX_VALUE, productClassification)); + children.add(new Property("characteristic", "CodeableConcept", "Allows the key product features to be recorded, such as \"suger free\", \"modified release\", \"parallel import\".", 0, java.lang.Integer.MAX_VALUE, characteristic)); children.add(new Property("marketingStatus", "MarketingStatus", "Marketing status of the medicinal product, in contrast to marketing authorizaton.", 0, java.lang.Integer.MAX_VALUE, marketingStatus)); children.add(new Property("pharmaceuticalProduct", "Reference(AdministrableProductDefinition)", "Pharmaceutical aspects of product.", 0, java.lang.Integer.MAX_VALUE, pharmaceuticalProduct)); children.add(new Property("packagedMedicinalProduct", "Reference(PackagedProductDefinition)", "Package representation for the product.", 0, java.lang.Integer.MAX_VALUE, packagedMedicinalProduct)); @@ -3086,9 +3169,10 @@ public class MedicinalProductDefinition extends DomainResource { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifier for this product. Could be an MPID.", 0, java.lang.Integer.MAX_VALUE, identifier); case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Regulatory type, e.g. Investigational or Authorized.", 0, 1, type); - case -1326197564: /*domain*/ return new Property("domain", "Coding", "If this medicine applies to human or veterinary uses.", 0, 1, domain); + case -1326197564: /*domain*/ return new Property("domain", "CodeableConcept", "If this medicine applies to human or veterinary uses.", 0, 1, domain); case 351608024: /*version*/ return new Property("version", "string", "A business level identifier of the product.", 0, 1, version); - case -892481550: /*status*/ return new Property("status", "Coding", "The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status.", 0, 1, status); + case -892481550: /*status*/ return new Property("status", "CodeableConcept", "The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status.", 0, 1, status); + case 247524032: /*statusDate*/ return new Property("statusDate", "dateTime", "The date at which the given status became applicable.", 0, 1, statusDate); case -1724546052: /*description*/ return new Property("description", "markdown", "General description of this product.", 0, 1, description); case -1992898487: /*combinedPharmaceuticalDoseForm*/ return new Property("combinedPharmaceuticalDoseForm", "CodeableConcept", "The dose form for a single part product, or combined form of a multiple part product.", 0, 1, combinedPharmaceuticalDoseForm); case -597168804: /*indication*/ return new Property("indication", "markdown", "General combined description of indication(s) for this product. See also MedicinalProductDefinitionIndication.", 0, 1, indication); @@ -3097,6 +3181,7 @@ public class MedicinalProductDefinition extends DomainResource { case 975102638: /*specialMeasures*/ return new Property("specialMeasures", "CodeableConcept", "Whether the Medicinal Product is subject to special measures for regulatory reasons.", 0, java.lang.Integer.MAX_VALUE, specialMeasures); case -1019867160: /*paediatricUseIndicator*/ return new Property("paediatricUseIndicator", "CodeableConcept", "If authorised for use in children.", 0, 1, paediatricUseIndicator); case 1247936181: /*productClassification*/ return new Property("productClassification", "CodeableConcept", "Allows the product to be classified by various systems.", 0, java.lang.Integer.MAX_VALUE, productClassification); + case 366313883: /*characteristic*/ return new Property("characteristic", "CodeableConcept", "Allows the key product features to be recorded, such as \"suger free\", \"modified release\", \"parallel import\".", 0, java.lang.Integer.MAX_VALUE, characteristic); case 70767032: /*marketingStatus*/ return new Property("marketingStatus", "MarketingStatus", "Marketing status of the medicinal product, in contrast to marketing authorizaton.", 0, java.lang.Integer.MAX_VALUE, marketingStatus); case 443273260: /*pharmaceuticalProduct*/ return new Property("pharmaceuticalProduct", "Reference(AdministrableProductDefinition)", "Pharmaceutical aspects of product.", 0, java.lang.Integer.MAX_VALUE, pharmaceuticalProduct); case -361025513: /*packagedMedicinalProduct*/ return new Property("packagedMedicinalProduct", "Reference(PackagedProductDefinition)", "Package representation for the product.", 0, java.lang.Integer.MAX_VALUE, packagedMedicinalProduct); @@ -3118,9 +3203,10 @@ public class MedicinalProductDefinition extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept - case -1326197564: /*domain*/ return this.domain == null ? new Base[0] : new Base[] {this.domain}; // Coding + case -1326197564: /*domain*/ return this.domain == null ? new Base[0] : new Base[] {this.domain}; // CodeableConcept case 351608024: /*version*/ return this.version == null ? new Base[0] : new Base[] {this.version}; // StringType - case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Coding + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // CodeableConcept + case 247524032: /*statusDate*/ return this.statusDate == null ? new Base[0] : new Base[] {this.statusDate}; // DateTimeType case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType case -1992898487: /*combinedPharmaceuticalDoseForm*/ return this.combinedPharmaceuticalDoseForm == null ? new Base[0] : new Base[] {this.combinedPharmaceuticalDoseForm}; // CodeableConcept case -597168804: /*indication*/ return this.indication == null ? new Base[0] : new Base[] {this.indication}; // MarkdownType @@ -3129,6 +3215,7 @@ public class MedicinalProductDefinition extends DomainResource { case 975102638: /*specialMeasures*/ return this.specialMeasures == null ? new Base[0] : this.specialMeasures.toArray(new Base[this.specialMeasures.size()]); // CodeableConcept case -1019867160: /*paediatricUseIndicator*/ return this.paediatricUseIndicator == null ? new Base[0] : new Base[] {this.paediatricUseIndicator}; // CodeableConcept case 1247936181: /*productClassification*/ return this.productClassification == null ? new Base[0] : this.productClassification.toArray(new Base[this.productClassification.size()]); // CodeableConcept + case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // CodeableConcept case 70767032: /*marketingStatus*/ return this.marketingStatus == null ? new Base[0] : this.marketingStatus.toArray(new Base[this.marketingStatus.size()]); // MarketingStatus case 443273260: /*pharmaceuticalProduct*/ return this.pharmaceuticalProduct == null ? new Base[0] : this.pharmaceuticalProduct.toArray(new Base[this.pharmaceuticalProduct.size()]); // Reference case -361025513: /*packagedMedicinalProduct*/ return this.packagedMedicinalProduct == null ? new Base[0] : this.packagedMedicinalProduct.toArray(new Base[this.packagedMedicinalProduct.size()]); // Reference @@ -3155,13 +3242,16 @@ public class MedicinalProductDefinition extends DomainResource { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -1326197564: // domain - this.domain = TypeConvertor.castToCoding(value); // Coding + this.domain = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case 351608024: // version this.version = TypeConvertor.castToString(value); // StringType return value; case -892481550: // status - this.status = TypeConvertor.castToCoding(value); // Coding + this.status = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 247524032: // statusDate + this.statusDate = TypeConvertor.castToDateTime(value); // DateTimeType return value; case -1724546052: // description this.description = TypeConvertor.castToMarkdown(value); // MarkdownType @@ -3187,6 +3277,9 @@ public class MedicinalProductDefinition extends DomainResource { case 1247936181: // productClassification this.getProductClassification().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; + case 366313883: // characteristic + this.getCharacteristic().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; case 70767032: // marketingStatus this.getMarketingStatus().add(TypeConvertor.castToMarketingStatus(value)); // MarketingStatus return value; @@ -3232,11 +3325,13 @@ public class MedicinalProductDefinition extends DomainResource { } else if (name.equals("type")) { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("domain")) { - this.domain = TypeConvertor.castToCoding(value); // Coding + this.domain = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("version")) { this.version = TypeConvertor.castToString(value); // StringType } else if (name.equals("status")) { - this.status = TypeConvertor.castToCoding(value); // Coding + this.status = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("statusDate")) { + this.statusDate = TypeConvertor.castToDateTime(value); // DateTimeType } else if (name.equals("description")) { this.description = TypeConvertor.castToMarkdown(value); // MarkdownType } else if (name.equals("combinedPharmaceuticalDoseForm")) { @@ -3253,6 +3348,8 @@ public class MedicinalProductDefinition extends DomainResource { this.paediatricUseIndicator = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("productClassification")) { this.getProductClassification().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("characteristic")) { + this.getCharacteristic().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("marketingStatus")) { this.getMarketingStatus().add(TypeConvertor.castToMarketingStatus(value)); } else if (name.equals("pharmaceuticalProduct")) { @@ -3288,6 +3385,7 @@ public class MedicinalProductDefinition extends DomainResource { case -1326197564: return getDomain(); case 351608024: return getVersionElement(); case -892481550: return getStatus(); + case 247524032: return getStatusDateElement(); case -1724546052: return getDescriptionElement(); case -1992898487: return getCombinedPharmaceuticalDoseForm(); case -597168804: return getIndicationElement(); @@ -3296,6 +3394,7 @@ public class MedicinalProductDefinition extends DomainResource { case 975102638: return addSpecialMeasures(); case -1019867160: return getPaediatricUseIndicator(); case 1247936181: return addProductClassification(); + case 366313883: return addCharacteristic(); case 70767032: return addMarketingStatus(); case 443273260: return addPharmaceuticalProduct(); case -361025513: return addPackagedMedicinalProduct(); @@ -3317,9 +3416,10 @@ public class MedicinalProductDefinition extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; case 3575610: /*type*/ return new String[] {"CodeableConcept"}; - case -1326197564: /*domain*/ return new String[] {"Coding"}; + case -1326197564: /*domain*/ return new String[] {"CodeableConcept"}; case 351608024: /*version*/ return new String[] {"string"}; - case -892481550: /*status*/ return new String[] {"Coding"}; + case -892481550: /*status*/ return new String[] {"CodeableConcept"}; + case 247524032: /*statusDate*/ return new String[] {"dateTime"}; case -1724546052: /*description*/ return new String[] {"markdown"}; case -1992898487: /*combinedPharmaceuticalDoseForm*/ return new String[] {"CodeableConcept"}; case -597168804: /*indication*/ return new String[] {"markdown"}; @@ -3328,6 +3428,7 @@ public class MedicinalProductDefinition extends DomainResource { case 975102638: /*specialMeasures*/ return new String[] {"CodeableConcept"}; case -1019867160: /*paediatricUseIndicator*/ return new String[] {"CodeableConcept"}; case 1247936181: /*productClassification*/ return new String[] {"CodeableConcept"}; + case 366313883: /*characteristic*/ return new String[] {"CodeableConcept"}; case 70767032: /*marketingStatus*/ return new String[] {"MarketingStatus"}; case 443273260: /*pharmaceuticalProduct*/ return new String[] {"Reference"}; case -361025513: /*packagedMedicinalProduct*/ return new String[] {"Reference"}; @@ -3354,16 +3455,19 @@ public class MedicinalProductDefinition extends DomainResource { return this.type; } else if (name.equals("domain")) { - this.domain = new Coding(); + this.domain = new CodeableConcept(); return this.domain; } else if (name.equals("version")) { throw new FHIRException("Cannot call addChild on a primitive type MedicinalProductDefinition.version"); } else if (name.equals("status")) { - this.status = new Coding(); + this.status = new CodeableConcept(); return this.status; } + else if (name.equals("statusDate")) { + throw new FHIRException("Cannot call addChild on a primitive type MedicinalProductDefinition.statusDate"); + } else if (name.equals("description")) { throw new FHIRException("Cannot call addChild on a primitive type MedicinalProductDefinition.description"); } @@ -3392,6 +3496,9 @@ public class MedicinalProductDefinition extends DomainResource { else if (name.equals("productClassification")) { return addProductClassification(); } + else if (name.equals("characteristic")) { + return addCharacteristic(); + } else if (name.equals("marketingStatus")) { return addMarketingStatus(); } @@ -3451,6 +3558,7 @@ public class MedicinalProductDefinition extends DomainResource { dst.domain = domain == null ? null : domain.copy(); dst.version = version == null ? null : version.copy(); dst.status = status == null ? null : status.copy(); + dst.statusDate = statusDate == null ? null : statusDate.copy(); dst.description = description == null ? null : description.copy(); dst.combinedPharmaceuticalDoseForm = combinedPharmaceuticalDoseForm == null ? null : combinedPharmaceuticalDoseForm.copy(); dst.indication = indication == null ? null : indication.copy(); @@ -3467,6 +3575,11 @@ public class MedicinalProductDefinition extends DomainResource { for (CodeableConcept i : productClassification) dst.productClassification.add(i.copy()); }; + if (characteristic != null) { + dst.characteristic = new ArrayList(); + for (CodeableConcept i : characteristic) + dst.characteristic.add(i.copy()); + }; if (marketingStatus != null) { dst.marketingStatus = new ArrayList(); for (MarketingStatus i : marketingStatus) @@ -3536,11 +3649,12 @@ public class MedicinalProductDefinition extends DomainResource { return false; MedicinalProductDefinition o = (MedicinalProductDefinition) other_; return compareDeep(identifier, o.identifier, true) && compareDeep(type, o.type, true) && compareDeep(domain, o.domain, true) - && compareDeep(version, o.version, true) && compareDeep(status, o.status, true) && compareDeep(description, o.description, true) - && compareDeep(combinedPharmaceuticalDoseForm, o.combinedPharmaceuticalDoseForm, true) && compareDeep(indication, o.indication, true) - && compareDeep(legalStatusOfSupply, o.legalStatusOfSupply, true) && compareDeep(additionalMonitoringIndicator, o.additionalMonitoringIndicator, true) - && compareDeep(specialMeasures, o.specialMeasures, true) && compareDeep(paediatricUseIndicator, o.paediatricUseIndicator, true) - && compareDeep(productClassification, o.productClassification, true) && compareDeep(marketingStatus, o.marketingStatus, true) + && compareDeep(version, o.version, true) && compareDeep(status, o.status, true) && compareDeep(statusDate, o.statusDate, true) + && compareDeep(description, o.description, true) && compareDeep(combinedPharmaceuticalDoseForm, o.combinedPharmaceuticalDoseForm, true) + && compareDeep(indication, o.indication, true) && compareDeep(legalStatusOfSupply, o.legalStatusOfSupply, true) + && compareDeep(additionalMonitoringIndicator, o.additionalMonitoringIndicator, true) && compareDeep(specialMeasures, o.specialMeasures, true) + && compareDeep(paediatricUseIndicator, o.paediatricUseIndicator, true) && compareDeep(productClassification, o.productClassification, true) + && compareDeep(characteristic, o.characteristic, true) && compareDeep(marketingStatus, o.marketingStatus, true) && compareDeep(pharmaceuticalProduct, o.pharmaceuticalProduct, true) && compareDeep(packagedMedicinalProduct, o.packagedMedicinalProduct, true) && compareDeep(ingredient, o.ingredient, true) && compareDeep(attachedDocument, o.attachedDocument, true) && compareDeep(masterFile, o.masterFile, true) && compareDeep(contact, o.contact, true) && compareDeep(clinicalTrial, o.clinicalTrial, true) @@ -3555,17 +3669,17 @@ public class MedicinalProductDefinition extends DomainResource { if (!(other_ instanceof MedicinalProductDefinition)) return false; MedicinalProductDefinition o = (MedicinalProductDefinition) other_; - return compareValues(version, o.version, true) && compareValues(description, o.description, true) && compareValues(indication, o.indication, true) - ; + return compareValues(version, o.version, true) && compareValues(statusDate, o.statusDate, true) && compareValues(description, o.description, true) + && compareValues(indication, o.indication, true); } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, type, domain - , version, status, description, combinedPharmaceuticalDoseForm, indication, legalStatusOfSupply - , additionalMonitoringIndicator, specialMeasures, paediatricUseIndicator, productClassification - , marketingStatus, pharmaceuticalProduct, packagedMedicinalProduct, ingredient, attachedDocument - , masterFile, contact, clinicalTrial, name, crossReference, manufacturingBusinessOperation - ); + , version, status, statusDate, description, combinedPharmaceuticalDoseForm, indication + , legalStatusOfSupply, additionalMonitoringIndicator, specialMeasures, paediatricUseIndicator + , productClassification, characteristic, marketingStatus, pharmaceuticalProduct, packagedMedicinalProduct + , ingredient, attachedDocument, masterFile, contact, clinicalTrial, name, crossReference + , manufacturingBusinessOperation); } @Override @@ -3573,6 +3687,26 @@ public class MedicinalProductDefinition extends DomainResource { return ResourceType.MedicinalProductDefinition; } + /** + * Search parameter: characteristic + *

+ * Description: Allows the key product features to be recorded, such as "suger free", "modified release", "parallel import"
+ * Type: token
+ * Path: MedicinalProductDefinition.characteristic
+ *

+ */ + @SearchParamDefinition(name="characteristic", path="MedicinalProductDefinition.characteristic", description="Allows the key product features to be recorded, such as \"suger free\", \"modified release\", \"parallel import\"", type="token" ) + public static final String SP_CHARACTERISTIC = "characteristic"; + /** + * Fluent Client search parameter constant for characteristic + *

+ * Description: Allows the key product features to be recorded, such as "suger free", "modified release", "parallel import"
+ * Type: token
+ * Path: MedicinalProductDefinition.characteristic
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CHARACTERISTIC = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CHARACTERISTIC); + /** * Search parameter: contact *

@@ -3599,6 +3733,26 @@ public class MedicinalProductDefinition extends DomainResource { */ public static final ca.uhn.fhir.model.api.Include INCLUDE_CONTACT = new ca.uhn.fhir.model.api.Include("MedicinalProductDefinition:contact").toLocked(); + /** + * Search parameter: domain + *

+ * Description: If this medicine applies to human or veterinary uses
+ * Type: token
+ * Path: MedicinalProductDefinition.domain
+ *

+ */ + @SearchParamDefinition(name="domain", path="MedicinalProductDefinition.domain", description="If this medicine applies to human or veterinary uses", type="token" ) + public static final String SP_DOMAIN = "domain"; + /** + * Fluent Client search parameter constant for domain + *

+ * Description: If this medicine applies to human or veterinary uses
+ * Type: token
+ * Path: MedicinalProductDefinition.domain
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam DOMAIN = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_DOMAIN); + /** * Search parameter: identifier *

@@ -3705,6 +3859,46 @@ public class MedicinalProductDefinition extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.TokenClientParam PRODUCT_CLASSIFICATION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PRODUCT_CLASSIFICATION); + /** + * Search parameter: status + *

+ * Description: The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status
+ * Type: token
+ * Path: MedicinalProductDefinition.status
+ *

+ */ + @SearchParamDefinition(name="status", path="MedicinalProductDefinition.status", description="The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status", type="token" ) + public static final String SP_STATUS = "status"; + /** + * Fluent Client search parameter constant for status + *

+ * Description: The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization status
+ * Type: token
+ * Path: MedicinalProductDefinition.status
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + + /** + * Search parameter: type + *

+ * Description: Regulatory type, e.g. Investigational or Authorized
+ * Type: token
+ * Path: MedicinalProductDefinition.type
+ *

+ */ + @SearchParamDefinition(name="type", path="MedicinalProductDefinition.type", description="Regulatory type, e.g. Investigational or Authorized", type="token" ) + public static final String SP_TYPE = "type"; + /** + * Fluent Client search parameter constant for type + *

+ * Description: Regulatory type, e.g. Investigational or Authorized
+ * Type: token
+ * Path: MedicinalProductDefinition.type
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); + } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageDefinition.java index b6287236e..71e08edac 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -3339,13 +3339,14 @@ public class MessageDefinition extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) + @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier @@ -3357,10 +3358,11 @@ public class MessageDefinition extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageHeader.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageHeader.java index 581b89b7d..825a2f5d1 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageHeader.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MessageHeader.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2170,7 +2170,7 @@ public class MessageHeader extends DomainResource { * Path: MessageHeader.focus
*

*/ - @SearchParamDefinition(name="focus", path="MessageHeader.focus", description="The actual content of the message", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="focus", path="MessageHeader.focus", description="The actual content of the message", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_FOCUS = "focus"; /** * Fluent Client search parameter constant for focus diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Meta.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Meta.java index 49fe64350..1ba91f7a9 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Meta.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Meta.java @@ -1,685 +1,685 @@ -package org.hl7.fhir.r5.model; - - -/* - * #%L - * org.hl7.fhir.r5 - * %% - * Copyright (C) 2014 - 2019 Health Level 7 - * %% - * Licensed under the Apache License, Version 2.0 (the \"License\"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an \"AS IS\" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * #L% - */ - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, \ - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this \ - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, \ - this list of conditions and the following disclaimer in the documentation \ - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ - POSSIBILITY OF SUCH DAMAGE. - */ - -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent - -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import org.hl7.fhir.utilities.Utilities; -import org.hl7.fhir.r5.model.Enumerations.*; -import org.hl7.fhir.instance.model.api.IBaseDatatypeElement; -import org.hl7.fhir.exceptions.FHIRException; -import org.hl7.fhir.instance.model.api.ICompositeType; -import ca.uhn.fhir.model.api.annotation.Child; -import ca.uhn.fhir.model.api.annotation.ChildOrder; -import ca.uhn.fhir.model.api.annotation.DatatypeDef; -import ca.uhn.fhir.model.api.annotation.Description; -import ca.uhn.fhir.model.api.annotation.Block; - -import org.hl7.fhir.instance.model.api.IBaseMetaType; -/** - * Base StructureDefinition for Meta Type: The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. - */ -@DatatypeDef(name="Meta") -public class Meta extends DataType implements IBaseMetaType { - - /** - * The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. - */ - @Child(name = "versionId", type = {IdType.class}, order=0, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Version specific identifier", formalDefinition="The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted." ) - protected IdType versionId; - - /** - * When the resource last changed - e.g. when the version changed. - */ - @Child(name = "lastUpdated", type = {InstantType.class}, order=1, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="When the resource version last changed", formalDefinition="When the resource last changed - e.g. when the version changed." ) - protected InstantType lastUpdated; - - /** - * A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. - */ - @Child(name = "source", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Identifies where the resource comes from", formalDefinition="A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc." ) - protected UriType source; - - /** - * A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url). - */ - @Child(name = "profile", type = {CanonicalType.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Profiles this resource claims to conform to", formalDefinition="A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url)." ) - protected List profile; - - /** - * Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure. - */ - @Child(name = "security", type = {Coding.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Security Labels applied to this resource", formalDefinition="Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/security-labels") - protected List security; - - /** - * Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource. - */ - @Child(name = "tag", type = {Coding.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Tags applied to this resource", formalDefinition="Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/common-tags") - protected List tag; - - private static final long serialVersionUID = -1386695622L; - - /** - * Constructor - */ - public Meta() { - super(); - } - - /** - * @return {@link #versionId} (The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.). This is the underlying object with id, value and extensions. The accessor "getVersionId" gives direct access to the value - */ - public IdType getVersionIdElement() { - if (this.versionId == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Meta.versionId"); - else if (Configuration.doAutoCreate()) - this.versionId = new IdType(); // bb - return this.versionId; - } - - public boolean hasVersionIdElement() { - return this.versionId != null && !this.versionId.isEmpty(); - } - - public boolean hasVersionId() { - return this.versionId != null && !this.versionId.isEmpty(); - } - - /** - * @param value {@link #versionId} (The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.). This is the underlying object with id, value and extensions. The accessor "getVersionId" gives direct access to the value - */ - public Meta setVersionIdElement(IdType value) { - this.versionId = value; - return this; - } - - /** - * @return The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. - */ - public String getVersionId() { - return this.versionId == null ? null : this.versionId.getValue(); - } - - /** - * @param value The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. - */ - public Meta setVersionId(String value) { - if (Utilities.noString(value)) - this.versionId = null; - else { - if (this.versionId == null) - this.versionId = new IdType(); - this.versionId.setValue(value); - } - return this; - } - - /** - * @return {@link #lastUpdated} (When the resource last changed - e.g. when the version changed.). This is the underlying object with id, value and extensions. The accessor "getLastUpdated" gives direct access to the value - */ - public InstantType getLastUpdatedElement() { - if (this.lastUpdated == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Meta.lastUpdated"); - else if (Configuration.doAutoCreate()) - this.lastUpdated = new InstantType(); // bb - return this.lastUpdated; - } - - public boolean hasLastUpdatedElement() { - return this.lastUpdated != null && !this.lastUpdated.isEmpty(); - } - - public boolean hasLastUpdated() { - return this.lastUpdated != null && !this.lastUpdated.isEmpty(); - } - - /** - * @param value {@link #lastUpdated} (When the resource last changed - e.g. when the version changed.). This is the underlying object with id, value and extensions. The accessor "getLastUpdated" gives direct access to the value - */ - public Meta setLastUpdatedElement(InstantType value) { - this.lastUpdated = value; - return this; - } - - /** - * @return When the resource last changed - e.g. when the version changed. - */ - public Date getLastUpdated() { - return this.lastUpdated == null ? null : this.lastUpdated.getValue(); - } - - /** - * @param value When the resource last changed - e.g. when the version changed. - */ - public Meta setLastUpdated(Date value) { - if (value == null) - this.lastUpdated = null; - else { - if (this.lastUpdated == null) - this.lastUpdated = new InstantType(); - this.lastUpdated.setValue(value); - } - return this; - } - - /** - * @return {@link #source} (A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.). This is the underlying object with id, value and extensions. The accessor "getSource" gives direct access to the value - */ - public UriType getSourceElement() { - if (this.source == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Meta.source"); - else if (Configuration.doAutoCreate()) - this.source = new UriType(); // bb - return this.source; - } - - public boolean hasSourceElement() { - return this.source != null && !this.source.isEmpty(); - } - - public boolean hasSource() { - return this.source != null && !this.source.isEmpty(); - } - - /** - * @param value {@link #source} (A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.). This is the underlying object with id, value and extensions. The accessor "getSource" gives direct access to the value - */ - public Meta setSourceElement(UriType value) { - this.source = value; - return this; - } - - /** - * @return A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. - */ - public String getSource() { - return this.source == null ? null : this.source.getValue(); - } - - /** - * @param value A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. - */ - public Meta setSource(String value) { - if (Utilities.noString(value)) - this.source = null; - else { - if (this.source == null) - this.source = new UriType(); - this.source.setValue(value); - } - return this; - } - - /** - * @return {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) - */ - public List getProfile() { - if (this.profile == null) - this.profile = new ArrayList(); - return this.profile; - } - - /** - * @return Returns a reference to this for easy method chaining - */ - public Meta setProfile(List theProfile) { - this.profile = theProfile; - return this; - } - - public boolean hasProfile() { - if (this.profile == null) - return false; - for (CanonicalType item : this.profile) - if (!item.isEmpty()) - return true; - return false; - } - - /** - * @return {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) - */ - public CanonicalType addProfileElement() {//2 - CanonicalType t = new CanonicalType(); - if (this.profile == null) - this.profile = new ArrayList(); - this.profile.add(t); - return t; - } - - /** - * @param value {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) - */ - public Meta addProfile(String value) { //1 - CanonicalType t = new CanonicalType(); - t.setValue(value); - if (this.profile == null) - this.profile = new ArrayList(); - this.profile.add(t); - return this; - } - - /** - * @param value {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) - */ - public boolean hasProfile(String value) { - if (this.profile == null) - return false; - for (CanonicalType v : this.profile) - if (v.getValue().equals(value)) // canonical - return true; - return false; - } - - /** - * @return {@link #security} (Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.) - */ - public List getSecurity() { - if (this.security == null) - this.security = new ArrayList(); - return this.security; - } - - /** - * @return Returns a reference to this for easy method chaining - */ - public Meta setSecurity(List theSecurity) { - this.security = theSecurity; - return this; - } - - public boolean hasSecurity() { - if (this.security == null) - return false; - for (Coding item : this.security) - if (!item.isEmpty()) - return true; - return false; - } - - public Coding addSecurity() { //3 - Coding t = new Coding(); - if (this.security == null) - this.security = new ArrayList(); - this.security.add(t); - return t; - } - - public Meta addSecurity(Coding t) { //3 - if (t == null) - return this; - if (this.security == null) - this.security = new ArrayList(); - this.security.add(t); - return this; - } - - /** - * @return The first repetition of repeating field {@link #security}, creating it if it does not already exist {3} - */ - public Coding getSecurityFirstRep() { - if (getSecurity().isEmpty()) { - addSecurity(); - } - return getSecurity().get(0); - } - - /** - * @return {@link #tag} (Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.) - */ - public List getTag() { - if (this.tag == null) - this.tag = new ArrayList(); - return this.tag; - } - - /** - * @return Returns a reference to this for easy method chaining - */ - public Meta setTag(List theTag) { - this.tag = theTag; - return this; - } - - public boolean hasTag() { - if (this.tag == null) - return false; - for (Coding item : this.tag) - if (!item.isEmpty()) - return true; - return false; - } - - public Coding addTag() { //3 - Coding t = new Coding(); - if (this.tag == null) - this.tag = new ArrayList(); - this.tag.add(t); - return t; - } - - public Meta addTag(Coding t) { //3 - if (t == null) - return this; - if (this.tag == null) - this.tag = new ArrayList(); - this.tag.add(t); - return this; - } - - /** - * @return The first repetition of repeating field {@link #tag}, creating it if it does not already exist {3} - */ - public Coding getTagFirstRep() { - if (getTag().isEmpty()) { - addTag(); - } - return getTag().get(0); - } - - protected void listChildren(List children) { - super.listChildren(children); - children.add(new Property("versionId", "id", "The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.", 0, 1, versionId)); - children.add(new Property("lastUpdated", "instant", "When the resource last changed - e.g. when the version changed.", 0, 1, lastUpdated)); - children.add(new Property("source", "uri", "A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.", 0, 1, source)); - children.add(new Property("profile", "canonical(StructureDefinition)", "A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).", 0, java.lang.Integer.MAX_VALUE, profile)); - children.add(new Property("security", "Coding", "Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.", 0, java.lang.Integer.MAX_VALUE, security)); - children.add(new Property("tag", "Coding", "Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.", 0, java.lang.Integer.MAX_VALUE, tag)); - } - - @Override - public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { - switch (_hash) { - case -1407102957: /*versionId*/ return new Property("versionId", "id", "The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.", 0, 1, versionId); - case 1649733957: /*lastUpdated*/ return new Property("lastUpdated", "instant", "When the resource last changed - e.g. when the version changed.", 0, 1, lastUpdated); - case -896505829: /*source*/ return new Property("source", "uri", "A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.", 0, 1, source); - case -309425751: /*profile*/ return new Property("profile", "canonical(StructureDefinition)", "A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).", 0, java.lang.Integer.MAX_VALUE, profile); - case 949122880: /*security*/ return new Property("security", "Coding", "Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.", 0, java.lang.Integer.MAX_VALUE, security); - case 114586: /*tag*/ return new Property("tag", "Coding", "Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.", 0, java.lang.Integer.MAX_VALUE, tag); - default: return super.getNamedProperty(_hash, _name, _checkValid); - } - - } - - @Override - public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { - switch (hash) { - case -1407102957: /*versionId*/ return this.versionId == null ? new Base[0] : new Base[] {this.versionId}; // IdType - case 1649733957: /*lastUpdated*/ return this.lastUpdated == null ? new Base[0] : new Base[] {this.lastUpdated}; // InstantType - case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // UriType - case -309425751: /*profile*/ return this.profile == null ? new Base[0] : this.profile.toArray(new Base[this.profile.size()]); // CanonicalType - case 949122880: /*security*/ return this.security == null ? new Base[0] : this.security.toArray(new Base[this.security.size()]); // Coding - case 114586: /*tag*/ return this.tag == null ? new Base[0] : this.tag.toArray(new Base[this.tag.size()]); // Coding - default: return super.getProperty(hash, name, checkValid); - } - - } - - @Override - public Base setProperty(int hash, String name, Base value) throws FHIRException { - switch (hash) { - case -1407102957: // versionId - this.versionId = TypeConvertor.castToId(value); // IdType - return value; - case 1649733957: // lastUpdated - this.lastUpdated = TypeConvertor.castToInstant(value); // InstantType - return value; - case -896505829: // source - this.source = TypeConvertor.castToUri(value); // UriType - return value; - case -309425751: // profile - this.getProfile().add(TypeConvertor.castToCanonical(value)); // CanonicalType - return value; - case 949122880: // security - this.getSecurity().add(TypeConvertor.castToCoding(value)); // Coding - return value; - case 114586: // tag - this.getTag().add(TypeConvertor.castToCoding(value)); // Coding - return value; - default: return super.setProperty(hash, name, value); - } - - } - - @Override - public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("versionId")) { - this.versionId = TypeConvertor.castToId(value); // IdType - } else if (name.equals("lastUpdated")) { - this.lastUpdated = TypeConvertor.castToInstant(value); // InstantType - } else if (name.equals("source")) { - this.source = TypeConvertor.castToUri(value); // UriType - } else if (name.equals("profile")) { - this.getProfile().add(TypeConvertor.castToCanonical(value)); - } else if (name.equals("security")) { - this.getSecurity().add(TypeConvertor.castToCoding(value)); - } else if (name.equals("tag")) { - this.getTag().add(TypeConvertor.castToCoding(value)); - } else - return super.setProperty(name, value); - return value; - } - - @Override - public Base makeProperty(int hash, String name) throws FHIRException { - switch (hash) { - case -1407102957: return getVersionIdElement(); - case 1649733957: return getLastUpdatedElement(); - case -896505829: return getSourceElement(); - case -309425751: return addProfileElement(); - case 949122880: return addSecurity(); - case 114586: return addTag(); - default: return super.makeProperty(hash, name); - } - - } - - @Override - public String[] getTypesForProperty(int hash, String name) throws FHIRException { - switch (hash) { - case -1407102957: /*versionId*/ return new String[] {"id"}; - case 1649733957: /*lastUpdated*/ return new String[] {"instant"}; - case -896505829: /*source*/ return new String[] {"uri"}; - case -309425751: /*profile*/ return new String[] {"canonical"}; - case 949122880: /*security*/ return new String[] {"Coding"}; - case 114586: /*tag*/ return new String[] {"Coding"}; - default: return super.getTypesForProperty(hash, name); - } - - } - - @Override - public Base addChild(String name) throws FHIRException { - if (name.equals("versionId")) { - throw new FHIRException("Cannot call addChild on a primitive type Meta.versionId"); - } - else if (name.equals("lastUpdated")) { - throw new FHIRException("Cannot call addChild on a primitive type Meta.lastUpdated"); - } - else if (name.equals("source")) { - throw new FHIRException("Cannot call addChild on a primitive type Meta.source"); - } - else if (name.equals("profile")) { - throw new FHIRException("Cannot call addChild on a primitive type Meta.profile"); - } - else if (name.equals("security")) { - return addSecurity(); - } - else if (name.equals("tag")) { - return addTag(); - } - else - return super.addChild(name); - } - - public String fhirType() { - return "Meta"; - - } - - public Meta copy() { - Meta dst = new Meta(); - copyValues(dst); - return dst; - } - - public void copyValues(Meta dst) { - super.copyValues(dst); - dst.versionId = versionId == null ? null : versionId.copy(); - dst.lastUpdated = lastUpdated == null ? null : lastUpdated.copy(); - dst.source = source == null ? null : source.copy(); - if (profile != null) { - dst.profile = new ArrayList(); - for (CanonicalType i : profile) - dst.profile.add(i.copy()); - }; - if (security != null) { - dst.security = new ArrayList(); - for (Coding i : security) - dst.security.add(i.copy()); - }; - if (tag != null) { - dst.tag = new ArrayList(); - for (Coding i : tag) - dst.tag.add(i.copy()); - }; - } - - protected Meta typedCopy() { - return copy(); - } - - @Override - public boolean equalsDeep(Base other_) { - if (!super.equalsDeep(other_)) - return false; - if (!(other_ instanceof Meta)) - return false; - Meta o = (Meta) other_; - return compareDeep(versionId, o.versionId, true) && compareDeep(lastUpdated, o.lastUpdated, true) - && compareDeep(source, o.source, true) && compareDeep(profile, o.profile, true) && compareDeep(security, o.security, true) - && compareDeep(tag, o.tag, true); - } - - @Override - public boolean equalsShallow(Base other_) { - if (!super.equalsShallow(other_)) - return false; - if (!(other_ instanceof Meta)) - return false; - Meta o = (Meta) other_; - return compareValues(versionId, o.versionId, true) && compareValues(lastUpdated, o.lastUpdated, true) - && compareValues(source, o.source, true) && compareValues(profile, o.profile, true); - } - - public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(versionId, lastUpdated, source - , profile, security, tag); - } - -// Manual code (from Configuration.txt)t: - /** - * Convenience method which adds a tag - * - * @param theSystem The code system - * @param theCode The code - * @param theDisplay The display name - * @return Returns a reference to this for easy chaining - */ - public Meta addTag(String theSystem, String theCode, String theDisplay) { - addTag().setSystem(theSystem).setCode(theCode).setDisplay(theDisplay); - return this; - } - - /** - * Returns the first tag (if any) that has the given system and code, or returns - * null if none - */ - public Coding getTag(String theSystem, String theCode) { - for (Coding next : getTag()) { - if (ca.uhn.fhir.util.ObjectUtil.equals(next.getSystem(), theSystem) && ca.uhn.fhir.util.ObjectUtil.equals(next.getCode(), theCode)) { - return next; - } - } - return null; - } - - /** - * Returns the first security label (if any) that has the given system and code, or returns - * null if none - */ - public Coding getSecurity(String theSystem, String theCode) { - for (Coding next : getSecurity()) { - if (ca.uhn.fhir.util.ObjectUtil.equals(next.getSystem(), theSystem) && ca.uhn.fhir.util.ObjectUtil.equals(next.getCode(), theCode)) { - return next; - } - } - return null; - } - -// end addition - -} - +package org.hl7.fhir.r5.model; + + +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.r5.model.Enumerations.*; +import org.hl7.fhir.instance.model.api.IBaseDatatypeElement; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.instance.model.api.ICompositeType; +import ca.uhn.fhir.model.api.annotation.Child; +import ca.uhn.fhir.model.api.annotation.ChildOrder; +import ca.uhn.fhir.model.api.annotation.DatatypeDef; +import ca.uhn.fhir.model.api.annotation.Description; +import ca.uhn.fhir.model.api.annotation.Block; + +import org.hl7.fhir.instance.model.api.IBaseMetaType; +/** + * Base StructureDefinition for Meta Type: The metadata about a resource. This is content in the resource that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource. + */ +@DatatypeDef(name="Meta") +public class Meta extends DataType implements IBaseMetaType { + + /** + * The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. + */ + @Child(name = "versionId", type = {IdType.class}, order=0, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Version specific identifier", formalDefinition="The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted." ) + protected IdType versionId; + + /** + * When the resource last changed - e.g. when the version changed. + */ + @Child(name = "lastUpdated", type = {InstantType.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="When the resource version last changed", formalDefinition="When the resource last changed - e.g. when the version changed." ) + protected InstantType lastUpdated; + + /** + * A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. + */ + @Child(name = "source", type = {UriType.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Identifies where the resource comes from", formalDefinition="A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc." ) + protected UriType source; + + /** + * A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url). + */ + @Child(name = "profile", type = {CanonicalType.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Profiles this resource claims to conform to", formalDefinition="A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url)." ) + protected List profile; + + /** + * Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure. + */ + @Child(name = "security", type = {Coding.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Security Labels applied to this resource", formalDefinition="Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/security-labels") + protected List security; + + /** + * Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource. + */ + @Child(name = "tag", type = {Coding.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Tags applied to this resource", formalDefinition="Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/common-tags") + protected List tag; + + private static final long serialVersionUID = -1386695622L; + + /** + * Constructor + */ + public Meta() { + super(); + } + + /** + * @return {@link #versionId} (The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.). This is the underlying object with id, value and extensions. The accessor "getVersionId" gives direct access to the value + */ + public IdType getVersionIdElement() { + if (this.versionId == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Meta.versionId"); + else if (Configuration.doAutoCreate()) + this.versionId = new IdType(); // bb + return this.versionId; + } + + public boolean hasVersionIdElement() { + return this.versionId != null && !this.versionId.isEmpty(); + } + + public boolean hasVersionId() { + return this.versionId != null && !this.versionId.isEmpty(); + } + + /** + * @param value {@link #versionId} (The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.). This is the underlying object with id, value and extensions. The accessor "getVersionId" gives direct access to the value + */ + public Meta setVersionIdElement(IdType value) { + this.versionId = value; + return this; + } + + /** + * @return The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. + */ + public String getVersionId() { + return this.versionId == null ? null : this.versionId.getValue(); + } + + /** + * @param value The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted. + */ + public Meta setVersionId(String value) { + if (Utilities.noString(value)) + this.versionId = null; + else { + if (this.versionId == null) + this.versionId = new IdType(); + this.versionId.setValue(value); + } + return this; + } + + /** + * @return {@link #lastUpdated} (When the resource last changed - e.g. when the version changed.). This is the underlying object with id, value and extensions. The accessor "getLastUpdated" gives direct access to the value + */ + public InstantType getLastUpdatedElement() { + if (this.lastUpdated == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Meta.lastUpdated"); + else if (Configuration.doAutoCreate()) + this.lastUpdated = new InstantType(); // bb + return this.lastUpdated; + } + + public boolean hasLastUpdatedElement() { + return this.lastUpdated != null && !this.lastUpdated.isEmpty(); + } + + public boolean hasLastUpdated() { + return this.lastUpdated != null && !this.lastUpdated.isEmpty(); + } + + /** + * @param value {@link #lastUpdated} (When the resource last changed - e.g. when the version changed.). This is the underlying object with id, value and extensions. The accessor "getLastUpdated" gives direct access to the value + */ + public Meta setLastUpdatedElement(InstantType value) { + this.lastUpdated = value; + return this; + } + + /** + * @return When the resource last changed - e.g. when the version changed. + */ + public Date getLastUpdated() { + return this.lastUpdated == null ? null : this.lastUpdated.getValue(); + } + + /** + * @param value When the resource last changed - e.g. when the version changed. + */ + public Meta setLastUpdated(Date value) { + if (value == null) + this.lastUpdated = null; + else { + if (this.lastUpdated == null) + this.lastUpdated = new InstantType(); + this.lastUpdated.setValue(value); + } + return this; + } + + /** + * @return {@link #source} (A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.). This is the underlying object with id, value and extensions. The accessor "getSource" gives direct access to the value + */ + public UriType getSourceElement() { + if (this.source == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Meta.source"); + else if (Configuration.doAutoCreate()) + this.source = new UriType(); // bb + return this.source; + } + + public boolean hasSourceElement() { + return this.source != null && !this.source.isEmpty(); + } + + public boolean hasSource() { + return this.source != null && !this.source.isEmpty(); + } + + /** + * @param value {@link #source} (A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.). This is the underlying object with id, value and extensions. The accessor "getSource" gives direct access to the value + */ + public Meta setSourceElement(UriType value) { + this.source = value; + return this; + } + + /** + * @return A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. + */ + public String getSource() { + return this.source == null ? null : this.source.getValue(); + } + + /** + * @param value A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc. + */ + public Meta setSource(String value) { + if (Utilities.noString(value)) + this.source = null; + else { + if (this.source == null) + this.source = new UriType(); + this.source.setValue(value); + } + return this; + } + + /** + * @return {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) + */ + public List getProfile() { + if (this.profile == null) + this.profile = new ArrayList(); + return this.profile; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Meta setProfile(List theProfile) { + this.profile = theProfile; + return this; + } + + public boolean hasProfile() { + if (this.profile == null) + return false; + for (CanonicalType item : this.profile) + if (!item.isEmpty()) + return true; + return false; + } + + /** + * @return {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) + */ + public CanonicalType addProfileElement() {//2 + CanonicalType t = new CanonicalType(); + if (this.profile == null) + this.profile = new ArrayList(); + this.profile.add(t); + return t; + } + + /** + * @param value {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) + */ + public Meta addProfile(String value) { //1 + CanonicalType t = new CanonicalType(); + t.setValue(value); + if (this.profile == null) + this.profile = new ArrayList(); + this.profile.add(t); + return this; + } + + /** + * @param value {@link #profile} (A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).) + */ + public boolean hasProfile(String value) { + if (this.profile == null) + return false; + for (CanonicalType v : this.profile) + if (v.getValue().equals(value)) // canonical + return true; + return false; + } + + /** + * @return {@link #security} (Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.) + */ + public List getSecurity() { + if (this.security == null) + this.security = new ArrayList(); + return this.security; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Meta setSecurity(List theSecurity) { + this.security = theSecurity; + return this; + } + + public boolean hasSecurity() { + if (this.security == null) + return false; + for (Coding item : this.security) + if (!item.isEmpty()) + return true; + return false; + } + + public Coding addSecurity() { //3 + Coding t = new Coding(); + if (this.security == null) + this.security = new ArrayList(); + this.security.add(t); + return t; + } + + public Meta addSecurity(Coding t) { //3 + if (t == null) + return this; + if (this.security == null) + this.security = new ArrayList(); + this.security.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #security}, creating it if it does not already exist {3} + */ + public Coding getSecurityFirstRep() { + if (getSecurity().isEmpty()) { + addSecurity(); + } + return getSecurity().get(0); + } + + /** + * @return {@link #tag} (Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.) + */ + public List getTag() { + if (this.tag == null) + this.tag = new ArrayList(); + return this.tag; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Meta setTag(List theTag) { + this.tag = theTag; + return this; + } + + public boolean hasTag() { + if (this.tag == null) + return false; + for (Coding item : this.tag) + if (!item.isEmpty()) + return true; + return false; + } + + public Coding addTag() { //3 + Coding t = new Coding(); + if (this.tag == null) + this.tag = new ArrayList(); + this.tag.add(t); + return t; + } + + public Meta addTag(Coding t) { //3 + if (t == null) + return this; + if (this.tag == null) + this.tag = new ArrayList(); + this.tag.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #tag}, creating it if it does not already exist {3} + */ + public Coding getTagFirstRep() { + if (getTag().isEmpty()) { + addTag(); + } + return getTag().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("versionId", "id", "The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.", 0, 1, versionId)); + children.add(new Property("lastUpdated", "instant", "When the resource last changed - e.g. when the version changed.", 0, 1, lastUpdated)); + children.add(new Property("source", "uri", "A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.", 0, 1, source)); + children.add(new Property("profile", "canonical(StructureDefinition)", "A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).", 0, java.lang.Integer.MAX_VALUE, profile)); + children.add(new Property("security", "Coding", "Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.", 0, java.lang.Integer.MAX_VALUE, security)); + children.add(new Property("tag", "Coding", "Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.", 0, java.lang.Integer.MAX_VALUE, tag)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1407102957: /*versionId*/ return new Property("versionId", "id", "The version specific identifier, as it appears in the version portion of the URL. This value changes when the resource is created, updated, or deleted.", 0, 1, versionId); + case 1649733957: /*lastUpdated*/ return new Property("lastUpdated", "instant", "When the resource last changed - e.g. when the version changed.", 0, 1, lastUpdated); + case -896505829: /*source*/ return new Property("source", "uri", "A uri that identifies the source system of the resource. This provides a minimal amount of [Provenance](provenance.html#) information that can be used to track or differentiate the source of information in the resource. The source may identify another FHIR server, document, message, database, etc.", 0, 1, source); + case -309425751: /*profile*/ return new Property("profile", "canonical(StructureDefinition)", "A list of profiles (references to [StructureDefinition](structuredefinition.html#) resources) that this resource claims to conform to. The URL is a reference to [StructureDefinition.url](structuredefinition-definitions.html#StructureDefinition.url).", 0, java.lang.Integer.MAX_VALUE, profile); + case 949122880: /*security*/ return new Property("security", "Coding", "Security labels applied to this resource. These tags connect specific resources to the overall security policy and infrastructure.", 0, java.lang.Integer.MAX_VALUE, security); + case 114586: /*tag*/ return new Property("tag", "Coding", "Tags applied to this resource. Tags are intended to be used to identify and relate resources to process and workflow, and applications are not required to consider the tags when interpreting the meaning of a resource.", 0, java.lang.Integer.MAX_VALUE, tag); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1407102957: /*versionId*/ return this.versionId == null ? new Base[0] : new Base[] {this.versionId}; // IdType + case 1649733957: /*lastUpdated*/ return this.lastUpdated == null ? new Base[0] : new Base[] {this.lastUpdated}; // InstantType + case -896505829: /*source*/ return this.source == null ? new Base[0] : new Base[] {this.source}; // UriType + case -309425751: /*profile*/ return this.profile == null ? new Base[0] : this.profile.toArray(new Base[this.profile.size()]); // CanonicalType + case 949122880: /*security*/ return this.security == null ? new Base[0] : this.security.toArray(new Base[this.security.size()]); // Coding + case 114586: /*tag*/ return this.tag == null ? new Base[0] : this.tag.toArray(new Base[this.tag.size()]); // Coding + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1407102957: // versionId + this.versionId = TypeConvertor.castToId(value); // IdType + return value; + case 1649733957: // lastUpdated + this.lastUpdated = TypeConvertor.castToInstant(value); // InstantType + return value; + case -896505829: // source + this.source = TypeConvertor.castToUri(value); // UriType + return value; + case -309425751: // profile + this.getProfile().add(TypeConvertor.castToCanonical(value)); // CanonicalType + return value; + case 949122880: // security + this.getSecurity().add(TypeConvertor.castToCoding(value)); // Coding + return value; + case 114586: // tag + this.getTag().add(TypeConvertor.castToCoding(value)); // Coding + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("versionId")) { + this.versionId = TypeConvertor.castToId(value); // IdType + } else if (name.equals("lastUpdated")) { + this.lastUpdated = TypeConvertor.castToInstant(value); // InstantType + } else if (name.equals("source")) { + this.source = TypeConvertor.castToUri(value); // UriType + } else if (name.equals("profile")) { + this.getProfile().add(TypeConvertor.castToCanonical(value)); + } else if (name.equals("security")) { + this.getSecurity().add(TypeConvertor.castToCoding(value)); + } else if (name.equals("tag")) { + this.getTag().add(TypeConvertor.castToCoding(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1407102957: return getVersionIdElement(); + case 1649733957: return getLastUpdatedElement(); + case -896505829: return getSourceElement(); + case -309425751: return addProfileElement(); + case 949122880: return addSecurity(); + case 114586: return addTag(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1407102957: /*versionId*/ return new String[] {"id"}; + case 1649733957: /*lastUpdated*/ return new String[] {"instant"}; + case -896505829: /*source*/ return new String[] {"uri"}; + case -309425751: /*profile*/ return new String[] {"canonical"}; + case 949122880: /*security*/ return new String[] {"Coding"}; + case 114586: /*tag*/ return new String[] {"Coding"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("versionId")) { + throw new FHIRException("Cannot call addChild on a primitive type Meta.versionId"); + } + else if (name.equals("lastUpdated")) { + throw new FHIRException("Cannot call addChild on a primitive type Meta.lastUpdated"); + } + else if (name.equals("source")) { + throw new FHIRException("Cannot call addChild on a primitive type Meta.source"); + } + else if (name.equals("profile")) { + throw new FHIRException("Cannot call addChild on a primitive type Meta.profile"); + } + else if (name.equals("security")) { + return addSecurity(); + } + else if (name.equals("tag")) { + return addTag(); + } + else + return super.addChild(name); + } + + public String fhirType() { + return "Meta"; + + } + + public Meta copy() { + Meta dst = new Meta(); + copyValues(dst); + return dst; + } + + public void copyValues(Meta dst) { + super.copyValues(dst); + dst.versionId = versionId == null ? null : versionId.copy(); + dst.lastUpdated = lastUpdated == null ? null : lastUpdated.copy(); + dst.source = source == null ? null : source.copy(); + if (profile != null) { + dst.profile = new ArrayList(); + for (CanonicalType i : profile) + dst.profile.add(i.copy()); + }; + if (security != null) { + dst.security = new ArrayList(); + for (Coding i : security) + dst.security.add(i.copy()); + }; + if (tag != null) { + dst.tag = new ArrayList(); + for (Coding i : tag) + dst.tag.add(i.copy()); + }; + } + + protected Meta typedCopy() { + return copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof Meta)) + return false; + Meta o = (Meta) other_; + return compareDeep(versionId, o.versionId, true) && compareDeep(lastUpdated, o.lastUpdated, true) + && compareDeep(source, o.source, true) && compareDeep(profile, o.profile, true) && compareDeep(security, o.security, true) + && compareDeep(tag, o.tag, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof Meta)) + return false; + Meta o = (Meta) other_; + return compareValues(versionId, o.versionId, true) && compareValues(lastUpdated, o.lastUpdated, true) + && compareValues(source, o.source, true) && compareValues(profile, o.profile, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(versionId, lastUpdated, source + , profile, security, tag); + } + +// Manual code (from Configuration.txt)t: + /** + * Convenience method which adds a tag + * + * @param theSystem The code system + * @param theCode The code + * @param theDisplay The display name + * @return Returns a reference to this for easy chaining + */ + public Meta addTag(String theSystem, String theCode, String theDisplay) { + addTag().setSystem(theSystem).setCode(theCode).setDisplay(theDisplay); + return this; + } + + /** + * Returns the first tag (if any) that has the given system and code, or returns + * null if none + */ + public Coding getTag(String theSystem, String theCode) { + for (Coding next : getTag()) { + if (ca.uhn.fhir.util.ObjectUtil.equals(next.getSystem(), theSystem) && ca.uhn.fhir.util.ObjectUtil.equals(next.getCode(), theCode)) { + return next; + } + } + return null; + } + + /** + * Returns the first security label (if any) that has the given system and code, or returns + * null if none + */ + public Coding getSecurity(String theSystem, String theCode) { + for (Coding next : getSecurity()) { + if (ca.uhn.fhir.util.ObjectUtil.equals(next.getSystem(), theSystem) && ca.uhn.fhir.util.ObjectUtil.equals(next.getCode(), theCode)) { + return next; + } + } + return null; + } + +// end addition + +} + diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MetadataResource.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MetadataResource.java index df5c1f78e..a9e941dfe 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MetadataResource.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MetadataResource.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MolecularSequence.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MolecularSequence.java index 0b13bdefa..1fd1fb090 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MolecularSequence.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/MolecularSequence.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Money.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Money.java index 446ace8d7..baaf31c59 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Money.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Money.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NamingSystem.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NamingSystem.java index 154264cac..67f845279 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NamingSystem.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NamingSystem.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Narrative.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Narrative.java index 12e6530dc..994e73663 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Narrative.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Narrative.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -209,7 +209,7 @@ public class Narrative extends BaseNarrative implements INarrative { /** * The actual narrative content, a stripped down version of XHTML. */ - @Child(name = "div", type = {}, order=1, min=1, max=1, modifier=false, summary=false) + @Child(name = "div", type = {XhtmlType.class}, order=1, min=1, max=1, modifier=false, summary=false) @Description(shortDefinition="Limited xhtml content", formalDefinition="The actual narrative content, a stripped down version of XHTML." ) protected XhtmlNode div; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionIntake.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionIntake.java index 0dde9192d..bff3ae1b4 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionIntake.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionIntake.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -73,194 +73,6 @@ import ca.uhn.fhir.model.api.annotation.Block; @ResourceDef(name="NutritionIntake", profile="http://hl7.org/fhir/StructureDefinition/NutritionIntake") public class NutritionIntake extends DomainResource { - public enum NutritionIntakeStatusCodes { - /** - * The nutrition is still being taken. - */ - ACTIVE, - /** - * The nutrition is no longer being taken. - */ - COMPLETED, - /** - * Some of the actions that are implied by the nutrition usage may have occurred. For example, the patient may have taken some of the nutrition. Clinical decision support systems should take this status into account. - */ - ENTEREDINERROR, - /** - * The nutrition may be taken at some time in the future. - */ - INTENDED, - /** - * Actions implied by the usage have been permanently halted, before all of them occurred. This should not be used if the statement was entered in error. - */ - STOPPED, - /** - * Actions implied by the usage have been temporarily halted, but are expected to continue later. May also be called 'suspended'. - */ - ONHOLD, - /** - * The state of the nutrition use is not currently known. - */ - UNKNOWN, - /** - * The nutrition was not consumed by the patient - */ - NOTTAKEN, - /** - * added to help the parsers with the generic types - */ - NULL; - public static NutritionIntakeStatusCodes fromCode(String codeString) throws FHIRException { - if (codeString == null || "".equals(codeString)) - return null; - if ("active".equals(codeString)) - return ACTIVE; - if ("completed".equals(codeString)) - return COMPLETED; - if ("entered-in-error".equals(codeString)) - return ENTEREDINERROR; - if ("intended".equals(codeString)) - return INTENDED; - if ("stopped".equals(codeString)) - return STOPPED; - if ("on-hold".equals(codeString)) - return ONHOLD; - if ("unknown".equals(codeString)) - return UNKNOWN; - if ("not-taken".equals(codeString)) - return NOTTAKEN; - if (Configuration.isAcceptInvalidEnums()) - return null; - else - throw new FHIRException("Unknown NutritionIntakeStatusCodes code '"+codeString+"'"); - } - public String toCode() { - switch (this) { - case ACTIVE: return "active"; - case COMPLETED: return "completed"; - case ENTEREDINERROR: return "entered-in-error"; - case INTENDED: return "intended"; - case STOPPED: return "stopped"; - case ONHOLD: return "on-hold"; - case UNKNOWN: return "unknown"; - case NOTTAKEN: return "not-taken"; - default: return "?"; - } - } - public String getSystem() { - switch (this) { - case ACTIVE: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case COMPLETED: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case ENTEREDINERROR: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case INTENDED: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case STOPPED: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case ONHOLD: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case UNKNOWN: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - case NOTTAKEN: return "http://hl7.org/fhir/CodeSystem/nutrition-intake-status"; - default: return "?"; - } - } - public String getDefinition() { - switch (this) { - case ACTIVE: return "The nutrition is still being taken."; - case COMPLETED: return "The nutrition is no longer being taken."; - case ENTEREDINERROR: return "Some of the actions that are implied by the nutrition usage may have occurred. For example, the patient may have taken some of the nutrition. Clinical decision support systems should take this status into account."; - case INTENDED: return "The nutrition may be taken at some time in the future."; - case STOPPED: return "Actions implied by the usage have been permanently halted, before all of them occurred. This should not be used if the statement was entered in error."; - case ONHOLD: return "Actions implied by the usage have been temporarily halted, but are expected to continue later. May also be called 'suspended'."; - case UNKNOWN: return "The state of the nutrition use is not currently known."; - case NOTTAKEN: return "The nutrition was not consumed by the patient"; - default: return "?"; - } - } - public String getDisplay() { - switch (this) { - case ACTIVE: return "Active"; - case COMPLETED: return "Completed"; - case ENTEREDINERROR: return "Entered in Error"; - case INTENDED: return "Intended"; - case STOPPED: return "Stopped"; - case ONHOLD: return "On Hold"; - case UNKNOWN: return "Unknown"; - case NOTTAKEN: return "Not Taken"; - default: return "?"; - } - } - } - - public static class NutritionIntakeStatusCodesEnumFactory implements EnumFactory { - public NutritionIntakeStatusCodes fromCode(String codeString) throws IllegalArgumentException { - if (codeString == null || "".equals(codeString)) - if (codeString == null || "".equals(codeString)) - return null; - if ("active".equals(codeString)) - return NutritionIntakeStatusCodes.ACTIVE; - if ("completed".equals(codeString)) - return NutritionIntakeStatusCodes.COMPLETED; - if ("entered-in-error".equals(codeString)) - return NutritionIntakeStatusCodes.ENTEREDINERROR; - if ("intended".equals(codeString)) - return NutritionIntakeStatusCodes.INTENDED; - if ("stopped".equals(codeString)) - return NutritionIntakeStatusCodes.STOPPED; - if ("on-hold".equals(codeString)) - return NutritionIntakeStatusCodes.ONHOLD; - if ("unknown".equals(codeString)) - return NutritionIntakeStatusCodes.UNKNOWN; - if ("not-taken".equals(codeString)) - return NutritionIntakeStatusCodes.NOTTAKEN; - throw new IllegalArgumentException("Unknown NutritionIntakeStatusCodes code '"+codeString+"'"); - } - public Enumeration fromType(Base code) throws FHIRException { - if (code == null) - return null; - if (code.isEmpty()) - return new Enumeration(this); - String codeString = ((PrimitiveType) code).asStringValue(); - if (codeString == null || "".equals(codeString)) - return null; - if ("active".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.ACTIVE); - if ("completed".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.COMPLETED); - if ("entered-in-error".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.ENTEREDINERROR); - if ("intended".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.INTENDED); - if ("stopped".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.STOPPED); - if ("on-hold".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.ONHOLD); - if ("unknown".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.UNKNOWN); - if ("not-taken".equals(codeString)) - return new Enumeration(this, NutritionIntakeStatusCodes.NOTTAKEN); - throw new FHIRException("Unknown NutritionIntakeStatusCodes code '"+codeString+"'"); - } - public String toCode(NutritionIntakeStatusCodes code) { - if (code == NutritionIntakeStatusCodes.ACTIVE) - return "active"; - if (code == NutritionIntakeStatusCodes.COMPLETED) - return "completed"; - if (code == NutritionIntakeStatusCodes.ENTEREDINERROR) - return "entered-in-error"; - if (code == NutritionIntakeStatusCodes.INTENDED) - return "intended"; - if (code == NutritionIntakeStatusCodes.STOPPED) - return "stopped"; - if (code == NutritionIntakeStatusCodes.ONHOLD) - return "on-hold"; - if (code == NutritionIntakeStatusCodes.UNKNOWN) - return "unknown"; - if (code == NutritionIntakeStatusCodes.NOTTAKEN) - return "not-taken"; - return "?"; - } - public String toSystem(NutritionIntakeStatusCodes code) { - return code.getSystem(); - } - } - @Block() public static class NutritionIntakeConsumedItemComponent extends BackboneElement implements IBaseBackboneElement { /** @@ -268,14 +80,16 @@ public class NutritionIntake extends DomainResource { */ @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="The type of food or fluid product", formalDefinition="Indicates what a category of item that was consumed: eg., food, fluid, enteral, etc." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/edible-substance-type") protected CodeableConcept type; /** * Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods. */ - @Child(name = "nutritionProduct", type = {CodeableConcept.class}, order=2, min=1, max=1, modifier=false, summary=true) + @Child(name = "nutritionProduct", type = {CodeableReference.class}, order=2, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Code that identifies the food or fluid product that was consumed", formalDefinition="Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods." ) - protected CodeableConcept nutritionProduct; + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/food-type") + protected CodeableReference nutritionProduct; /** * Scheduled frequency of consumption. @@ -310,9 +124,10 @@ public class NutritionIntake extends DomainResource { */ @Child(name = "notConsumedReason", type = {CodeableConcept.class}, order=7, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Reason food or fluid was not consumed", formalDefinition="Document the reason the food or fluid was not consumed, such as refused, held, etc." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/not-consumed-reason") protected CodeableConcept notConsumedReason; - private static final long serialVersionUID = -608839799L; + private static final long serialVersionUID = -1625538068L; /** * Constructor @@ -324,7 +139,7 @@ public class NutritionIntake extends DomainResource { /** * Constructor */ - public NutritionIntakeConsumedItemComponent(CodeableConcept type, CodeableConcept nutritionProduct) { + public NutritionIntakeConsumedItemComponent(CodeableConcept type, CodeableReference nutritionProduct) { super(); this.setType(type); this.setNutritionProduct(nutritionProduct); @@ -357,12 +172,12 @@ public class NutritionIntake extends DomainResource { /** * @return {@link #nutritionProduct} (Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods.) */ - public CodeableConcept getNutritionProduct() { + public CodeableReference getNutritionProduct() { if (this.nutritionProduct == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create NutritionIntakeConsumedItemComponent.nutritionProduct"); else if (Configuration.doAutoCreate()) - this.nutritionProduct = new CodeableConcept(); // cc + this.nutritionProduct = new CodeableReference(); // cc return this.nutritionProduct; } @@ -373,7 +188,7 @@ public class NutritionIntake extends DomainResource { /** * @param value {@link #nutritionProduct} (Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods.) */ - public NutritionIntakeConsumedItemComponent setNutritionProduct(CodeableConcept value) { + public NutritionIntakeConsumedItemComponent setNutritionProduct(CodeableReference value) { this.nutritionProduct = value; return this; } @@ -522,7 +337,7 @@ public class NutritionIntake extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("type", "CodeableConcept", "Indicates what a category of item that was consumed: eg., food, fluid, enteral, etc.", 0, 1, type)); - children.add(new Property("nutritionProduct", "CodeableConcept", "Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods.", 0, 1, nutritionProduct)); + children.add(new Property("nutritionProduct", "CodeableReference(NutritionProduct)", "Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods.", 0, 1, nutritionProduct)); children.add(new Property("schedule", "Timing", "Scheduled frequency of consumption.", 0, 1, schedule)); children.add(new Property("amount", "Quantity", "Quantity of the specified food.", 0, 1, amount)); children.add(new Property("rate", "Quantity", "Rate at which enteral feeding was administered.", 0, 1, rate)); @@ -534,7 +349,7 @@ public class NutritionIntake extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Indicates what a category of item that was consumed: eg., food, fluid, enteral, etc.", 0, 1, type); - case -1684132297: /*nutritionProduct*/ return new Property("nutritionProduct", "CodeableConcept", "Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods.", 0, 1, nutritionProduct); + case -1684132297: /*nutritionProduct*/ return new Property("nutritionProduct", "CodeableReference(NutritionProduct)", "Identifies the food or fluid product that was consumed. This is potentially a link to a resource representing the details of the food product (TBD) or a simple attribute carrying a code that identifies the food from a known list of foods.", 0, 1, nutritionProduct); case -697920873: /*schedule*/ return new Property("schedule", "Timing", "Scheduled frequency of consumption.", 0, 1, schedule); case -1413853096: /*amount*/ return new Property("amount", "Quantity", "Quantity of the specified food.", 0, 1, amount); case 3493088: /*rate*/ return new Property("rate", "Quantity", "Rate at which enteral feeding was administered.", 0, 1, rate); @@ -549,7 +364,7 @@ public class NutritionIntake extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept - case -1684132297: /*nutritionProduct*/ return this.nutritionProduct == null ? new Base[0] : new Base[] {this.nutritionProduct}; // CodeableConcept + case -1684132297: /*nutritionProduct*/ return this.nutritionProduct == null ? new Base[0] : new Base[] {this.nutritionProduct}; // CodeableReference case -697920873: /*schedule*/ return this.schedule == null ? new Base[0] : new Base[] {this.schedule}; // Timing case -1413853096: /*amount*/ return this.amount == null ? new Base[0] : new Base[] {this.amount}; // Quantity case 3493088: /*rate*/ return this.rate == null ? new Base[0] : new Base[] {this.rate}; // Quantity @@ -567,7 +382,7 @@ public class NutritionIntake extends DomainResource { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -1684132297: // nutritionProduct - this.nutritionProduct = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.nutritionProduct = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -697920873: // schedule this.schedule = TypeConvertor.castToTiming(value); // Timing @@ -594,7 +409,7 @@ public class NutritionIntake extends DomainResource { if (name.equals("type")) { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("nutritionProduct")) { - this.nutritionProduct = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.nutritionProduct = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("schedule")) { this.schedule = TypeConvertor.castToTiming(value); // Timing } else if (name.equals("amount")) { @@ -629,7 +444,7 @@ public class NutritionIntake extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case 3575610: /*type*/ return new String[] {"CodeableConcept"}; - case -1684132297: /*nutritionProduct*/ return new String[] {"CodeableConcept"}; + case -1684132297: /*nutritionProduct*/ return new String[] {"CodeableReference"}; case -697920873: /*schedule*/ return new String[] {"Timing"}; case -1413853096: /*amount*/ return new String[] {"Quantity"}; case 3493088: /*rate*/ return new String[] {"Quantity"}; @@ -647,7 +462,7 @@ public class NutritionIntake extends DomainResource { return this.type; } else if (name.equals("nutritionProduct")) { - this.nutritionProduct = new CodeableConcept(); + this.nutritionProduct = new CodeableReference(); return this.nutritionProduct; } else if (name.equals("schedule")) { @@ -730,9 +545,10 @@ public class NutritionIntake extends DomainResource { /** * Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral. */ - @Child(name = "nutrient", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) + @Child(name = "nutrient", type = {CodeableReference.class}, order=1, min=1, max=1, modifier=false, summary=false) @Description(shortDefinition="Total nutrient consumed", formalDefinition="Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral." ) - protected CodeableConcept nutrient; + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/nutrient-code") + protected CodeableReference nutrient; /** * Total amount of nutrient consumed. @@ -741,7 +557,7 @@ public class NutritionIntake extends DomainResource { @Description(shortDefinition="Total amount of nutrient consumed", formalDefinition="Total amount of nutrient consumed." ) protected Quantity amount; - private static final long serialVersionUID = -1026365827L; + private static final long serialVersionUID = -193123424L; /** * Constructor @@ -753,7 +569,7 @@ public class NutritionIntake extends DomainResource { /** * Constructor */ - public NutritionIntakeIngredientLabelComponent(CodeableConcept nutrient, Quantity amount) { + public NutritionIntakeIngredientLabelComponent(CodeableReference nutrient, Quantity amount) { super(); this.setNutrient(nutrient); this.setAmount(amount); @@ -762,12 +578,12 @@ public class NutritionIntake extends DomainResource { /** * @return {@link #nutrient} (Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral.) */ - public CodeableConcept getNutrient() { + public CodeableReference getNutrient() { if (this.nutrient == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create NutritionIntakeIngredientLabelComponent.nutrient"); else if (Configuration.doAutoCreate()) - this.nutrient = new CodeableConcept(); // cc + this.nutrient = new CodeableReference(); // cc return this.nutrient; } @@ -778,7 +594,7 @@ public class NutritionIntake extends DomainResource { /** * @param value {@link #nutrient} (Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral.) */ - public NutritionIntakeIngredientLabelComponent setNutrient(CodeableConcept value) { + public NutritionIntakeIngredientLabelComponent setNutrient(CodeableReference value) { this.nutrient = value; return this; } @@ -809,14 +625,14 @@ public class NutritionIntake extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("nutrient", "CodeableConcept", "Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral.", 0, 1, nutrient)); + children.add(new Property("nutrient", "CodeableReference(Substance)", "Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral.", 0, 1, nutrient)); children.add(new Property("amount", "Quantity", "Total amount of nutrient consumed.", 0, 1, amount)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case -1671151641: /*nutrient*/ return new Property("nutrient", "CodeableConcept", "Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral.", 0, 1, nutrient); + case -1671151641: /*nutrient*/ return new Property("nutrient", "CodeableReference(Substance)", "Total nutrient consumed. This could be a macronutrient (protein, fat, carbohydrate), or a vitamin and mineral.", 0, 1, nutrient); case -1413853096: /*amount*/ return new Property("amount", "Quantity", "Total amount of nutrient consumed.", 0, 1, amount); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -826,7 +642,7 @@ public class NutritionIntake extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case -1671151641: /*nutrient*/ return this.nutrient == null ? new Base[0] : new Base[] {this.nutrient}; // CodeableConcept + case -1671151641: /*nutrient*/ return this.nutrient == null ? new Base[0] : new Base[] {this.nutrient}; // CodeableReference case -1413853096: /*amount*/ return this.amount == null ? new Base[0] : new Base[] {this.amount}; // Quantity default: return super.getProperty(hash, name, checkValid); } @@ -837,7 +653,7 @@ public class NutritionIntake extends DomainResource { public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { case -1671151641: // nutrient - this.nutrient = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.nutrient = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -1413853096: // amount this.amount = TypeConvertor.castToQuantity(value); // Quantity @@ -850,7 +666,7 @@ public class NutritionIntake extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { if (name.equals("nutrient")) { - this.nutrient = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + this.nutrient = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("amount")) { this.amount = TypeConvertor.castToQuantity(value); // Quantity } else @@ -871,7 +687,7 @@ public class NutritionIntake extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case -1671151641: /*nutrient*/ return new String[] {"CodeableConcept"}; + case -1671151641: /*nutrient*/ return new String[] {"CodeableReference"}; case -1413853096: /*amount*/ return new String[] {"Quantity"}; default: return super.getTypesForProperty(hash, name); } @@ -881,7 +697,7 @@ public class NutritionIntake extends DomainResource { @Override public Base addChild(String name) throws FHIRException { if (name.equals("nutrient")) { - this.nutrient = new CodeableConcept(); + this.nutrient = new CodeableReference(); return this.nutrient; } else if (name.equals("amount")) { @@ -933,6 +749,216 @@ public class NutritionIntake extends DomainResource { } + } + + @Block() + public static class NutritionIntakePerformerComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Type of performer. + */ + @Child(name = "function", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Type of performer", formalDefinition="Type of performer." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/performer-role") + protected CodeableConcept function; + + /** + * Who performed the intake. + */ + @Child(name = "actor", type = {Practitioner.class, PractitionerRole.class, Organization.class, CareTeam.class, Patient.class, Device.class, RelatedPerson.class}, order=2, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="Who performed the intake", formalDefinition="Who performed the intake." ) + protected Reference actor; + + private static final long serialVersionUID = -576943815L; + + /** + * Constructor + */ + public NutritionIntakePerformerComponent() { + super(); + } + + /** + * Constructor + */ + public NutritionIntakePerformerComponent(Reference actor) { + super(); + this.setActor(actor); + } + + /** + * @return {@link #function} (Type of performer.) + */ + public CodeableConcept getFunction() { + if (this.function == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionIntakePerformerComponent.function"); + else if (Configuration.doAutoCreate()) + this.function = new CodeableConcept(); // cc + return this.function; + } + + public boolean hasFunction() { + return this.function != null && !this.function.isEmpty(); + } + + /** + * @param value {@link #function} (Type of performer.) + */ + public NutritionIntakePerformerComponent setFunction(CodeableConcept value) { + this.function = value; + return this; + } + + /** + * @return {@link #actor} (Who performed the intake.) + */ + public Reference getActor() { + if (this.actor == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionIntakePerformerComponent.actor"); + else if (Configuration.doAutoCreate()) + this.actor = new Reference(); // cc + return this.actor; + } + + public boolean hasActor() { + return this.actor != null && !this.actor.isEmpty(); + } + + /** + * @param value {@link #actor} (Who performed the intake.) + */ + public NutritionIntakePerformerComponent setActor(Reference value) { + this.actor = value; + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("function", "CodeableConcept", "Type of performer.", 0, 1, function)); + children.add(new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|CareTeam|Patient|Device|RelatedPerson)", "Who performed the intake.", 0, 1, actor)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 1380938712: /*function*/ return new Property("function", "CodeableConcept", "Type of performer.", 0, 1, function); + case 92645877: /*actor*/ return new Property("actor", "Reference(Practitioner|PractitionerRole|Organization|CareTeam|Patient|Device|RelatedPerson)", "Who performed the intake.", 0, 1, actor); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 1380938712: /*function*/ return this.function == null ? new Base[0] : new Base[] {this.function}; // CodeableConcept + case 92645877: /*actor*/ return this.actor == null ? new Base[0] : new Base[] {this.actor}; // Reference + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 1380938712: // function + this.function = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 92645877: // actor + this.actor = TypeConvertor.castToReference(value); // Reference + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("function")) { + this.function = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("actor")) { + this.actor = TypeConvertor.castToReference(value); // Reference + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1380938712: return getFunction(); + case 92645877: return getActor(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1380938712: /*function*/ return new String[] {"CodeableConcept"}; + case 92645877: /*actor*/ return new String[] {"Reference"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("function")) { + this.function = new CodeableConcept(); + return this.function; + } + else if (name.equals("actor")) { + this.actor = new Reference(); + return this.actor; + } + else + return super.addChild(name); + } + + public NutritionIntakePerformerComponent copy() { + NutritionIntakePerformerComponent dst = new NutritionIntakePerformerComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(NutritionIntakePerformerComponent dst) { + super.copyValues(dst); + dst.function = function == null ? null : function.copy(); + dst.actor = actor == null ? null : actor.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof NutritionIntakePerformerComponent)) + return false; + NutritionIntakePerformerComponent o = (NutritionIntakePerformerComponent) other_; + return compareDeep(function, o.function, true) && compareDeep(actor, o.actor, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof NutritionIntakePerformerComponent)) + return false; + NutritionIntakePerformerComponent o = (NutritionIntakePerformerComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(function, actor); + } + + public String fhirType() { + return "NutritionIntake.performer"; + + } + } /** @@ -942,57 +968,57 @@ public class NutritionIntake extends DomainResource { @Description(shortDefinition="External identifier", formalDefinition="Identifiers associated with this Nutrition Intake that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server." ) protected List identifier; + /** + * Instantiates FHIR protocol or definition. + */ + @Child(name = "instantiatesCanonical", type = {CanonicalType.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Instantiates FHIR protocol or definition", formalDefinition="Instantiates FHIR protocol or definition." ) + protected List instantiatesCanonical; + + /** + * Instantiates external protocol or definition. + */ + @Child(name = "instantiatesUri", type = {UriType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Instantiates external protocol or definition", formalDefinition="Instantiates external protocol or definition." ) + protected List instantiatesUri; + /** * A plan, proposal or order that is fulfilled in whole or in part by this event. */ - @Child(name = "basedOn", type = {NutritionOrder.class, CarePlan.class, ServiceRequest.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "basedOn", type = {NutritionOrder.class, CarePlan.class, ServiceRequest.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Fulfils plan, proposal or order", formalDefinition="A plan, proposal or order that is fulfilled in whole or in part by this event." ) protected List basedOn; /** * A larger event of which this particular event is a component or step. */ - @Child(name = "partOf", type = {NutritionIntake.class, Procedure.class, Observation.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "partOf", type = {NutritionIntake.class, Procedure.class, Observation.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Part of referenced event", formalDefinition="A larger event of which this particular event is a component or step." ) protected List partOf; /** * A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed. */ - @Child(name = "status", type = {CodeType.class}, order=3, min=1, max=1, modifier=true, summary=true) - @Description(shortDefinition="active | completed | entered-in-error | intended | stopped | on-hold | unknown | not-taken", formalDefinition="A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/nutrition-intake-status") - protected Enumeration status; + @Child(name = "status", type = {CodeType.class}, order=5, min=1, max=1, modifier=true, summary=true) + @Description(shortDefinition="preparation | in-progress | not-done | on-hold | stopped | completed | entered-in-error | unknown", formalDefinition="A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/event-status") + protected Enumeration status; /** * Captures the reason for the current state of the NutritionIntake. */ - @Child(name = "statusReason", type = {CodeableConcept.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "statusReason", type = {CodeableConcept.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Reason for current status", formalDefinition="Captures the reason for the current state of the NutritionIntake." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/reason-medication-status-codes") protected List statusReason; /** - * Indicates where the food or fluid was consumed or prescribed. + * Type of nutrition intake setting/reporting. */ - @Child(name = "category", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Type of nutrition intake setting/reporting", formalDefinition="Indicates where the food or fluid was consumed or prescribed." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/nutrition-intake-category") - protected List category; - - /** - * What food or fluid product or item was consumed. - */ - @Child(name = "consumedItem", type = {}, order=6, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="What food or fluid product or item was consumed", formalDefinition="What food or fluid product or item was consumed." ) - protected List consumedItem; - - /** - * Total nutrient amounts for the whole meal, product, serving, etc. - */ - @Child(name = "ingredientLabel", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Total nutrient for the whole meal, product, serving", formalDefinition="Total nutrient amounts for the whole meal, product, serving, etc." ) - protected List ingredientLabel; + @Child(name = "code", type = {CodeableConcept.class}, order=7, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Type of nutrition intake setting/reporting", formalDefinition="Type of nutrition intake setting/reporting." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/diet-type") + protected CodeableConcept code; /** * The person, animal or group who is/was consuming the food or fluid. @@ -1011,46 +1037,75 @@ public class NutritionIntake extends DomainResource { /** * The interval of time during which it is being asserted that the patient is/was consuming the food or fluid. */ - @Child(name = "effective", type = {DateTimeType.class, Period.class}, order=10, min=0, max=1, modifier=false, summary=true) + @Child(name = "occurrence", type = {DateTimeType.class, Period.class}, order=10, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The date/time or interval when the food or fluid is/was consumed", formalDefinition="The interval of time during which it is being asserted that the patient is/was consuming the food or fluid." ) - protected DataType effective; + protected DataType occurrence; /** * The date when the Nutrition Intake was asserted by the information source. */ - @Child(name = "dateAsserted", type = {DateTimeType.class}, order=11, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="When the consumption was asserted?", formalDefinition="The date when the Nutrition Intake was asserted by the information source." ) - protected DateTimeType dateAsserted; + @Child(name = "recorded", type = {DateTimeType.class}, order=11, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="When the intake was recorded", formalDefinition="The date when the Nutrition Intake was asserted by the information source." ) + protected DateTimeType recorded; /** * The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources. */ - @Child(name = "informationSource", type = {Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class, Organization.class}, order=12, min=0, max=1, modifier=false, summary=false) + @Child(name = "reported", type = {BooleanType.class, Patient.class, RelatedPerson.class, Practitioner.class, PractitionerRole.class, Organization.class}, order=12, min=0, max=1, modifier=false, summary=false) @Description(shortDefinition="Person or organization that provided the information about the consumption of this food or fluid", formalDefinition="The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources." ) - protected Reference informationSource; + protected DataType reported; + + /** + * What food or fluid product or item was consumed. + */ + @Child(name = "consumedItem", type = {}, order=13, min=1, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="What food or fluid product or item was consumed", formalDefinition="What food or fluid product or item was consumed." ) + protected List consumedItem; + + /** + * Total nutrient amounts for the whole meal, product, serving, etc. + */ + @Child(name = "ingredientLabel", type = {}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Total nutrient for the whole meal, product, serving", formalDefinition="Total nutrient amounts for the whole meal, product, serving, etc." ) + protected List ingredientLabel; + + /** + * Who performed the intake and how they were involved. + */ + @Child(name = "performer", type = {}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Who was performed in the intake", formalDefinition="Who performed the intake and how they were involved." ) + protected List performer; + + /** + * Where the intake occurred. + */ + @Child(name = "location", type = {Location.class}, order=16, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="Where the intake occurred", formalDefinition="Where the intake occurred." ) + protected Reference location; /** * Allows linking the NutritionIntake to the underlying NutritionOrder, or to other information, such as AllergyIntolerance, that supports or is used to derive the NutritionIntake. */ - @Child(name = "derivedFrom", type = {Reference.class}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "derivedFrom", type = {Reference.class}, order=17, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Additional supporting information", formalDefinition="Allows linking the NutritionIntake to the underlying NutritionOrder, or to other information, such as AllergyIntolerance, that supports or is used to derive the NutritionIntake." ) protected List derivedFrom; /** * A reason, Condition or observation for why the food or fluid is /was consumed. */ - @Child(name = "reasonCode", type = {CodeableReference.class}, order=14, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "reason", type = {CodeableReference.class}, order=18, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Reason for why the food or fluid is /was consumed", formalDefinition="A reason, Condition or observation for why the food or fluid is /was consumed." ) - protected List reasonCode; + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/condition-code") + protected List reason; /** * Provides extra information about the Nutrition Intake that is not conveyed by the other attributes. */ - @Child(name = "note", type = {Annotation.class}, order=15, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Child(name = "note", type = {Annotation.class}, order=19, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) @Description(shortDefinition="Further information about the consumption", formalDefinition="Provides extra information about the Nutrition Intake that is not conveyed by the other attributes." ) protected List note; - private static final long serialVersionUID = -1197329803L; + private static final long serialVersionUID = 890692162L; /** * Constructor @@ -1062,11 +1117,11 @@ public class NutritionIntake extends DomainResource { /** * Constructor */ - public NutritionIntake(NutritionIntakeStatusCodes status, NutritionIntakeConsumedItemComponent consumedItem, Reference subject) { + public NutritionIntake(EventStatus status, Reference subject, NutritionIntakeConsumedItemComponent consumedItem) { super(); this.setStatus(status); - this.addConsumedItem(consumedItem); this.setSubject(subject); + this.addConsumedItem(consumedItem); } /** @@ -1122,6 +1177,128 @@ public class NutritionIntake extends DomainResource { return getIdentifier().get(0); } + /** + * @return {@link #instantiatesCanonical} (Instantiates FHIR protocol or definition.) + */ + public List getInstantiatesCanonical() { + if (this.instantiatesCanonical == null) + this.instantiatesCanonical = new ArrayList(); + return this.instantiatesCanonical; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionIntake setInstantiatesCanonical(List theInstantiatesCanonical) { + this.instantiatesCanonical = theInstantiatesCanonical; + return this; + } + + public boolean hasInstantiatesCanonical() { + if (this.instantiatesCanonical == null) + return false; + for (CanonicalType item : this.instantiatesCanonical) + if (!item.isEmpty()) + return true; + return false; + } + + /** + * @return {@link #instantiatesCanonical} (Instantiates FHIR protocol or definition.) + */ + public CanonicalType addInstantiatesCanonicalElement() {//2 + CanonicalType t = new CanonicalType(); + if (this.instantiatesCanonical == null) + this.instantiatesCanonical = new ArrayList(); + this.instantiatesCanonical.add(t); + return t; + } + + /** + * @param value {@link #instantiatesCanonical} (Instantiates FHIR protocol or definition.) + */ + public NutritionIntake addInstantiatesCanonical(String value) { //1 + CanonicalType t = new CanonicalType(); + t.setValue(value); + if (this.instantiatesCanonical == null) + this.instantiatesCanonical = new ArrayList(); + this.instantiatesCanonical.add(t); + return this; + } + + /** + * @param value {@link #instantiatesCanonical} (Instantiates FHIR protocol or definition.) + */ + public boolean hasInstantiatesCanonical(String value) { + if (this.instantiatesCanonical == null) + return false; + for (CanonicalType v : this.instantiatesCanonical) + if (v.getValue().equals(value)) // canonical + return true; + return false; + } + + /** + * @return {@link #instantiatesUri} (Instantiates external protocol or definition.) + */ + public List getInstantiatesUri() { + if (this.instantiatesUri == null) + this.instantiatesUri = new ArrayList(); + return this.instantiatesUri; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionIntake setInstantiatesUri(List theInstantiatesUri) { + this.instantiatesUri = theInstantiatesUri; + return this; + } + + public boolean hasInstantiatesUri() { + if (this.instantiatesUri == null) + return false; + for (UriType item : this.instantiatesUri) + if (!item.isEmpty()) + return true; + return false; + } + + /** + * @return {@link #instantiatesUri} (Instantiates external protocol or definition.) + */ + public UriType addInstantiatesUriElement() {//2 + UriType t = new UriType(); + if (this.instantiatesUri == null) + this.instantiatesUri = new ArrayList(); + this.instantiatesUri.add(t); + return t; + } + + /** + * @param value {@link #instantiatesUri} (Instantiates external protocol or definition.) + */ + public NutritionIntake addInstantiatesUri(String value) { //1 + UriType t = new UriType(); + t.setValue(value); + if (this.instantiatesUri == null) + this.instantiatesUri = new ArrayList(); + this.instantiatesUri.add(t); + return this; + } + + /** + * @param value {@link #instantiatesUri} (Instantiates external protocol or definition.) + */ + public boolean hasInstantiatesUri(String value) { + if (this.instantiatesUri == null) + return false; + for (UriType v : this.instantiatesUri) + if (v.getValue().equals(value)) // uri + return true; + return false; + } + /** * @return {@link #basedOn} (A plan, proposal or order that is fulfilled in whole or in part by this event.) */ @@ -1231,12 +1408,12 @@ public class NutritionIntake extends DomainResource { /** * @return {@link #status} (A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ - public Enumeration getStatusElement() { + public Enumeration getStatusElement() { if (this.status == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create NutritionIntake.status"); else if (Configuration.doAutoCreate()) - this.status = new Enumeration(new NutritionIntakeStatusCodesEnumFactory()); // bb + this.status = new Enumeration(new EventStatusEnumFactory()); // bb return this.status; } @@ -1251,7 +1428,7 @@ public class NutritionIntake extends DomainResource { /** * @param value {@link #status} (A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ - public NutritionIntake setStatusElement(Enumeration value) { + public NutritionIntake setStatusElement(Enumeration value) { this.status = value; return this; } @@ -1259,16 +1436,16 @@ public class NutritionIntake extends DomainResource { /** * @return A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed. */ - public NutritionIntakeStatusCodes getStatus() { + public EventStatus getStatus() { return this.status == null ? null : this.status.getValue(); } /** * @param value A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed. */ - public NutritionIntake setStatus(NutritionIntakeStatusCodes value) { + public NutritionIntake setStatus(EventStatus value) { if (this.status == null) - this.status = new Enumeration(new NutritionIntakeStatusCodesEnumFactory()); + this.status = new Enumeration(new EventStatusEnumFactory()); this.status.setValue(value); return this; } @@ -1327,56 +1504,226 @@ public class NutritionIntake extends DomainResource { } /** - * @return {@link #category} (Indicates where the food or fluid was consumed or prescribed.) + * @return {@link #code} (Type of nutrition intake setting/reporting.) */ - public List getCategory() { - if (this.category == null) - this.category = new ArrayList(); - return this.category; + public CodeableConcept getCode() { + if (this.code == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionIntake.code"); + else if (Configuration.doAutoCreate()) + this.code = new CodeableConcept(); // cc + return this.code; + } + + public boolean hasCode() { + return this.code != null && !this.code.isEmpty(); } /** - * @return Returns a reference to this for easy method chaining + * @param value {@link #code} (Type of nutrition intake setting/reporting.) */ - public NutritionIntake setCategory(List theCategory) { - this.category = theCategory; - return this; - } - - public boolean hasCategory() { - if (this.category == null) - return false; - for (CodeableConcept item : this.category) - if (!item.isEmpty()) - return true; - return false; - } - - public CodeableConcept addCategory() { //3 - CodeableConcept t = new CodeableConcept(); - if (this.category == null) - this.category = new ArrayList(); - this.category.add(t); - return t; - } - - public NutritionIntake addCategory(CodeableConcept t) { //3 - if (t == null) - return this; - if (this.category == null) - this.category = new ArrayList(); - this.category.add(t); + public NutritionIntake setCode(CodeableConcept value) { + this.code = value; return this; } /** - * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist {3} + * @return {@link #subject} (The person, animal or group who is/was consuming the food or fluid.) */ - public CodeableConcept getCategoryFirstRep() { - if (getCategory().isEmpty()) { - addCategory(); + public Reference getSubject() { + if (this.subject == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionIntake.subject"); + else if (Configuration.doAutoCreate()) + this.subject = new Reference(); // cc + return this.subject; + } + + public boolean hasSubject() { + return this.subject != null && !this.subject.isEmpty(); + } + + /** + * @param value {@link #subject} (The person, animal or group who is/was consuming the food or fluid.) + */ + public NutritionIntake setSubject(Reference value) { + this.subject = value; + return this; + } + + /** + * @return {@link #encounter} (The encounter that establishes the context for this NutritionIntake.) + */ + public Reference getEncounter() { + if (this.encounter == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionIntake.encounter"); + else if (Configuration.doAutoCreate()) + this.encounter = new Reference(); // cc + return this.encounter; + } + + public boolean hasEncounter() { + return this.encounter != null && !this.encounter.isEmpty(); + } + + /** + * @param value {@link #encounter} (The encounter that establishes the context for this NutritionIntake.) + */ + public NutritionIntake setEncounter(Reference value) { + this.encounter = value; + return this; + } + + /** + * @return {@link #occurrence} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) + */ + public DataType getOccurrence() { + return this.occurrence; + } + + /** + * @return {@link #occurrence} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) + */ + public DateTimeType getOccurrenceDateTimeType() throws FHIRException { + if (this.occurrence == null) + this.occurrence = new DateTimeType(); + if (!(this.occurrence instanceof DateTimeType)) + throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.occurrence.getClass().getName()+" was encountered"); + return (DateTimeType) this.occurrence; + } + + public boolean hasOccurrenceDateTimeType() { + return this != null && this.occurrence instanceof DateTimeType; + } + + /** + * @return {@link #occurrence} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) + */ + public Period getOccurrencePeriod() throws FHIRException { + if (this.occurrence == null) + this.occurrence = new Period(); + if (!(this.occurrence instanceof Period)) + throw new FHIRException("Type mismatch: the type Period was expected, but "+this.occurrence.getClass().getName()+" was encountered"); + return (Period) this.occurrence; + } + + public boolean hasOccurrencePeriod() { + return this != null && this.occurrence instanceof Period; + } + + public boolean hasOccurrence() { + return this.occurrence != null && !this.occurrence.isEmpty(); + } + + /** + * @param value {@link #occurrence} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) + */ + public NutritionIntake setOccurrence(DataType value) { + if (value != null && !(value instanceof DateTimeType || value instanceof Period)) + throw new Error("Not the right type for NutritionIntake.occurrence[x]: "+value.fhirType()); + this.occurrence = value; + return this; + } + + /** + * @return {@link #recorded} (The date when the Nutrition Intake was asserted by the information source.). This is the underlying object with id, value and extensions. The accessor "getRecorded" gives direct access to the value + */ + public DateTimeType getRecordedElement() { + if (this.recorded == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionIntake.recorded"); + else if (Configuration.doAutoCreate()) + this.recorded = new DateTimeType(); // bb + return this.recorded; + } + + public boolean hasRecordedElement() { + return this.recorded != null && !this.recorded.isEmpty(); + } + + public boolean hasRecorded() { + return this.recorded != null && !this.recorded.isEmpty(); + } + + /** + * @param value {@link #recorded} (The date when the Nutrition Intake was asserted by the information source.). This is the underlying object with id, value and extensions. The accessor "getRecorded" gives direct access to the value + */ + public NutritionIntake setRecordedElement(DateTimeType value) { + this.recorded = value; + return this; + } + + /** + * @return The date when the Nutrition Intake was asserted by the information source. + */ + public Date getRecorded() { + return this.recorded == null ? null : this.recorded.getValue(); + } + + /** + * @param value The date when the Nutrition Intake was asserted by the information source. + */ + public NutritionIntake setRecorded(Date value) { + if (value == null) + this.recorded = null; + else { + if (this.recorded == null) + this.recorded = new DateTimeType(); + this.recorded.setValue(value); } - return getCategory().get(0); + return this; + } + + /** + * @return {@link #reported} (The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.) + */ + public DataType getReported() { + return this.reported; + } + + /** + * @return {@link #reported} (The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.) + */ + public BooleanType getReportedBooleanType() throws FHIRException { + if (this.reported == null) + this.reported = new BooleanType(); + if (!(this.reported instanceof BooleanType)) + throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.reported.getClass().getName()+" was encountered"); + return (BooleanType) this.reported; + } + + public boolean hasReportedBooleanType() { + return this != null && this.reported instanceof BooleanType; + } + + /** + * @return {@link #reported} (The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.) + */ + public Reference getReportedReference() throws FHIRException { + if (this.reported == null) + this.reported = new Reference(); + if (!(this.reported instanceof Reference)) + throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.reported.getClass().getName()+" was encountered"); + return (Reference) this.reported; + } + + public boolean hasReportedReference() { + return this != null && this.reported instanceof Reference; + } + + public boolean hasReported() { + return this.reported != null && !this.reported.isEmpty(); + } + + /** + * @param value {@link #reported} (The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.) + */ + public NutritionIntake setReported(DataType value) { + if (value != null && !(value instanceof BooleanType || value instanceof Reference)) + throw new Error("Not the right type for NutritionIntake.reported[x]: "+value.fhirType()); + this.reported = value; + return this; } /** @@ -1486,174 +1833,79 @@ public class NutritionIntake extends DomainResource { } /** - * @return {@link #subject} (The person, animal or group who is/was consuming the food or fluid.) + * @return {@link #performer} (Who performed the intake and how they were involved.) */ - public Reference getSubject() { - if (this.subject == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create NutritionIntake.subject"); - else if (Configuration.doAutoCreate()) - this.subject = new Reference(); // cc - return this.subject; - } - - public boolean hasSubject() { - return this.subject != null && !this.subject.isEmpty(); + public List getPerformer() { + if (this.performer == null) + this.performer = new ArrayList(); + return this.performer; } /** - * @param value {@link #subject} (The person, animal or group who is/was consuming the food or fluid.) + * @return Returns a reference to this for easy method chaining */ - public NutritionIntake setSubject(Reference value) { - this.subject = value; + public NutritionIntake setPerformer(List thePerformer) { + this.performer = thePerformer; + return this; + } + + public boolean hasPerformer() { + if (this.performer == null) + return false; + for (NutritionIntakePerformerComponent item : this.performer) + if (!item.isEmpty()) + return true; + return false; + } + + public NutritionIntakePerformerComponent addPerformer() { //3 + NutritionIntakePerformerComponent t = new NutritionIntakePerformerComponent(); + if (this.performer == null) + this.performer = new ArrayList(); + this.performer.add(t); + return t; + } + + public NutritionIntake addPerformer(NutritionIntakePerformerComponent t) { //3 + if (t == null) + return this; + if (this.performer == null) + this.performer = new ArrayList(); + this.performer.add(t); return this; } /** - * @return {@link #encounter} (The encounter that establishes the context for this NutritionIntake.) + * @return The first repetition of repeating field {@link #performer}, creating it if it does not already exist {3} */ - public Reference getEncounter() { - if (this.encounter == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create NutritionIntake.encounter"); - else if (Configuration.doAutoCreate()) - this.encounter = new Reference(); // cc - return this.encounter; - } - - public boolean hasEncounter() { - return this.encounter != null && !this.encounter.isEmpty(); - } - - /** - * @param value {@link #encounter} (The encounter that establishes the context for this NutritionIntake.) - */ - public NutritionIntake setEncounter(Reference value) { - this.encounter = value; - return this; - } - - /** - * @return {@link #effective} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) - */ - public DataType getEffective() { - return this.effective; - } - - /** - * @return {@link #effective} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) - */ - public DateTimeType getEffectiveDateTimeType() throws FHIRException { - if (this.effective == null) - this.effective = new DateTimeType(); - if (!(this.effective instanceof DateTimeType)) - throw new FHIRException("Type mismatch: the type DateTimeType was expected, but "+this.effective.getClass().getName()+" was encountered"); - return (DateTimeType) this.effective; - } - - public boolean hasEffectiveDateTimeType() { - return this != null && this.effective instanceof DateTimeType; - } - - /** - * @return {@link #effective} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) - */ - public Period getEffectivePeriod() throws FHIRException { - if (this.effective == null) - this.effective = new Period(); - if (!(this.effective instanceof Period)) - throw new FHIRException("Type mismatch: the type Period was expected, but "+this.effective.getClass().getName()+" was encountered"); - return (Period) this.effective; - } - - public boolean hasEffectivePeriod() { - return this != null && this.effective instanceof Period; - } - - public boolean hasEffective() { - return this.effective != null && !this.effective.isEmpty(); - } - - /** - * @param value {@link #effective} (The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.) - */ - public NutritionIntake setEffective(DataType value) { - if (value != null && !(value instanceof DateTimeType || value instanceof Period)) - throw new Error("Not the right type for NutritionIntake.effective[x]: "+value.fhirType()); - this.effective = value; - return this; - } - - /** - * @return {@link #dateAsserted} (The date when the Nutrition Intake was asserted by the information source.). This is the underlying object with id, value and extensions. The accessor "getDateAsserted" gives direct access to the value - */ - public DateTimeType getDateAssertedElement() { - if (this.dateAsserted == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create NutritionIntake.dateAsserted"); - else if (Configuration.doAutoCreate()) - this.dateAsserted = new DateTimeType(); // bb - return this.dateAsserted; - } - - public boolean hasDateAssertedElement() { - return this.dateAsserted != null && !this.dateAsserted.isEmpty(); - } - - public boolean hasDateAsserted() { - return this.dateAsserted != null && !this.dateAsserted.isEmpty(); - } - - /** - * @param value {@link #dateAsserted} (The date when the Nutrition Intake was asserted by the information source.). This is the underlying object with id, value and extensions. The accessor "getDateAsserted" gives direct access to the value - */ - public NutritionIntake setDateAssertedElement(DateTimeType value) { - this.dateAsserted = value; - return this; - } - - /** - * @return The date when the Nutrition Intake was asserted by the information source. - */ - public Date getDateAsserted() { - return this.dateAsserted == null ? null : this.dateAsserted.getValue(); - } - - /** - * @param value The date when the Nutrition Intake was asserted by the information source. - */ - public NutritionIntake setDateAsserted(Date value) { - if (value == null) - this.dateAsserted = null; - else { - if (this.dateAsserted == null) - this.dateAsserted = new DateTimeType(); - this.dateAsserted.setValue(value); + public NutritionIntakePerformerComponent getPerformerFirstRep() { + if (getPerformer().isEmpty()) { + addPerformer(); } - return this; + return getPerformer().get(0); } /** - * @return {@link #informationSource} (The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.) + * @return {@link #location} (Where the intake occurred.) */ - public Reference getInformationSource() { - if (this.informationSource == null) + public Reference getLocation() { + if (this.location == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create NutritionIntake.informationSource"); + throw new Error("Attempt to auto-create NutritionIntake.location"); else if (Configuration.doAutoCreate()) - this.informationSource = new Reference(); // cc - return this.informationSource; + this.location = new Reference(); // cc + return this.location; } - public boolean hasInformationSource() { - return this.informationSource != null && !this.informationSource.isEmpty(); + public boolean hasLocation() { + return this.location != null && !this.location.isEmpty(); } /** - * @param value {@link #informationSource} (The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.) + * @param value {@link #location} (Where the intake occurred.) */ - public NutritionIntake setInformationSource(Reference value) { - this.informationSource = value; + public NutritionIntake setLocation(Reference value) { + this.location = value; return this; } @@ -1711,56 +1963,56 @@ public class NutritionIntake extends DomainResource { } /** - * @return {@link #reasonCode} (A reason, Condition or observation for why the food or fluid is /was consumed.) + * @return {@link #reason} (A reason, Condition or observation for why the food or fluid is /was consumed.) */ - public List getReasonCode() { - if (this.reasonCode == null) - this.reasonCode = new ArrayList(); - return this.reasonCode; + public List getReason() { + if (this.reason == null) + this.reason = new ArrayList(); + return this.reason; } /** * @return Returns a reference to this for easy method chaining */ - public NutritionIntake setReasonCode(List theReasonCode) { - this.reasonCode = theReasonCode; + public NutritionIntake setReason(List theReason) { + this.reason = theReason; return this; } - public boolean hasReasonCode() { - if (this.reasonCode == null) + public boolean hasReason() { + if (this.reason == null) return false; - for (CodeableReference item : this.reasonCode) + for (CodeableReference item : this.reason) if (!item.isEmpty()) return true; return false; } - public CodeableReference addReasonCode() { //3 + public CodeableReference addReason() { //3 CodeableReference t = new CodeableReference(); - if (this.reasonCode == null) - this.reasonCode = new ArrayList(); - this.reasonCode.add(t); + if (this.reason == null) + this.reason = new ArrayList(); + this.reason.add(t); return t; } - public NutritionIntake addReasonCode(CodeableReference t) { //3 + public NutritionIntake addReason(CodeableReference t) { //3 if (t == null) return this; - if (this.reasonCode == null) - this.reasonCode = new ArrayList(); - this.reasonCode.add(t); + if (this.reason == null) + this.reason = new ArrayList(); + this.reason.add(t); return this; } /** - * @return The first repetition of repeating field {@link #reasonCode}, creating it if it does not already exist {3} + * @return The first repetition of repeating field {@link #reason}, creating it if it does not already exist {3} */ - public CodeableReference getReasonCodeFirstRep() { - if (getReasonCode().isEmpty()) { - addReasonCode(); + public CodeableReference getReasonFirstRep() { + if (getReason().isEmpty()) { + addReason(); } - return getReasonCode().get(0); + return getReason().get(0); } /** @@ -1819,20 +2071,24 @@ public class NutritionIntake extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Identifiers associated with this Nutrition Intake that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("instantiatesCanonical", "canonical(ActivityDefinition|EventDefinition|EvidenceVariable|Measure|OperationDefinition|PlanDefinition|Questionnaire|SubscriptionTopic)", "Instantiates FHIR protocol or definition.", 0, java.lang.Integer.MAX_VALUE, instantiatesCanonical)); + children.add(new Property("instantiatesUri", "uri", "Instantiates external protocol or definition.", 0, java.lang.Integer.MAX_VALUE, instantiatesUri)); children.add(new Property("basedOn", "Reference(NutritionOrder|CarePlan|ServiceRequest)", "A plan, proposal or order that is fulfilled in whole or in part by this event.", 0, java.lang.Integer.MAX_VALUE, basedOn)); children.add(new Property("partOf", "Reference(NutritionIntake|Procedure|Observation)", "A larger event of which this particular event is a component or step.", 0, java.lang.Integer.MAX_VALUE, partOf)); children.add(new Property("status", "code", "A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed.", 0, 1, status)); children.add(new Property("statusReason", "CodeableConcept", "Captures the reason for the current state of the NutritionIntake.", 0, java.lang.Integer.MAX_VALUE, statusReason)); - children.add(new Property("category", "CodeableConcept", "Indicates where the food or fluid was consumed or prescribed.", 0, java.lang.Integer.MAX_VALUE, category)); - children.add(new Property("consumedItem", "", "What food or fluid product or item was consumed.", 0, java.lang.Integer.MAX_VALUE, consumedItem)); - children.add(new Property("ingredientLabel", "", "Total nutrient amounts for the whole meal, product, serving, etc.", 0, java.lang.Integer.MAX_VALUE, ingredientLabel)); + children.add(new Property("code", "CodeableConcept", "Type of nutrition intake setting/reporting.", 0, 1, code)); children.add(new Property("subject", "Reference(Patient|Group)", "The person, animal or group who is/was consuming the food or fluid.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "The encounter that establishes the context for this NutritionIntake.", 0, 1, encounter)); - children.add(new Property("effective[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, effective)); - children.add(new Property("dateAsserted", "dateTime", "The date when the Nutrition Intake was asserted by the information source.", 0, 1, dateAsserted)); - children.add(new Property("informationSource", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, informationSource)); + children.add(new Property("occurrence[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, occurrence)); + children.add(new Property("recorded", "dateTime", "The date when the Nutrition Intake was asserted by the information source.", 0, 1, recorded)); + children.add(new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, reported)); + children.add(new Property("consumedItem", "", "What food or fluid product or item was consumed.", 0, java.lang.Integer.MAX_VALUE, consumedItem)); + children.add(new Property("ingredientLabel", "", "Total nutrient amounts for the whole meal, product, serving, etc.", 0, java.lang.Integer.MAX_VALUE, ingredientLabel)); + children.add(new Property("performer", "", "Who performed the intake and how they were involved.", 0, java.lang.Integer.MAX_VALUE, performer)); + children.add(new Property("location", "Reference(Location)", "Where the intake occurred.", 0, 1, location)); children.add(new Property("derivedFrom", "Reference(Any)", "Allows linking the NutritionIntake to the underlying NutritionOrder, or to other information, such as AllergyIntolerance, that supports or is used to derive the NutritionIntake.", 0, java.lang.Integer.MAX_VALUE, derivedFrom)); - children.add(new Property("reasonCode", "CodeableReference(Condition|Observation|DiagnosticReport)", "A reason, Condition or observation for why the food or fluid is /was consumed.", 0, java.lang.Integer.MAX_VALUE, reasonCode)); + children.add(new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference)", "A reason, Condition or observation for why the food or fluid is /was consumed.", 0, java.lang.Integer.MAX_VALUE, reason)); children.add(new Property("note", "Annotation", "Provides extra information about the Nutrition Intake that is not conveyed by the other attributes.", 0, java.lang.Integer.MAX_VALUE, note)); } @@ -1840,23 +2096,30 @@ public class NutritionIntake extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifiers associated with this Nutrition Intake that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate. They are business identifiers assigned to this resource by the performer or other systems and remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 8911915: /*instantiatesCanonical*/ return new Property("instantiatesCanonical", "canonical(ActivityDefinition|EventDefinition|EvidenceVariable|Measure|OperationDefinition|PlanDefinition|Questionnaire|SubscriptionTopic)", "Instantiates FHIR protocol or definition.", 0, java.lang.Integer.MAX_VALUE, instantiatesCanonical); + case -1926393373: /*instantiatesUri*/ return new Property("instantiatesUri", "uri", "Instantiates external protocol or definition.", 0, java.lang.Integer.MAX_VALUE, instantiatesUri); case -332612366: /*basedOn*/ return new Property("basedOn", "Reference(NutritionOrder|CarePlan|ServiceRequest)", "A plan, proposal or order that is fulfilled in whole or in part by this event.", 0, java.lang.Integer.MAX_VALUE, basedOn); case -995410646: /*partOf*/ return new Property("partOf", "Reference(NutritionIntake|Procedure|Observation)", "A larger event of which this particular event is a component or step.", 0, java.lang.Integer.MAX_VALUE, partOf); case -892481550: /*status*/ return new Property("status", "code", "A code representing the patient or other source's judgment about the state of the intake that this assertion is about. Generally, this will be active or completed.", 0, 1, status); case 2051346646: /*statusReason*/ return new Property("statusReason", "CodeableConcept", "Captures the reason for the current state of the NutritionIntake.", 0, java.lang.Integer.MAX_VALUE, statusReason); - case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Indicates where the food or fluid was consumed or prescribed.", 0, java.lang.Integer.MAX_VALUE, category); - case -854114533: /*consumedItem*/ return new Property("consumedItem", "", "What food or fluid product or item was consumed.", 0, java.lang.Integer.MAX_VALUE, consumedItem); - case -936536157: /*ingredientLabel*/ return new Property("ingredientLabel", "", "Total nutrient amounts for the whole meal, product, serving, etc.", 0, java.lang.Integer.MAX_VALUE, ingredientLabel); + case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Type of nutrition intake setting/reporting.", 0, 1, code); case -1867885268: /*subject*/ return new Property("subject", "Reference(Patient|Group)", "The person, animal or group who is/was consuming the food or fluid.", 0, 1, subject); case 1524132147: /*encounter*/ return new Property("encounter", "Reference(Encounter)", "The encounter that establishes the context for this NutritionIntake.", 0, 1, encounter); - case 247104889: /*effective[x]*/ return new Property("effective[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, effective); - case -1468651097: /*effective*/ return new Property("effective[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, effective); - case -275306910: /*effectiveDateTime*/ return new Property("effective[x]", "dateTime", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, effective); - case -403934648: /*effectivePeriod*/ return new Property("effective[x]", "Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, effective); - case -1980855245: /*dateAsserted*/ return new Property("dateAsserted", "dateTime", "The date when the Nutrition Intake was asserted by the information source.", 0, 1, dateAsserted); - case -2123220889: /*informationSource*/ return new Property("informationSource", "Reference(Patient|Practitioner|PractitionerRole|RelatedPerson|Organization)", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, informationSource); + case -2022646513: /*occurrence[x]*/ return new Property("occurrence[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, occurrence); + case 1687874001: /*occurrence*/ return new Property("occurrence[x]", "dateTime|Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, occurrence); + case -298443636: /*occurrenceDateTime*/ return new Property("occurrence[x]", "dateTime", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, occurrence); + case 1397156594: /*occurrencePeriod*/ return new Property("occurrence[x]", "Period", "The interval of time during which it is being asserted that the patient is/was consuming the food or fluid.", 0, 1, occurrence); + case -799233872: /*recorded*/ return new Property("recorded", "dateTime", "The date when the Nutrition Intake was asserted by the information source.", 0, 1, recorded); + case -241505587: /*reported[x]*/ return new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, reported); + case -427039533: /*reported*/ return new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, reported); + case 1219992533: /*reportedBoolean*/ return new Property("reported[x]", "boolean", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, reported); + case 1198143416: /*reportedReference*/ return new Property("reported[x]", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "The person or organization that provided the information about the consumption of this food or fluid. Note: Use derivedFrom when a NutritionIntake is derived from other resources.", 0, 1, reported); + case -854114533: /*consumedItem*/ return new Property("consumedItem", "", "What food or fluid product or item was consumed.", 0, java.lang.Integer.MAX_VALUE, consumedItem); + case -936536157: /*ingredientLabel*/ return new Property("ingredientLabel", "", "Total nutrient amounts for the whole meal, product, serving, etc.", 0, java.lang.Integer.MAX_VALUE, ingredientLabel); + case 481140686: /*performer*/ return new Property("performer", "", "Who performed the intake and how they were involved.", 0, java.lang.Integer.MAX_VALUE, performer); + case 1901043637: /*location*/ return new Property("location", "Reference(Location)", "Where the intake occurred.", 0, 1, location); case 1077922663: /*derivedFrom*/ return new Property("derivedFrom", "Reference(Any)", "Allows linking the NutritionIntake to the underlying NutritionOrder, or to other information, such as AllergyIntolerance, that supports or is used to derive the NutritionIntake.", 0, java.lang.Integer.MAX_VALUE, derivedFrom); - case 722137681: /*reasonCode*/ return new Property("reasonCode", "CodeableReference(Condition|Observation|DiagnosticReport)", "A reason, Condition or observation for why the food or fluid is /was consumed.", 0, java.lang.Integer.MAX_VALUE, reasonCode); + case -934964668: /*reason*/ return new Property("reason", "CodeableReference(Condition|Observation|DiagnosticReport|DocumentReference)", "A reason, Condition or observation for why the food or fluid is /was consumed.", 0, java.lang.Integer.MAX_VALUE, reason); case 3387378: /*note*/ return new Property("note", "Annotation", "Provides extra information about the Nutrition Intake that is not conveyed by the other attributes.", 0, java.lang.Integer.MAX_VALUE, note); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1867,20 +2130,24 @@ public class NutritionIntake extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 8911915: /*instantiatesCanonical*/ return this.instantiatesCanonical == null ? new Base[0] : this.instantiatesCanonical.toArray(new Base[this.instantiatesCanonical.size()]); // CanonicalType + case -1926393373: /*instantiatesUri*/ return this.instantiatesUri == null ? new Base[0] : this.instantiatesUri.toArray(new Base[this.instantiatesUri.size()]); // UriType case -332612366: /*basedOn*/ return this.basedOn == null ? new Base[0] : this.basedOn.toArray(new Base[this.basedOn.size()]); // Reference case -995410646: /*partOf*/ return this.partOf == null ? new Base[0] : this.partOf.toArray(new Base[this.partOf.size()]); // Reference - case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case 2051346646: /*statusReason*/ return this.statusReason == null ? new Base[0] : this.statusReason.toArray(new Base[this.statusReason.size()]); // CodeableConcept - case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept - case -854114533: /*consumedItem*/ return this.consumedItem == null ? new Base[0] : this.consumedItem.toArray(new Base[this.consumedItem.size()]); // NutritionIntakeConsumedItemComponent - case -936536157: /*ingredientLabel*/ return this.ingredientLabel == null ? new Base[0] : this.ingredientLabel.toArray(new Base[this.ingredientLabel.size()]); // NutritionIntakeIngredientLabelComponent + case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : new Base[] {this.subject}; // Reference case 1524132147: /*encounter*/ return this.encounter == null ? new Base[0] : new Base[] {this.encounter}; // Reference - case -1468651097: /*effective*/ return this.effective == null ? new Base[0] : new Base[] {this.effective}; // DataType - case -1980855245: /*dateAsserted*/ return this.dateAsserted == null ? new Base[0] : new Base[] {this.dateAsserted}; // DateTimeType - case -2123220889: /*informationSource*/ return this.informationSource == null ? new Base[0] : new Base[] {this.informationSource}; // Reference + case 1687874001: /*occurrence*/ return this.occurrence == null ? new Base[0] : new Base[] {this.occurrence}; // DataType + case -799233872: /*recorded*/ return this.recorded == null ? new Base[0] : new Base[] {this.recorded}; // DateTimeType + case -427039533: /*reported*/ return this.reported == null ? new Base[0] : new Base[] {this.reported}; // DataType + case -854114533: /*consumedItem*/ return this.consumedItem == null ? new Base[0] : this.consumedItem.toArray(new Base[this.consumedItem.size()]); // NutritionIntakeConsumedItemComponent + case -936536157: /*ingredientLabel*/ return this.ingredientLabel == null ? new Base[0] : this.ingredientLabel.toArray(new Base[this.ingredientLabel.size()]); // NutritionIntakeIngredientLabelComponent + case 481140686: /*performer*/ return this.performer == null ? new Base[0] : this.performer.toArray(new Base[this.performer.size()]); // NutritionIntakePerformerComponent + case 1901043637: /*location*/ return this.location == null ? new Base[0] : new Base[] {this.location}; // Reference case 1077922663: /*derivedFrom*/ return this.derivedFrom == null ? new Base[0] : this.derivedFrom.toArray(new Base[this.derivedFrom.size()]); // Reference - case 722137681: /*reasonCode*/ return this.reasonCode == null ? new Base[0] : this.reasonCode.toArray(new Base[this.reasonCode.size()]); // CodeableReference + case -934964668: /*reason*/ return this.reason == null ? new Base[0] : this.reason.toArray(new Base[this.reason.size()]); // CodeableReference case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation default: return super.getProperty(hash, name, checkValid); } @@ -1893,6 +2160,12 @@ public class NutritionIntake extends DomainResource { case -1618432855: // identifier this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier return value; + case 8911915: // instantiatesCanonical + this.getInstantiatesCanonical().add(TypeConvertor.castToCanonical(value)); // CanonicalType + return value; + case -1926393373: // instantiatesUri + this.getInstantiatesUri().add(TypeConvertor.castToUri(value)); // UriType + return value; case -332612366: // basedOn this.getBasedOn().add(TypeConvertor.castToReference(value)); // Reference return value; @@ -1900,20 +2173,14 @@ public class NutritionIntake extends DomainResource { this.getPartOf().add(TypeConvertor.castToReference(value)); // Reference return value; case -892481550: // status - value = new NutritionIntakeStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.status = (Enumeration) value; // Enumeration + value = new EventStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration return value; case 2051346646: // statusReason this.getStatusReason().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; - case 50511102: // category - this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept - return value; - case -854114533: // consumedItem - this.getConsumedItem().add((NutritionIntakeConsumedItemComponent) value); // NutritionIntakeConsumedItemComponent - return value; - case -936536157: // ingredientLabel - this.getIngredientLabel().add((NutritionIntakeIngredientLabelComponent) value); // NutritionIntakeIngredientLabelComponent + case 3059181: // code + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -1867885268: // subject this.subject = TypeConvertor.castToReference(value); // Reference @@ -1921,20 +2188,32 @@ public class NutritionIntake extends DomainResource { case 1524132147: // encounter this.encounter = TypeConvertor.castToReference(value); // Reference return value; - case -1468651097: // effective - this.effective = TypeConvertor.castToType(value); // DataType + case 1687874001: // occurrence + this.occurrence = TypeConvertor.castToType(value); // DataType return value; - case -1980855245: // dateAsserted - this.dateAsserted = TypeConvertor.castToDateTime(value); // DateTimeType + case -799233872: // recorded + this.recorded = TypeConvertor.castToDateTime(value); // DateTimeType return value; - case -2123220889: // informationSource - this.informationSource = TypeConvertor.castToReference(value); // Reference + case -427039533: // reported + this.reported = TypeConvertor.castToType(value); // DataType + return value; + case -854114533: // consumedItem + this.getConsumedItem().add((NutritionIntakeConsumedItemComponent) value); // NutritionIntakeConsumedItemComponent + return value; + case -936536157: // ingredientLabel + this.getIngredientLabel().add((NutritionIntakeIngredientLabelComponent) value); // NutritionIntakeIngredientLabelComponent + return value; + case 481140686: // performer + this.getPerformer().add((NutritionIntakePerformerComponent) value); // NutritionIntakePerformerComponent + return value; + case 1901043637: // location + this.location = TypeConvertor.castToReference(value); // Reference return value; case 1077922663: // derivedFrom this.getDerivedFrom().add(TypeConvertor.castToReference(value)); // Reference return value; - case 722137681: // reasonCode - this.getReasonCode().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference + case -934964668: // reason + this.getReason().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference return value; case 3387378: // note this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation @@ -1948,35 +2227,43 @@ public class NutritionIntake extends DomainResource { public Base setProperty(String name, Base value) throws FHIRException { if (name.equals("identifier")) { this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("instantiatesCanonical")) { + this.getInstantiatesCanonical().add(TypeConvertor.castToCanonical(value)); + } else if (name.equals("instantiatesUri")) { + this.getInstantiatesUri().add(TypeConvertor.castToUri(value)); } else if (name.equals("basedOn")) { this.getBasedOn().add(TypeConvertor.castToReference(value)); } else if (name.equals("partOf")) { this.getPartOf().add(TypeConvertor.castToReference(value)); } else if (name.equals("status")) { - value = new NutritionIntakeStatusCodesEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.status = (Enumeration) value; // Enumeration + value = new EventStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration } else if (name.equals("statusReason")) { this.getStatusReason().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("category")) { - this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("consumedItem")) { - this.getConsumedItem().add((NutritionIntakeConsumedItemComponent) value); - } else if (name.equals("ingredientLabel")) { - this.getIngredientLabel().add((NutritionIntakeIngredientLabelComponent) value); + } else if (name.equals("code")) { + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("subject")) { this.subject = TypeConvertor.castToReference(value); // Reference } else if (name.equals("encounter")) { this.encounter = TypeConvertor.castToReference(value); // Reference - } else if (name.equals("effective[x]")) { - this.effective = TypeConvertor.castToType(value); // DataType - } else if (name.equals("dateAsserted")) { - this.dateAsserted = TypeConvertor.castToDateTime(value); // DateTimeType - } else if (name.equals("informationSource")) { - this.informationSource = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("occurrence[x]")) { + this.occurrence = TypeConvertor.castToType(value); // DataType + } else if (name.equals("recorded")) { + this.recorded = TypeConvertor.castToDateTime(value); // DateTimeType + } else if (name.equals("reported[x]")) { + this.reported = TypeConvertor.castToType(value); // DataType + } else if (name.equals("consumedItem")) { + this.getConsumedItem().add((NutritionIntakeConsumedItemComponent) value); + } else if (name.equals("ingredientLabel")) { + this.getIngredientLabel().add((NutritionIntakeIngredientLabelComponent) value); + } else if (name.equals("performer")) { + this.getPerformer().add((NutritionIntakePerformerComponent) value); + } else if (name.equals("location")) { + this.location = TypeConvertor.castToReference(value); // Reference } else if (name.equals("derivedFrom")) { this.getDerivedFrom().add(TypeConvertor.castToReference(value)); - } else if (name.equals("reasonCode")) { - this.getReasonCode().add(TypeConvertor.castToCodeableReference(value)); + } else if (name.equals("reason")) { + this.getReason().add(TypeConvertor.castToCodeableReference(value)); } else if (name.equals("note")) { this.getNote().add(TypeConvertor.castToAnnotation(value)); } else @@ -1988,21 +2275,26 @@ public class NutritionIntake extends DomainResource { public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { case -1618432855: return addIdentifier(); + case 8911915: return addInstantiatesCanonicalElement(); + case -1926393373: return addInstantiatesUriElement(); case -332612366: return addBasedOn(); case -995410646: return addPartOf(); case -892481550: return getStatusElement(); case 2051346646: return addStatusReason(); - case 50511102: return addCategory(); - case -854114533: return addConsumedItem(); - case -936536157: return addIngredientLabel(); + case 3059181: return getCode(); case -1867885268: return getSubject(); case 1524132147: return getEncounter(); - case 247104889: return getEffective(); - case -1468651097: return getEffective(); - case -1980855245: return getDateAssertedElement(); - case -2123220889: return getInformationSource(); + case -2022646513: return getOccurrence(); + case 1687874001: return getOccurrence(); + case -799233872: return getRecordedElement(); + case -241505587: return getReported(); + case -427039533: return getReported(); + case -854114533: return addConsumedItem(); + case -936536157: return addIngredientLabel(); + case 481140686: return addPerformer(); + case 1901043637: return getLocation(); case 1077922663: return addDerivedFrom(); - case 722137681: return addReasonCode(); + case -934964668: return addReason(); case 3387378: return addNote(); default: return super.makeProperty(hash, name); } @@ -2013,20 +2305,24 @@ public class NutritionIntake extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 8911915: /*instantiatesCanonical*/ return new String[] {"canonical"}; + case -1926393373: /*instantiatesUri*/ return new String[] {"uri"}; case -332612366: /*basedOn*/ return new String[] {"Reference"}; case -995410646: /*partOf*/ return new String[] {"Reference"}; case -892481550: /*status*/ return new String[] {"code"}; case 2051346646: /*statusReason*/ return new String[] {"CodeableConcept"}; - case 50511102: /*category*/ return new String[] {"CodeableConcept"}; - case -854114533: /*consumedItem*/ return new String[] {}; - case -936536157: /*ingredientLabel*/ return new String[] {}; + case 3059181: /*code*/ return new String[] {"CodeableConcept"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; case 1524132147: /*encounter*/ return new String[] {"Reference"}; - case -1468651097: /*effective*/ return new String[] {"dateTime", "Period"}; - case -1980855245: /*dateAsserted*/ return new String[] {"dateTime"}; - case -2123220889: /*informationSource*/ return new String[] {"Reference"}; + case 1687874001: /*occurrence*/ return new String[] {"dateTime", "Period"}; + case -799233872: /*recorded*/ return new String[] {"dateTime"}; + case -427039533: /*reported*/ return new String[] {"boolean", "Reference"}; + case -854114533: /*consumedItem*/ return new String[] {}; + case -936536157: /*ingredientLabel*/ return new String[] {}; + case 481140686: /*performer*/ return new String[] {}; + case 1901043637: /*location*/ return new String[] {"Reference"}; case 1077922663: /*derivedFrom*/ return new String[] {"Reference"}; - case 722137681: /*reasonCode*/ return new String[] {"CodeableReference"}; + case -934964668: /*reason*/ return new String[] {"CodeableReference"}; case 3387378: /*note*/ return new String[] {"Annotation"}; default: return super.getTypesForProperty(hash, name); } @@ -2038,6 +2334,12 @@ public class NutritionIntake extends DomainResource { if (name.equals("identifier")) { return addIdentifier(); } + else if (name.equals("instantiatesCanonical")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionIntake.instantiatesCanonical"); + } + else if (name.equals("instantiatesUri")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionIntake.instantiatesUri"); + } else if (name.equals("basedOn")) { return addBasedOn(); } @@ -2050,14 +2352,9 @@ public class NutritionIntake extends DomainResource { else if (name.equals("statusReason")) { return addStatusReason(); } - else if (name.equals("category")) { - return addCategory(); - } - else if (name.equals("consumedItem")) { - return addConsumedItem(); - } - else if (name.equals("ingredientLabel")) { - return addIngredientLabel(); + else if (name.equals("code")) { + this.code = new CodeableConcept(); + return this.code; } else if (name.equals("subject")) { this.subject = new Reference(); @@ -2067,26 +2364,43 @@ public class NutritionIntake extends DomainResource { this.encounter = new Reference(); return this.encounter; } - else if (name.equals("effectiveDateTime")) { - this.effective = new DateTimeType(); - return this.effective; + else if (name.equals("occurrenceDateTime")) { + this.occurrence = new DateTimeType(); + return this.occurrence; } - else if (name.equals("effectivePeriod")) { - this.effective = new Period(); - return this.effective; + else if (name.equals("occurrencePeriod")) { + this.occurrence = new Period(); + return this.occurrence; } - else if (name.equals("dateAsserted")) { - throw new FHIRException("Cannot call addChild on a primitive type NutritionIntake.dateAsserted"); + else if (name.equals("recorded")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionIntake.recorded"); } - else if (name.equals("informationSource")) { - this.informationSource = new Reference(); - return this.informationSource; + else if (name.equals("reportedBoolean")) { + this.reported = new BooleanType(); + return this.reported; + } + else if (name.equals("reportedReference")) { + this.reported = new Reference(); + return this.reported; + } + else if (name.equals("consumedItem")) { + return addConsumedItem(); + } + else if (name.equals("ingredientLabel")) { + return addIngredientLabel(); + } + else if (name.equals("performer")) { + return addPerformer(); + } + else if (name.equals("location")) { + this.location = new Reference(); + return this.location; } else if (name.equals("derivedFrom")) { return addDerivedFrom(); } - else if (name.equals("reasonCode")) { - return addReasonCode(); + else if (name.equals("reason")) { + return addReason(); } else if (name.equals("note")) { return addNote(); @@ -2113,6 +2427,16 @@ public class NutritionIntake extends DomainResource { for (Identifier i : identifier) dst.identifier.add(i.copy()); }; + if (instantiatesCanonical != null) { + dst.instantiatesCanonical = new ArrayList(); + for (CanonicalType i : instantiatesCanonical) + dst.instantiatesCanonical.add(i.copy()); + }; + if (instantiatesUri != null) { + dst.instantiatesUri = new ArrayList(); + for (UriType i : instantiatesUri) + dst.instantiatesUri.add(i.copy()); + }; if (basedOn != null) { dst.basedOn = new ArrayList(); for (Reference i : basedOn) @@ -2129,11 +2453,12 @@ public class NutritionIntake extends DomainResource { for (CodeableConcept i : statusReason) dst.statusReason.add(i.copy()); }; - if (category != null) { - dst.category = new ArrayList(); - for (CodeableConcept i : category) - dst.category.add(i.copy()); - }; + dst.code = code == null ? null : code.copy(); + dst.subject = subject == null ? null : subject.copy(); + dst.encounter = encounter == null ? null : encounter.copy(); + dst.occurrence = occurrence == null ? null : occurrence.copy(); + dst.recorded = recorded == null ? null : recorded.copy(); + dst.reported = reported == null ? null : reported.copy(); if (consumedItem != null) { dst.consumedItem = new ArrayList(); for (NutritionIntakeConsumedItemComponent i : consumedItem) @@ -2144,20 +2469,21 @@ public class NutritionIntake extends DomainResource { for (NutritionIntakeIngredientLabelComponent i : ingredientLabel) dst.ingredientLabel.add(i.copy()); }; - dst.subject = subject == null ? null : subject.copy(); - dst.encounter = encounter == null ? null : encounter.copy(); - dst.effective = effective == null ? null : effective.copy(); - dst.dateAsserted = dateAsserted == null ? null : dateAsserted.copy(); - dst.informationSource = informationSource == null ? null : informationSource.copy(); + if (performer != null) { + dst.performer = new ArrayList(); + for (NutritionIntakePerformerComponent i : performer) + dst.performer.add(i.copy()); + }; + dst.location = location == null ? null : location.copy(); if (derivedFrom != null) { dst.derivedFrom = new ArrayList(); for (Reference i : derivedFrom) dst.derivedFrom.add(i.copy()); }; - if (reasonCode != null) { - dst.reasonCode = new ArrayList(); - for (CodeableReference i : reasonCode) - dst.reasonCode.add(i.copy()); + if (reason != null) { + dst.reason = new ArrayList(); + for (CodeableReference i : reason) + dst.reason.add(i.copy()); }; if (note != null) { dst.note = new ArrayList(); @@ -2177,13 +2503,14 @@ public class NutritionIntake extends DomainResource { if (!(other_ instanceof NutritionIntake)) return false; NutritionIntake o = (NutritionIntake) other_; - return compareDeep(identifier, o.identifier, true) && compareDeep(basedOn, o.basedOn, true) && compareDeep(partOf, o.partOf, true) - && compareDeep(status, o.status, true) && compareDeep(statusReason, o.statusReason, true) && compareDeep(category, o.category, true) + return compareDeep(identifier, o.identifier, true) && compareDeep(instantiatesCanonical, o.instantiatesCanonical, true) + && compareDeep(instantiatesUri, o.instantiatesUri, true) && compareDeep(basedOn, o.basedOn, true) + && compareDeep(partOf, o.partOf, true) && compareDeep(status, o.status, true) && compareDeep(statusReason, o.statusReason, true) + && compareDeep(code, o.code, true) && compareDeep(subject, o.subject, true) && compareDeep(encounter, o.encounter, true) + && compareDeep(occurrence, o.occurrence, true) && compareDeep(recorded, o.recorded, true) && compareDeep(reported, o.reported, true) && compareDeep(consumedItem, o.consumedItem, true) && compareDeep(ingredientLabel, o.ingredientLabel, true) - && compareDeep(subject, o.subject, true) && compareDeep(encounter, o.encounter, true) && compareDeep(effective, o.effective, true) - && compareDeep(dateAsserted, o.dateAsserted, true) && compareDeep(informationSource, o.informationSource, true) - && compareDeep(derivedFrom, o.derivedFrom, true) && compareDeep(reasonCode, o.reasonCode, true) - && compareDeep(note, o.note, true); + && compareDeep(performer, o.performer, true) && compareDeep(location, o.location, true) && compareDeep(derivedFrom, o.derivedFrom, true) + && compareDeep(reason, o.reason, true) && compareDeep(note, o.note, true); } @Override @@ -2193,13 +2520,15 @@ public class NutritionIntake extends DomainResource { if (!(other_ instanceof NutritionIntake)) return false; NutritionIntake o = (NutritionIntake) other_; - return compareValues(status, o.status, true) && compareValues(dateAsserted, o.dateAsserted, true); + return compareValues(instantiatesCanonical, o.instantiatesCanonical, true) && compareValues(instantiatesUri, o.instantiatesUri, true) + && compareValues(status, o.status, true) && compareValues(recorded, o.recorded, true); } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, basedOn, partOf - , status, statusReason, category, consumedItem, ingredientLabel, subject, encounter - , effective, dateAsserted, informationSource, derivedFrom, reasonCode, note); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, instantiatesCanonical + , instantiatesUri, basedOn, partOf, status, statusReason, code, subject, encounter + , occurrence, recorded, reported, consumedItem, ingredientLabel, performer, location + , derivedFrom, reason, note); } @Override @@ -2208,44 +2537,44 @@ public class NutritionIntake extends DomainResource { } /** - * Search parameter: category + * Search parameter: code *

- * Description: Returns statements of this category of NutritionIntake
+ * Description: Returns statements of this code of NutritionIntake
* Type: token
- * Path: NutritionIntake.category
+ * Path: NutritionIntake.code
*

*/ - @SearchParamDefinition(name="category", path="NutritionIntake.category", description="Returns statements of this category of NutritionIntake", type="token" ) - public static final String SP_CATEGORY = "category"; + @SearchParamDefinition(name="code", path="NutritionIntake.code", description="Returns statements of this code of NutritionIntake", type="token" ) + public static final String SP_CODE = "code"; /** - * Fluent Client search parameter constant for category + * Fluent Client search parameter constant for code *

- * Description: Returns statements of this category of NutritionIntake
+ * Description: Returns statements of this code of NutritionIntake
* Type: token
- * Path: NutritionIntake.category
+ * Path: NutritionIntake.code
*

*/ - public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); /** - * Search parameter: effective + * Search parameter: date *

* Description: Date when patient was taking (or not taking) the medication
* Type: date
- * Path: NutritionIntake.effective
+ * Path: NutritionIntake.occurrence
*

*/ - @SearchParamDefinition(name="effective", path="NutritionIntake.effective", description="Date when patient was taking (or not taking) the medication", type="date" ) - public static final String SP_EFFECTIVE = "effective"; + @SearchParamDefinition(name="date", path="NutritionIntake.occurrence", description="Date when patient was taking (or not taking) the medication", type="date" ) + public static final String SP_DATE = "date"; /** - * Fluent Client search parameter constant for effective + * Fluent Client search parameter constant for date *

* Description: Date when patient was taking (or not taking) the medication
* Type: date
- * Path: NutritionIntake.effective
+ * Path: NutritionIntake.occurrence
*

*/ - public static final ca.uhn.fhir.rest.gclient.DateClientParam EFFECTIVE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_EFFECTIVE); + public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); /** * Search parameter: encounter @@ -2370,17 +2699,17 @@ public class NutritionIntake extends DomainResource { *

* Description: Who or where the information in the statement came from
* Type: reference
- * Path: NutritionIntake.informationSource
+ * Path: (NutritionIntake.reported as Reference)
*

*/ - @SearchParamDefinition(name="source", path="NutritionIntake.informationSource", description="Who or where the information in the statement came from", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for RelatedPerson") }, target={Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) + @SearchParamDefinition(name="source", path="(NutritionIntake.reported as Reference)", description="Who or where the information in the statement came from", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Practitioner"), @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for RelatedPerson") }, target={Organization.class, Patient.class, Practitioner.class, PractitionerRole.class, RelatedPerson.class } ) public static final String SP_SOURCE = "source"; /** * Fluent Client search parameter constant for source *

* Description: Who or where the information in the statement came from
* Type: reference
- * Path: NutritionIntake.informationSource
+ * Path: (NutritionIntake.reported as Reference)
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam SOURCE = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_SOURCE); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionOrder.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionOrder.java index 12a7937e6..206af9661 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionOrder.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionOrder.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -4064,10 +4064,10 @@ public class NutritionOrder extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -4108,7 +4108,7 @@ public class NutritionOrder extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionProduct.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionProduct.java new file mode 100644 index 000000000..531dd8892 --- /dev/null +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/NutritionProduct.java @@ -0,0 +1,2304 @@ +package org.hl7.fhir.r5.model; + + +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.r5.model.Enumerations.*; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.instance.model.api.ICompositeType; +import ca.uhn.fhir.model.api.annotation.ResourceDef; +import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import ca.uhn.fhir.model.api.annotation.Child; +import ca.uhn.fhir.model.api.annotation.ChildOrder; +import ca.uhn.fhir.model.api.annotation.Description; +import ca.uhn.fhir.model.api.annotation.Block; + +/** + * A food or fluid product that is consumed by patients. + */ +@ResourceDef(name="NutritionProduct", profile="http://hl7.org/fhir/StructureDefinition/NutritionProduct") +public class NutritionProduct extends DomainResource { + + public enum NutritionProductStatus { + /** + * The product can be used. + */ + ACTIVE, + /** + * The product is not expected or allowed to be used. + */ + INACTIVE, + /** + * This electronic record should never have existed, though it is possible that real-world decisions were based on it. (If real-world activity has occurred, the status should be \"cancelled\" rather than \"entered-in-error\".). + */ + ENTEREDINERROR, + /** + * added to help the parsers with the generic types + */ + NULL; + public static NutritionProductStatus fromCode(String codeString) throws FHIRException { + if (codeString == null || "".equals(codeString)) + return null; + if ("active".equals(codeString)) + return ACTIVE; + if ("inactive".equals(codeString)) + return INACTIVE; + if ("entered-in-error".equals(codeString)) + return ENTEREDINERROR; + if (Configuration.isAcceptInvalidEnums()) + return null; + else + throw new FHIRException("Unknown NutritionProductStatus code '"+codeString+"'"); + } + public String toCode() { + switch (this) { + case ACTIVE: return "active"; + case INACTIVE: return "inactive"; + case ENTEREDINERROR: return "entered-in-error"; + default: return "?"; + } + } + public String getSystem() { + switch (this) { + case ACTIVE: return "http://hl7.org/fhir/nutritionproduct-status"; + case INACTIVE: return "http://hl7.org/fhir/nutritionproduct-status"; + case ENTEREDINERROR: return "http://hl7.org/fhir/nutritionproduct-status"; + default: return "?"; + } + } + public String getDefinition() { + switch (this) { + case ACTIVE: return "The product can be used."; + case INACTIVE: return "The product is not expected or allowed to be used."; + case ENTEREDINERROR: return "This electronic record should never have existed, though it is possible that real-world decisions were based on it. (If real-world activity has occurred, the status should be \"cancelled\" rather than \"entered-in-error\".)."; + default: return "?"; + } + } + public String getDisplay() { + switch (this) { + case ACTIVE: return "Active"; + case INACTIVE: return "Inactive"; + case ENTEREDINERROR: return "Entered in Error"; + default: return "?"; + } + } + } + + public static class NutritionProductStatusEnumFactory implements EnumFactory { + public NutritionProductStatus fromCode(String codeString) throws IllegalArgumentException { + if (codeString == null || "".equals(codeString)) + if (codeString == null || "".equals(codeString)) + return null; + if ("active".equals(codeString)) + return NutritionProductStatus.ACTIVE; + if ("inactive".equals(codeString)) + return NutritionProductStatus.INACTIVE; + if ("entered-in-error".equals(codeString)) + return NutritionProductStatus.ENTEREDINERROR; + throw new IllegalArgumentException("Unknown NutritionProductStatus code '"+codeString+"'"); + } + public Enumeration fromType(Base code) throws FHIRException { + if (code == null) + return null; + if (code.isEmpty()) + return new Enumeration(this); + String codeString = ((PrimitiveType) code).asStringValue(); + if (codeString == null || "".equals(codeString)) + return null; + if ("active".equals(codeString)) + return new Enumeration(this, NutritionProductStatus.ACTIVE); + if ("inactive".equals(codeString)) + return new Enumeration(this, NutritionProductStatus.INACTIVE); + if ("entered-in-error".equals(codeString)) + return new Enumeration(this, NutritionProductStatus.ENTEREDINERROR); + throw new FHIRException("Unknown NutritionProductStatus code '"+codeString+"'"); + } + public String toCode(NutritionProductStatus code) { + if (code == NutritionProductStatus.ACTIVE) + return "active"; + if (code == NutritionProductStatus.INACTIVE) + return "inactive"; + if (code == NutritionProductStatus.ENTEREDINERROR) + return "entered-in-error"; + return "?"; + } + public String toSystem(NutritionProductStatus code) { + return code.getSystem(); + } + } + + @Block() + public static class NutritionProductNutrientComponent extends BackboneElement implements IBaseBackboneElement { + /** + * The (relevant) nutrients in the product. + */ + @Child(name = "item", type = {CodeableReference.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The (relevant) nutrients in the product", formalDefinition="The (relevant) nutrients in the product." ) + protected CodeableReference item; + + /** + * The amount of nutrient expressed in one or more units: X per pack / per serving / per dose. + */ + @Child(name = "amount", type = {Ratio.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The amount of nutrient expressed in one or more units: X per pack / per serving / per dose", formalDefinition="The amount of nutrient expressed in one or more units: X per pack / per serving / per dose." ) + protected List amount; + + private static final long serialVersionUID = -776277304L; + + /** + * Constructor + */ + public NutritionProductNutrientComponent() { + super(); + } + + /** + * @return {@link #item} (The (relevant) nutrients in the product.) + */ + public CodeableReference getItem() { + if (this.item == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductNutrientComponent.item"); + else if (Configuration.doAutoCreate()) + this.item = new CodeableReference(); // cc + return this.item; + } + + public boolean hasItem() { + return this.item != null && !this.item.isEmpty(); + } + + /** + * @param value {@link #item} (The (relevant) nutrients in the product.) + */ + public NutritionProductNutrientComponent setItem(CodeableReference value) { + this.item = value; + return this; + } + + /** + * @return {@link #amount} (The amount of nutrient expressed in one or more units: X per pack / per serving / per dose.) + */ + public List getAmount() { + if (this.amount == null) + this.amount = new ArrayList(); + return this.amount; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProductNutrientComponent setAmount(List theAmount) { + this.amount = theAmount; + return this; + } + + public boolean hasAmount() { + if (this.amount == null) + return false; + for (Ratio item : this.amount) + if (!item.isEmpty()) + return true; + return false; + } + + public Ratio addAmount() { //3 + Ratio t = new Ratio(); + if (this.amount == null) + this.amount = new ArrayList(); + this.amount.add(t); + return t; + } + + public NutritionProductNutrientComponent addAmount(Ratio t) { //3 + if (t == null) + return this; + if (this.amount == null) + this.amount = new ArrayList(); + this.amount.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #amount}, creating it if it does not already exist {3} + */ + public Ratio getAmountFirstRep() { + if (getAmount().isEmpty()) { + addAmount(); + } + return getAmount().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("item", "CodeableReference(Substance)", "The (relevant) nutrients in the product.", 0, 1, item)); + children.add(new Property("amount", "Ratio", "The amount of nutrient expressed in one or more units: X per pack / per serving / per dose.", 0, java.lang.Integer.MAX_VALUE, amount)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3242771: /*item*/ return new Property("item", "CodeableReference(Substance)", "The (relevant) nutrients in the product.", 0, 1, item); + case -1413853096: /*amount*/ return new Property("amount", "Ratio", "The amount of nutrient expressed in one or more units: X per pack / per serving / per dose.", 0, java.lang.Integer.MAX_VALUE, amount); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // CodeableReference + case -1413853096: /*amount*/ return this.amount == null ? new Base[0] : this.amount.toArray(new Base[this.amount.size()]); // Ratio + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3242771: // item + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference + return value; + case -1413853096: // amount + this.getAmount().add(TypeConvertor.castToRatio(value)); // Ratio + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("item")) { + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference + } else if (name.equals("amount")) { + this.getAmount().add(TypeConvertor.castToRatio(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3242771: return getItem(); + case -1413853096: return addAmount(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3242771: /*item*/ return new String[] {"CodeableReference"}; + case -1413853096: /*amount*/ return new String[] {"Ratio"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("item")) { + this.item = new CodeableReference(); + return this.item; + } + else if (name.equals("amount")) { + return addAmount(); + } + else + return super.addChild(name); + } + + public NutritionProductNutrientComponent copy() { + NutritionProductNutrientComponent dst = new NutritionProductNutrientComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(NutritionProductNutrientComponent dst) { + super.copyValues(dst); + dst.item = item == null ? null : item.copy(); + if (amount != null) { + dst.amount = new ArrayList(); + for (Ratio i : amount) + dst.amount.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof NutritionProductNutrientComponent)) + return false; + NutritionProductNutrientComponent o = (NutritionProductNutrientComponent) other_; + return compareDeep(item, o.item, true) && compareDeep(amount, o.amount, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof NutritionProductNutrientComponent)) + return false; + NutritionProductNutrientComponent o = (NutritionProductNutrientComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(item, amount); + } + + public String fhirType() { + return "NutritionProduct.nutrient"; + + } + + } + + @Block() + public static class NutritionProductIngredientComponent extends BackboneElement implements IBaseBackboneElement { + /** + * The ingredient contained in the product. + */ + @Child(name = "item", type = {CodeableReference.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="The ingredient contained in the product", formalDefinition="The ingredient contained in the product." ) + protected CodeableReference item; + + /** + * The amount of ingredient that is in the product. + */ + @Child(name = "amount", type = {Ratio.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The amount of ingredient that is in the product", formalDefinition="The amount of ingredient that is in the product." ) + protected List amount; + + private static final long serialVersionUID = -776277304L; + + /** + * Constructor + */ + public NutritionProductIngredientComponent() { + super(); + } + + /** + * Constructor + */ + public NutritionProductIngredientComponent(CodeableReference item) { + super(); + this.setItem(item); + } + + /** + * @return {@link #item} (The ingredient contained in the product.) + */ + public CodeableReference getItem() { + if (this.item == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductIngredientComponent.item"); + else if (Configuration.doAutoCreate()) + this.item = new CodeableReference(); // cc + return this.item; + } + + public boolean hasItem() { + return this.item != null && !this.item.isEmpty(); + } + + /** + * @param value {@link #item} (The ingredient contained in the product.) + */ + public NutritionProductIngredientComponent setItem(CodeableReference value) { + this.item = value; + return this; + } + + /** + * @return {@link #amount} (The amount of ingredient that is in the product.) + */ + public List getAmount() { + if (this.amount == null) + this.amount = new ArrayList(); + return this.amount; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProductIngredientComponent setAmount(List theAmount) { + this.amount = theAmount; + return this; + } + + public boolean hasAmount() { + if (this.amount == null) + return false; + for (Ratio item : this.amount) + if (!item.isEmpty()) + return true; + return false; + } + + public Ratio addAmount() { //3 + Ratio t = new Ratio(); + if (this.amount == null) + this.amount = new ArrayList(); + this.amount.add(t); + return t; + } + + public NutritionProductIngredientComponent addAmount(Ratio t) { //3 + if (t == null) + return this; + if (this.amount == null) + this.amount = new ArrayList(); + this.amount.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #amount}, creating it if it does not already exist {3} + */ + public Ratio getAmountFirstRep() { + if (getAmount().isEmpty()) { + addAmount(); + } + return getAmount().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("item", "CodeableReference(NutritionProduct)", "The ingredient contained in the product.", 0, 1, item)); + children.add(new Property("amount", "Ratio", "The amount of ingredient that is in the product.", 0, java.lang.Integer.MAX_VALUE, amount)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3242771: /*item*/ return new Property("item", "CodeableReference(NutritionProduct)", "The ingredient contained in the product.", 0, 1, item); + case -1413853096: /*amount*/ return new Property("amount", "Ratio", "The amount of ingredient that is in the product.", 0, java.lang.Integer.MAX_VALUE, amount); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // CodeableReference + case -1413853096: /*amount*/ return this.amount == null ? new Base[0] : this.amount.toArray(new Base[this.amount.size()]); // Ratio + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3242771: // item + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference + return value; + case -1413853096: // amount + this.getAmount().add(TypeConvertor.castToRatio(value)); // Ratio + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("item")) { + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference + } else if (name.equals("amount")) { + this.getAmount().add(TypeConvertor.castToRatio(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3242771: return getItem(); + case -1413853096: return addAmount(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3242771: /*item*/ return new String[] {"CodeableReference"}; + case -1413853096: /*amount*/ return new String[] {"Ratio"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("item")) { + this.item = new CodeableReference(); + return this.item; + } + else if (name.equals("amount")) { + return addAmount(); + } + else + return super.addChild(name); + } + + public NutritionProductIngredientComponent copy() { + NutritionProductIngredientComponent dst = new NutritionProductIngredientComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(NutritionProductIngredientComponent dst) { + super.copyValues(dst); + dst.item = item == null ? null : item.copy(); + if (amount != null) { + dst.amount = new ArrayList(); + for (Ratio i : amount) + dst.amount.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof NutritionProductIngredientComponent)) + return false; + NutritionProductIngredientComponent o = (NutritionProductIngredientComponent) other_; + return compareDeep(item, o.item, true) && compareDeep(amount, o.amount, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof NutritionProductIngredientComponent)) + return false; + NutritionProductIngredientComponent o = (NutritionProductIngredientComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(item, amount); + } + + public String fhirType() { + return "NutritionProduct.ingredient"; + + } + + } + + @Block() + public static class NutritionProductProductCharacteristicComponent extends BackboneElement implements IBaseBackboneElement { + /** + * A code specifying which characteristic of the product is being described (for example, colour, shape). + */ + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="Code specifying the type of characteristic", formalDefinition="A code specifying which characteristic of the product is being described (for example, colour, shape)." ) + protected CodeableConcept type; + + /** + * The actual characteristic value corresponding to the type. + */ + @Child(name = "value", type = {CodeableConcept.class, StringType.class, Quantity.class, Base64BinaryType.class, Attachment.class, BooleanType.class}, order=2, min=1, max=1, modifier=false, summary=false) + @Description(shortDefinition="The value of the characteristic", formalDefinition="The actual characteristic value corresponding to the type." ) + protected DataType value; + + private static final long serialVersionUID = -1659186716L; + + /** + * Constructor + */ + public NutritionProductProductCharacteristicComponent() { + super(); + } + + /** + * Constructor + */ + public NutritionProductProductCharacteristicComponent(CodeableConcept type, DataType value) { + super(); + this.setType(type); + this.setValue(value); + } + + /** + * @return {@link #type} (A code specifying which characteristic of the product is being described (for example, colour, shape).) + */ + public CodeableConcept getType() { + if (this.type == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductProductCharacteristicComponent.type"); + else if (Configuration.doAutoCreate()) + this.type = new CodeableConcept(); // cc + return this.type; + } + + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); + } + + /** + * @param value {@link #type} (A code specifying which characteristic of the product is being described (for example, colour, shape).) + */ + public NutritionProductProductCharacteristicComponent setType(CodeableConcept value) { + this.type = value; + return this; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public DataType getValue() { + return this.value; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public CodeableConcept getValueCodeableConcept() throws FHIRException { + if (this.value == null) + this.value = new CodeableConcept(); + if (!(this.value instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); + return (CodeableConcept) this.value; + } + + public boolean hasValueCodeableConcept() { + return this != null && this.value instanceof CodeableConcept; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public StringType getValueStringType() throws FHIRException { + if (this.value == null) + this.value = new StringType(); + if (!(this.value instanceof StringType)) + throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); + return (StringType) this.value; + } + + public boolean hasValueStringType() { + return this != null && this.value instanceof StringType; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public Quantity getValueQuantity() throws FHIRException { + if (this.value == null) + this.value = new Quantity(); + if (!(this.value instanceof Quantity)) + throw new FHIRException("Type mismatch: the type Quantity was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Quantity) this.value; + } + + public boolean hasValueQuantity() { + return this != null && this.value instanceof Quantity; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public Base64BinaryType getValueBase64BinaryType() throws FHIRException { + if (this.value == null) + this.value = new Base64BinaryType(); + if (!(this.value instanceof Base64BinaryType)) + throw new FHIRException("Type mismatch: the type Base64BinaryType was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Base64BinaryType) this.value; + } + + public boolean hasValueBase64BinaryType() { + return this != null && this.value instanceof Base64BinaryType; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public Attachment getValueAttachment() throws FHIRException { + if (this.value == null) + this.value = new Attachment(); + if (!(this.value instanceof Attachment)) + throw new FHIRException("Type mismatch: the type Attachment was expected, but "+this.value.getClass().getName()+" was encountered"); + return (Attachment) this.value; + } + + public boolean hasValueAttachment() { + return this != null && this.value instanceof Attachment; + } + + /** + * @return {@link #value} (The actual characteristic value corresponding to the type.) + */ + public BooleanType getValueBooleanType() throws FHIRException { + if (this.value == null) + this.value = new BooleanType(); + if (!(this.value instanceof BooleanType)) + throw new FHIRException("Type mismatch: the type BooleanType was expected, but "+this.value.getClass().getName()+" was encountered"); + return (BooleanType) this.value; + } + + public boolean hasValueBooleanType() { + return this != null && this.value instanceof BooleanType; + } + + public boolean hasValue() { + return this.value != null && !this.value.isEmpty(); + } + + /** + * @param value {@link #value} (The actual characteristic value corresponding to the type.) + */ + public NutritionProductProductCharacteristicComponent setValue(DataType value) { + if (value != null && !(value instanceof CodeableConcept || value instanceof StringType || value instanceof Quantity || value instanceof Base64BinaryType || value instanceof Attachment || value instanceof BooleanType)) + throw new Error("Not the right type for NutritionProduct.productCharacteristic.value[x]: "+value.fhirType()); + this.value = value; + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("type", "CodeableConcept", "A code specifying which characteristic of the product is being described (for example, colour, shape).", 0, 1, type)); + children.add(new Property("value[x]", "CodeableConcept|string|Quantity|base64Binary|Attachment|boolean", "The actual characteristic value corresponding to the type.", 0, 1, value)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "A code specifying which characteristic of the product is being described (for example, colour, shape).", 0, 1, type); + case -1410166417: /*value[x]*/ return new Property("value[x]", "CodeableConcept|string|Quantity|base64Binary|Attachment|boolean", "The actual characteristic value corresponding to the type.", 0, 1, value); + case 111972721: /*value*/ return new Property("value[x]", "CodeableConcept|string|Quantity|base64Binary|Attachment|boolean", "The actual characteristic value corresponding to the type.", 0, 1, value); + case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "The actual characteristic value corresponding to the type.", 0, 1, value); + case -1424603934: /*valueString*/ return new Property("value[x]", "string", "The actual characteristic value corresponding to the type.", 0, 1, value); + case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "The actual characteristic value corresponding to the type.", 0, 1, value); + case -1535024575: /*valueBase64Binary*/ return new Property("value[x]", "base64Binary", "The actual characteristic value corresponding to the type.", 0, 1, value); + case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "The actual characteristic value corresponding to the type.", 0, 1, value); + case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "The actual characteristic value corresponding to the type.", 0, 1, value); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 111972721: // value + this.value = TypeConvertor.castToType(value); // DataType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("value[x]")) { + this.value = TypeConvertor.castToType(value); // DataType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: return getType(); + case -1410166417: return getValue(); + case 111972721: return getValue(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"CodeableConcept", "string", "Quantity", "base64Binary", "Attachment", "boolean"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; + } + else if (name.equals("valueCodeableConcept")) { + this.value = new CodeableConcept(); + return this.value; + } + else if (name.equals("valueString")) { + this.value = new StringType(); + return this.value; + } + else if (name.equals("valueQuantity")) { + this.value = new Quantity(); + return this.value; + } + else if (name.equals("valueBase64Binary")) { + this.value = new Base64BinaryType(); + return this.value; + } + else if (name.equals("valueAttachment")) { + this.value = new Attachment(); + return this.value; + } + else if (name.equals("valueBoolean")) { + this.value = new BooleanType(); + return this.value; + } + else + return super.addChild(name); + } + + public NutritionProductProductCharacteristicComponent copy() { + NutritionProductProductCharacteristicComponent dst = new NutritionProductProductCharacteristicComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(NutritionProductProductCharacteristicComponent dst) { + super.copyValues(dst); + dst.type = type == null ? null : type.copy(); + dst.value = value == null ? null : value.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof NutritionProductProductCharacteristicComponent)) + return false; + NutritionProductProductCharacteristicComponent o = (NutritionProductProductCharacteristicComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(value, o.value, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof NutritionProductProductCharacteristicComponent)) + return false; + NutritionProductProductCharacteristicComponent o = (NutritionProductProductCharacteristicComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value); + } + + public String fhirType() { + return "NutritionProduct.productCharacteristic"; + + } + + } + + @Block() + public static class NutritionProductInstanceComponent extends BackboneElement implements IBaseBackboneElement { + /** + * The amount of items or instances that the resource considers, for instance when referring to 2 identical units together. + */ + @Child(name = "quantity", type = {Quantity.class}, order=1, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The amount of items or instances", formalDefinition="The amount of items or instances that the resource considers, for instance when referring to 2 identical units together." ) + protected Quantity quantity; + + /** + * The identifier for the physical instance, typically a serial number. + */ + @Child(name = "identifier", type = {Identifier.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="The identifier for the physical instance, typically a serial number", formalDefinition="The identifier for the physical instance, typically a serial number." ) + protected List identifier; + + /** + * The identification of the batch or lot of the product. + */ + @Child(name = "lotNumber", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The identification of the batch or lot of the product", formalDefinition="The identification of the batch or lot of the product." ) + protected StringType lotNumber; + + /** + * The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed. + */ + @Child(name = "expiry", type = {DateTimeType.class}, order=4, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The expiry date or date and time for the product", formalDefinition="The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed." ) + protected DateTimeType expiry; + + /** + * The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed. + */ + @Child(name = "useBy", type = {DateTimeType.class}, order=5, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="The date until which the product is expected to be good for consumption", formalDefinition="The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed." ) + protected DateTimeType useBy; + + private static final long serialVersionUID = -17755640L; + + /** + * Constructor + */ + public NutritionProductInstanceComponent() { + super(); + } + + /** + * @return {@link #quantity} (The amount of items or instances that the resource considers, for instance when referring to 2 identical units together.) + */ + public Quantity getQuantity() { + if (this.quantity == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductInstanceComponent.quantity"); + else if (Configuration.doAutoCreate()) + this.quantity = new Quantity(); // cc + return this.quantity; + } + + public boolean hasQuantity() { + return this.quantity != null && !this.quantity.isEmpty(); + } + + /** + * @param value {@link #quantity} (The amount of items or instances that the resource considers, for instance when referring to 2 identical units together.) + */ + public NutritionProductInstanceComponent setQuantity(Quantity value) { + this.quantity = value; + return this; + } + + /** + * @return {@link #identifier} (The identifier for the physical instance, typically a serial number.) + */ + public List getIdentifier() { + if (this.identifier == null) + this.identifier = new ArrayList(); + return this.identifier; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProductInstanceComponent setIdentifier(List theIdentifier) { + this.identifier = theIdentifier; + return this; + } + + public boolean hasIdentifier() { + if (this.identifier == null) + return false; + for (Identifier item : this.identifier) + if (!item.isEmpty()) + return true; + return false; + } + + public Identifier addIdentifier() { //3 + Identifier t = new Identifier(); + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return t; + } + + public NutritionProductInstanceComponent addIdentifier(Identifier t) { //3 + if (t == null) + return this; + if (this.identifier == null) + this.identifier = new ArrayList(); + this.identifier.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #identifier}, creating it if it does not already exist {3} + */ + public Identifier getIdentifierFirstRep() { + if (getIdentifier().isEmpty()) { + addIdentifier(); + } + return getIdentifier().get(0); + } + + /** + * @return {@link #lotNumber} (The identification of the batch or lot of the product.). This is the underlying object with id, value and extensions. The accessor "getLotNumber" gives direct access to the value + */ + public StringType getLotNumberElement() { + if (this.lotNumber == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductInstanceComponent.lotNumber"); + else if (Configuration.doAutoCreate()) + this.lotNumber = new StringType(); // bb + return this.lotNumber; + } + + public boolean hasLotNumberElement() { + return this.lotNumber != null && !this.lotNumber.isEmpty(); + } + + public boolean hasLotNumber() { + return this.lotNumber != null && !this.lotNumber.isEmpty(); + } + + /** + * @param value {@link #lotNumber} (The identification of the batch or lot of the product.). This is the underlying object with id, value and extensions. The accessor "getLotNumber" gives direct access to the value + */ + public NutritionProductInstanceComponent setLotNumberElement(StringType value) { + this.lotNumber = value; + return this; + } + + /** + * @return The identification of the batch or lot of the product. + */ + public String getLotNumber() { + return this.lotNumber == null ? null : this.lotNumber.getValue(); + } + + /** + * @param value The identification of the batch or lot of the product. + */ + public NutritionProductInstanceComponent setLotNumber(String value) { + if (Utilities.noString(value)) + this.lotNumber = null; + else { + if (this.lotNumber == null) + this.lotNumber = new StringType(); + this.lotNumber.setValue(value); + } + return this; + } + + /** + * @return {@link #expiry} (The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.). This is the underlying object with id, value and extensions. The accessor "getExpiry" gives direct access to the value + */ + public DateTimeType getExpiryElement() { + if (this.expiry == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductInstanceComponent.expiry"); + else if (Configuration.doAutoCreate()) + this.expiry = new DateTimeType(); // bb + return this.expiry; + } + + public boolean hasExpiryElement() { + return this.expiry != null && !this.expiry.isEmpty(); + } + + public boolean hasExpiry() { + return this.expiry != null && !this.expiry.isEmpty(); + } + + /** + * @param value {@link #expiry} (The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.). This is the underlying object with id, value and extensions. The accessor "getExpiry" gives direct access to the value + */ + public NutritionProductInstanceComponent setExpiryElement(DateTimeType value) { + this.expiry = value; + return this; + } + + /** + * @return The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed. + */ + public Date getExpiry() { + return this.expiry == null ? null : this.expiry.getValue(); + } + + /** + * @param value The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed. + */ + public NutritionProductInstanceComponent setExpiry(Date value) { + if (value == null) + this.expiry = null; + else { + if (this.expiry == null) + this.expiry = new DateTimeType(); + this.expiry.setValue(value); + } + return this; + } + + /** + * @return {@link #useBy} (The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.). This is the underlying object with id, value and extensions. The accessor "getUseBy" gives direct access to the value + */ + public DateTimeType getUseByElement() { + if (this.useBy == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProductInstanceComponent.useBy"); + else if (Configuration.doAutoCreate()) + this.useBy = new DateTimeType(); // bb + return this.useBy; + } + + public boolean hasUseByElement() { + return this.useBy != null && !this.useBy.isEmpty(); + } + + public boolean hasUseBy() { + return this.useBy != null && !this.useBy.isEmpty(); + } + + /** + * @param value {@link #useBy} (The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.). This is the underlying object with id, value and extensions. The accessor "getUseBy" gives direct access to the value + */ + public NutritionProductInstanceComponent setUseByElement(DateTimeType value) { + this.useBy = value; + return this; + } + + /** + * @return The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed. + */ + public Date getUseBy() { + return this.useBy == null ? null : this.useBy.getValue(); + } + + /** + * @param value The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed. + */ + public NutritionProductInstanceComponent setUseBy(Date value) { + if (value == null) + this.useBy = null; + else { + if (this.useBy == null) + this.useBy = new DateTimeType(); + this.useBy.setValue(value); + } + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("quantity", "Quantity", "The amount of items or instances that the resource considers, for instance when referring to 2 identical units together.", 0, 1, quantity)); + children.add(new Property("identifier", "Identifier", "The identifier for the physical instance, typically a serial number.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("lotNumber", "string", "The identification of the batch or lot of the product.", 0, 1, lotNumber)); + children.add(new Property("expiry", "dateTime", "The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.", 0, 1, expiry)); + children.add(new Property("useBy", "dateTime", "The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.", 0, 1, useBy)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -1285004149: /*quantity*/ return new Property("quantity", "Quantity", "The amount of items or instances that the resource considers, for instance when referring to 2 identical units together.", 0, 1, quantity); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "The identifier for the physical instance, typically a serial number.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 462547450: /*lotNumber*/ return new Property("lotNumber", "string", "The identification of the batch or lot of the product.", 0, 1, lotNumber); + case -1289159373: /*expiry*/ return new Property("expiry", "dateTime", "The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.", 0, 1, expiry); + case 111577150: /*useBy*/ return new Property("useBy", "dateTime", "The time after which the product is no longer expected to be in proper condition, or its use is not advised or not allowed.", 0, 1, useBy); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 462547450: /*lotNumber*/ return this.lotNumber == null ? new Base[0] : new Base[] {this.lotNumber}; // StringType + case -1289159373: /*expiry*/ return this.expiry == null ? new Base[0] : new Base[] {this.expiry}; // DateTimeType + case 111577150: /*useBy*/ return this.useBy == null ? new Base[0] : new Base[] {this.useBy}; // DateTimeType + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -1285004149: // quantity + this.quantity = TypeConvertor.castToQuantity(value); // Quantity + return value; + case -1618432855: // identifier + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier + return value; + case 462547450: // lotNumber + this.lotNumber = TypeConvertor.castToString(value); // StringType + return value; + case -1289159373: // expiry + this.expiry = TypeConvertor.castToDateTime(value); // DateTimeType + return value; + case 111577150: // useBy + this.useBy = TypeConvertor.castToDateTime(value); // DateTimeType + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("quantity")) { + this.quantity = TypeConvertor.castToQuantity(value); // Quantity + } else if (name.equals("identifier")) { + this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("lotNumber")) { + this.lotNumber = TypeConvertor.castToString(value); // StringType + } else if (name.equals("expiry")) { + this.expiry = TypeConvertor.castToDateTime(value); // DateTimeType + } else if (name.equals("useBy")) { + this.useBy = TypeConvertor.castToDateTime(value); // DateTimeType + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1285004149: return getQuantity(); + case -1618432855: return addIdentifier(); + case 462547450: return getLotNumberElement(); + case -1289159373: return getExpiryElement(); + case 111577150: return getUseByElement(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -1285004149: /*quantity*/ return new String[] {"Quantity"}; + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 462547450: /*lotNumber*/ return new String[] {"string"}; + case -1289159373: /*expiry*/ return new String[] {"dateTime"}; + case 111577150: /*useBy*/ return new String[] {"dateTime"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("quantity")) { + this.quantity = new Quantity(); + return this.quantity; + } + else if (name.equals("identifier")) { + return addIdentifier(); + } + else if (name.equals("lotNumber")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionProduct.instance.lotNumber"); + } + else if (name.equals("expiry")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionProduct.instance.expiry"); + } + else if (name.equals("useBy")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionProduct.instance.useBy"); + } + else + return super.addChild(name); + } + + public NutritionProductInstanceComponent copy() { + NutritionProductInstanceComponent dst = new NutritionProductInstanceComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(NutritionProductInstanceComponent dst) { + super.copyValues(dst); + dst.quantity = quantity == null ? null : quantity.copy(); + if (identifier != null) { + dst.identifier = new ArrayList(); + for (Identifier i : identifier) + dst.identifier.add(i.copy()); + }; + dst.lotNumber = lotNumber == null ? null : lotNumber.copy(); + dst.expiry = expiry == null ? null : expiry.copy(); + dst.useBy = useBy == null ? null : useBy.copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof NutritionProductInstanceComponent)) + return false; + NutritionProductInstanceComponent o = (NutritionProductInstanceComponent) other_; + return compareDeep(quantity, o.quantity, true) && compareDeep(identifier, o.identifier, true) && compareDeep(lotNumber, o.lotNumber, true) + && compareDeep(expiry, o.expiry, true) && compareDeep(useBy, o.useBy, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof NutritionProductInstanceComponent)) + return false; + NutritionProductInstanceComponent o = (NutritionProductInstanceComponent) other_; + return compareValues(lotNumber, o.lotNumber, true) && compareValues(expiry, o.expiry, true) && compareValues(useBy, o.useBy, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(quantity, identifier, lotNumber + , expiry, useBy); + } + + public String fhirType() { + return "NutritionProduct.instance"; + + } + + } + + /** + * The current state of the product. + */ + @Child(name = "status", type = {CodeType.class}, order=0, min=1, max=1, modifier=true, summary=true) + @Description(shortDefinition="active | inactive | entered-in-error", formalDefinition="The current state of the product." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/nutritionproduct-status") + protected Enumeration status; + + /** + * Nutrition products can have different classifications - according to its nutritional properties, preparation methods, etc. + */ + @Child(name = "category", type = {CodeableConcept.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="A category or class of the nutrition product (halal, kosher, gluten free, vegan, etc)", formalDefinition="Nutrition products can have different classifications - according to its nutritional properties, preparation methods, etc." ) + protected List category; + + /** + * The code assigned to the product, for example a manufacturer number or other terminology. + */ + @Child(name = "code", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="A code designating a specific type of nutritional product", formalDefinition="The code assigned to the product, for example a manufacturer number or other terminology." ) + protected CodeableConcept code; + + /** + * The organisation (manufacturer, representative or legal authorisation holder) that is responsible for the device. + */ + @Child(name = "manufacturer", type = {Organization.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Manufacturer, representative or officially responsible for the product", formalDefinition="The organisation (manufacturer, representative or legal authorisation holder) that is responsible for the device." ) + protected List manufacturer; + + /** + * The product's nutritional information expressed by the nutrients. + */ + @Child(name = "nutrient", type = {}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The product's nutritional information expressed by the nutrients", formalDefinition="The product's nutritional information expressed by the nutrients." ) + protected List nutrient; + + /** + * Ingredients contained in this product. + */ + @Child(name = "ingredient", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Ingredients contained in this product", formalDefinition="Ingredients contained in this product." ) + protected List ingredient; + + /** + * Allergens that are known to be a part of this nutrition product. + */ + @Child(name = "knownAllergen", type = {CodeableReference.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Allergens that are known to be a part of this nutrition product", formalDefinition="Allergens that are known to be a part of this nutrition product." ) + protected List knownAllergen; + + /** + * Specifies descriptive properties of the nutrition product. + */ + @Child(name = "productCharacteristic", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Specifies descriptive properties of the nutrition product", formalDefinition="Specifies descriptive properties of the nutrition product." ) + protected List productCharacteristic; + + /** + * Conveys instance-level information about this product item. One or several physical, countable instances or occurrences of the product. + */ + @Child(name = "instance", type = {}, order=8, min=0, max=1, modifier=false, summary=false) + @Description(shortDefinition="One or several physical instances or occurrences of the nutrition product", formalDefinition="Conveys instance-level information about this product item. One or several physical, countable instances or occurrences of the product." ) + protected NutritionProductInstanceComponent instance; + + /** + * Comments made about the product. + */ + @Child(name = "note", type = {Annotation.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) + @Description(shortDefinition="Comments made about the product", formalDefinition="Comments made about the product." ) + protected List note; + + private static final long serialVersionUID = -565022355L; + + /** + * Constructor + */ + public NutritionProduct() { + super(); + } + + /** + * Constructor + */ + public NutritionProduct(NutritionProductStatus status) { + super(); + this.setStatus(status); + } + + /** + * @return {@link #status} (The current state of the product.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Enumeration getStatusElement() { + if (this.status == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProduct.status"); + else if (Configuration.doAutoCreate()) + this.status = new Enumeration(new NutritionProductStatusEnumFactory()); // bb + return this.status; + } + + public boolean hasStatusElement() { + return this.status != null && !this.status.isEmpty(); + } + + public boolean hasStatus() { + return this.status != null && !this.status.isEmpty(); + } + + /** + * @param value {@link #status} (The current state of the product.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public NutritionProduct setStatusElement(Enumeration value) { + this.status = value; + return this; + } + + /** + * @return The current state of the product. + */ + public NutritionProductStatus getStatus() { + return this.status == null ? null : this.status.getValue(); + } + + /** + * @param value The current state of the product. + */ + public NutritionProduct setStatus(NutritionProductStatus value) { + if (this.status == null) + this.status = new Enumeration(new NutritionProductStatusEnumFactory()); + this.status.setValue(value); + return this; + } + + /** + * @return {@link #category} (Nutrition products can have different classifications - according to its nutritional properties, preparation methods, etc.) + */ + public List getCategory() { + if (this.category == null) + this.category = new ArrayList(); + return this.category; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setCategory(List theCategory) { + this.category = theCategory; + return this; + } + + public boolean hasCategory() { + if (this.category == null) + return false; + for (CodeableConcept item : this.category) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addCategory() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.category == null) + this.category = new ArrayList(); + this.category.add(t); + return t; + } + + public NutritionProduct addCategory(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.category == null) + this.category = new ArrayList(); + this.category.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #category}, creating it if it does not already exist {3} + */ + public CodeableConcept getCategoryFirstRep() { + if (getCategory().isEmpty()) { + addCategory(); + } + return getCategory().get(0); + } + + /** + * @return {@link #code} (The code assigned to the product, for example a manufacturer number or other terminology.) + */ + public CodeableConcept getCode() { + if (this.code == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProduct.code"); + else if (Configuration.doAutoCreate()) + this.code = new CodeableConcept(); // cc + return this.code; + } + + public boolean hasCode() { + return this.code != null && !this.code.isEmpty(); + } + + /** + * @param value {@link #code} (The code assigned to the product, for example a manufacturer number or other terminology.) + */ + public NutritionProduct setCode(CodeableConcept value) { + this.code = value; + return this; + } + + /** + * @return {@link #manufacturer} (The organisation (manufacturer, representative or legal authorisation holder) that is responsible for the device.) + */ + public List getManufacturer() { + if (this.manufacturer == null) + this.manufacturer = new ArrayList(); + return this.manufacturer; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setManufacturer(List theManufacturer) { + this.manufacturer = theManufacturer; + return this; + } + + public boolean hasManufacturer() { + if (this.manufacturer == null) + return false; + for (Reference item : this.manufacturer) + if (!item.isEmpty()) + return true; + return false; + } + + public Reference addManufacturer() { //3 + Reference t = new Reference(); + if (this.manufacturer == null) + this.manufacturer = new ArrayList(); + this.manufacturer.add(t); + return t; + } + + public NutritionProduct addManufacturer(Reference t) { //3 + if (t == null) + return this; + if (this.manufacturer == null) + this.manufacturer = new ArrayList(); + this.manufacturer.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #manufacturer}, creating it if it does not already exist {3} + */ + public Reference getManufacturerFirstRep() { + if (getManufacturer().isEmpty()) { + addManufacturer(); + } + return getManufacturer().get(0); + } + + /** + * @return {@link #nutrient} (The product's nutritional information expressed by the nutrients.) + */ + public List getNutrient() { + if (this.nutrient == null) + this.nutrient = new ArrayList(); + return this.nutrient; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setNutrient(List theNutrient) { + this.nutrient = theNutrient; + return this; + } + + public boolean hasNutrient() { + if (this.nutrient == null) + return false; + for (NutritionProductNutrientComponent item : this.nutrient) + if (!item.isEmpty()) + return true; + return false; + } + + public NutritionProductNutrientComponent addNutrient() { //3 + NutritionProductNutrientComponent t = new NutritionProductNutrientComponent(); + if (this.nutrient == null) + this.nutrient = new ArrayList(); + this.nutrient.add(t); + return t; + } + + public NutritionProduct addNutrient(NutritionProductNutrientComponent t) { //3 + if (t == null) + return this; + if (this.nutrient == null) + this.nutrient = new ArrayList(); + this.nutrient.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #nutrient}, creating it if it does not already exist {3} + */ + public NutritionProductNutrientComponent getNutrientFirstRep() { + if (getNutrient().isEmpty()) { + addNutrient(); + } + return getNutrient().get(0); + } + + /** + * @return {@link #ingredient} (Ingredients contained in this product.) + */ + public List getIngredient() { + if (this.ingredient == null) + this.ingredient = new ArrayList(); + return this.ingredient; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setIngredient(List theIngredient) { + this.ingredient = theIngredient; + return this; + } + + public boolean hasIngredient() { + if (this.ingredient == null) + return false; + for (NutritionProductIngredientComponent item : this.ingredient) + if (!item.isEmpty()) + return true; + return false; + } + + public NutritionProductIngredientComponent addIngredient() { //3 + NutritionProductIngredientComponent t = new NutritionProductIngredientComponent(); + if (this.ingredient == null) + this.ingredient = new ArrayList(); + this.ingredient.add(t); + return t; + } + + public NutritionProduct addIngredient(NutritionProductIngredientComponent t) { //3 + if (t == null) + return this; + if (this.ingredient == null) + this.ingredient = new ArrayList(); + this.ingredient.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #ingredient}, creating it if it does not already exist {3} + */ + public NutritionProductIngredientComponent getIngredientFirstRep() { + if (getIngredient().isEmpty()) { + addIngredient(); + } + return getIngredient().get(0); + } + + /** + * @return {@link #knownAllergen} (Allergens that are known to be a part of this nutrition product.) + */ + public List getKnownAllergen() { + if (this.knownAllergen == null) + this.knownAllergen = new ArrayList(); + return this.knownAllergen; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setKnownAllergen(List theKnownAllergen) { + this.knownAllergen = theKnownAllergen; + return this; + } + + public boolean hasKnownAllergen() { + if (this.knownAllergen == null) + return false; + for (CodeableReference item : this.knownAllergen) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableReference addKnownAllergen() { //3 + CodeableReference t = new CodeableReference(); + if (this.knownAllergen == null) + this.knownAllergen = new ArrayList(); + this.knownAllergen.add(t); + return t; + } + + public NutritionProduct addKnownAllergen(CodeableReference t) { //3 + if (t == null) + return this; + if (this.knownAllergen == null) + this.knownAllergen = new ArrayList(); + this.knownAllergen.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #knownAllergen}, creating it if it does not already exist {3} + */ + public CodeableReference getKnownAllergenFirstRep() { + if (getKnownAllergen().isEmpty()) { + addKnownAllergen(); + } + return getKnownAllergen().get(0); + } + + /** + * @return {@link #productCharacteristic} (Specifies descriptive properties of the nutrition product.) + */ + public List getProductCharacteristic() { + if (this.productCharacteristic == null) + this.productCharacteristic = new ArrayList(); + return this.productCharacteristic; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setProductCharacteristic(List theProductCharacteristic) { + this.productCharacteristic = theProductCharacteristic; + return this; + } + + public boolean hasProductCharacteristic() { + if (this.productCharacteristic == null) + return false; + for (NutritionProductProductCharacteristicComponent item : this.productCharacteristic) + if (!item.isEmpty()) + return true; + return false; + } + + public NutritionProductProductCharacteristicComponent addProductCharacteristic() { //3 + NutritionProductProductCharacteristicComponent t = new NutritionProductProductCharacteristicComponent(); + if (this.productCharacteristic == null) + this.productCharacteristic = new ArrayList(); + this.productCharacteristic.add(t); + return t; + } + + public NutritionProduct addProductCharacteristic(NutritionProductProductCharacteristicComponent t) { //3 + if (t == null) + return this; + if (this.productCharacteristic == null) + this.productCharacteristic = new ArrayList(); + this.productCharacteristic.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #productCharacteristic}, creating it if it does not already exist {3} + */ + public NutritionProductProductCharacteristicComponent getProductCharacteristicFirstRep() { + if (getProductCharacteristic().isEmpty()) { + addProductCharacteristic(); + } + return getProductCharacteristic().get(0); + } + + /** + * @return {@link #instance} (Conveys instance-level information about this product item. One or several physical, countable instances or occurrences of the product.) + */ + public NutritionProductInstanceComponent getInstance() { + if (this.instance == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create NutritionProduct.instance"); + else if (Configuration.doAutoCreate()) + this.instance = new NutritionProductInstanceComponent(); // cc + return this.instance; + } + + public boolean hasInstance() { + return this.instance != null && !this.instance.isEmpty(); + } + + /** + * @param value {@link #instance} (Conveys instance-level information about this product item. One or several physical, countable instances or occurrences of the product.) + */ + public NutritionProduct setInstance(NutritionProductInstanceComponent value) { + this.instance = value; + return this; + } + + /** + * @return {@link #note} (Comments made about the product.) + */ + public List getNote() { + if (this.note == null) + this.note = new ArrayList(); + return this.note; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public NutritionProduct setNote(List theNote) { + this.note = theNote; + return this; + } + + public boolean hasNote() { + if (this.note == null) + return false; + for (Annotation item : this.note) + if (!item.isEmpty()) + return true; + return false; + } + + public Annotation addNote() { //3 + Annotation t = new Annotation(); + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return t; + } + + public NutritionProduct addNote(Annotation t) { //3 + if (t == null) + return this; + if (this.note == null) + this.note = new ArrayList(); + this.note.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #note}, creating it if it does not already exist {3} + */ + public Annotation getNoteFirstRep() { + if (getNote().isEmpty()) { + addNote(); + } + return getNote().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("status", "code", "The current state of the product.", 0, 1, status)); + children.add(new Property("category", "CodeableConcept", "Nutrition products can have different classifications - according to its nutritional properties, preparation methods, etc.", 0, java.lang.Integer.MAX_VALUE, category)); + children.add(new Property("code", "CodeableConcept", "The code assigned to the product, for example a manufacturer number or other terminology.", 0, 1, code)); + children.add(new Property("manufacturer", "Reference(Organization)", "The organisation (manufacturer, representative or legal authorisation holder) that is responsible for the device.", 0, java.lang.Integer.MAX_VALUE, manufacturer)); + children.add(new Property("nutrient", "", "The product's nutritional information expressed by the nutrients.", 0, java.lang.Integer.MAX_VALUE, nutrient)); + children.add(new Property("ingredient", "", "Ingredients contained in this product.", 0, java.lang.Integer.MAX_VALUE, ingredient)); + children.add(new Property("knownAllergen", "CodeableReference(Substance)", "Allergens that are known to be a part of this nutrition product.", 0, java.lang.Integer.MAX_VALUE, knownAllergen)); + children.add(new Property("productCharacteristic", "", "Specifies descriptive properties of the nutrition product.", 0, java.lang.Integer.MAX_VALUE, productCharacteristic)); + children.add(new Property("instance", "", "Conveys instance-level information about this product item. One or several physical, countable instances or occurrences of the product.", 0, 1, instance)); + children.add(new Property("note", "Annotation", "Comments made about the product.", 0, java.lang.Integer.MAX_VALUE, note)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -892481550: /*status*/ return new Property("status", "code", "The current state of the product.", 0, 1, status); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Nutrition products can have different classifications - according to its nutritional properties, preparation methods, etc.", 0, java.lang.Integer.MAX_VALUE, category); + case 3059181: /*code*/ return new Property("code", "CodeableConcept", "The code assigned to the product, for example a manufacturer number or other terminology.", 0, 1, code); + case -1969347631: /*manufacturer*/ return new Property("manufacturer", "Reference(Organization)", "The organisation (manufacturer, representative or legal authorisation holder) that is responsible for the device.", 0, java.lang.Integer.MAX_VALUE, manufacturer); + case -1671151641: /*nutrient*/ return new Property("nutrient", "", "The product's nutritional information expressed by the nutrients.", 0, java.lang.Integer.MAX_VALUE, nutrient); + case -206409263: /*ingredient*/ return new Property("ingredient", "", "Ingredients contained in this product.", 0, java.lang.Integer.MAX_VALUE, ingredient); + case 1093336805: /*knownAllergen*/ return new Property("knownAllergen", "CodeableReference(Substance)", "Allergens that are known to be a part of this nutrition product.", 0, java.lang.Integer.MAX_VALUE, knownAllergen); + case 1231899754: /*productCharacteristic*/ return new Property("productCharacteristic", "", "Specifies descriptive properties of the nutrition product.", 0, java.lang.Integer.MAX_VALUE, productCharacteristic); + case 555127957: /*instance*/ return new Property("instance", "", "Conveys instance-level information about this product item. One or several physical, countable instances or occurrences of the product.", 0, 1, instance); + case 3387378: /*note*/ return new Property("note", "Annotation", "Comments made about the product.", 0, java.lang.Integer.MAX_VALUE, note); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case 50511102: /*category*/ return this.category == null ? new Base[0] : this.category.toArray(new Base[this.category.size()]); // CodeableConcept + case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept + case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : this.manufacturer.toArray(new Base[this.manufacturer.size()]); // Reference + case -1671151641: /*nutrient*/ return this.nutrient == null ? new Base[0] : this.nutrient.toArray(new Base[this.nutrient.size()]); // NutritionProductNutrientComponent + case -206409263: /*ingredient*/ return this.ingredient == null ? new Base[0] : this.ingredient.toArray(new Base[this.ingredient.size()]); // NutritionProductIngredientComponent + case 1093336805: /*knownAllergen*/ return this.knownAllergen == null ? new Base[0] : this.knownAllergen.toArray(new Base[this.knownAllergen.size()]); // CodeableReference + case 1231899754: /*productCharacteristic*/ return this.productCharacteristic == null ? new Base[0] : this.productCharacteristic.toArray(new Base[this.productCharacteristic.size()]); // NutritionProductProductCharacteristicComponent + case 555127957: /*instance*/ return this.instance == null ? new Base[0] : new Base[] {this.instance}; // NutritionProductInstanceComponent + case 3387378: /*note*/ return this.note == null ? new Base[0] : this.note.toArray(new Base[this.note.size()]); // Annotation + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -892481550: // status + value = new NutritionProductStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + return value; + case 50511102: // category + this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case 3059181: // code + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -1969347631: // manufacturer + this.getManufacturer().add(TypeConvertor.castToReference(value)); // Reference + return value; + case -1671151641: // nutrient + this.getNutrient().add((NutritionProductNutrientComponent) value); // NutritionProductNutrientComponent + return value; + case -206409263: // ingredient + this.getIngredient().add((NutritionProductIngredientComponent) value); // NutritionProductIngredientComponent + return value; + case 1093336805: // knownAllergen + this.getKnownAllergen().add(TypeConvertor.castToCodeableReference(value)); // CodeableReference + return value; + case 1231899754: // productCharacteristic + this.getProductCharacteristic().add((NutritionProductProductCharacteristicComponent) value); // NutritionProductProductCharacteristicComponent + return value; + case 555127957: // instance + this.instance = (NutritionProductInstanceComponent) value; // NutritionProductInstanceComponent + return value; + case 3387378: // note + this.getNote().add(TypeConvertor.castToAnnotation(value)); // Annotation + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("status")) { + value = new NutritionProductStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + } else if (name.equals("category")) { + this.getCategory().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("code")) { + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("manufacturer")) { + this.getManufacturer().add(TypeConvertor.castToReference(value)); + } else if (name.equals("nutrient")) { + this.getNutrient().add((NutritionProductNutrientComponent) value); + } else if (name.equals("ingredient")) { + this.getIngredient().add((NutritionProductIngredientComponent) value); + } else if (name.equals("knownAllergen")) { + this.getKnownAllergen().add(TypeConvertor.castToCodeableReference(value)); + } else if (name.equals("productCharacteristic")) { + this.getProductCharacteristic().add((NutritionProductProductCharacteristicComponent) value); + } else if (name.equals("instance")) { + this.instance = (NutritionProductInstanceComponent) value; // NutritionProductInstanceComponent + } else if (name.equals("note")) { + this.getNote().add(TypeConvertor.castToAnnotation(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -892481550: return getStatusElement(); + case 50511102: return addCategory(); + case 3059181: return getCode(); + case -1969347631: return addManufacturer(); + case -1671151641: return addNutrient(); + case -206409263: return addIngredient(); + case 1093336805: return addKnownAllergen(); + case 1231899754: return addProductCharacteristic(); + case 555127957: return getInstance(); + case 3387378: return addNote(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -892481550: /*status*/ return new String[] {"code"}; + case 50511102: /*category*/ return new String[] {"CodeableConcept"}; + case 3059181: /*code*/ return new String[] {"CodeableConcept"}; + case -1969347631: /*manufacturer*/ return new String[] {"Reference"}; + case -1671151641: /*nutrient*/ return new String[] {}; + case -206409263: /*ingredient*/ return new String[] {}; + case 1093336805: /*knownAllergen*/ return new String[] {"CodeableReference"}; + case 1231899754: /*productCharacteristic*/ return new String[] {}; + case 555127957: /*instance*/ return new String[] {}; + case 3387378: /*note*/ return new String[] {"Annotation"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("status")) { + throw new FHIRException("Cannot call addChild on a primitive type NutritionProduct.status"); + } + else if (name.equals("category")) { + return addCategory(); + } + else if (name.equals("code")) { + this.code = new CodeableConcept(); + return this.code; + } + else if (name.equals("manufacturer")) { + return addManufacturer(); + } + else if (name.equals("nutrient")) { + return addNutrient(); + } + else if (name.equals("ingredient")) { + return addIngredient(); + } + else if (name.equals("knownAllergen")) { + return addKnownAllergen(); + } + else if (name.equals("productCharacteristic")) { + return addProductCharacteristic(); + } + else if (name.equals("instance")) { + this.instance = new NutritionProductInstanceComponent(); + return this.instance; + } + else if (name.equals("note")) { + return addNote(); + } + else + return super.addChild(name); + } + + public String fhirType() { + return "NutritionProduct"; + + } + + public NutritionProduct copy() { + NutritionProduct dst = new NutritionProduct(); + copyValues(dst); + return dst; + } + + public void copyValues(NutritionProduct dst) { + super.copyValues(dst); + dst.status = status == null ? null : status.copy(); + if (category != null) { + dst.category = new ArrayList(); + for (CodeableConcept i : category) + dst.category.add(i.copy()); + }; + dst.code = code == null ? null : code.copy(); + if (manufacturer != null) { + dst.manufacturer = new ArrayList(); + for (Reference i : manufacturer) + dst.manufacturer.add(i.copy()); + }; + if (nutrient != null) { + dst.nutrient = new ArrayList(); + for (NutritionProductNutrientComponent i : nutrient) + dst.nutrient.add(i.copy()); + }; + if (ingredient != null) { + dst.ingredient = new ArrayList(); + for (NutritionProductIngredientComponent i : ingredient) + dst.ingredient.add(i.copy()); + }; + if (knownAllergen != null) { + dst.knownAllergen = new ArrayList(); + for (CodeableReference i : knownAllergen) + dst.knownAllergen.add(i.copy()); + }; + if (productCharacteristic != null) { + dst.productCharacteristic = new ArrayList(); + for (NutritionProductProductCharacteristicComponent i : productCharacteristic) + dst.productCharacteristic.add(i.copy()); + }; + dst.instance = instance == null ? null : instance.copy(); + if (note != null) { + dst.note = new ArrayList(); + for (Annotation i : note) + dst.note.add(i.copy()); + }; + } + + protected NutritionProduct typedCopy() { + return copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof NutritionProduct)) + return false; + NutritionProduct o = (NutritionProduct) other_; + return compareDeep(status, o.status, true) && compareDeep(category, o.category, true) && compareDeep(code, o.code, true) + && compareDeep(manufacturer, o.manufacturer, true) && compareDeep(nutrient, o.nutrient, true) && compareDeep(ingredient, o.ingredient, true) + && compareDeep(knownAllergen, o.knownAllergen, true) && compareDeep(productCharacteristic, o.productCharacteristic, true) + && compareDeep(instance, o.instance, true) && compareDeep(note, o.note, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof NutritionProduct)) + return false; + NutritionProduct o = (NutritionProduct) other_; + return compareValues(status, o.status, true); + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(status, category, code, manufacturer + , nutrient, ingredient, knownAllergen, productCharacteristic, instance, note); + } + + @Override + public ResourceType getResourceType() { + return ResourceType.NutritionProduct; + } + + /** + * Search parameter: identifier + *

+ * Description: The identifier for the physical instance, typically a serial number
+ * Type: token
+ * Path: NutritionProduct.instance.identifier
+ *

+ */ + @SearchParamDefinition(name="identifier", path="NutritionProduct.instance.identifier", description="The identifier for the physical instance, typically a serial number", type="token" ) + public static final String SP_IDENTIFIER = "identifier"; + /** + * Fluent Client search parameter constant for identifier + *

+ * Description: The identifier for the physical instance, typically a serial number
+ * Type: token
+ * Path: NutritionProduct.instance.identifier
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); + + /** + * Search parameter: status + *

+ * Description: active | inactive | entered-in-error
+ * Type: token
+ * Path: NutritionProduct.status
+ *

+ */ + @SearchParamDefinition(name="status", path="NutritionProduct.status", description="active | inactive | entered-in-error", type="token" ) + public static final String SP_STATUS = "status"; + /** + * Fluent Client search parameter constant for status + *

+ * Description: active | inactive | entered-in-error
+ * Type: token
+ * Path: NutritionProduct.status
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + + +} + diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Observation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Observation.java index 787da20c9..07ebe06ad 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Observation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Observation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -3602,7 +3602,7 @@ public class Observation extends DomainResource { * Path: Observation.focus
*

*/ - @SearchParamDefinition(name="focus", path="Observation.focus", description="The focus of an observation when the focus is not the patient of record.", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="focus", path="Observation.focus", description="The focus of an observation when the focus is not the patient of record.", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_FOCUS = "focus"; /** * Fluent Client search parameter constant for focus @@ -3891,10 +3891,10 @@ public class Observation extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -3917,7 +3917,7 @@ public class Observation extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -3946,10 +3946,10 @@ public class Observation extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -3975,7 +3975,7 @@ public class Observation extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -4157,10 +4157,10 @@ public class Observation extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -4201,7 +4201,7 @@ public class Observation extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ObservationDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ObservationDefinition.java index b3f2e3c44..9c0c122bd 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ObservationDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ObservationDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1391,17 +1391,17 @@ public class ObservationDefinition extends DomainResource { protected List> permittedDataType; /** - * The quantitative details specified. + * Characteristics for quantitative results of this observation. */ @Child(name = "quantitativeDetails", type = {ObservationDefinitionQuantitativeDetailsComponent.class}, order=3, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Quantitative details", formalDefinition="The quantitative details specified." ) + @Description(shortDefinition="Characteristics of quantitative results", formalDefinition="Characteristics for quantitative results of this observation." ) protected ObservationDefinitionQuantitativeDetailsComponent quantitativeDetails; /** - * The qualified interval specified. + * Multiple ranges of results qualified by different contexts for ordinal or continuous observations conforming to this ObservationDefinition. */ @Child(name = "qualifiedInterval", type = {ObservationDefinitionQualifiedIntervalComponent.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Qualified interval", formalDefinition="The qualified interval specified." ) + @Description(shortDefinition="Qualified range for continuous and ordinal observation results", formalDefinition="Multiple ranges of results qualified by different contexts for ordinal or continuous observations conforming to this ObservationDefinition." ) protected List qualifiedInterval; private static final long serialVersionUID = 527664521L; @@ -1507,7 +1507,7 @@ public class ObservationDefinition extends DomainResource { } /** - * @return {@link #quantitativeDetails} (The quantitative details specified.) + * @return {@link #quantitativeDetails} (Characteristics for quantitative results of this observation.) */ public ObservationDefinitionQuantitativeDetailsComponent getQuantitativeDetails() { if (this.quantitativeDetails == null) @@ -1523,7 +1523,7 @@ public class ObservationDefinition extends DomainResource { } /** - * @param value {@link #quantitativeDetails} (The quantitative details specified.) + * @param value {@link #quantitativeDetails} (Characteristics for quantitative results of this observation.) */ public ObservationDefinitionComponentComponent setQuantitativeDetails(ObservationDefinitionQuantitativeDetailsComponent value) { this.quantitativeDetails = value; @@ -1531,7 +1531,7 @@ public class ObservationDefinition extends DomainResource { } /** - * @return {@link #qualifiedInterval} (The qualified interval specified.) + * @return {@link #qualifiedInterval} (Multiple ranges of results qualified by different contexts for ordinal or continuous observations conforming to this ObservationDefinition.) */ public List getQualifiedInterval() { if (this.qualifiedInterval == null) @@ -1587,8 +1587,8 @@ public class ObservationDefinition extends DomainResource { super.listChildren(children); children.add(new Property("code", "CodeableConcept", "Describes what will be observed.", 0, 1, code)); children.add(new Property("permittedDataType", "code", "The data types allowed for the value element of the instance of this component observations.", 0, java.lang.Integer.MAX_VALUE, permittedDataType)); - children.add(new Property("quantitativeDetails", "@ObservationDefinition.quantitativeDetails", "The quantitative details specified.", 0, 1, quantitativeDetails)); - children.add(new Property("qualifiedInterval", "@ObservationDefinition.qualifiedInterval", "The qualified interval specified.", 0, java.lang.Integer.MAX_VALUE, qualifiedInterval)); + children.add(new Property("quantitativeDetails", "@ObservationDefinition.quantitativeDetails", "Characteristics for quantitative results of this observation.", 0, 1, quantitativeDetails)); + children.add(new Property("qualifiedInterval", "@ObservationDefinition.qualifiedInterval", "Multiple ranges of results qualified by different contexts for ordinal or continuous observations conforming to this ObservationDefinition.", 0, java.lang.Integer.MAX_VALUE, qualifiedInterval)); } @Override @@ -1596,8 +1596,8 @@ public class ObservationDefinition extends DomainResource { switch (_hash) { case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Describes what will be observed.", 0, 1, code); case -99492804: /*permittedDataType*/ return new Property("permittedDataType", "code", "The data types allowed for the value element of the instance of this component observations.", 0, java.lang.Integer.MAX_VALUE, permittedDataType); - case 842150763: /*quantitativeDetails*/ return new Property("quantitativeDetails", "@ObservationDefinition.quantitativeDetails", "The quantitative details specified.", 0, 1, quantitativeDetails); - case 1882971521: /*qualifiedInterval*/ return new Property("qualifiedInterval", "@ObservationDefinition.qualifiedInterval", "The qualified interval specified.", 0, java.lang.Integer.MAX_VALUE, qualifiedInterval); + case 842150763: /*quantitativeDetails*/ return new Property("quantitativeDetails", "@ObservationDefinition.quantitativeDetails", "Characteristics for quantitative results of this observation.", 0, 1, quantitativeDetails); + case 1882971521: /*qualifiedInterval*/ return new Property("qualifiedInterval", "@ObservationDefinition.qualifiedInterval", "Multiple ranges of results qualified by different contexts for ordinal or continuous observations conforming to this ObservationDefinition.", 0, java.lang.Integer.MAX_VALUE, qualifiedInterval); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1884,7 +1884,7 @@ public class ObservationDefinition extends DomainResource { * The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date. */ @Child(name = "lastReviewDate", type = {DateType.class}, order=18, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Last review date for the ObservationDefinition", formalDefinition="The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date." ) + @Description(shortDefinition="Date on which the asset content was last reviewed", formalDefinition="The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date." ) protected DateType lastReviewDate; /** @@ -1905,7 +1905,7 @@ public class ObservationDefinition extends DomainResource { * A code that classifies the general type of observation. */ @Child(name = "category", type = {CodeableConcept.class}, order=21, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Category of observation", formalDefinition="A code that classifies the general type of observation." ) + @Description(shortDefinition="General type of observation", formalDefinition="A code that classifies the general type of observation." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/observation-category") protected List category; @@ -1929,7 +1929,7 @@ public class ObservationDefinition extends DomainResource { * Multiple results allowed for observations conforming to this ObservationDefinition. */ @Child(name = "multipleResultsAllowed", type = {BooleanType.class}, order=24, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Multiple results allowed", formalDefinition="Multiple results allowed for observations conforming to this ObservationDefinition." ) + @Description(shortDefinition="Multiple results allowed for conforming observations", formalDefinition="Multiple results allowed for observations conforming to this ObservationDefinition." ) protected BooleanType multipleResultsAllowed; /** @@ -1966,7 +1966,7 @@ public class ObservationDefinition extends DomainResource { * The preferred name to be used when reporting the results of observations conforming to this ObservationDefinition. */ @Child(name = "preferredReportName", type = {StringType.class}, order=29, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Preferred report name", formalDefinition="The preferred name to be used when reporting the results of observations conforming to this ObservationDefinition." ) + @Description(shortDefinition="The preferred name to be used when reporting the observation results", formalDefinition="The preferred name to be used when reporting the results of observations conforming to this ObservationDefinition." ) protected StringType preferredReportName; /** @@ -4480,6 +4480,26 @@ public class ObservationDefinition extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); + /** + * Search parameter: url + *

+ * Description: The uri that identifies the observation definition
+ * Type: uri
+ * Path: ObservationDefinition.url
+ *

+ */ + @SearchParamDefinition(name="url", path="ObservationDefinition.url", description="The uri that identifies the observation definition", type="uri" ) + public static final String SP_URL = "url"; + /** + * Fluent Client search parameter constant for url + *

+ * Description: The uri that identifies the observation definition
+ * Type: uri
+ * Path: ObservationDefinition.url
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); + } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationDefinition.java index d1ed6b78c..9f934e8f6 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationOutcome.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationOutcome.java index 7be941300..2b636a94d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationOutcome.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OperationOutcome.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrderedDistribution.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrderedDistribution.java index 7365bcdaa..a2b47b241 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrderedDistribution.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrderedDistribution.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Organization.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Organization.java index d736b0054..64c73fcfe 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Organization.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Organization.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrganizationAffiliation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrganizationAffiliation.java index 503f18d7c..9bf0f630c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrganizationAffiliation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/OrganizationAffiliation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PackagedProductDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PackagedProductDefinition.java index 1b2b6198f..29b9a99bf 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PackagedProductDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PackagedProductDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -303,9 +303,9 @@ public class PackagedProductDefinition extends DomainResource { /** * The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1. */ - @Child(name = "quantity", type = {Quantity.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Child(name = "quantity", type = {IntegerType.class}, order=3, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1", formalDefinition="The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1." ) - protected Quantity quantity; + protected IntegerType quantity; /** * Material type of the package item. @@ -338,9 +338,9 @@ public class PackagedProductDefinition extends DomainResource { /** * General characteristics of this item. */ - @Child(name = "characteristic", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "property", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="General characteristics of this item", formalDefinition="General characteristics of this item." ) - protected List characteristic; + protected List property; /** * The item(s) within the packaging. @@ -356,7 +356,7 @@ public class PackagedProductDefinition extends DomainResource { @Description(shortDefinition="Allows containers within containers", formalDefinition="Allows containers within containers." ) protected List package_; - private static final long serialVersionUID = 8053245L; + private static final long serialVersionUID = 387482302L; /** * Constructor @@ -443,29 +443,50 @@ public class PackagedProductDefinition extends DomainResource { } /** - * @return {@link #quantity} (The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.) + * @return {@link #quantity} (The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.). This is the underlying object with id, value and extensions. The accessor "getQuantity" gives direct access to the value */ - public Quantity getQuantity() { + public IntegerType getQuantityElement() { if (this.quantity == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create PackagedProductDefinitionPackageComponent.quantity"); else if (Configuration.doAutoCreate()) - this.quantity = new Quantity(); // cc + this.quantity = new IntegerType(); // bb return this.quantity; } + public boolean hasQuantityElement() { + return this.quantity != null && !this.quantity.isEmpty(); + } + public boolean hasQuantity() { return this.quantity != null && !this.quantity.isEmpty(); } /** - * @param value {@link #quantity} (The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.) + * @param value {@link #quantity} (The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.). This is the underlying object with id, value and extensions. The accessor "getQuantity" gives direct access to the value */ - public PackagedProductDefinitionPackageComponent setQuantity(Quantity value) { + public PackagedProductDefinitionPackageComponent setQuantityElement(IntegerType value) { this.quantity = value; return this; } + /** + * @return The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1. + */ + public int getQuantity() { + return this.quantity == null || this.quantity.isEmpty() ? 0 : this.quantity.getValue(); + } + + /** + * @param value The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1. + */ + public PackagedProductDefinitionPackageComponent setQuantity(int value) { + if (this.quantity == null) + this.quantity = new IntegerType(); + this.quantity.setValue(value); + return this; + } + /** * @return {@link #material} (Material type of the package item.) */ @@ -679,56 +700,56 @@ public class PackagedProductDefinition extends DomainResource { } /** - * @return {@link #characteristic} (General characteristics of this item.) + * @return {@link #property} (General characteristics of this item.) */ - public List getCharacteristic() { - if (this.characteristic == null) - this.characteristic = new ArrayList(); - return this.characteristic; + public List getProperty() { + if (this.property == null) + this.property = new ArrayList(); + return this.property; } /** * @return Returns a reference to this for easy method chaining */ - public PackagedProductDefinitionPackageComponent setCharacteristic(List theCharacteristic) { - this.characteristic = theCharacteristic; + public PackagedProductDefinitionPackageComponent setProperty(List theProperty) { + this.property = theProperty; return this; } - public boolean hasCharacteristic() { - if (this.characteristic == null) + public boolean hasProperty() { + if (this.property == null) return false; - for (PackagedProductDefinitionPackageCharacteristicComponent item : this.characteristic) + for (PackagedProductDefinitionPackagePropertyComponent item : this.property) if (!item.isEmpty()) return true; return false; } - public PackagedProductDefinitionPackageCharacteristicComponent addCharacteristic() { //3 - PackagedProductDefinitionPackageCharacteristicComponent t = new PackagedProductDefinitionPackageCharacteristicComponent(); - if (this.characteristic == null) - this.characteristic = new ArrayList(); - this.characteristic.add(t); + public PackagedProductDefinitionPackagePropertyComponent addProperty() { //3 + PackagedProductDefinitionPackagePropertyComponent t = new PackagedProductDefinitionPackagePropertyComponent(); + if (this.property == null) + this.property = new ArrayList(); + this.property.add(t); return t; } - public PackagedProductDefinitionPackageComponent addCharacteristic(PackagedProductDefinitionPackageCharacteristicComponent t) { //3 + public PackagedProductDefinitionPackageComponent addProperty(PackagedProductDefinitionPackagePropertyComponent t) { //3 if (t == null) return this; - if (this.characteristic == null) - this.characteristic = new ArrayList(); - this.characteristic.add(t); + if (this.property == null) + this.property = new ArrayList(); + this.property.add(t); return this; } /** - * @return The first repetition of repeating field {@link #characteristic}, creating it if it does not already exist {3} + * @return The first repetition of repeating field {@link #property}, creating it if it does not already exist {3} */ - public PackagedProductDefinitionPackageCharacteristicComponent getCharacteristicFirstRep() { - if (getCharacteristic().isEmpty()) { - addCharacteristic(); + public PackagedProductDefinitionPackagePropertyComponent getPropertyFirstRep() { + if (getProperty().isEmpty()) { + addProperty(); } - return getCharacteristic().get(0); + return getProperty().get(0); } /** @@ -841,12 +862,12 @@ public class PackagedProductDefinition extends DomainResource { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Including possibly Data Carrier Identifier.", 0, java.lang.Integer.MAX_VALUE, identifier)); children.add(new Property("type", "CodeableConcept", "The physical type of the container of the medicine.", 0, 1, type)); - children.add(new Property("quantity", "Quantity", "The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.", 0, 1, quantity)); + children.add(new Property("quantity", "integer", "The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.", 0, 1, quantity)); children.add(new Property("material", "CodeableConcept", "Material type of the package item.", 0, java.lang.Integer.MAX_VALUE, material)); children.add(new Property("alternateMaterial", "CodeableConcept", "A possible alternate material for the packaging.", 0, java.lang.Integer.MAX_VALUE, alternateMaterial)); children.add(new Property("shelfLifeStorage", "ProductShelfLife", "Shelf Life and storage information.", 0, java.lang.Integer.MAX_VALUE, shelfLifeStorage)); children.add(new Property("manufacturer", "Reference(Organization)", "Manufacturer of this Package Item.", 0, java.lang.Integer.MAX_VALUE, manufacturer)); - children.add(new Property("characteristic", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, characteristic)); + children.add(new Property("property", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, property)); children.add(new Property("containedItem", "", "The item(s) within the packaging.", 0, java.lang.Integer.MAX_VALUE, containedItem)); children.add(new Property("package", "@PackagedProductDefinition.package", "Allows containers within containers.", 0, java.lang.Integer.MAX_VALUE, package_)); } @@ -856,12 +877,12 @@ public class PackagedProductDefinition extends DomainResource { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Including possibly Data Carrier Identifier.", 0, java.lang.Integer.MAX_VALUE, identifier); case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The physical type of the container of the medicine.", 0, 1, type); - case -1285004149: /*quantity*/ return new Property("quantity", "Quantity", "The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.", 0, 1, quantity); + case -1285004149: /*quantity*/ return new Property("quantity", "integer", "The quantity of this package in the medicinal product, at the current level of packaging. If specified, the outermost level is always 1.", 0, 1, quantity); case 299066663: /*material*/ return new Property("material", "CodeableConcept", "Material type of the package item.", 0, java.lang.Integer.MAX_VALUE, material); case -1021448255: /*alternateMaterial*/ return new Property("alternateMaterial", "CodeableConcept", "A possible alternate material for the packaging.", 0, java.lang.Integer.MAX_VALUE, alternateMaterial); case 172049237: /*shelfLifeStorage*/ return new Property("shelfLifeStorage", "ProductShelfLife", "Shelf Life and storage information.", 0, java.lang.Integer.MAX_VALUE, shelfLifeStorage); case -1969347631: /*manufacturer*/ return new Property("manufacturer", "Reference(Organization)", "Manufacturer of this Package Item.", 0, java.lang.Integer.MAX_VALUE, manufacturer); - case 366313883: /*characteristic*/ return new Property("characteristic", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, characteristic); + case -993141291: /*property*/ return new Property("property", "", "General characteristics of this item.", 0, java.lang.Integer.MAX_VALUE, property); case 1953679910: /*containedItem*/ return new Property("containedItem", "", "The item(s) within the packaging.", 0, java.lang.Integer.MAX_VALUE, containedItem); case -807062458: /*package*/ return new Property("package", "@PackagedProductDefinition.package", "Allows containers within containers.", 0, java.lang.Integer.MAX_VALUE, package_); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -874,12 +895,12 @@ public class PackagedProductDefinition extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept - case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity + case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // IntegerType case 299066663: /*material*/ return this.material == null ? new Base[0] : this.material.toArray(new Base[this.material.size()]); // CodeableConcept case -1021448255: /*alternateMaterial*/ return this.alternateMaterial == null ? new Base[0] : this.alternateMaterial.toArray(new Base[this.alternateMaterial.size()]); // CodeableConcept case 172049237: /*shelfLifeStorage*/ return this.shelfLifeStorage == null ? new Base[0] : this.shelfLifeStorage.toArray(new Base[this.shelfLifeStorage.size()]); // ProductShelfLife case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : this.manufacturer.toArray(new Base[this.manufacturer.size()]); // Reference - case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // PackagedProductDefinitionPackageCharacteristicComponent + case -993141291: /*property*/ return this.property == null ? new Base[0] : this.property.toArray(new Base[this.property.size()]); // PackagedProductDefinitionPackagePropertyComponent case 1953679910: /*containedItem*/ return this.containedItem == null ? new Base[0] : this.containedItem.toArray(new Base[this.containedItem.size()]); // PackagedProductDefinitionPackageContainedItemComponent case -807062458: /*package*/ return this.package_ == null ? new Base[0] : this.package_.toArray(new Base[this.package_.size()]); // PackagedProductDefinitionPackageComponent default: return super.getProperty(hash, name, checkValid); @@ -897,7 +918,7 @@ public class PackagedProductDefinition extends DomainResource { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -1285004149: // quantity - this.quantity = TypeConvertor.castToQuantity(value); // Quantity + this.quantity = TypeConvertor.castToInteger(value); // IntegerType return value; case 299066663: // material this.getMaterial().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept @@ -911,8 +932,8 @@ public class PackagedProductDefinition extends DomainResource { case -1969347631: // manufacturer this.getManufacturer().add(TypeConvertor.castToReference(value)); // Reference return value; - case 366313883: // characteristic - this.getCharacteristic().add((PackagedProductDefinitionPackageCharacteristicComponent) value); // PackagedProductDefinitionPackageCharacteristicComponent + case -993141291: // property + this.getProperty().add((PackagedProductDefinitionPackagePropertyComponent) value); // PackagedProductDefinitionPackagePropertyComponent return value; case 1953679910: // containedItem this.getContainedItem().add((PackagedProductDefinitionPackageContainedItemComponent) value); // PackagedProductDefinitionPackageContainedItemComponent @@ -932,7 +953,7 @@ public class PackagedProductDefinition extends DomainResource { } else if (name.equals("type")) { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("quantity")) { - this.quantity = TypeConvertor.castToQuantity(value); // Quantity + this.quantity = TypeConvertor.castToInteger(value); // IntegerType } else if (name.equals("material")) { this.getMaterial().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("alternateMaterial")) { @@ -941,8 +962,8 @@ public class PackagedProductDefinition extends DomainResource { this.getShelfLifeStorage().add(TypeConvertor.castToProductShelfLife(value)); } else if (name.equals("manufacturer")) { this.getManufacturer().add(TypeConvertor.castToReference(value)); - } else if (name.equals("characteristic")) { - this.getCharacteristic().add((PackagedProductDefinitionPackageCharacteristicComponent) value); + } else if (name.equals("property")) { + this.getProperty().add((PackagedProductDefinitionPackagePropertyComponent) value); } else if (name.equals("containedItem")) { this.getContainedItem().add((PackagedProductDefinitionPackageContainedItemComponent) value); } else if (name.equals("package")) { @@ -957,12 +978,12 @@ public class PackagedProductDefinition extends DomainResource { switch (hash) { case -1618432855: return addIdentifier(); case 3575610: return getType(); - case -1285004149: return getQuantity(); + case -1285004149: return getQuantityElement(); case 299066663: return addMaterial(); case -1021448255: return addAlternateMaterial(); case 172049237: return addShelfLifeStorage(); case -1969347631: return addManufacturer(); - case 366313883: return addCharacteristic(); + case -993141291: return addProperty(); case 1953679910: return addContainedItem(); case -807062458: return addPackage(); default: return super.makeProperty(hash, name); @@ -975,12 +996,12 @@ public class PackagedProductDefinition extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; case 3575610: /*type*/ return new String[] {"CodeableConcept"}; - case -1285004149: /*quantity*/ return new String[] {"Quantity"}; + case -1285004149: /*quantity*/ return new String[] {"integer"}; case 299066663: /*material*/ return new String[] {"CodeableConcept"}; case -1021448255: /*alternateMaterial*/ return new String[] {"CodeableConcept"}; case 172049237: /*shelfLifeStorage*/ return new String[] {"ProductShelfLife"}; case -1969347631: /*manufacturer*/ return new String[] {"Reference"}; - case 366313883: /*characteristic*/ return new String[] {}; + case -993141291: /*property*/ return new String[] {}; case 1953679910: /*containedItem*/ return new String[] {}; case -807062458: /*package*/ return new String[] {"@PackagedProductDefinition.package"}; default: return super.getTypesForProperty(hash, name); @@ -998,8 +1019,7 @@ public class PackagedProductDefinition extends DomainResource { return this.type; } else if (name.equals("quantity")) { - this.quantity = new Quantity(); - return this.quantity; + throw new FHIRException("Cannot call addChild on a primitive type PackagedProductDefinition.package.quantity"); } else if (name.equals("material")) { return addMaterial(); @@ -1013,8 +1033,8 @@ public class PackagedProductDefinition extends DomainResource { else if (name.equals("manufacturer")) { return addManufacturer(); } - else if (name.equals("characteristic")) { - return addCharacteristic(); + else if (name.equals("property")) { + return addProperty(); } else if (name.equals("containedItem")) { return addContainedItem(); @@ -1061,10 +1081,10 @@ public class PackagedProductDefinition extends DomainResource { for (Reference i : manufacturer) dst.manufacturer.add(i.copy()); }; - if (characteristic != null) { - dst.characteristic = new ArrayList(); - for (PackagedProductDefinitionPackageCharacteristicComponent i : characteristic) - dst.characteristic.add(i.copy()); + if (property != null) { + dst.property = new ArrayList(); + for (PackagedProductDefinitionPackagePropertyComponent i : property) + dst.property.add(i.copy()); }; if (containedItem != null) { dst.containedItem = new ArrayList(); @@ -1088,7 +1108,7 @@ public class PackagedProductDefinition extends DomainResource { return compareDeep(identifier, o.identifier, true) && compareDeep(type, o.type, true) && compareDeep(quantity, o.quantity, true) && compareDeep(material, o.material, true) && compareDeep(alternateMaterial, o.alternateMaterial, true) && compareDeep(shelfLifeStorage, o.shelfLifeStorage, true) && compareDeep(manufacturer, o.manufacturer, true) - && compareDeep(characteristic, o.characteristic, true) && compareDeep(containedItem, o.containedItem, true) + && compareDeep(property, o.property, true) && compareDeep(containedItem, o.containedItem, true) && compareDeep(package_, o.package_, true); } @@ -1099,12 +1119,12 @@ public class PackagedProductDefinition extends DomainResource { if (!(other_ instanceof PackagedProductDefinitionPackageComponent)) return false; PackagedProductDefinitionPackageComponent o = (PackagedProductDefinitionPackageComponent) other_; - return true; + return compareValues(quantity, o.quantity, true); } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, type, quantity - , material, alternateMaterial, shelfLifeStorage, manufacturer, characteristic, containedItem + , material, alternateMaterial, shelfLifeStorage, manufacturer, property, containedItem , package_); } @@ -1116,59 +1136,59 @@ public class PackagedProductDefinition extends DomainResource { } @Block() - public static class PackagedProductDefinitionPackageCharacteristicComponent extends BackboneElement implements IBaseBackboneElement { + public static class PackagedProductDefinitionPackagePropertyComponent extends BackboneElement implements IBaseBackboneElement { /** * A code expressing the type of characteristic. */ - @Child(name = "code", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="A code expressing the type of characteristic", formalDefinition="A code expressing the type of characteristic." ) - protected CodeableConcept code; + protected CodeableConcept type; /** * A value for the characteristic. */ - @Child(name = "value", type = {Coding.class, Quantity.class, StringType.class, DateType.class, BooleanType.class, Attachment.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "value", type = {CodeableConcept.class, Quantity.class, DateType.class, BooleanType.class, Attachment.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="A value for the characteristic", formalDefinition="A value for the characteristic." ) protected DataType value; - private static final long serialVersionUID = -1950789033L; + private static final long serialVersionUID = -1659186716L; /** * Constructor */ - public PackagedProductDefinitionPackageCharacteristicComponent() { + public PackagedProductDefinitionPackagePropertyComponent() { super(); } /** * Constructor */ - public PackagedProductDefinitionPackageCharacteristicComponent(CodeableConcept code) { + public PackagedProductDefinitionPackagePropertyComponent(CodeableConcept type) { super(); - this.setCode(code); + this.setType(type); } /** - * @return {@link #code} (A code expressing the type of characteristic.) + * @return {@link #type} (A code expressing the type of characteristic.) */ - public CodeableConcept getCode() { - if (this.code == null) + public CodeableConcept getType() { + if (this.type == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create PackagedProductDefinitionPackageCharacteristicComponent.code"); + throw new Error("Attempt to auto-create PackagedProductDefinitionPackagePropertyComponent.type"); else if (Configuration.doAutoCreate()) - this.code = new CodeableConcept(); // cc - return this.code; + this.type = new CodeableConcept(); // cc + return this.type; } - public boolean hasCode() { - return this.code != null && !this.code.isEmpty(); + public boolean hasType() { + return this.type != null && !this.type.isEmpty(); } /** - * @param value {@link #code} (A code expressing the type of characteristic.) + * @param value {@link #type} (A code expressing the type of characteristic.) */ - public PackagedProductDefinitionPackageCharacteristicComponent setCode(CodeableConcept value) { - this.code = value; + public PackagedProductDefinitionPackagePropertyComponent setType(CodeableConcept value) { + this.type = value; return this; } @@ -1182,16 +1202,16 @@ public class PackagedProductDefinition extends DomainResource { /** * @return {@link #value} (A value for the characteristic.) */ - public Coding getValueCoding() throws FHIRException { + public CodeableConcept getValueCodeableConcept() throws FHIRException { if (this.value == null) - this.value = new Coding(); - if (!(this.value instanceof Coding)) - throw new FHIRException("Type mismatch: the type Coding was expected, but "+this.value.getClass().getName()+" was encountered"); - return (Coding) this.value; + this.value = new CodeableConcept(); + if (!(this.value instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.value.getClass().getName()+" was encountered"); + return (CodeableConcept) this.value; } - public boolean hasValueCoding() { - return this != null && this.value instanceof Coding; + public boolean hasValueCodeableConcept() { + return this != null && this.value instanceof CodeableConcept; } /** @@ -1209,21 +1229,6 @@ public class PackagedProductDefinition extends DomainResource { return this != null && this.value instanceof Quantity; } - /** - * @return {@link #value} (A value for the characteristic.) - */ - public StringType getValueStringType() throws FHIRException { - if (this.value == null) - this.value = new StringType(); - if (!(this.value instanceof StringType)) - throw new FHIRException("Type mismatch: the type StringType was expected, but "+this.value.getClass().getName()+" was encountered"); - return (StringType) this.value; - } - - public boolean hasValueStringType() { - return this != null && this.value instanceof StringType; - } - /** * @return {@link #value} (A value for the characteristic.) */ @@ -1276,28 +1281,27 @@ public class PackagedProductDefinition extends DomainResource { /** * @param value {@link #value} (A value for the characteristic.) */ - public PackagedProductDefinitionPackageCharacteristicComponent setValue(DataType value) { - if (value != null && !(value instanceof Coding || value instanceof Quantity || value instanceof StringType || value instanceof DateType || value instanceof BooleanType || value instanceof Attachment)) - throw new Error("Not the right type for PackagedProductDefinition.package.characteristic.value[x]: "+value.fhirType()); + public PackagedProductDefinitionPackagePropertyComponent setValue(DataType value) { + if (value != null && !(value instanceof CodeableConcept || value instanceof Quantity || value instanceof DateType || value instanceof BooleanType || value instanceof Attachment)) + throw new Error("Not the right type for PackagedProductDefinition.package.property.value[x]: "+value.fhirType()); this.value = value; return this; } protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("code", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, code)); - children.add(new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value)); + children.add(new Property("type", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, type)); + children.add(new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3059181: /*code*/ return new Property("code", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, code); - case -1410166417: /*value[x]*/ return new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); - case 111972721: /*value*/ return new Property("value[x]", "Coding|Quantity|string|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); - case -1887705029: /*valueCoding*/ return new Property("value[x]", "Coding", "A value for the characteristic.", 0, 1, value); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "A code expressing the type of characteristic.", 0, 1, type); + case -1410166417: /*value[x]*/ return new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); + case 111972721: /*value*/ return new Property("value[x]", "CodeableConcept|Quantity|date|boolean|Attachment", "A value for the characteristic.", 0, 1, value); + case 924902896: /*valueCodeableConcept*/ return new Property("value[x]", "CodeableConcept", "A value for the characteristic.", 0, 1, value); case -2029823716: /*valueQuantity*/ return new Property("value[x]", "Quantity", "A value for the characteristic.", 0, 1, value); - case -1424603934: /*valueString*/ return new Property("value[x]", "string", "A value for the characteristic.", 0, 1, value); case -766192449: /*valueDate*/ return new Property("value[x]", "date", "A value for the characteristic.", 0, 1, value); case 733421943: /*valueBoolean*/ return new Property("value[x]", "boolean", "A value for the characteristic.", 0, 1, value); case -475566732: /*valueAttachment*/ return new Property("value[x]", "Attachment", "A value for the characteristic.", 0, 1, value); @@ -1309,7 +1313,7 @@ public class PackagedProductDefinition extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept + case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // DataType default: return super.getProperty(hash, name, checkValid); } @@ -1319,8 +1323,8 @@ public class PackagedProductDefinition extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 3059181: // code - this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + case 3575610: // type + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case 111972721: // value this.value = TypeConvertor.castToType(value); // DataType @@ -1332,8 +1336,8 @@ public class PackagedProductDefinition extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("code")) { - this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + if (name.equals("type")) { + this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("value[x]")) { this.value = TypeConvertor.castToType(value); // DataType } else @@ -1344,7 +1348,7 @@ public class PackagedProductDefinition extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3059181: return getCode(); + case 3575610: return getType(); case -1410166417: return getValue(); case 111972721: return getValue(); default: return super.makeProperty(hash, name); @@ -1355,8 +1359,8 @@ public class PackagedProductDefinition extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3059181: /*code*/ return new String[] {"CodeableConcept"}; - case 111972721: /*value*/ return new String[] {"Coding", "Quantity", "string", "date", "boolean", "Attachment"}; + case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 111972721: /*value*/ return new String[] {"CodeableConcept", "Quantity", "date", "boolean", "Attachment"}; default: return super.getTypesForProperty(hash, name); } @@ -1364,22 +1368,18 @@ public class PackagedProductDefinition extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("code")) { - this.code = new CodeableConcept(); - return this.code; + if (name.equals("type")) { + this.type = new CodeableConcept(); + return this.type; } - else if (name.equals("valueCoding")) { - this.value = new Coding(); + else if (name.equals("valueCodeableConcept")) { + this.value = new CodeableConcept(); return this.value; } else if (name.equals("valueQuantity")) { this.value = new Quantity(); return this.value; } - else if (name.equals("valueString")) { - this.value = new StringType(); - return this.value; - } else if (name.equals("valueDate")) { this.value = new DateType(); return this.value; @@ -1396,15 +1396,15 @@ public class PackagedProductDefinition extends DomainResource { return super.addChild(name); } - public PackagedProductDefinitionPackageCharacteristicComponent copy() { - PackagedProductDefinitionPackageCharacteristicComponent dst = new PackagedProductDefinitionPackageCharacteristicComponent(); + public PackagedProductDefinitionPackagePropertyComponent copy() { + PackagedProductDefinitionPackagePropertyComponent dst = new PackagedProductDefinitionPackagePropertyComponent(); copyValues(dst); return dst; } - public void copyValues(PackagedProductDefinitionPackageCharacteristicComponent dst) { + public void copyValues(PackagedProductDefinitionPackagePropertyComponent dst) { super.copyValues(dst); - dst.code = code == null ? null : code.copy(); + dst.type = type == null ? null : type.copy(); dst.value = value == null ? null : value.copy(); } @@ -1412,28 +1412,28 @@ public class PackagedProductDefinition extends DomainResource { public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof PackagedProductDefinitionPackageCharacteristicComponent)) + if (!(other_ instanceof PackagedProductDefinitionPackagePropertyComponent)) return false; - PackagedProductDefinitionPackageCharacteristicComponent o = (PackagedProductDefinitionPackageCharacteristicComponent) other_; - return compareDeep(code, o.code, true) && compareDeep(value, o.value, true); + PackagedProductDefinitionPackagePropertyComponent o = (PackagedProductDefinitionPackagePropertyComponent) other_; + return compareDeep(type, o.type, true) && compareDeep(value, o.value, true); } @Override public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof PackagedProductDefinitionPackageCharacteristicComponent)) + if (!(other_ instanceof PackagedProductDefinitionPackagePropertyComponent)) return false; - PackagedProductDefinitionPackageCharacteristicComponent o = (PackagedProductDefinitionPackageCharacteristicComponent) other_; + PackagedProductDefinitionPackagePropertyComponent o = (PackagedProductDefinitionPackagePropertyComponent) other_; return true; } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, value); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, value); } public String fhirType() { - return "PackagedProductDefinition.package.characteristic"; + return "PackagedProductDefinition.package.property"; } @@ -1714,70 +1714,99 @@ public class PackagedProductDefinition extends DomainResource { @Description(shortDefinition="Unique identifier", formalDefinition="Unique identifier." ) protected List identifier; + /** + * A name for this product pack. Typically what it would be listed as in a drug formulary. + */ + @Child(name = "name", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="A name for this product pack. Typically what it would be listed as in a drug formulary", formalDefinition="A name for this product pack. Typically what it would be listed as in a drug formulary." ) + protected StringType name; + /** * The product that this is a pack for. */ - @Child(name = "subject", type = {MedicinalProductDefinition.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "subject", type = {MedicinalProductDefinition.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="The product that this is a pack for", formalDefinition="The product that this is a pack for." ) protected List subject; /** - * Textual description. + * The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status. */ - @Child(name = "description", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Textual description", formalDefinition="Textual description." ) - protected StringType description; + @Child(name = "status", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status", formalDefinition="The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") + protected CodeableConcept status; + + /** + * The date at which the given status became applicable. + */ + @Child(name = "statusDate", type = {DateTimeType.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The date at which the given status became applicable", formalDefinition="The date at which the given status became applicable." ) + protected DateTimeType statusDate; + + /** + * Textual description. Note that this is not the name of the product. + */ + @Child(name = "description", type = {MarkdownType.class}, order=5, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Textual description. Note that this is not the name of the product", formalDefinition="Textual description. Note that this is not the name of the product." ) + protected MarkdownType description; /** * The legal status of supply of the medicinal product as classified by the regulator. */ - @Child(name = "legalStatusOfSupply", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Child(name = "legalStatusOfSupply", type = {CodeableConcept.class}, order=6, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The legal status of supply of the medicinal product as classified by the regulator", formalDefinition="The legal status of supply of the medicinal product as classified by the regulator." ) protected CodeableConcept legalStatusOfSupply; /** * Marketing information. */ - @Child(name = "marketingStatus", type = {MarketingStatus.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "marketingStatus", type = {MarketingStatus.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Marketing information", formalDefinition="Marketing information." ) protected List marketingStatus; + /** + * Allows the key product features to be recorded, such as "hospital pack", "nurse prescribable", "calendar pack". + */ + @Child(name = "characteristic", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Allows the key product features to be recorded, such as \"hospital pack\", \"nurse prescribable\", \"calendar pack\"", formalDefinition="Allows the key product features to be recorded, such as \"hospital pack\", \"nurse prescribable\", \"calendar pack\"." ) + protected List characteristic; + /** * States whether a drug product is supplied with another item such as a diluent or adjuvant. */ - @Child(name = "copackagedIndicator", type = {BooleanType.class}, order=5, min=0, max=1, modifier=false, summary=true) + @Child(name = "copackagedIndicator", type = {BooleanType.class}, order=9, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="States whether a drug product is supplied with another item such as a diluent or adjuvant", formalDefinition="States whether a drug product is supplied with another item such as a diluent or adjuvant." ) protected BooleanType copackagedIndicator; /** * Manufacturer of this Package Item. */ - @Child(name = "marketingAuthorization", type = {RegulatedAuthorization.class}, order=6, min=0, max=1, modifier=false, summary=true) + @Child(name = "marketingAuthorization", type = {RegulatedAuthorization.class}, order=10, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Manufacturer of this Package Item", formalDefinition="Manufacturer of this Package Item." ) protected Reference marketingAuthorization; /** * Manufacturer of this Package Item. */ - @Child(name = "manufacturer", type = {Organization.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "manufacturer", type = {Organization.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Manufacturer of this Package Item", formalDefinition="Manufacturer of this Package Item." ) protected List manufacturer; /** * Batch numbering. */ - @Child(name = "batchIdentifier", type = {}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "batchIdentifier", type = {}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Batch numbering", formalDefinition="Batch numbering." ) protected List batchIdentifier; /** * A packaging item, as a contained for medicine, possibly with other packaging items within. */ - @Child(name = "package", type = {}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "package", type = {}, order=13, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="A packaging item, as a contained for medicine, possibly with other packaging items within", formalDefinition="A packaging item, as a contained for medicine, possibly with other packaging items within." ) protected List package_; - private static final long serialVersionUID = -246367398L; + private static final long serialVersionUID = 1013618678L; /** * Constructor @@ -1839,6 +1868,55 @@ public class PackagedProductDefinition extends DomainResource { return getIdentifier().get(0); } + /** + * @return {@link #name} (A name for this product pack. Typically what it would be listed as in a drug formulary.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + */ + public StringType getNameElement() { + if (this.name == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create PackagedProductDefinition.name"); + else if (Configuration.doAutoCreate()) + this.name = new StringType(); // bb + return this.name; + } + + public boolean hasNameElement() { + return this.name != null && !this.name.isEmpty(); + } + + public boolean hasName() { + return this.name != null && !this.name.isEmpty(); + } + + /** + * @param value {@link #name} (A name for this product pack. Typically what it would be listed as in a drug formulary.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + */ + public PackagedProductDefinition setNameElement(StringType value) { + this.name = value; + return this; + } + + /** + * @return A name for this product pack. Typically what it would be listed as in a drug formulary. + */ + public String getName() { + return this.name == null ? null : this.name.getValue(); + } + + /** + * @param value A name for this product pack. Typically what it would be listed as in a drug formulary. + */ + public PackagedProductDefinition setName(String value) { + if (Utilities.noString(value)) + this.name = null; + else { + if (this.name == null) + this.name = new StringType(); + this.name.setValue(value); + } + return this; + } + /** * @return {@link #subject} (The product that this is a pack for.) */ @@ -1893,14 +1971,87 @@ public class PackagedProductDefinition extends DomainResource { } /** - * @return {@link #description} (Textual description.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + * @return {@link #status} (The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status.) */ - public StringType getDescriptionElement() { + public CodeableConcept getStatus() { + if (this.status == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create PackagedProductDefinition.status"); + else if (Configuration.doAutoCreate()) + this.status = new CodeableConcept(); // cc + return this.status; + } + + public boolean hasStatus() { + return this.status != null && !this.status.isEmpty(); + } + + /** + * @param value {@link #status} (The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status.) + */ + public PackagedProductDefinition setStatus(CodeableConcept value) { + this.status = value; + return this; + } + + /** + * @return {@link #statusDate} (The date at which the given status became applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value + */ + public DateTimeType getStatusDateElement() { + if (this.statusDate == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create PackagedProductDefinition.statusDate"); + else if (Configuration.doAutoCreate()) + this.statusDate = new DateTimeType(); // bb + return this.statusDate; + } + + public boolean hasStatusDateElement() { + return this.statusDate != null && !this.statusDate.isEmpty(); + } + + public boolean hasStatusDate() { + return this.statusDate != null && !this.statusDate.isEmpty(); + } + + /** + * @param value {@link #statusDate} (The date at which the given status became applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value + */ + public PackagedProductDefinition setStatusDateElement(DateTimeType value) { + this.statusDate = value; + return this; + } + + /** + * @return The date at which the given status became applicable. + */ + public Date getStatusDate() { + return this.statusDate == null ? null : this.statusDate.getValue(); + } + + /** + * @param value The date at which the given status became applicable. + */ + public PackagedProductDefinition setStatusDate(Date value) { + if (value == null) + this.statusDate = null; + else { + if (this.statusDate == null) + this.statusDate = new DateTimeType(); + this.statusDate.setValue(value); + } + return this; + } + + /** + * @return {@link #description} (Textual description. Note that this is not the name of the product.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + */ + public MarkdownType getDescriptionElement() { if (this.description == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create PackagedProductDefinition.description"); else if (Configuration.doAutoCreate()) - this.description = new StringType(); // bb + this.description = new MarkdownType(); // bb return this.description; } @@ -1913,29 +2064,29 @@ public class PackagedProductDefinition extends DomainResource { } /** - * @param value {@link #description} (Textual description.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + * @param value {@link #description} (Textual description. Note that this is not the name of the product.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value */ - public PackagedProductDefinition setDescriptionElement(StringType value) { + public PackagedProductDefinition setDescriptionElement(MarkdownType value) { this.description = value; return this; } /** - * @return Textual description. + * @return Textual description. Note that this is not the name of the product. */ public String getDescription() { return this.description == null ? null : this.description.getValue(); } /** - * @param value Textual description. + * @param value Textual description. Note that this is not the name of the product. */ public PackagedProductDefinition setDescription(String value) { - if (Utilities.noString(value)) + if (value == null) this.description = null; else { if (this.description == null) - this.description = new StringType(); + this.description = new MarkdownType(); this.description.setValue(value); } return this; @@ -2018,6 +2169,59 @@ public class PackagedProductDefinition extends DomainResource { return getMarketingStatus().get(0); } + /** + * @return {@link #characteristic} (Allows the key product features to be recorded, such as "hospital pack", "nurse prescribable", "calendar pack".) + */ + public List getCharacteristic() { + if (this.characteristic == null) + this.characteristic = new ArrayList(); + return this.characteristic; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public PackagedProductDefinition setCharacteristic(List theCharacteristic) { + this.characteristic = theCharacteristic; + return this; + } + + public boolean hasCharacteristic() { + if (this.characteristic == null) + return false; + for (CodeableConcept item : this.characteristic) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addCharacteristic() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.characteristic == null) + this.characteristic = new ArrayList(); + this.characteristic.add(t); + return t; + } + + public PackagedProductDefinition addCharacteristic(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.characteristic == null) + this.characteristic = new ArrayList(); + this.characteristic.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #characteristic}, creating it if it does not already exist {3} + */ + public CodeableConcept getCharacteristicFirstRep() { + if (getCharacteristic().isEmpty()) { + addCharacteristic(); + } + return getCharacteristic().get(0); + } + /** * @return {@link #copackagedIndicator} (States whether a drug product is supplied with another item such as a diluent or adjuvant.). This is the underlying object with id, value and extensions. The accessor "getCopackagedIndicator" gives direct access to the value */ @@ -2249,10 +2453,14 @@ public class PackagedProductDefinition extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("identifier", "Identifier", "Unique identifier.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("name", "string", "A name for this product pack. Typically what it would be listed as in a drug formulary.", 0, 1, name)); children.add(new Property("subject", "Reference(MedicinalProductDefinition)", "The product that this is a pack for.", 0, java.lang.Integer.MAX_VALUE, subject)); - children.add(new Property("description", "string", "Textual description.", 0, 1, description)); + children.add(new Property("status", "CodeableConcept", "The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status.", 0, 1, status)); + children.add(new Property("statusDate", "dateTime", "The date at which the given status became applicable.", 0, 1, statusDate)); + children.add(new Property("description", "markdown", "Textual description. Note that this is not the name of the product.", 0, 1, description)); children.add(new Property("legalStatusOfSupply", "CodeableConcept", "The legal status of supply of the medicinal product as classified by the regulator.", 0, 1, legalStatusOfSupply)); children.add(new Property("marketingStatus", "MarketingStatus", "Marketing information.", 0, java.lang.Integer.MAX_VALUE, marketingStatus)); + children.add(new Property("characteristic", "CodeableConcept", "Allows the key product features to be recorded, such as \"hospital pack\", \"nurse prescribable\", \"calendar pack\".", 0, java.lang.Integer.MAX_VALUE, characteristic)); children.add(new Property("copackagedIndicator", "boolean", "States whether a drug product is supplied with another item such as a diluent or adjuvant.", 0, 1, copackagedIndicator)); children.add(new Property("marketingAuthorization", "Reference(RegulatedAuthorization)", "Manufacturer of this Package Item.", 0, 1, marketingAuthorization)); children.add(new Property("manufacturer", "Reference(Organization)", "Manufacturer of this Package Item.", 0, java.lang.Integer.MAX_VALUE, manufacturer)); @@ -2264,10 +2472,14 @@ public class PackagedProductDefinition extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Unique identifier.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 3373707: /*name*/ return new Property("name", "string", "A name for this product pack. Typically what it would be listed as in a drug formulary.", 0, 1, name); case -1867885268: /*subject*/ return new Property("subject", "Reference(MedicinalProductDefinition)", "The product that this is a pack for.", 0, java.lang.Integer.MAX_VALUE, subject); - case -1724546052: /*description*/ return new Property("description", "string", "Textual description.", 0, 1, description); + case -892481550: /*status*/ return new Property("status", "CodeableConcept", "The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status.", 0, 1, status); + case 247524032: /*statusDate*/ return new Property("statusDate", "dateTime", "The date at which the given status became applicable.", 0, 1, statusDate); + case -1724546052: /*description*/ return new Property("description", "markdown", "Textual description. Note that this is not the name of the product.", 0, 1, description); case -844874031: /*legalStatusOfSupply*/ return new Property("legalStatusOfSupply", "CodeableConcept", "The legal status of supply of the medicinal product as classified by the regulator.", 0, 1, legalStatusOfSupply); case 70767032: /*marketingStatus*/ return new Property("marketingStatus", "MarketingStatus", "Marketing information.", 0, java.lang.Integer.MAX_VALUE, marketingStatus); + case 366313883: /*characteristic*/ return new Property("characteristic", "CodeableConcept", "Allows the key product features to be recorded, such as \"hospital pack\", \"nurse prescribable\", \"calendar pack\".", 0, java.lang.Integer.MAX_VALUE, characteristic); case -1638663195: /*copackagedIndicator*/ return new Property("copackagedIndicator", "boolean", "States whether a drug product is supplied with another item such as a diluent or adjuvant.", 0, 1, copackagedIndicator); case 571831283: /*marketingAuthorization*/ return new Property("marketingAuthorization", "Reference(RegulatedAuthorization)", "Manufacturer of this Package Item.", 0, 1, marketingAuthorization); case -1969347631: /*manufacturer*/ return new Property("manufacturer", "Reference(Organization)", "Manufacturer of this Package Item.", 0, java.lang.Integer.MAX_VALUE, manufacturer); @@ -2282,10 +2494,14 @@ public class PackagedProductDefinition extends DomainResource { public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier + case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType case -1867885268: /*subject*/ return this.subject == null ? new Base[0] : this.subject.toArray(new Base[this.subject.size()]); // Reference - case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // CodeableConcept + case 247524032: /*statusDate*/ return this.statusDate == null ? new Base[0] : new Base[] {this.statusDate}; // DateTimeType + case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // MarkdownType case -844874031: /*legalStatusOfSupply*/ return this.legalStatusOfSupply == null ? new Base[0] : new Base[] {this.legalStatusOfSupply}; // CodeableConcept case 70767032: /*marketingStatus*/ return this.marketingStatus == null ? new Base[0] : this.marketingStatus.toArray(new Base[this.marketingStatus.size()]); // MarketingStatus + case 366313883: /*characteristic*/ return this.characteristic == null ? new Base[0] : this.characteristic.toArray(new Base[this.characteristic.size()]); // CodeableConcept case -1638663195: /*copackagedIndicator*/ return this.copackagedIndicator == null ? new Base[0] : new Base[] {this.copackagedIndicator}; // BooleanType case 571831283: /*marketingAuthorization*/ return this.marketingAuthorization == null ? new Base[0] : new Base[] {this.marketingAuthorization}; // Reference case -1969347631: /*manufacturer*/ return this.manufacturer == null ? new Base[0] : this.manufacturer.toArray(new Base[this.manufacturer.size()]); // Reference @@ -2302,11 +2518,20 @@ public class PackagedProductDefinition extends DomainResource { case -1618432855: // identifier this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); // Identifier return value; + case 3373707: // name + this.name = TypeConvertor.castToString(value); // StringType + return value; case -1867885268: // subject this.getSubject().add(TypeConvertor.castToReference(value)); // Reference return value; + case -892481550: // status + this.status = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case 247524032: // statusDate + this.statusDate = TypeConvertor.castToDateTime(value); // DateTimeType + return value; case -1724546052: // description - this.description = TypeConvertor.castToString(value); // StringType + this.description = TypeConvertor.castToMarkdown(value); // MarkdownType return value; case -844874031: // legalStatusOfSupply this.legalStatusOfSupply = TypeConvertor.castToCodeableConcept(value); // CodeableConcept @@ -2314,6 +2539,9 @@ public class PackagedProductDefinition extends DomainResource { case 70767032: // marketingStatus this.getMarketingStatus().add(TypeConvertor.castToMarketingStatus(value)); // MarketingStatus return value; + case 366313883: // characteristic + this.getCharacteristic().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; case -1638663195: // copackagedIndicator this.copackagedIndicator = TypeConvertor.castToBoolean(value); // BooleanType return value; @@ -2338,14 +2566,22 @@ public class PackagedProductDefinition extends DomainResource { public Base setProperty(String name, Base value) throws FHIRException { if (name.equals("identifier")) { this.getIdentifier().add(TypeConvertor.castToIdentifier(value)); + } else if (name.equals("name")) { + this.name = TypeConvertor.castToString(value); // StringType } else if (name.equals("subject")) { this.getSubject().add(TypeConvertor.castToReference(value)); + } else if (name.equals("status")) { + this.status = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("statusDate")) { + this.statusDate = TypeConvertor.castToDateTime(value); // DateTimeType } else if (name.equals("description")) { - this.description = TypeConvertor.castToString(value); // StringType + this.description = TypeConvertor.castToMarkdown(value); // MarkdownType } else if (name.equals("legalStatusOfSupply")) { this.legalStatusOfSupply = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("marketingStatus")) { this.getMarketingStatus().add(TypeConvertor.castToMarketingStatus(value)); + } else if (name.equals("characteristic")) { + this.getCharacteristic().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("copackagedIndicator")) { this.copackagedIndicator = TypeConvertor.castToBoolean(value); // BooleanType } else if (name.equals("marketingAuthorization")) { @@ -2365,10 +2601,14 @@ public class PackagedProductDefinition extends DomainResource { public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { case -1618432855: return addIdentifier(); + case 3373707: return getNameElement(); case -1867885268: return addSubject(); + case -892481550: return getStatus(); + case 247524032: return getStatusDateElement(); case -1724546052: return getDescriptionElement(); case -844874031: return getLegalStatusOfSupply(); case 70767032: return addMarketingStatus(); + case 366313883: return addCharacteristic(); case -1638663195: return getCopackagedIndicatorElement(); case 571831283: return getMarketingAuthorization(); case -1969347631: return addManufacturer(); @@ -2383,10 +2623,14 @@ public class PackagedProductDefinition extends DomainResource { public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { case -1618432855: /*identifier*/ return new String[] {"Identifier"}; + case 3373707: /*name*/ return new String[] {"string"}; case -1867885268: /*subject*/ return new String[] {"Reference"}; - case -1724546052: /*description*/ return new String[] {"string"}; + case -892481550: /*status*/ return new String[] {"CodeableConcept"}; + case 247524032: /*statusDate*/ return new String[] {"dateTime"}; + case -1724546052: /*description*/ return new String[] {"markdown"}; case -844874031: /*legalStatusOfSupply*/ return new String[] {"CodeableConcept"}; case 70767032: /*marketingStatus*/ return new String[] {"MarketingStatus"}; + case 366313883: /*characteristic*/ return new String[] {"CodeableConcept"}; case -1638663195: /*copackagedIndicator*/ return new String[] {"boolean"}; case 571831283: /*marketingAuthorization*/ return new String[] {"Reference"}; case -1969347631: /*manufacturer*/ return new String[] {"Reference"}; @@ -2402,9 +2646,19 @@ public class PackagedProductDefinition extends DomainResource { if (name.equals("identifier")) { return addIdentifier(); } + else if (name.equals("name")) { + throw new FHIRException("Cannot call addChild on a primitive type PackagedProductDefinition.name"); + } else if (name.equals("subject")) { return addSubject(); } + else if (name.equals("status")) { + this.status = new CodeableConcept(); + return this.status; + } + else if (name.equals("statusDate")) { + throw new FHIRException("Cannot call addChild on a primitive type PackagedProductDefinition.statusDate"); + } else if (name.equals("description")) { throw new FHIRException("Cannot call addChild on a primitive type PackagedProductDefinition.description"); } @@ -2415,6 +2669,9 @@ public class PackagedProductDefinition extends DomainResource { else if (name.equals("marketingStatus")) { return addMarketingStatus(); } + else if (name.equals("characteristic")) { + return addCharacteristic(); + } else if (name.equals("copackagedIndicator")) { throw new FHIRException("Cannot call addChild on a primitive type PackagedProductDefinition.copackagedIndicator"); } @@ -2453,11 +2710,14 @@ public class PackagedProductDefinition extends DomainResource { for (Identifier i : identifier) dst.identifier.add(i.copy()); }; + dst.name = name == null ? null : name.copy(); if (subject != null) { dst.subject = new ArrayList(); for (Reference i : subject) dst.subject.add(i.copy()); }; + dst.status = status == null ? null : status.copy(); + dst.statusDate = statusDate == null ? null : statusDate.copy(); dst.description = description == null ? null : description.copy(); dst.legalStatusOfSupply = legalStatusOfSupply == null ? null : legalStatusOfSupply.copy(); if (marketingStatus != null) { @@ -2465,6 +2725,11 @@ public class PackagedProductDefinition extends DomainResource { for (MarketingStatus i : marketingStatus) dst.marketingStatus.add(i.copy()); }; + if (characteristic != null) { + dst.characteristic = new ArrayList(); + for (CodeableConcept i : characteristic) + dst.characteristic.add(i.copy()); + }; dst.copackagedIndicator = copackagedIndicator == null ? null : copackagedIndicator.copy(); dst.marketingAuthorization = marketingAuthorization == null ? null : marketingAuthorization.copy(); if (manufacturer != null) { @@ -2495,11 +2760,13 @@ public class PackagedProductDefinition extends DomainResource { if (!(other_ instanceof PackagedProductDefinition)) return false; PackagedProductDefinition o = (PackagedProductDefinition) other_; - return compareDeep(identifier, o.identifier, true) && compareDeep(subject, o.subject, true) && compareDeep(description, o.description, true) + return compareDeep(identifier, o.identifier, true) && compareDeep(name, o.name, true) && compareDeep(subject, o.subject, true) + && compareDeep(status, o.status, true) && compareDeep(statusDate, o.statusDate, true) && compareDeep(description, o.description, true) && compareDeep(legalStatusOfSupply, o.legalStatusOfSupply, true) && compareDeep(marketingStatus, o.marketingStatus, true) - && compareDeep(copackagedIndicator, o.copackagedIndicator, true) && compareDeep(marketingAuthorization, o.marketingAuthorization, true) - && compareDeep(manufacturer, o.manufacturer, true) && compareDeep(batchIdentifier, o.batchIdentifier, true) - && compareDeep(package_, o.package_, true); + && compareDeep(characteristic, o.characteristic, true) && compareDeep(copackagedIndicator, o.copackagedIndicator, true) + && compareDeep(marketingAuthorization, o.marketingAuthorization, true) && compareDeep(manufacturer, o.manufacturer, true) + && compareDeep(batchIdentifier, o.batchIdentifier, true) && compareDeep(package_, o.package_, true) + ; } @Override @@ -2509,14 +2776,15 @@ public class PackagedProductDefinition extends DomainResource { if (!(other_ instanceof PackagedProductDefinition)) return false; PackagedProductDefinition o = (PackagedProductDefinition) other_; - return compareValues(description, o.description, true) && compareValues(copackagedIndicator, o.copackagedIndicator, true) - ; + return compareValues(name, o.name, true) && compareValues(statusDate, o.statusDate, true) && compareValues(description, o.description, true) + && compareValues(copackagedIndicator, o.copackagedIndicator, true); } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, subject, description - , legalStatusOfSupply, marketingStatus, copackagedIndicator, marketingAuthorization - , manufacturer, batchIdentifier, package_); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, name, subject + , status, statusDate, description, legalStatusOfSupply, marketingStatus, characteristic + , copackagedIndicator, marketingAuthorization, manufacturer, batchIdentifier, package_ + ); } @Override @@ -2596,6 +2864,46 @@ public class PackagedProductDefinition extends DomainResource { */ public static final ca.uhn.fhir.model.api.Include INCLUDE_MANUFACTURED_ITEM = new ca.uhn.fhir.model.api.Include("PackagedProductDefinition:manufactured-item").toLocked(); + /** + * Search parameter: name + *

+ * Description: A name for this product pack. Typically what it would be listed as in a drug formulary
+ * Type: token
+ * Path: PackagedProductDefinition.name
+ *

+ */ + @SearchParamDefinition(name="name", path="PackagedProductDefinition.name", description="A name for this product pack. Typically what it would be listed as in a drug formulary", type="token" ) + public static final String SP_NAME = "name"; + /** + * Fluent Client search parameter constant for name + *

+ * Description: A name for this product pack. Typically what it would be listed as in a drug formulary
+ * Type: token
+ * Path: PackagedProductDefinition.name
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam NAME = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_NAME); + + /** + * Search parameter: status + *

+ * Description: The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status
+ * Type: token
+ * Path: PackagedProductDefinition.status
+ *

+ */ + @SearchParamDefinition(name="status", path="PackagedProductDefinition.status", description="The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status", type="token" ) + public static final String SP_STATUS = "status"; + /** + * Fluent Client search parameter constant for status + *

+ * Description: The status within the lifecycle of this product. A high level status, this is not intended to duplicate details carried elswhere such as legal status, or authorization or marketing status
+ * Type: token
+ * Path: PackagedProductDefinition.status
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + /** * Search parameter: subject *

diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ParameterDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ParameterDefinition.java index 355a3d03f..18bb07445 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ParameterDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ParameterDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Parameters.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Parameters.java index c27346976..7ecab003c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Parameters.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Parameters.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1429,33 +1429,38 @@ public class Parameters extends Resource implements IBaseParameters { } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(name, value, resource, part); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(name, value, resource, part + ); } - public String fhirType() { - return "Parameters.parameter"; - } + public String fhirType() { + return "Parameters.parameter"; - public String toString() { - String s = getName() + " = "; - if (hasValue()) { - if (getValue().isPrimitive()) { - s = s + getValue().primitiveValue(); - } else { - s = s + "["+getValue().fhirType()+"]"; - } - } else if (hasResource()) { - s = s + "["+getResource().fhirType()+"]"; - } else { - CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder(); - for (ParametersParameterComponent p : getPart()) { - b.append(p.getName()); - } - s = s + "{"+b.toString()+"}"; - } - return s; + } + +// added from java-adornments.txt: + public String toString() { + String s = getName() + " = "; + if (hasValue()) { + if (getValue().isPrimitive()) { + s = s + getValue().primitiveValue(); + } else { + s = s + "["+getValue().fhirType()+"]"; } + } else if (hasResource()) { + s = s + "["+getResource().fhirType()+"]"; + } else { + CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder(); + for (ParametersParameterComponent p : getPart()) { + b.append(p.getName()); + } + s = s + "{"+b.toString()+"}"; } + return s; + } + +// end addition + } /** * A parameter passed to or received from the operation. @@ -1743,14 +1748,6 @@ public class Parameters extends Resource implements IBaseParameters { return false; } - public String toString() { - CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder(); - for (ParametersParameterComponent p : parameter) { - b.append(p.getName()); - } - return "{"+b.toString()+"}"; - } - // end addition } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Patient.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Patient.java index 3f3f7d1a0..9835b50bb 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Patient.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Patient.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentNotice.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentNotice.java index 40af82617..6eb7a8093 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentNotice.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentNotice.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -952,7 +952,7 @@ public class PaymentNotice extends DomainResource { * Path: PaymentNotice.request
*

*/ - @SearchParamDefinition(name="request", path="PaymentNotice.request", description="The Claim", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="request", path="PaymentNotice.request", description="The Claim", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_REQUEST = "request"; /** * Fluent Client search parameter constant for request @@ -978,7 +978,7 @@ public class PaymentNotice extends DomainResource { * Path: PaymentNotice.response
*

*/ - @SearchParamDefinition(name="response", path="PaymentNotice.response", description="The ClaimResponse", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="response", path="PaymentNotice.response", description="The ClaimResponse", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_RESPONSE = "response"; /** * Fluent Client search parameter constant for response diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentReconciliation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentReconciliation.java index 3bf5dd760..5c41cb497 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentReconciliation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PaymentReconciliation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Period.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Period.java index 67e800b90..93c2994a0 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Period.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Period.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Permission.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Permission.java new file mode 100644 index 000000000..31f4664d1 --- /dev/null +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Permission.java @@ -0,0 +1,1614 @@ +package org.hl7.fhir.r5.model; + + +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.r5.model.Enumerations.*; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.instance.model.api.ICompositeType; +import ca.uhn.fhir.model.api.annotation.ResourceDef; +import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import ca.uhn.fhir.model.api.annotation.Child; +import ca.uhn.fhir.model.api.annotation.ChildOrder; +import ca.uhn.fhir.model.api.annotation.Description; +import ca.uhn.fhir.model.api.annotation.Block; + +/** + * Permission. + */ +@ResourceDef(name="Permission", profile="http://hl7.org/fhir/StructureDefinition/Permission") +public class Permission extends DomainResource { + + public enum PermissionStatus { + /** + * Permission is given. + */ + ACTIVE, + /** + * Permission was entered in error and is not active. + */ + ENTEREDINERROR, + /** + * Permission is being defined. + */ + DRAFT, + /** + * Permission not granted. + */ + REJECTED, + /** + * added to help the parsers with the generic types + */ + NULL; + public static PermissionStatus fromCode(String codeString) throws FHIRException { + if (codeString == null || "".equals(codeString)) + return null; + if ("active".equals(codeString)) + return ACTIVE; + if ("entered-in-error".equals(codeString)) + return ENTEREDINERROR; + if ("draft".equals(codeString)) + return DRAFT; + if ("rejected".equals(codeString)) + return REJECTED; + if (Configuration.isAcceptInvalidEnums()) + return null; + else + throw new FHIRException("Unknown PermissionStatus code '"+codeString+"'"); + } + public String toCode() { + switch (this) { + case ACTIVE: return "active"; + case ENTEREDINERROR: return "entered-in-error"; + case DRAFT: return "draft"; + case REJECTED: return "rejected"; + default: return "?"; + } + } + public String getSystem() { + switch (this) { + case ACTIVE: return "http://hl7.org/fhir/permission-status"; + case ENTEREDINERROR: return "http://hl7.org/fhir/permission-status"; + case DRAFT: return "http://hl7.org/fhir/permission-status"; + case REJECTED: return "http://hl7.org/fhir/permission-status"; + default: return "?"; + } + } + public String getDefinition() { + switch (this) { + case ACTIVE: return "Permission is given."; + case ENTEREDINERROR: return "Permission was entered in error and is not active."; + case DRAFT: return "Permission is being defined."; + case REJECTED: return "Permission not granted."; + default: return "?"; + } + } + public String getDisplay() { + switch (this) { + case ACTIVE: return "Active"; + case ENTEREDINERROR: return "Entered in Error"; + case DRAFT: return "Draft"; + case REJECTED: return "Rejected"; + default: return "?"; + } + } + } + + public static class PermissionStatusEnumFactory implements EnumFactory { + public PermissionStatus fromCode(String codeString) throws IllegalArgumentException { + if (codeString == null || "".equals(codeString)) + if (codeString == null || "".equals(codeString)) + return null; + if ("active".equals(codeString)) + return PermissionStatus.ACTIVE; + if ("entered-in-error".equals(codeString)) + return PermissionStatus.ENTEREDINERROR; + if ("draft".equals(codeString)) + return PermissionStatus.DRAFT; + if ("rejected".equals(codeString)) + return PermissionStatus.REJECTED; + throw new IllegalArgumentException("Unknown PermissionStatus code '"+codeString+"'"); + } + public Enumeration fromType(Base code) throws FHIRException { + if (code == null) + return null; + if (code.isEmpty()) + return new Enumeration(this); + String codeString = ((PrimitiveType) code).asStringValue(); + if (codeString == null || "".equals(codeString)) + return null; + if ("active".equals(codeString)) + return new Enumeration(this, PermissionStatus.ACTIVE); + if ("entered-in-error".equals(codeString)) + return new Enumeration(this, PermissionStatus.ENTEREDINERROR); + if ("draft".equals(codeString)) + return new Enumeration(this, PermissionStatus.DRAFT); + if ("rejected".equals(codeString)) + return new Enumeration(this, PermissionStatus.REJECTED); + throw new FHIRException("Unknown PermissionStatus code '"+codeString+"'"); + } + public String toCode(PermissionStatus code) { + if (code == PermissionStatus.ACTIVE) + return "active"; + if (code == PermissionStatus.ENTEREDINERROR) + return "entered-in-error"; + if (code == PermissionStatus.DRAFT) + return "draft"; + if (code == PermissionStatus.REJECTED) + return "rejected"; + return "?"; + } + public String toSystem(PermissionStatus code) { + return code.getSystem(); + } + } + + @Block() + public static class PermissionProcessingActivityComponent extends BackboneElement implements IBaseBackboneElement { + /** + * If the processing is a transfer, we must capture where it the data allowed or expected to be shared - with a party or person. + */ + @Child(name = "partyReference", type = {Organization.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="If the processing is a transfer, we must capture where it the data allowed or expected to be shared - with a party or person", formalDefinition="If the processing is a transfer, we must capture where it the data allowed or expected to be shared - with a party or person." ) + protected List partyReference; + + /** + * If the processing is a transfer, or involves another party, we must capture where it the data allowed or expected to be shared - with a party or person. This can be a party instance or party type +§ Purpose – a specific purpose of the data. + */ + @Child(name = "partyCodeableConcept", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="If the processing is a transfer, or involves another party, we must capture where it the data allowed or expected to be shared - with a party or person. This can be a party instance or party type\n§ Purpose – a specific purpose of the data", formalDefinition="If the processing is a transfer, or involves another party, we must capture where it the data allowed or expected to be shared - with a party or person. This can be a party instance or party type\n§ Purpose – a specific purpose of the data." ) + protected List partyCodeableConcept; + + /** + * The purpose for which the permission is given. + */ + @Child(name = "purpose", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The purpose for which the permission is given", formalDefinition="The purpose for which the permission is given." ) + protected List purpose; + + private static final long serialVersionUID = -1556351771L; + + /** + * Constructor + */ + public PermissionProcessingActivityComponent() { + super(); + } + + /** + * @return {@link #partyReference} (If the processing is a transfer, we must capture where it the data allowed or expected to be shared - with a party or person.) + */ + public List getPartyReference() { + if (this.partyReference == null) + this.partyReference = new ArrayList(); + return this.partyReference; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public PermissionProcessingActivityComponent setPartyReference(List thePartyReference) { + this.partyReference = thePartyReference; + return this; + } + + public boolean hasPartyReference() { + if (this.partyReference == null) + return false; + for (Reference item : this.partyReference) + if (!item.isEmpty()) + return true; + return false; + } + + public Reference addPartyReference() { //3 + Reference t = new Reference(); + if (this.partyReference == null) + this.partyReference = new ArrayList(); + this.partyReference.add(t); + return t; + } + + public PermissionProcessingActivityComponent addPartyReference(Reference t) { //3 + if (t == null) + return this; + if (this.partyReference == null) + this.partyReference = new ArrayList(); + this.partyReference.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #partyReference}, creating it if it does not already exist {3} + */ + public Reference getPartyReferenceFirstRep() { + if (getPartyReference().isEmpty()) { + addPartyReference(); + } + return getPartyReference().get(0); + } + + /** + * @return {@link #partyCodeableConcept} (If the processing is a transfer, or involves another party, we must capture where it the data allowed or expected to be shared - with a party or person. This can be a party instance or party type +§ Purpose – a specific purpose of the data.) + */ + public List getPartyCodeableConcept() { + if (this.partyCodeableConcept == null) + this.partyCodeableConcept = new ArrayList(); + return this.partyCodeableConcept; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public PermissionProcessingActivityComponent setPartyCodeableConcept(List thePartyCodeableConcept) { + this.partyCodeableConcept = thePartyCodeableConcept; + return this; + } + + public boolean hasPartyCodeableConcept() { + if (this.partyCodeableConcept == null) + return false; + for (CodeableConcept item : this.partyCodeableConcept) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addPartyCodeableConcept() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.partyCodeableConcept == null) + this.partyCodeableConcept = new ArrayList(); + this.partyCodeableConcept.add(t); + return t; + } + + public PermissionProcessingActivityComponent addPartyCodeableConcept(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.partyCodeableConcept == null) + this.partyCodeableConcept = new ArrayList(); + this.partyCodeableConcept.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #partyCodeableConcept}, creating it if it does not already exist {3} + */ + public CodeableConcept getPartyCodeableConceptFirstRep() { + if (getPartyCodeableConcept().isEmpty()) { + addPartyCodeableConcept(); + } + return getPartyCodeableConcept().get(0); + } + + /** + * @return {@link #purpose} (The purpose for which the permission is given.) + */ + public List getPurpose() { + if (this.purpose == null) + this.purpose = new ArrayList(); + return this.purpose; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public PermissionProcessingActivityComponent setPurpose(List thePurpose) { + this.purpose = thePurpose; + return this; + } + + public boolean hasPurpose() { + if (this.purpose == null) + return false; + for (CodeableConcept item : this.purpose) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addPurpose() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.purpose == null) + this.purpose = new ArrayList(); + this.purpose.add(t); + return t; + } + + public PermissionProcessingActivityComponent addPurpose(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.purpose == null) + this.purpose = new ArrayList(); + this.purpose.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #purpose}, creating it if it does not already exist {3} + */ + public CodeableConcept getPurposeFirstRep() { + if (getPurpose().isEmpty()) { + addPurpose(); + } + return getPurpose().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("partyReference", "Reference(Organization)", "If the processing is a transfer, we must capture where it the data allowed or expected to be shared - with a party or person.", 0, java.lang.Integer.MAX_VALUE, partyReference)); + children.add(new Property("partyCodeableConcept", "CodeableConcept", "If the processing is a transfer, or involves another party, we must capture where it the data allowed or expected to be shared - with a party or person. This can be a party instance or party type\n§ Purpose – a specific purpose of the data.", 0, java.lang.Integer.MAX_VALUE, partyCodeableConcept)); + children.add(new Property("purpose", "CodeableConcept", "The purpose for which the permission is given.", 0, java.lang.Integer.MAX_VALUE, purpose)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -865196283: /*partyReference*/ return new Property("partyReference", "Reference(Organization)", "If the processing is a transfer, we must capture where it the data allowed or expected to be shared - with a party or person.", 0, java.lang.Integer.MAX_VALUE, partyReference); + case -1283677221: /*partyCodeableConcept*/ return new Property("partyCodeableConcept", "CodeableConcept", "If the processing is a transfer, or involves another party, we must capture where it the data allowed or expected to be shared - with a party or person. This can be a party instance or party type\n§ Purpose – a specific purpose of the data.", 0, java.lang.Integer.MAX_VALUE, partyCodeableConcept); + case -220463842: /*purpose*/ return new Property("purpose", "CodeableConcept", "The purpose for which the permission is given.", 0, java.lang.Integer.MAX_VALUE, purpose); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -865196283: /*partyReference*/ return this.partyReference == null ? new Base[0] : this.partyReference.toArray(new Base[this.partyReference.size()]); // Reference + case -1283677221: /*partyCodeableConcept*/ return this.partyCodeableConcept == null ? new Base[0] : this.partyCodeableConcept.toArray(new Base[this.partyCodeableConcept.size()]); // CodeableConcept + case -220463842: /*purpose*/ return this.purpose == null ? new Base[0] : this.purpose.toArray(new Base[this.purpose.size()]); // CodeableConcept + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -865196283: // partyReference + this.getPartyReference().add(TypeConvertor.castToReference(value)); // Reference + return value; + case -1283677221: // partyCodeableConcept + this.getPartyCodeableConcept().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case -220463842: // purpose + this.getPurpose().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("partyReference")) { + this.getPartyReference().add(TypeConvertor.castToReference(value)); + } else if (name.equals("partyCodeableConcept")) { + this.getPartyCodeableConcept().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("purpose")) { + this.getPurpose().add(TypeConvertor.castToCodeableConcept(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -865196283: return addPartyReference(); + case -1283677221: return addPartyCodeableConcept(); + case -220463842: return addPurpose(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -865196283: /*partyReference*/ return new String[] {"Reference"}; + case -1283677221: /*partyCodeableConcept*/ return new String[] {"CodeableConcept"}; + case -220463842: /*purpose*/ return new String[] {"CodeableConcept"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("partyReference")) { + return addPartyReference(); + } + else if (name.equals("partyCodeableConcept")) { + return addPartyCodeableConcept(); + } + else if (name.equals("purpose")) { + return addPurpose(); + } + else + return super.addChild(name); + } + + public PermissionProcessingActivityComponent copy() { + PermissionProcessingActivityComponent dst = new PermissionProcessingActivityComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(PermissionProcessingActivityComponent dst) { + super.copyValues(dst); + if (partyReference != null) { + dst.partyReference = new ArrayList(); + for (Reference i : partyReference) + dst.partyReference.add(i.copy()); + }; + if (partyCodeableConcept != null) { + dst.partyCodeableConcept = new ArrayList(); + for (CodeableConcept i : partyCodeableConcept) + dst.partyCodeableConcept.add(i.copy()); + }; + if (purpose != null) { + dst.purpose = new ArrayList(); + for (CodeableConcept i : purpose) + dst.purpose.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof PermissionProcessingActivityComponent)) + return false; + PermissionProcessingActivityComponent o = (PermissionProcessingActivityComponent) other_; + return compareDeep(partyReference, o.partyReference, true) && compareDeep(partyCodeableConcept, o.partyCodeableConcept, true) + && compareDeep(purpose, o.purpose, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof PermissionProcessingActivityComponent)) + return false; + PermissionProcessingActivityComponent o = (PermissionProcessingActivityComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(partyReference, partyCodeableConcept + , purpose); + } + + public String fhirType() { + return "Permission.processingActivity"; + + } + + } + + @Block() + public static class PermissionJustificationComponent extends BackboneElement implements IBaseBackboneElement { + /** + * Evidence – reference to consent, or a contract, or a policy, or a regulation, or an attachment that contains a screenshot. + */ + @Child(name = "evidence", type = {Consent.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Evidence – reference to consent, or a contract, or a policy, or a regulation, or an attachment that contains a screenshot", formalDefinition="Evidence – reference to consent, or a contract, or a policy, or a regulation, or an attachment that contains a screenshot." ) + protected List evidence; + + /** + * This would be a codeableconcept, or a coding, which can be constrained to , for example, the 6 grounds for processing in GDPR. + */ + @Child(name = "grounds", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="This would be a codeableconcept, or a coding, which can be constrained to , for example, the 6 grounds for processing in GDPR", formalDefinition="This would be a codeableconcept, or a coding, which can be constrained to , for example, the 6 grounds for processing in GDPR." ) + protected List grounds; + + private static final long serialVersionUID = -146214493L; + + /** + * Constructor + */ + public PermissionJustificationComponent() { + super(); + } + + /** + * @return {@link #evidence} (Evidence – reference to consent, or a contract, or a policy, or a regulation, or an attachment that contains a screenshot.) + */ + public List getEvidence() { + if (this.evidence == null) + this.evidence = new ArrayList(); + return this.evidence; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public PermissionJustificationComponent setEvidence(List theEvidence) { + this.evidence = theEvidence; + return this; + } + + public boolean hasEvidence() { + if (this.evidence == null) + return false; + for (Reference item : this.evidence) + if (!item.isEmpty()) + return true; + return false; + } + + public Reference addEvidence() { //3 + Reference t = new Reference(); + if (this.evidence == null) + this.evidence = new ArrayList(); + this.evidence.add(t); + return t; + } + + public PermissionJustificationComponent addEvidence(Reference t) { //3 + if (t == null) + return this; + if (this.evidence == null) + this.evidence = new ArrayList(); + this.evidence.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #evidence}, creating it if it does not already exist {3} + */ + public Reference getEvidenceFirstRep() { + if (getEvidence().isEmpty()) { + addEvidence(); + } + return getEvidence().get(0); + } + + /** + * @return {@link #grounds} (This would be a codeableconcept, or a coding, which can be constrained to , for example, the 6 grounds for processing in GDPR.) + */ + public List getGrounds() { + if (this.grounds == null) + this.grounds = new ArrayList(); + return this.grounds; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public PermissionJustificationComponent setGrounds(List theGrounds) { + this.grounds = theGrounds; + return this; + } + + public boolean hasGrounds() { + if (this.grounds == null) + return false; + for (CodeableConcept item : this.grounds) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addGrounds() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.grounds == null) + this.grounds = new ArrayList(); + this.grounds.add(t); + return t; + } + + public PermissionJustificationComponent addGrounds(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.grounds == null) + this.grounds = new ArrayList(); + this.grounds.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #grounds}, creating it if it does not already exist {3} + */ + public CodeableConcept getGroundsFirstRep() { + if (getGrounds().isEmpty()) { + addGrounds(); + } + return getGrounds().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("evidence", "Reference(Consent)", "Evidence – reference to consent, or a contract, or a policy, or a regulation, or an attachment that contains a screenshot.", 0, java.lang.Integer.MAX_VALUE, evidence)); + children.add(new Property("grounds", "CodeableConcept", "This would be a codeableconcept, or a coding, which can be constrained to , for example, the 6 grounds for processing in GDPR.", 0, java.lang.Integer.MAX_VALUE, grounds)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 382967383: /*evidence*/ return new Property("evidence", "Reference(Consent)", "Evidence – reference to consent, or a contract, or a policy, or a regulation, or an attachment that contains a screenshot.", 0, java.lang.Integer.MAX_VALUE, evidence); + case 293427148: /*grounds*/ return new Property("grounds", "CodeableConcept", "This would be a codeableconcept, or a coding, which can be constrained to , for example, the 6 grounds for processing in GDPR.", 0, java.lang.Integer.MAX_VALUE, grounds); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 382967383: /*evidence*/ return this.evidence == null ? new Base[0] : this.evidence.toArray(new Base[this.evidence.size()]); // Reference + case 293427148: /*grounds*/ return this.grounds == null ? new Base[0] : this.grounds.toArray(new Base[this.grounds.size()]); // CodeableConcept + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 382967383: // evidence + this.getEvidence().add(TypeConvertor.castToReference(value)); // Reference + return value; + case 293427148: // grounds + this.getGrounds().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("evidence")) { + this.getEvidence().add(TypeConvertor.castToReference(value)); + } else if (name.equals("grounds")) { + this.getGrounds().add(TypeConvertor.castToCodeableConcept(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 382967383: return addEvidence(); + case 293427148: return addGrounds(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 382967383: /*evidence*/ return new String[] {"Reference"}; + case 293427148: /*grounds*/ return new String[] {"CodeableConcept"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("evidence")) { + return addEvidence(); + } + else if (name.equals("grounds")) { + return addGrounds(); + } + else + return super.addChild(name); + } + + public PermissionJustificationComponent copy() { + PermissionJustificationComponent dst = new PermissionJustificationComponent(); + copyValues(dst); + return dst; + } + + public void copyValues(PermissionJustificationComponent dst) { + super.copyValues(dst); + if (evidence != null) { + dst.evidence = new ArrayList(); + for (Reference i : evidence) + dst.evidence.add(i.copy()); + }; + if (grounds != null) { + dst.grounds = new ArrayList(); + for (CodeableConcept i : grounds) + dst.grounds.add(i.copy()); + }; + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof PermissionJustificationComponent)) + return false; + PermissionJustificationComponent o = (PermissionJustificationComponent) other_; + return compareDeep(evidence, o.evidence, true) && compareDeep(grounds, o.grounds, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof PermissionJustificationComponent)) + return false; + PermissionJustificationComponent o = (PermissionJustificationComponent) other_; + return true; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(evidence, grounds); + } + + public String fhirType() { + return "Permission.justification"; + + } + + } + + /** + * Status. + */ + @Child(name = "status", type = {CodeType.class}, order=0, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="active | entered-in-error | draft | rejected", formalDefinition="Status." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/permission-status") + protected Enumeration status; + + /** + * grant|refuse. + */ + @Child(name = "intent", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="grant|refuse", formalDefinition="grant|refuse." ) + protected CodeableConcept intent; + + /** + * The person or entity that asserts the permission. + */ + @Child(name = "asserter", type = {Person.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The person or entity that asserts the permission", formalDefinition="The person or entity that asserts the permission." ) + protected Reference asserter; + + /** + * The date that permission was asserted. + */ + @Child(name = "assertionDate", type = {DateTimeType.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The date that permission was asserted", formalDefinition="The date that permission was asserted." ) + protected List assertionDate; + + /** + * The period in which the permission is active. + */ + @Child(name = "validity", type = {Period.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The period in which the permission is active", formalDefinition="The period in which the permission is active." ) + protected Period validity; + + /** + * The purpose for which the permission is given. + */ + @Child(name = "purpose", type = {CodeableConcept.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The purpose for which the permission is given", formalDefinition="The purpose for which the permission is given." ) + protected List purpose; + + /** + * This can be 1) the definition of data elements, or 2) a category or label) e.g. “sensitive”. It could also be a c) graph-like definition of a set of data elements. + */ + @Child(name = "dataScope", type = {Expression.class}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="This can be 1) the definition of data elements, or 2) a category or label) e.g. “sensitive”. It could also be a c) graph-like definition of a set of data elements", formalDefinition="This can be 1) the definition of data elements, or 2) a category or label) e.g. “sensitive”. It could also be a c) graph-like definition of a set of data elements." ) + protected List dataScope; + + /** + * A description or definition of which activities are allowed to be done on the data. + */ + @Child(name = "processingActivity", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="A description or definition of which activities are allowed to be done on the data", formalDefinition="A description or definition of which activities are allowed to be done on the data." ) + protected List processingActivity; + + /** + * The asserted justification for using the data. + */ + @Child(name = "justification", type = {}, order=8, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The asserted justification for using the data", formalDefinition="The asserted justification for using the data." ) + protected PermissionJustificationComponent justification; + + /** + * What limits apply to the use of the data. + */ + @Child(name = "usageLimitations", type = {CodeableConcept.class}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="What limits apply to the use of the data", formalDefinition="What limits apply to the use of the data." ) + protected List usageLimitations; + + private static final long serialVersionUID = -1764304363L; + + /** + * Constructor + */ + public Permission() { + super(); + } + + /** + * Constructor + */ + public Permission(PermissionStatus status) { + super(); + this.setStatus(status); + } + + /** + * @return {@link #status} (Status.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Enumeration getStatusElement() { + if (this.status == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Permission.status"); + else if (Configuration.doAutoCreate()) + this.status = new Enumeration(new PermissionStatusEnumFactory()); // bb + return this.status; + } + + public boolean hasStatusElement() { + return this.status != null && !this.status.isEmpty(); + } + + public boolean hasStatus() { + return this.status != null && !this.status.isEmpty(); + } + + /** + * @param value {@link #status} (Status.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Permission setStatusElement(Enumeration value) { + this.status = value; + return this; + } + + /** + * @return Status. + */ + public PermissionStatus getStatus() { + return this.status == null ? null : this.status.getValue(); + } + + /** + * @param value Status. + */ + public Permission setStatus(PermissionStatus value) { + if (this.status == null) + this.status = new Enumeration(new PermissionStatusEnumFactory()); + this.status.setValue(value); + return this; + } + + /** + * @return {@link #intent} (grant|refuse.) + */ + public CodeableConcept getIntent() { + if (this.intent == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Permission.intent"); + else if (Configuration.doAutoCreate()) + this.intent = new CodeableConcept(); // cc + return this.intent; + } + + public boolean hasIntent() { + return this.intent != null && !this.intent.isEmpty(); + } + + /** + * @param value {@link #intent} (grant|refuse.) + */ + public Permission setIntent(CodeableConcept value) { + this.intent = value; + return this; + } + + /** + * @return {@link #asserter} (The person or entity that asserts the permission.) + */ + public Reference getAsserter() { + if (this.asserter == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Permission.asserter"); + else if (Configuration.doAutoCreate()) + this.asserter = new Reference(); // cc + return this.asserter; + } + + public boolean hasAsserter() { + return this.asserter != null && !this.asserter.isEmpty(); + } + + /** + * @param value {@link #asserter} (The person or entity that asserts the permission.) + */ + public Permission setAsserter(Reference value) { + this.asserter = value; + return this; + } + + /** + * @return {@link #assertionDate} (The date that permission was asserted.) + */ + public List getAssertionDate() { + if (this.assertionDate == null) + this.assertionDate = new ArrayList(); + return this.assertionDate; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Permission setAssertionDate(List theAssertionDate) { + this.assertionDate = theAssertionDate; + return this; + } + + public boolean hasAssertionDate() { + if (this.assertionDate == null) + return false; + for (DateTimeType item : this.assertionDate) + if (!item.isEmpty()) + return true; + return false; + } + + /** + * @return {@link #assertionDate} (The date that permission was asserted.) + */ + public DateTimeType addAssertionDateElement() {//2 + DateTimeType t = new DateTimeType(); + if (this.assertionDate == null) + this.assertionDate = new ArrayList(); + this.assertionDate.add(t); + return t; + } + + /** + * @param value {@link #assertionDate} (The date that permission was asserted.) + */ + public Permission addAssertionDate(Date value) { //1 + DateTimeType t = new DateTimeType(); + t.setValue(value); + if (this.assertionDate == null) + this.assertionDate = new ArrayList(); + this.assertionDate.add(t); + return this; + } + + /** + * @param value {@link #assertionDate} (The date that permission was asserted.) + */ + public boolean hasAssertionDate(Date value) { + if (this.assertionDate == null) + return false; + for (DateTimeType v : this.assertionDate) + if (v.getValue().equals(value)) // dateTime + return true; + return false; + } + + /** + * @return {@link #validity} (The period in which the permission is active.) + */ + public Period getValidity() { + if (this.validity == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Permission.validity"); + else if (Configuration.doAutoCreate()) + this.validity = new Period(); // cc + return this.validity; + } + + public boolean hasValidity() { + return this.validity != null && !this.validity.isEmpty(); + } + + /** + * @param value {@link #validity} (The period in which the permission is active.) + */ + public Permission setValidity(Period value) { + this.validity = value; + return this; + } + + /** + * @return {@link #purpose} (The purpose for which the permission is given.) + */ + public List getPurpose() { + if (this.purpose == null) + this.purpose = new ArrayList(); + return this.purpose; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Permission setPurpose(List thePurpose) { + this.purpose = thePurpose; + return this; + } + + public boolean hasPurpose() { + if (this.purpose == null) + return false; + for (CodeableConcept item : this.purpose) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addPurpose() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.purpose == null) + this.purpose = new ArrayList(); + this.purpose.add(t); + return t; + } + + public Permission addPurpose(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.purpose == null) + this.purpose = new ArrayList(); + this.purpose.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #purpose}, creating it if it does not already exist {3} + */ + public CodeableConcept getPurposeFirstRep() { + if (getPurpose().isEmpty()) { + addPurpose(); + } + return getPurpose().get(0); + } + + /** + * @return {@link #dataScope} (This can be 1) the definition of data elements, or 2) a category or label) e.g. “sensitive”. It could also be a c) graph-like definition of a set of data elements.) + */ + public List getDataScope() { + if (this.dataScope == null) + this.dataScope = new ArrayList(); + return this.dataScope; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Permission setDataScope(List theDataScope) { + this.dataScope = theDataScope; + return this; + } + + public boolean hasDataScope() { + if (this.dataScope == null) + return false; + for (Expression item : this.dataScope) + if (!item.isEmpty()) + return true; + return false; + } + + public Expression addDataScope() { //3 + Expression t = new Expression(); + if (this.dataScope == null) + this.dataScope = new ArrayList(); + this.dataScope.add(t); + return t; + } + + public Permission addDataScope(Expression t) { //3 + if (t == null) + return this; + if (this.dataScope == null) + this.dataScope = new ArrayList(); + this.dataScope.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #dataScope}, creating it if it does not already exist {3} + */ + public Expression getDataScopeFirstRep() { + if (getDataScope().isEmpty()) { + addDataScope(); + } + return getDataScope().get(0); + } + + /** + * @return {@link #processingActivity} (A description or definition of which activities are allowed to be done on the data.) + */ + public List getProcessingActivity() { + if (this.processingActivity == null) + this.processingActivity = new ArrayList(); + return this.processingActivity; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Permission setProcessingActivity(List theProcessingActivity) { + this.processingActivity = theProcessingActivity; + return this; + } + + public boolean hasProcessingActivity() { + if (this.processingActivity == null) + return false; + for (PermissionProcessingActivityComponent item : this.processingActivity) + if (!item.isEmpty()) + return true; + return false; + } + + public PermissionProcessingActivityComponent addProcessingActivity() { //3 + PermissionProcessingActivityComponent t = new PermissionProcessingActivityComponent(); + if (this.processingActivity == null) + this.processingActivity = new ArrayList(); + this.processingActivity.add(t); + return t; + } + + public Permission addProcessingActivity(PermissionProcessingActivityComponent t) { //3 + if (t == null) + return this; + if (this.processingActivity == null) + this.processingActivity = new ArrayList(); + this.processingActivity.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #processingActivity}, creating it if it does not already exist {3} + */ + public PermissionProcessingActivityComponent getProcessingActivityFirstRep() { + if (getProcessingActivity().isEmpty()) { + addProcessingActivity(); + } + return getProcessingActivity().get(0); + } + + /** + * @return {@link #justification} (The asserted justification for using the data.) + */ + public PermissionJustificationComponent getJustification() { + if (this.justification == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Permission.justification"); + else if (Configuration.doAutoCreate()) + this.justification = new PermissionJustificationComponent(); // cc + return this.justification; + } + + public boolean hasJustification() { + return this.justification != null && !this.justification.isEmpty(); + } + + /** + * @param value {@link #justification} (The asserted justification for using the data.) + */ + public Permission setJustification(PermissionJustificationComponent value) { + this.justification = value; + return this; + } + + /** + * @return {@link #usageLimitations} (What limits apply to the use of the data.) + */ + public List getUsageLimitations() { + if (this.usageLimitations == null) + this.usageLimitations = new ArrayList(); + return this.usageLimitations; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Permission setUsageLimitations(List theUsageLimitations) { + this.usageLimitations = theUsageLimitations; + return this; + } + + public boolean hasUsageLimitations() { + if (this.usageLimitations == null) + return false; + for (CodeableConcept item : this.usageLimitations) + if (!item.isEmpty()) + return true; + return false; + } + + public CodeableConcept addUsageLimitations() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.usageLimitations == null) + this.usageLimitations = new ArrayList(); + this.usageLimitations.add(t); + return t; + } + + public Permission addUsageLimitations(CodeableConcept t) { //3 + if (t == null) + return this; + if (this.usageLimitations == null) + this.usageLimitations = new ArrayList(); + this.usageLimitations.add(t); + return this; + } + + /** + * @return The first repetition of repeating field {@link #usageLimitations}, creating it if it does not already exist {3} + */ + public CodeableConcept getUsageLimitationsFirstRep() { + if (getUsageLimitations().isEmpty()) { + addUsageLimitations(); + } + return getUsageLimitations().get(0); + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("status", "code", "Status.", 0, 1, status)); + children.add(new Property("intent", "CodeableConcept", "grant|refuse.", 0, 1, intent)); + children.add(new Property("asserter", "Reference(Person)", "The person or entity that asserts the permission.", 0, 1, asserter)); + children.add(new Property("assertionDate", "dateTime", "The date that permission was asserted.", 0, java.lang.Integer.MAX_VALUE, assertionDate)); + children.add(new Property("validity", "Period", "The period in which the permission is active.", 0, 1, validity)); + children.add(new Property("purpose", "CodeableConcept", "The purpose for which the permission is given.", 0, java.lang.Integer.MAX_VALUE, purpose)); + children.add(new Property("dataScope", "Expression", "This can be 1) the definition of data elements, or 2) a category or label) e.g. “sensitive”. It could also be a c) graph-like definition of a set of data elements.", 0, java.lang.Integer.MAX_VALUE, dataScope)); + children.add(new Property("processingActivity", "", "A description or definition of which activities are allowed to be done on the data.", 0, java.lang.Integer.MAX_VALUE, processingActivity)); + children.add(new Property("justification", "", "The asserted justification for using the data.", 0, 1, justification)); + children.add(new Property("usageLimitations", "CodeableConcept", "What limits apply to the use of the data.", 0, java.lang.Integer.MAX_VALUE, usageLimitations)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case -892481550: /*status*/ return new Property("status", "code", "Status.", 0, 1, status); + case -1183762788: /*intent*/ return new Property("intent", "CodeableConcept", "grant|refuse.", 0, 1, intent); + case -373242253: /*asserter*/ return new Property("asserter", "Reference(Person)", "The person or entity that asserts the permission.", 0, 1, asserter); + case -1498338864: /*assertionDate*/ return new Property("assertionDate", "dateTime", "The date that permission was asserted.", 0, java.lang.Integer.MAX_VALUE, assertionDate); + case -1421265102: /*validity*/ return new Property("validity", "Period", "The period in which the permission is active.", 0, 1, validity); + case -220463842: /*purpose*/ return new Property("purpose", "CodeableConcept", "The purpose for which the permission is given.", 0, java.lang.Integer.MAX_VALUE, purpose); + case -374957878: /*dataScope*/ return new Property("dataScope", "Expression", "This can be 1) the definition of data elements, or 2) a category or label) e.g. “sensitive”. It could also be a c) graph-like definition of a set of data elements.", 0, java.lang.Integer.MAX_VALUE, dataScope); + case -2117745854: /*processingActivity*/ return new Property("processingActivity", "", "A description or definition of which activities are allowed to be done on the data.", 0, java.lang.Integer.MAX_VALUE, processingActivity); + case 1864993522: /*justification*/ return new Property("justification", "", "The asserted justification for using the data.", 0, 1, justification); + case -788364488: /*usageLimitations*/ return new Property("usageLimitations", "CodeableConcept", "What limits apply to the use of the data.", 0, java.lang.Integer.MAX_VALUE, usageLimitations); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case -1183762788: /*intent*/ return this.intent == null ? new Base[0] : new Base[] {this.intent}; // CodeableConcept + case -373242253: /*asserter*/ return this.asserter == null ? new Base[0] : new Base[] {this.asserter}; // Reference + case -1498338864: /*assertionDate*/ return this.assertionDate == null ? new Base[0] : this.assertionDate.toArray(new Base[this.assertionDate.size()]); // DateTimeType + case -1421265102: /*validity*/ return this.validity == null ? new Base[0] : new Base[] {this.validity}; // Period + case -220463842: /*purpose*/ return this.purpose == null ? new Base[0] : this.purpose.toArray(new Base[this.purpose.size()]); // CodeableConcept + case -374957878: /*dataScope*/ return this.dataScope == null ? new Base[0] : this.dataScope.toArray(new Base[this.dataScope.size()]); // Expression + case -2117745854: /*processingActivity*/ return this.processingActivity == null ? new Base[0] : this.processingActivity.toArray(new Base[this.processingActivity.size()]); // PermissionProcessingActivityComponent + case 1864993522: /*justification*/ return this.justification == null ? new Base[0] : new Base[] {this.justification}; // PermissionJustificationComponent + case -788364488: /*usageLimitations*/ return this.usageLimitations == null ? new Base[0] : this.usageLimitations.toArray(new Base[this.usageLimitations.size()]); // CodeableConcept + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case -892481550: // status + value = new PermissionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + return value; + case -1183762788: // intent + this.intent = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; + case -373242253: // asserter + this.asserter = TypeConvertor.castToReference(value); // Reference + return value; + case -1498338864: // assertionDate + this.getAssertionDate().add(TypeConvertor.castToDateTime(value)); // DateTimeType + return value; + case -1421265102: // validity + this.validity = TypeConvertor.castToPeriod(value); // Period + return value; + case -220463842: // purpose + this.getPurpose().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + case -374957878: // dataScope + this.getDataScope().add(TypeConvertor.castToExpression(value)); // Expression + return value; + case -2117745854: // processingActivity + this.getProcessingActivity().add((PermissionProcessingActivityComponent) value); // PermissionProcessingActivityComponent + return value; + case 1864993522: // justification + this.justification = (PermissionJustificationComponent) value; // PermissionJustificationComponent + return value; + case -788364488: // usageLimitations + this.getUsageLimitations().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("status")) { + value = new PermissionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + } else if (name.equals("intent")) { + this.intent = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("asserter")) { + this.asserter = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("assertionDate")) { + this.getAssertionDate().add(TypeConvertor.castToDateTime(value)); + } else if (name.equals("validity")) { + this.validity = TypeConvertor.castToPeriod(value); // Period + } else if (name.equals("purpose")) { + this.getPurpose().add(TypeConvertor.castToCodeableConcept(value)); + } else if (name.equals("dataScope")) { + this.getDataScope().add(TypeConvertor.castToExpression(value)); + } else if (name.equals("processingActivity")) { + this.getProcessingActivity().add((PermissionProcessingActivityComponent) value); + } else if (name.equals("justification")) { + this.justification = (PermissionJustificationComponent) value; // PermissionJustificationComponent + } else if (name.equals("usageLimitations")) { + this.getUsageLimitations().add(TypeConvertor.castToCodeableConcept(value)); + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -892481550: return getStatusElement(); + case -1183762788: return getIntent(); + case -373242253: return getAsserter(); + case -1498338864: return addAssertionDateElement(); + case -1421265102: return getValidity(); + case -220463842: return addPurpose(); + case -374957878: return addDataScope(); + case -2117745854: return addProcessingActivity(); + case 1864993522: return getJustification(); + case -788364488: return addUsageLimitations(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case -892481550: /*status*/ return new String[] {"code"}; + case -1183762788: /*intent*/ return new String[] {"CodeableConcept"}; + case -373242253: /*asserter*/ return new String[] {"Reference"}; + case -1498338864: /*assertionDate*/ return new String[] {"dateTime"}; + case -1421265102: /*validity*/ return new String[] {"Period"}; + case -220463842: /*purpose*/ return new String[] {"CodeableConcept"}; + case -374957878: /*dataScope*/ return new String[] {"Expression"}; + case -2117745854: /*processingActivity*/ return new String[] {}; + case 1864993522: /*justification*/ return new String[] {}; + case -788364488: /*usageLimitations*/ return new String[] {"CodeableConcept"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("status")) { + throw new FHIRException("Cannot call addChild on a primitive type Permission.status"); + } + else if (name.equals("intent")) { + this.intent = new CodeableConcept(); + return this.intent; + } + else if (name.equals("asserter")) { + this.asserter = new Reference(); + return this.asserter; + } + else if (name.equals("assertionDate")) { + throw new FHIRException("Cannot call addChild on a primitive type Permission.assertionDate"); + } + else if (name.equals("validity")) { + this.validity = new Period(); + return this.validity; + } + else if (name.equals("purpose")) { + return addPurpose(); + } + else if (name.equals("dataScope")) { + return addDataScope(); + } + else if (name.equals("processingActivity")) { + return addProcessingActivity(); + } + else if (name.equals("justification")) { + this.justification = new PermissionJustificationComponent(); + return this.justification; + } + else if (name.equals("usageLimitations")) { + return addUsageLimitations(); + } + else + return super.addChild(name); + } + + public String fhirType() { + return "Permission"; + + } + + public Permission copy() { + Permission dst = new Permission(); + copyValues(dst); + return dst; + } + + public void copyValues(Permission dst) { + super.copyValues(dst); + dst.status = status == null ? null : status.copy(); + dst.intent = intent == null ? null : intent.copy(); + dst.asserter = asserter == null ? null : asserter.copy(); + if (assertionDate != null) { + dst.assertionDate = new ArrayList(); + for (DateTimeType i : assertionDate) + dst.assertionDate.add(i.copy()); + }; + dst.validity = validity == null ? null : validity.copy(); + if (purpose != null) { + dst.purpose = new ArrayList(); + for (CodeableConcept i : purpose) + dst.purpose.add(i.copy()); + }; + if (dataScope != null) { + dst.dataScope = new ArrayList(); + for (Expression i : dataScope) + dst.dataScope.add(i.copy()); + }; + if (processingActivity != null) { + dst.processingActivity = new ArrayList(); + for (PermissionProcessingActivityComponent i : processingActivity) + dst.processingActivity.add(i.copy()); + }; + dst.justification = justification == null ? null : justification.copy(); + if (usageLimitations != null) { + dst.usageLimitations = new ArrayList(); + for (CodeableConcept i : usageLimitations) + dst.usageLimitations.add(i.copy()); + }; + } + + protected Permission typedCopy() { + return copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof Permission)) + return false; + Permission o = (Permission) other_; + return compareDeep(status, o.status, true) && compareDeep(intent, o.intent, true) && compareDeep(asserter, o.asserter, true) + && compareDeep(assertionDate, o.assertionDate, true) && compareDeep(validity, o.validity, true) + && compareDeep(purpose, o.purpose, true) && compareDeep(dataScope, o.dataScope, true) && compareDeep(processingActivity, o.processingActivity, true) + && compareDeep(justification, o.justification, true) && compareDeep(usageLimitations, o.usageLimitations, true) + ; + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof Permission)) + return false; + Permission o = (Permission) other_; + return compareValues(status, o.status, true) && compareValues(assertionDate, o.assertionDate, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(status, intent, asserter + , assertionDate, validity, purpose, dataScope, processingActivity, justification + , usageLimitations); + } + + @Override + public ResourceType getResourceType() { + return ResourceType.Permission; + } + + /** + * Search parameter: status + *

+ * Description: active | entered-in-error | draft | rejected
+ * Type: token
+ * Path: Permission.status
+ *

+ */ + @SearchParamDefinition(name="status", path="Permission.status", description="active | entered-in-error | draft | rejected", type="token" ) + public static final String SP_STATUS = "status"; + /** + * Fluent Client search parameter constant for status + *

+ * Description: active | entered-in-error | draft | rejected
+ * Type: token
+ * Path: Permission.status
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); + + +} + diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Person.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Person.java index e90cdc142..6edad2e8e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Person.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Person.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PlanDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PlanDefinition.java index 6d94f39fb..5ab9cde84 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PlanDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PlanDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -6573,7 +6573,7 @@ public class PlanDefinition extends MetadataResource { * Path: PlanDefinition.relatedArtifact.where(type='composed-of').resource
*

*/ - @SearchParamDefinition(name="composed-of", path="PlanDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="composed-of", path="PlanDefinition.relatedArtifact.where(type='composed-of').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_COMPOSED_OF = "composed-of"; /** * Fluent Client search parameter constant for composed-of @@ -6745,7 +6745,7 @@ public class PlanDefinition extends MetadataResource { * Path: PlanDefinition.relatedArtifact.where(type='depends-on').resource | PlanDefinition.library
*

*/ - @SearchParamDefinition(name="depends-on", path="PlanDefinition.relatedArtifact.where(type='depends-on').resource | PlanDefinition.library", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="depends-on", path="PlanDefinition.relatedArtifact.where(type='depends-on').resource | PlanDefinition.library", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DEPENDS_ON = "depends-on"; /** * Fluent Client search parameter constant for depends-on @@ -6771,7 +6771,7 @@ public class PlanDefinition extends MetadataResource { * Path: PlanDefinition.relatedArtifact.where(type='derived-from').resource
*

*/ - @SearchParamDefinition(name="derived-from", path="PlanDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="derived-from", path="PlanDefinition.relatedArtifact.where(type='derived-from').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_DERIVED_FROM = "derived-from"; /** * Fluent Client search parameter constant for derived-from @@ -6897,7 +6897,7 @@ public class PlanDefinition extends MetadataResource { * Path: PlanDefinition.relatedArtifact.where(type='predecessor').resource
*

*/ - @SearchParamDefinition(name="predecessor", path="PlanDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="predecessor", path="PlanDefinition.relatedArtifact.where(type='predecessor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_PREDECESSOR = "predecessor"; /** * Fluent Client search parameter constant for predecessor @@ -6963,7 +6963,7 @@ public class PlanDefinition extends MetadataResource { * Path: PlanDefinition.relatedArtifact.where(type='successor').resource
*

*/ - @SearchParamDefinition(name="successor", path="PlanDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="successor", path="PlanDefinition.relatedArtifact.where(type='successor').resource", description="What resource is being referenced", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUCCESSOR = "successor"; /** * Fluent Client search parameter constant for successor diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Population.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Population.java index 4103981c0..f52b5969d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Population.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Population.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Practitioner.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Practitioner.java index 827fa79e7..e3c255511 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Practitioner.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Practitioner.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PractitionerRole.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PractitionerRole.java index 017e7ee54..4fc083061 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PractitionerRole.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/PractitionerRole.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Procedure.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Procedure.java index c3967a736..7043acc9a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Procedure.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Procedure.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -630,10 +630,10 @@ public class Procedure extends DomainResource { protected DataType occurrence; /** - * The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event. + * The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event). */ @Child(name = "recorded", type = {DateTimeType.class}, order=12, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="When the procedure was first captured in the subject's record", formalDefinition="The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event." ) + @Description(shortDefinition="When the procedure was first captured in the subject's record", formalDefinition="The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event)." ) protected DateTimeType recorded; /** @@ -1345,7 +1345,7 @@ public class Procedure extends DomainResource { } /** - * @return {@link #recorded} (The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event.). This is the underlying object with id, value and extensions. The accessor "getRecorded" gives direct access to the value + * @return {@link #recorded} (The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event).). This is the underlying object with id, value and extensions. The accessor "getRecorded" gives direct access to the value */ public DateTimeType getRecordedElement() { if (this.recorded == null) @@ -1365,7 +1365,7 @@ public class Procedure extends DomainResource { } /** - * @param value {@link #recorded} (The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event.). This is the underlying object with id, value and extensions. The accessor "getRecorded" gives direct access to the value + * @param value {@link #recorded} (The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event).). This is the underlying object with id, value and extensions. The accessor "getRecorded" gives direct access to the value */ public Procedure setRecordedElement(DateTimeType value) { this.recorded = value; @@ -1373,14 +1373,14 @@ public class Procedure extends DomainResource { } /** - * @return The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event. + * @return The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event). */ public Date getRecorded() { return this.recorded == null ? null : this.recorded.getValue(); } /** - * @param value The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event. + * @param value The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event). */ public Procedure setRecorded(Date value) { if (value == null) @@ -2060,7 +2060,7 @@ public class Procedure extends DomainResource { children.add(new Property("subject", "Reference(Patient|Group)", "The person, animal or group on which the procedure was performed.", 0, 1, subject)); children.add(new Property("encounter", "Reference(Encounter)", "The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated.", 0, 1, encounter)); children.add(new Property("occurrence[x]", "dateTime|Period|string|Age|Range|Timing", "Estimated or actual date, date-time, period, or age when the procedure did occur or is occurring. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured.", 0, 1, occurrence)); - children.add(new Property("recorded", "dateTime", "The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event.", 0, 1, recorded)); + children.add(new Property("recorded", "dateTime", "The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event).", 0, 1, recorded)); children.add(new Property("recorder", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole)", "Individual who recorded the record and takes responsibility for its content.", 0, 1, recorder)); children.add(new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported)); children.add(new Property("performer", "", "Limited to \"real\" people rather than equipment.", 0, java.lang.Integer.MAX_VALUE, performer)); @@ -2099,7 +2099,7 @@ public class Procedure extends DomainResource { case -2022672018: /*occurrenceAge*/ return new Property("occurrence[x]", "Age", "Estimated or actual date, date-time, period, or age when the procedure did occur or is occurring. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured.", 0, 1, occurrence); case 1847908844: /*occurrenceRange*/ return new Property("occurrence[x]", "Range", "Estimated or actual date, date-time, period, or age when the procedure did occur or is occurring. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured.", 0, 1, occurrence); case 1515218299: /*occurrenceTiming*/ return new Property("occurrence[x]", "Timing", "Estimated or actual date, date-time, period, or age when the procedure did occur or is occurring. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured.", 0, 1, occurrence); - case -799233872: /*recorded*/ return new Property("recorded", "dateTime", "The date the occurrence of the procedure was first captured in the record - potentially significantly after the occurrence of the event.", 0, 1, recorded); + case -799233872: /*recorded*/ return new Property("recorded", "dateTime", "The date the occurrence of the procedure was first captured in the record regardless of Procedure.status (potentially after the occurrence of the event).", 0, 1, recorded); case -799233858: /*recorder*/ return new Property("recorder", "Reference(Patient|RelatedPerson|Practitioner|PractitionerRole)", "Individual who recorded the record and takes responsibility for its content.", 0, 1, recorder); case -241505587: /*reported[x]*/ return new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported); case -427039533: /*reported*/ return new Property("reported[x]", "boolean|Reference(Patient|RelatedPerson|Practitioner|PractitionerRole|Organization)", "Indicates if this record was captured as a secondary 'reported' record rather than as an original primary source-of-truth record. It may also indicate the source of the report.", 0, 1, reported); @@ -2938,10 +2938,10 @@ public class Procedure extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2964,7 +2964,7 @@ public class Procedure extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -2993,10 +2993,10 @@ public class Procedure extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -3022,7 +3022,7 @@ public class Procedure extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -3204,10 +3204,10 @@ public class Procedure extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3248,7 +3248,7 @@ public class Procedure extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProdCharacteristic.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProdCharacteristic.java index 212671f92..c8d152a95 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProdCharacteristic.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProdCharacteristic.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProductShelfLife.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProductShelfLife.java index f76bd7f32..7df48f0c8 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProductShelfLife.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ProductShelfLife.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Provenance.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Provenance.java index a7e689df7..48cab7583 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Provenance.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Provenance.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1801,7 +1801,7 @@ public class Provenance extends DomainResource { * Path: Provenance.entity.what
*

*/ - @SearchParamDefinition(name="entity", path="Provenance.entity.what", description="Identity of entity", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="entity", path="Provenance.entity.what", description="Identity of entity", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_ENTITY = "entity"; /** * Fluent Client search parameter constant for entity @@ -1919,7 +1919,7 @@ public class Provenance extends DomainResource { * Path: Provenance.target
*

*/ - @SearchParamDefinition(name="target", path="Provenance.target", description="Target Reference(s) (usually version specific)", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="target", path="Provenance.target", description="Target Reference(s) (usually version specific)", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_TARGET = "target"; /** * Fluent Client search parameter constant for target diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Quantity.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Quantity.java index fd668f6e1..db7ad470a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Quantity.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Quantity.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Questionnaire.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Questionnaire.java index dbca14fd4..37b3eaf2e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Questionnaire.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Questionnaire.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -346,6 +346,10 @@ public class Questionnaire extends MetadataResource { * Text for display that will not capture an answer or have child items. */ DISPLAY, + /** + * An item that defines a specific answer to be captured, and which may have child items. (the answer provided in the QuestionnaireResponse should be of the defined datatype). + */ + QUESTION, /** * Question with a yes/no answer (valueBoolean). */ @@ -413,6 +417,8 @@ public class Questionnaire extends MetadataResource { return GROUP; if ("display".equals(codeString)) return DISPLAY; + if ("question".equals(codeString)) + return QUESTION; if ("boolean".equals(codeString)) return BOOLEAN; if ("decimal".equals(codeString)) @@ -450,6 +456,7 @@ public class Questionnaire extends MetadataResource { switch (this) { case GROUP: return "group"; case DISPLAY: return "display"; + case QUESTION: return "question"; case BOOLEAN: return "boolean"; case DECIMAL: return "decimal"; case INTEGER: return "integer"; @@ -471,6 +478,7 @@ public class Questionnaire extends MetadataResource { switch (this) { case GROUP: return "http://hl7.org/fhir/item-type"; case DISPLAY: return "http://hl7.org/fhir/item-type"; + case QUESTION: return "http://hl7.org/fhir/item-type"; case BOOLEAN: return "http://hl7.org/fhir/item-type"; case DECIMAL: return "http://hl7.org/fhir/item-type"; case INTEGER: return "http://hl7.org/fhir/item-type"; @@ -492,6 +500,7 @@ public class Questionnaire extends MetadataResource { switch (this) { case GROUP: return "An item with no direct answer but should have at least one child item."; case DISPLAY: return "Text for display that will not capture an answer or have child items."; + case QUESTION: return "An item that defines a specific answer to be captured, and which may have child items. (the answer provided in the QuestionnaireResponse should be of the defined datatype)."; case BOOLEAN: return "Question with a yes/no answer (valueBoolean)."; case DECIMAL: return "Question with is a real number answer (valueDecimal)."; case INTEGER: return "Question with an integer answer (valueInteger)."; @@ -513,6 +522,7 @@ public class Questionnaire extends MetadataResource { switch (this) { case GROUP: return "Group"; case DISPLAY: return "Display"; + case QUESTION: return "Question"; case BOOLEAN: return "Boolean"; case DECIMAL: return "Decimal"; case INTEGER: return "Integer"; @@ -541,6 +551,8 @@ public class Questionnaire extends MetadataResource { return QuestionnaireItemType.GROUP; if ("display".equals(codeString)) return QuestionnaireItemType.DISPLAY; + if ("question".equals(codeString)) + return QuestionnaireItemType.QUESTION; if ("boolean".equals(codeString)) return QuestionnaireItemType.BOOLEAN; if ("decimal".equals(codeString)) @@ -583,6 +595,8 @@ public class Questionnaire extends MetadataResource { return new Enumeration(this, QuestionnaireItemType.GROUP); if ("display".equals(codeString)) return new Enumeration(this, QuestionnaireItemType.DISPLAY); + if ("question".equals(codeString)) + return new Enumeration(this, QuestionnaireItemType.QUESTION); if ("boolean".equals(codeString)) return new Enumeration(this, QuestionnaireItemType.BOOLEAN); if ("decimal".equals(codeString)) @@ -618,6 +632,8 @@ public class Questionnaire extends MetadataResource { return "group"; if (code == QuestionnaireItemType.DISPLAY) return "display"; + if (code == QuestionnaireItemType.QUESTION) + return "question"; if (code == QuestionnaireItemType.BOOLEAN) return "boolean"; if (code == QuestionnaireItemType.DECIMAL) diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/QuestionnaireResponse.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/QuestionnaireResponse.java index 73d1ff606..15a58c3ed 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/QuestionnaireResponse.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/QuestionnaireResponse.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2215,7 +2215,7 @@ public class QuestionnaireResponse extends DomainResource { * Path: QuestionnaireResponse.subject
*

*/ - @SearchParamDefinition(name="subject", path="QuestionnaireResponse.subject", description="The subject of the questionnaire response", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="subject", path="QuestionnaireResponse.subject", description="The subject of the questionnaire response", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUBJECT = "subject"; /** * Fluent Client search parameter constant for subject diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Range.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Range.java index 3d76b3140..4cade59f9 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Range.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Range.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ratio.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ratio.java index e815903d8..406758a9a 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ratio.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Ratio.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Reference.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Reference.java index 61587b2c6..bf7f14817 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Reference.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Reference.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RegulatedAuthorization.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RegulatedAuthorization.java index 6f78dcdaa..835311922 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RegulatedAuthorization.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RegulatedAuthorization.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -67,7 +67,7 @@ import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Block; /** - * The regulatory authorization of a medicinal product. + * The regulatory authorization of a medicinal product, device or process. */ @ResourceDef(name="RegulatedAuthorization", profile="http://hl7.org/fhir/StructureDefinition/RegulatedAuthorization") public class RegulatedAuthorization extends DomainResource { @@ -320,31 +320,31 @@ public class RegulatedAuthorization extends DomainResource { @Block() public static class RegulatedAuthorizationCaseComponent extends BackboneElement implements IBaseBackboneElement { /** - * Identifier for this case. + * Identifier by which this case can be referenced. */ @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Identifier for this case", formalDefinition="Identifier for this case." ) + @Description(shortDefinition="Identifier by which this case can be referenced", formalDefinition="Identifier by which this case can be referenced." ) protected Identifier identifier; /** - * Type of case. + * The defining type of case. */ @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Type of case", formalDefinition="Type of case." ) + @Description(shortDefinition="The defining type of case", formalDefinition="The defining type of case." ) protected CodeableConcept type; /** - * The status of the case. + * The status associated with the case. */ @Child(name = "status", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The status of the case", formalDefinition="The status of the case." ) + @Description(shortDefinition="The status associated with the case", formalDefinition="The status associated with the case." ) protected CodeableConcept status; /** - * Date of case. + * Relevant date for this of case. */ @Child(name = "date", type = {Period.class, DateTimeType.class}, order=4, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Date of case", formalDefinition="Date of case." ) + @Description(shortDefinition="Relevant date for this of case", formalDefinition="Relevant date for this of case." ) protected DataType date; /** @@ -364,7 +364,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #identifier} (Identifier for this case.) + * @return {@link #identifier} (Identifier by which this case can be referenced.) */ public Identifier getIdentifier() { if (this.identifier == null) @@ -380,7 +380,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #identifier} (Identifier for this case.) + * @param value {@link #identifier} (Identifier by which this case can be referenced.) */ public RegulatedAuthorizationCaseComponent setIdentifier(Identifier value) { this.identifier = value; @@ -388,7 +388,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #type} (Type of case.) + * @return {@link #type} (The defining type of case.) */ public CodeableConcept getType() { if (this.type == null) @@ -404,7 +404,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #type} (Type of case.) + * @param value {@link #type} (The defining type of case.) */ public RegulatedAuthorizationCaseComponent setType(CodeableConcept value) { this.type = value; @@ -412,7 +412,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #status} (The status of the case.) + * @return {@link #status} (The status associated with the case.) */ public CodeableConcept getStatus() { if (this.status == null) @@ -428,7 +428,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #status} (The status of the case.) + * @param value {@link #status} (The status associated with the case.) */ public RegulatedAuthorizationCaseComponent setStatus(CodeableConcept value) { this.status = value; @@ -436,14 +436,14 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #date} (Date of case.) + * @return {@link #date} (Relevant date for this of case.) */ public DataType getDate() { return this.date; } /** - * @return {@link #date} (Date of case.) + * @return {@link #date} (Relevant date for this of case.) */ public Period getDatePeriod() throws FHIRException { if (this.date == null) @@ -458,7 +458,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #date} (Date of case.) + * @return {@link #date} (Relevant date for this of case.) */ public DateTimeType getDateDateTimeType() throws FHIRException { if (this.date == null) @@ -477,7 +477,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #date} (Date of case.) + * @param value {@link #date} (Relevant date for this of case.) */ public RegulatedAuthorizationCaseComponent setDate(DataType value) { if (value != null && !(value instanceof Period || value instanceof DateTimeType)) @@ -541,23 +541,23 @@ public class RegulatedAuthorization extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("identifier", "Identifier", "Identifier for this case.", 0, 1, identifier)); - children.add(new Property("type", "CodeableConcept", "Type of case.", 0, 1, type)); - children.add(new Property("status", "CodeableConcept", "The status of the case.", 0, 1, status)); - children.add(new Property("date[x]", "Period|dateTime", "Date of case.", 0, 1, date)); + children.add(new Property("identifier", "Identifier", "Identifier by which this case can be referenced.", 0, 1, identifier)); + children.add(new Property("type", "CodeableConcept", "The defining type of case.", 0, 1, type)); + children.add(new Property("status", "CodeableConcept", "The status associated with the case.", 0, 1, status)); + children.add(new Property("date[x]", "Period|dateTime", "Relevant date for this of case.", 0, 1, date)); children.add(new Property("application", "@RegulatedAuthorization.case", "Applcations submitted to obtain a marketing authorization. Steps within the longer running case or procedure.", 0, java.lang.Integer.MAX_VALUE, application)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier for this case.", 0, 1, identifier); - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Type of case.", 0, 1, type); - case -892481550: /*status*/ return new Property("status", "CodeableConcept", "The status of the case.", 0, 1, status); - case 1443311122: /*date[x]*/ return new Property("date[x]", "Period|dateTime", "Date of case.", 0, 1, date); - case 3076014: /*date*/ return new Property("date[x]", "Period|dateTime", "Date of case.", 0, 1, date); - case 432297743: /*datePeriod*/ return new Property("date[x]", "Period", "Date of case.", 0, 1, date); - case 185136489: /*dateDateTime*/ return new Property("date[x]", "dateTime", "Date of case.", 0, 1, date); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Identifier by which this case can be referenced.", 0, 1, identifier); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The defining type of case.", 0, 1, type); + case -892481550: /*status*/ return new Property("status", "CodeableConcept", "The status associated with the case.", 0, 1, status); + case 1443311122: /*date[x]*/ return new Property("date[x]", "Period|dateTime", "Relevant date for this of case.", 0, 1, date); + case 3076014: /*date*/ return new Property("date[x]", "Period|dateTime", "Relevant date for this of case.", 0, 1, date); + case 432297743: /*datePeriod*/ return new Property("date[x]", "Period", "Relevant date for this of case.", 0, 1, date); + case 185136489: /*dateDateTime*/ return new Property("date[x]", "dateTime", "Relevant date for this of case.", 0, 1, date); case 1554253136: /*application*/ return new Property("application", "@RegulatedAuthorization.case", "Applcations submitted to obtain a marketing authorization. Steps within the longer running case or procedure.", 0, java.lang.Integer.MAX_VALUE, application); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -726,24 +726,24 @@ public class RegulatedAuthorization extends DomainResource { } /** - * Business identifier for the marketing authorization, as assigned by a regulator. + * Business identifier for the authorization, typically assigned by the authorizing body. */ @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Business identifier for the marketing authorization, as assigned by a regulator", formalDefinition="Business identifier for the marketing authorization, as assigned by a regulator." ) + @Description(shortDefinition="Business identifier for the authorization, typically assigned by the authorizing body", formalDefinition="Business identifier for the authorization, typically assigned by the authorizing body." ) protected List identifier; /** - * The product that is being authorized. + * The type of product or service that is being authorized. */ @Child(name = "subject", type = {MedicinalProductDefinition.class, PackagedProductDefinition.class, DeviceDefinition.class, ResearchStudy.class, ActivityDefinition.class, PlanDefinition.class, ObservationDefinition.class}, order=1, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The product that is being authorized", formalDefinition="The product that is being authorized." ) + @Description(shortDefinition="The type of product or service that is being authorized", formalDefinition="The type of product or service that is being authorized." ) protected Reference subject; /** - * Type of this authorization, for example drug marketing approval, orphan drug designation. + * Overall type of this authorization, for example drug marketing approval, orphan drug designation. */ @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Type of this authorization, for example drug marketing approval, orphan drug designation", formalDefinition="Type of this authorization, for example drug marketing approval, orphan drug designation." ) + @Description(shortDefinition="Overall type of this authorization, for example drug marketing approval, orphan drug designation", formalDefinition="Overall type of this authorization, for example drug marketing approval, orphan drug designation." ) protected CodeableConcept type; /** @@ -761,17 +761,17 @@ public class RegulatedAuthorization extends DomainResource { protected List region; /** - * The status of the marketing authorization. + * The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications. */ @Child(name = "status", type = {CodeableConcept.class}, order=5, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The status of the marketing authorization", formalDefinition="The status of the marketing authorization." ) + @Description(shortDefinition="The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications", formalDefinition="The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications." ) protected CodeableConcept status; /** - * The date at which the given status has become applicable. + * The date at which the given status became applicable. */ @Child(name = "statusDate", type = {DateTimeType.class}, order=6, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The date at which the given status has become applicable", formalDefinition="The date at which the given status has become applicable." ) + @Description(shortDefinition="The date at which the given status became applicable", formalDefinition="The date at which the given status became applicable." ) protected DateTimeType statusDate; /** @@ -782,48 +782,62 @@ public class RegulatedAuthorization extends DomainResource { protected Period validityPeriod; /** - * The legal framework against which this authorization is granted, or other reasons for it. + * Condition for which the medicinal use applies. */ - @Child(name = "basis", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="The legal framework against which this authorization is granted, or other reasons for it", formalDefinition="The legal framework against which this authorization is granted, or other reasons for it." ) + @Child(name = "indication", type = {CodeableConcept.class, ClinicalUseIssue.class}, order=8, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Condition for which the medicinal use applies", formalDefinition="Condition for which the medicinal use applies." ) + protected DataType indication; + + /** + * The intended use of the product, e.g. prevention, treatment. + */ + @Child(name = "intendedUse", type = {CodeableConcept.class}, order=9, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The intended use of the product, e.g. prevention, treatment", formalDefinition="The intended use of the product, e.g. prevention, treatment." ) + protected CodeableConcept intendedUse; + + /** + * The legal or regulatory framework against which this authorization is granted, or other reasons for it. + */ + @Child(name = "basis", type = {CodeableConcept.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The legal or regulatory framework against which this authorization is granted, or other reasons for it", formalDefinition="The legal or regulatory framework against which this authorization is granted, or other reasons for it." ) protected List basis; /** * Other dates associated with the authorization. It is common for an authorization to have renewal dates, initial time limited phases and so on. */ - @Child(name = "relatedDate", type = {}, order=9, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "relatedDate", type = {}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Other dates associated with the authorization. It is common for an authorization to have renewal dates, initial time limited phases and so on", formalDefinition="Other dates associated with the authorization. It is common for an authorization to have renewal dates, initial time limited phases and so on." ) protected List relatedDate; /** * Authorization in areas within a country. */ - @Child(name = "jurisdictionalAuthorization", type = {RegulatedAuthorization.class}, order=10, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "jurisdictionalAuthorization", type = {RegulatedAuthorization.class}, order=12, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Authorization in areas within a country", formalDefinition="Authorization in areas within a country." ) protected List jurisdictionalAuthorization; /** * Marketing Authorization Holder. */ - @Child(name = "holder", type = {Organization.class}, order=11, min=0, max=1, modifier=false, summary=true) + @Child(name = "holder", type = {Organization.class}, order=13, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Marketing Authorization Holder", formalDefinition="Marketing Authorization Holder." ) protected Reference holder; /** * Medicines Regulatory Agency. */ - @Child(name = "regulator", type = {Organization.class}, order=12, min=0, max=1, modifier=false, summary=true) + @Child(name = "regulator", type = {Organization.class}, order=14, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Medicines Regulatory Agency", formalDefinition="Medicines Regulatory Agency." ) protected Reference regulator; /** * The case or regulatory procedure for granting or amending a marketing authorization. */ - @Child(name = "case", type = {}, order=13, min=0, max=1, modifier=false, summary=true) + @Child(name = "case", type = {}, order=15, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="The case or regulatory procedure for granting or amending a marketing authorization", formalDefinition="The case or regulatory procedure for granting or amending a marketing authorization." ) protected RegulatedAuthorizationCaseComponent case_; - private static final long serialVersionUID = -1485439613L; + private static final long serialVersionUID = -896864670L; /** * Constructor @@ -833,7 +847,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #identifier} (Business identifier for the marketing authorization, as assigned by a regulator.) + * @return {@link #identifier} (Business identifier for the authorization, typically assigned by the authorizing body.) */ public List getIdentifier() { if (this.identifier == null) @@ -886,7 +900,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #subject} (The product that is being authorized.) + * @return {@link #subject} (The type of product or service that is being authorized.) */ public Reference getSubject() { if (this.subject == null) @@ -902,7 +916,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #subject} (The product that is being authorized.) + * @param value {@link #subject} (The type of product or service that is being authorized.) */ public RegulatedAuthorization setSubject(Reference value) { this.subject = value; @@ -910,7 +924,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #type} (Type of this authorization, for example drug marketing approval, orphan drug designation.) + * @return {@link #type} (Overall type of this authorization, for example drug marketing approval, orphan drug designation.) */ public CodeableConcept getType() { if (this.type == null) @@ -926,7 +940,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #type} (Type of this authorization, for example drug marketing approval, orphan drug designation.) + * @param value {@link #type} (Overall type of this authorization, for example drug marketing approval, orphan drug designation.) */ public RegulatedAuthorization setType(CodeableConcept value) { this.type = value; @@ -1036,7 +1050,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #status} (The status of the marketing authorization.) + * @return {@link #status} (The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications.) */ public CodeableConcept getStatus() { if (this.status == null) @@ -1052,7 +1066,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #status} (The status of the marketing authorization.) + * @param value {@link #status} (The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications.) */ public RegulatedAuthorization setStatus(CodeableConcept value) { this.status = value; @@ -1060,7 +1074,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #statusDate} (The date at which the given status has become applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value + * @return {@link #statusDate} (The date at which the given status became applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value */ public DateTimeType getStatusDateElement() { if (this.statusDate == null) @@ -1080,7 +1094,7 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @param value {@link #statusDate} (The date at which the given status has become applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value + * @param value {@link #statusDate} (The date at which the given status became applicable.). This is the underlying object with id, value and extensions. The accessor "getStatusDate" gives direct access to the value */ public RegulatedAuthorization setStatusDateElement(DateTimeType value) { this.statusDate = value; @@ -1088,14 +1102,14 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return The date at which the given status has become applicable. + * @return The date at which the given status became applicable. */ public Date getStatusDate() { return this.statusDate == null ? null : this.statusDate.getValue(); } /** - * @param value The date at which the given status has become applicable. + * @param value The date at which the given status became applicable. */ public RegulatedAuthorization setStatusDate(Date value) { if (value == null) @@ -1133,7 +1147,82 @@ public class RegulatedAuthorization extends DomainResource { } /** - * @return {@link #basis} (The legal framework against which this authorization is granted, or other reasons for it.) + * @return {@link #indication} (Condition for which the medicinal use applies.) + */ + public DataType getIndication() { + return this.indication; + } + + /** + * @return {@link #indication} (Condition for which the medicinal use applies.) + */ + public CodeableConcept getIndicationCodeableConcept() throws FHIRException { + if (this.indication == null) + this.indication = new CodeableConcept(); + if (!(this.indication instanceof CodeableConcept)) + throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.indication.getClass().getName()+" was encountered"); + return (CodeableConcept) this.indication; + } + + public boolean hasIndicationCodeableConcept() { + return this != null && this.indication instanceof CodeableConcept; + } + + /** + * @return {@link #indication} (Condition for which the medicinal use applies.) + */ + public Reference getIndicationReference() throws FHIRException { + if (this.indication == null) + this.indication = new Reference(); + if (!(this.indication instanceof Reference)) + throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.indication.getClass().getName()+" was encountered"); + return (Reference) this.indication; + } + + public boolean hasIndicationReference() { + return this != null && this.indication instanceof Reference; + } + + public boolean hasIndication() { + return this.indication != null && !this.indication.isEmpty(); + } + + /** + * @param value {@link #indication} (Condition for which the medicinal use applies.) + */ + public RegulatedAuthorization setIndication(DataType value) { + if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) + throw new Error("Not the right type for RegulatedAuthorization.indication[x]: "+value.fhirType()); + this.indication = value; + return this; + } + + /** + * @return {@link #intendedUse} (The intended use of the product, e.g. prevention, treatment.) + */ + public CodeableConcept getIntendedUse() { + if (this.intendedUse == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create RegulatedAuthorization.intendedUse"); + else if (Configuration.doAutoCreate()) + this.intendedUse = new CodeableConcept(); // cc + return this.intendedUse; + } + + public boolean hasIntendedUse() { + return this.intendedUse != null && !this.intendedUse.isEmpty(); + } + + /** + * @param value {@link #intendedUse} (The intended use of the product, e.g. prevention, treatment.) + */ + public RegulatedAuthorization setIntendedUse(CodeableConcept value) { + this.intendedUse = value; + return this; + } + + /** + * @return {@link #basis} (The legal or regulatory framework against which this authorization is granted, or other reasons for it.) */ public List getBasis() { if (this.basis == null) @@ -1365,15 +1454,17 @@ public class RegulatedAuthorization extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("identifier", "Identifier", "Business identifier for the marketing authorization, as assigned by a regulator.", 0, java.lang.Integer.MAX_VALUE, identifier)); - children.add(new Property("subject", "Reference(MedicinalProductDefinition|PackagedProductDefinition|DeviceDefinition|ResearchStudy|ActivityDefinition|PlanDefinition|ObservationDefinition)", "The product that is being authorized.", 0, 1, subject)); - children.add(new Property("type", "CodeableConcept", "Type of this authorization, for example drug marketing approval, orphan drug designation.", 0, 1, type)); + children.add(new Property("identifier", "Identifier", "Business identifier for the authorization, typically assigned by the authorizing body.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("subject", "Reference(MedicinalProductDefinition|PackagedProductDefinition|DeviceDefinition|ResearchStudy|ActivityDefinition|PlanDefinition|ObservationDefinition)", "The type of product or service that is being authorized.", 0, 1, subject)); + children.add(new Property("type", "CodeableConcept", "Overall type of this authorization, for example drug marketing approval, orphan drug designation.", 0, 1, type)); children.add(new Property("description", "markdown", "General textual supporting information.", 0, 1, description)); children.add(new Property("region", "CodeableConcept", "The region (country, jurisdiction etc.) in which the marketing authorization has been granted.", 0, java.lang.Integer.MAX_VALUE, region)); - children.add(new Property("status", "CodeableConcept", "The status of the marketing authorization.", 0, 1, status)); - children.add(new Property("statusDate", "dateTime", "The date at which the given status has become applicable.", 0, 1, statusDate)); + children.add(new Property("status", "CodeableConcept", "The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications.", 0, 1, status)); + children.add(new Property("statusDate", "dateTime", "The date at which the given status became applicable.", 0, 1, statusDate)); children.add(new Property("validityPeriod", "Period", "The beginning of the time period in which the marketing authorization is in the specific status shall be specified A complete date consisting of day, month and year shall be specified using the ISO 8601 date format.", 0, 1, validityPeriod)); - children.add(new Property("basis", "CodeableConcept", "The legal framework against which this authorization is granted, or other reasons for it.", 0, java.lang.Integer.MAX_VALUE, basis)); + children.add(new Property("indication[x]", "CodeableConcept|Reference(ClinicalUseIssue)", "Condition for which the medicinal use applies.", 0, 1, indication)); + children.add(new Property("intendedUse", "CodeableConcept", "The intended use of the product, e.g. prevention, treatment.", 0, 1, intendedUse)); + children.add(new Property("basis", "CodeableConcept", "The legal or regulatory framework against which this authorization is granted, or other reasons for it.", 0, java.lang.Integer.MAX_VALUE, basis)); children.add(new Property("relatedDate", "", "Other dates associated with the authorization. It is common for an authorization to have renewal dates, initial time limited phases and so on.", 0, java.lang.Integer.MAX_VALUE, relatedDate)); children.add(new Property("jurisdictionalAuthorization", "Reference(RegulatedAuthorization)", "Authorization in areas within a country.", 0, java.lang.Integer.MAX_VALUE, jurisdictionalAuthorization)); children.add(new Property("holder", "Reference(Organization)", "Marketing Authorization Holder.", 0, 1, holder)); @@ -1384,15 +1475,20 @@ public class RegulatedAuthorization extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifier for the marketing authorization, as assigned by a regulator.", 0, java.lang.Integer.MAX_VALUE, identifier); - case -1867885268: /*subject*/ return new Property("subject", "Reference(MedicinalProductDefinition|PackagedProductDefinition|DeviceDefinition|ResearchStudy|ActivityDefinition|PlanDefinition|ObservationDefinition)", "The product that is being authorized.", 0, 1, subject); - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Type of this authorization, for example drug marketing approval, orphan drug designation.", 0, 1, type); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifier for the authorization, typically assigned by the authorizing body.", 0, java.lang.Integer.MAX_VALUE, identifier); + case -1867885268: /*subject*/ return new Property("subject", "Reference(MedicinalProductDefinition|PackagedProductDefinition|DeviceDefinition|ResearchStudy|ActivityDefinition|PlanDefinition|ObservationDefinition)", "The type of product or service that is being authorized.", 0, 1, subject); + case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Overall type of this authorization, for example drug marketing approval, orphan drug designation.", 0, 1, type); case -1724546052: /*description*/ return new Property("description", "markdown", "General textual supporting information.", 0, 1, description); case -934795532: /*region*/ return new Property("region", "CodeableConcept", "The region (country, jurisdiction etc.) in which the marketing authorization has been granted.", 0, java.lang.Integer.MAX_VALUE, region); - case -892481550: /*status*/ return new Property("status", "CodeableConcept", "The status of the marketing authorization.", 0, 1, status); - case 247524032: /*statusDate*/ return new Property("statusDate", "dateTime", "The date at which the given status has become applicable.", 0, 1, statusDate); + case -892481550: /*status*/ return new Property("status", "CodeableConcept", "The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications.", 0, 1, status); + case 247524032: /*statusDate*/ return new Property("statusDate", "dateTime", "The date at which the given status became applicable.", 0, 1, statusDate); case -1434195053: /*validityPeriod*/ return new Property("validityPeriod", "Period", "The beginning of the time period in which the marketing authorization is in the specific status shall be specified A complete date consisting of day, month and year shall be specified using the ISO 8601 date format.", 0, 1, validityPeriod); - case 93508670: /*basis*/ return new Property("basis", "CodeableConcept", "The legal framework against which this authorization is granted, or other reasons for it.", 0, java.lang.Integer.MAX_VALUE, basis); + case -501208668: /*indication[x]*/ return new Property("indication[x]", "CodeableConcept|Reference(ClinicalUseIssue)", "Condition for which the medicinal use applies.", 0, 1, indication); + case -597168804: /*indication*/ return new Property("indication[x]", "CodeableConcept|Reference(ClinicalUseIssue)", "Condition for which the medicinal use applies.", 0, 1, indication); + case -1094003035: /*indicationCodeableConcept*/ return new Property("indication[x]", "CodeableConcept", "Condition for which the medicinal use applies.", 0, 1, indication); + case 803518799: /*indicationReference*/ return new Property("indication[x]", "Reference(ClinicalUseIssue)", "Condition for which the medicinal use applies.", 0, 1, indication); + case -1618671268: /*intendedUse*/ return new Property("intendedUse", "CodeableConcept", "The intended use of the product, e.g. prevention, treatment.", 0, 1, intendedUse); + case 93508670: /*basis*/ return new Property("basis", "CodeableConcept", "The legal or regulatory framework against which this authorization is granted, or other reasons for it.", 0, java.lang.Integer.MAX_VALUE, basis); case 1112535673: /*relatedDate*/ return new Property("relatedDate", "", "Other dates associated with the authorization. It is common for an authorization to have renewal dates, initial time limited phases and so on.", 0, java.lang.Integer.MAX_VALUE, relatedDate); case 1459432557: /*jurisdictionalAuthorization*/ return new Property("jurisdictionalAuthorization", "Reference(RegulatedAuthorization)", "Authorization in areas within a country.", 0, java.lang.Integer.MAX_VALUE, jurisdictionalAuthorization); case -1211707988: /*holder*/ return new Property("holder", "Reference(Organization)", "Marketing Authorization Holder.", 0, 1, holder); @@ -1414,6 +1510,8 @@ public class RegulatedAuthorization extends DomainResource { case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // CodeableConcept case 247524032: /*statusDate*/ return this.statusDate == null ? new Base[0] : new Base[] {this.statusDate}; // DateTimeType case -1434195053: /*validityPeriod*/ return this.validityPeriod == null ? new Base[0] : new Base[] {this.validityPeriod}; // Period + case -597168804: /*indication*/ return this.indication == null ? new Base[0] : new Base[] {this.indication}; // DataType + case -1618671268: /*intendedUse*/ return this.intendedUse == null ? new Base[0] : new Base[] {this.intendedUse}; // CodeableConcept case 93508670: /*basis*/ return this.basis == null ? new Base[0] : this.basis.toArray(new Base[this.basis.size()]); // CodeableConcept case 1112535673: /*relatedDate*/ return this.relatedDate == null ? new Base[0] : this.relatedDate.toArray(new Base[this.relatedDate.size()]); // RegulatedAuthorizationRelatedDateComponent case 1459432557: /*jurisdictionalAuthorization*/ return this.jurisdictionalAuthorization == null ? new Base[0] : this.jurisdictionalAuthorization.toArray(new Base[this.jurisdictionalAuthorization.size()]); // Reference @@ -1452,6 +1550,12 @@ public class RegulatedAuthorization extends DomainResource { case -1434195053: // validityPeriod this.validityPeriod = TypeConvertor.castToPeriod(value); // Period return value; + case -597168804: // indication + this.indication = TypeConvertor.castToType(value); // DataType + return value; + case -1618671268: // intendedUse + this.intendedUse = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; case 93508670: // basis this.getBasis().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; @@ -1493,6 +1597,10 @@ public class RegulatedAuthorization extends DomainResource { this.statusDate = TypeConvertor.castToDateTime(value); // DateTimeType } else if (name.equals("validityPeriod")) { this.validityPeriod = TypeConvertor.castToPeriod(value); // Period + } else if (name.equals("indication[x]")) { + this.indication = TypeConvertor.castToType(value); // DataType + } else if (name.equals("intendedUse")) { + this.intendedUse = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("basis")) { this.getBasis().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("relatedDate")) { @@ -1521,6 +1629,9 @@ public class RegulatedAuthorization extends DomainResource { case -892481550: return getStatus(); case 247524032: return getStatusDateElement(); case -1434195053: return getValidityPeriod(); + case -501208668: return getIndication(); + case -597168804: return getIndication(); + case -1618671268: return getIntendedUse(); case 93508670: return addBasis(); case 1112535673: return addRelatedDate(); case 1459432557: return addJurisdictionalAuthorization(); @@ -1543,6 +1654,8 @@ public class RegulatedAuthorization extends DomainResource { case -892481550: /*status*/ return new String[] {"CodeableConcept"}; case 247524032: /*statusDate*/ return new String[] {"dateTime"}; case -1434195053: /*validityPeriod*/ return new String[] {"Period"}; + case -597168804: /*indication*/ return new String[] {"CodeableConcept", "Reference"}; + case -1618671268: /*intendedUse*/ return new String[] {"CodeableConcept"}; case 93508670: /*basis*/ return new String[] {"CodeableConcept"}; case 1112535673: /*relatedDate*/ return new String[] {}; case 1459432557: /*jurisdictionalAuthorization*/ return new String[] {"Reference"}; @@ -1584,6 +1697,18 @@ public class RegulatedAuthorization extends DomainResource { this.validityPeriod = new Period(); return this.validityPeriod; } + else if (name.equals("indicationCodeableConcept")) { + this.indication = new CodeableConcept(); + return this.indication; + } + else if (name.equals("indicationReference")) { + this.indication = new Reference(); + return this.indication; + } + else if (name.equals("intendedUse")) { + this.intendedUse = new CodeableConcept(); + return this.intendedUse; + } else if (name.equals("basis")) { return addBasis(); } @@ -1638,6 +1763,8 @@ public class RegulatedAuthorization extends DomainResource { dst.status = status == null ? null : status.copy(); dst.statusDate = statusDate == null ? null : statusDate.copy(); dst.validityPeriod = validityPeriod == null ? null : validityPeriod.copy(); + dst.indication = indication == null ? null : indication.copy(); + dst.intendedUse = intendedUse == null ? null : intendedUse.copy(); if (basis != null) { dst.basis = new ArrayList(); for (CodeableConcept i : basis) @@ -1672,6 +1799,7 @@ public class RegulatedAuthorization extends DomainResource { return compareDeep(identifier, o.identifier, true) && compareDeep(subject, o.subject, true) && compareDeep(type, o.type, true) && compareDeep(description, o.description, true) && compareDeep(region, o.region, true) && compareDeep(status, o.status, true) && compareDeep(statusDate, o.statusDate, true) && compareDeep(validityPeriod, o.validityPeriod, true) + && compareDeep(indication, o.indication, true) && compareDeep(intendedUse, o.intendedUse, true) && compareDeep(basis, o.basis, true) && compareDeep(relatedDate, o.relatedDate, true) && compareDeep(jurisdictionalAuthorization, o.jurisdictionalAuthorization, true) && compareDeep(holder, o.holder, true) && compareDeep(regulator, o.regulator, true) && compareDeep(case_, o.case_, true) ; @@ -1690,8 +1818,8 @@ public class RegulatedAuthorization extends DomainResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, subject, type - , description, region, status, statusDate, validityPeriod, basis, relatedDate - , jurisdictionalAuthorization, holder, regulator, case_); + , description, region, status, statusDate, validityPeriod, indication, intendedUse + , basis, relatedDate, jurisdictionalAuthorization, holder, regulator, case_); } @Override @@ -1702,17 +1830,17 @@ public class RegulatedAuthorization extends DomainResource { /** * Search parameter: case-type *

- * Description: Type of case
+ * Description: The defining type of case
* Type: token
* Path: RegulatedAuthorization.case.type
*

*/ - @SearchParamDefinition(name="case-type", path="RegulatedAuthorization.case.type", description="Type of case", type="token" ) + @SearchParamDefinition(name="case-type", path="RegulatedAuthorization.case.type", description="The defining type of case", type="token" ) public static final String SP_CASE_TYPE = "case-type"; /** * Fluent Client search parameter constant for case-type *

- * Description: Type of case
+ * Description: The defining type of case
* Type: token
* Path: RegulatedAuthorization.case.type
*

@@ -1768,17 +1896,17 @@ public class RegulatedAuthorization extends DomainResource { /** * Search parameter: identifier *

- * Description: Business identifier for the marketing authorization, as assigned by a regulator
+ * Description: Business identifier for the authorization, typically assigned by the authorizing body
* Type: token
* Path: RegulatedAuthorization.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="RegulatedAuthorization.identifier", description="Business identifier for the marketing authorization, as assigned by a regulator", type="token" ) + @SearchParamDefinition(name="identifier", path="RegulatedAuthorization.identifier", description="Business identifier for the authorization, typically assigned by the authorizing body", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier *

- * Description: Business identifier for the marketing authorization, as assigned by a regulator
+ * Description: Business identifier for the authorization, typically assigned by the authorizing body
* Type: token
* Path: RegulatedAuthorization.identifier
*

@@ -1808,17 +1936,17 @@ public class RegulatedAuthorization extends DomainResource { /** * Search parameter: status *

- * Description: The status of the marketing authorization
+ * Description: The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications
* Type: token
* Path: RegulatedAuthorization.status
*

*/ - @SearchParamDefinition(name="status", path="RegulatedAuthorization.status", description="The status of the marketing authorization", type="token" ) + @SearchParamDefinition(name="status", path="RegulatedAuthorization.status", description="The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications", type="token" ) public static final String SP_STATUS = "status"; /** * Fluent Client search parameter constant for status *

- * Description: The status of the marketing authorization
+ * Description: The status that is authorised e.g. approved. Intermediate states can be tracked with cases and applications
* Type: token
* Path: RegulatedAuthorization.status
*

@@ -1828,17 +1956,17 @@ public class RegulatedAuthorization extends DomainResource { /** * Search parameter: subject *

- * Description: The product that is being authorized
+ * Description: The type of product or service that is being authorized
* Type: reference
* Path: RegulatedAuthorization.subject
*

*/ - @SearchParamDefinition(name="subject", path="RegulatedAuthorization.subject", description="The product that is being authorized", type="reference", target={ActivityDefinition.class, DeviceDefinition.class, MedicinalProductDefinition.class, ObservationDefinition.class, PackagedProductDefinition.class, PlanDefinition.class, ResearchStudy.class } ) + @SearchParamDefinition(name="subject", path="RegulatedAuthorization.subject", description="The type of product or service that is being authorized", type="reference", target={ActivityDefinition.class, DeviceDefinition.class, MedicinalProductDefinition.class, ObservationDefinition.class, PackagedProductDefinition.class, PlanDefinition.class, ResearchStudy.class } ) public static final String SP_SUBJECT = "subject"; /** * Fluent Client search parameter constant for subject *

- * Description: The product that is being authorized
+ * Description: The type of product or service that is being authorized
* Type: reference
* Path: RegulatedAuthorization.subject
*

diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedArtifact.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedArtifact.java index 4c89dfdda..0066012d4 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedArtifact.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedArtifact.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedPerson.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedPerson.java index d8ba4bdb4..c2055285e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedPerson.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RelatedPerson.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RequestGroup.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RequestGroup.java index f374456ea..d0d6a5f36 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RequestGroup.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RequestGroup.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchStudy.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchStudy.java index 225fdff41..107b3a42b 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchStudy.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchStudy.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchSubject.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchSubject.java index ecafba584..bd02dadbb 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchSubject.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResearchSubject.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Resource.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Resource.java index de85feaf3..effb4697d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Resource.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Resource.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceFactory.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceFactory.java index 60f60874d..64a974f63 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceFactory.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceFactory.java @@ -48,7 +48,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent @@ -97,6 +97,8 @@ public class ResourceFactory extends Factory { return new ChargeItem(); if ("ChargeItemDefinition".equals(name)) return new ChargeItemDefinition(); + if ("Citation".equals(name)) + return new Citation(); if ("Claim".equals(name)) return new Claim(); if ("ClaimResponse".equals(name)) @@ -163,6 +165,8 @@ public class ResourceFactory extends Factory { return new EventDefinition(); if ("Evidence".equals(name)) return new Evidence(); + if ("EvidenceFocus".equals(name)) + return new EvidenceFocus(); if ("EvidenceVariable".equals(name)) return new EvidenceVariable(); if ("ExampleScenario".equals(name)) @@ -239,6 +243,8 @@ public class ResourceFactory extends Factory { return new NutritionIntake(); if ("NutritionOrder".equals(name)) return new NutritionOrder(); + if ("NutritionProduct".equals(name)) + return new NutritionProduct(); if ("Observation".equals(name)) return new Observation(); if ("ObservationDefinition".equals(name)) @@ -261,6 +267,8 @@ public class ResourceFactory extends Factory { return new PaymentNotice(); if ("PaymentReconciliation".equals(name)) return new PaymentReconciliation(); + if ("Permission".equals(name)) + return new Permission(); if ("Person".equals(name)) return new Person(); if ("PlanDefinition".equals(name)) @@ -307,6 +315,10 @@ public class ResourceFactory extends Factory { return new StructureMap(); if ("Subscription".equals(name)) return new Subscription(); + if ("SubscriptionStatus".equals(name)) + return new SubscriptionStatus(); + if ("SubscriptionTopic".equals(name)) + return new SubscriptionTopic(); if ("Substance".equals(name)) return new Substance(); if ("SubstanceDefinition".equals(name)) @@ -333,8 +345,6 @@ public class ResourceFactory extends Factory { return new TestReport(); if ("TestScript".equals(name)) return new TestScript(); - if ("Topic".equals(name)) - return new Topic(); if ("ValueSet".equals(name)) return new ValueSet(); if ("VerificationResult".equals(name)) @@ -516,6 +526,7 @@ public class ResourceFactory extends Factory { case -1007602695: return new CatalogEntry(); case -883723257: return new ChargeItem(); case -315725638: return new ChargeItemDefinition(); + case -1378062585: return new Citation(); case 65189916: return new Claim(); case 1488475261: return new ClaimResponse(); case -1268501092: return new ClinicalImpression(); @@ -549,6 +560,7 @@ public class ResourceFactory extends Factory { case -1093178557: return new EpisodeOfCare(); case 1851868013: return new EventDefinition(); case 447611511: return new Evidence(); + case -1696443231: return new EvidenceFocus(); case -1162161645: return new EvidenceVariable(); case 1175230202: return new ExampleScenario(); case -1001676601: return new ExplanationOfBenefit(); @@ -587,6 +599,7 @@ public class ResourceFactory extends Factory { case 369315063: return new NamingSystem(); case -146918204: return new NutritionIntake(); case 1247831734: return new NutritionOrder(); + case 1768059479: return new NutritionProduct(); case 1790214156: return new Observation(); case 673706623: return new ObservationDefinition(); case -2140710406: return new OperationDefinition(); @@ -598,6 +611,7 @@ public class ResourceFactory extends Factory { case 873235173: return new Patient(); case 2082457694: return new PaymentNotice(); case 28778089: return new PaymentReconciliation(); + case 1475846639: return new Permission(); case -1907849355: return new Person(); case 1401244028: return new PlanDefinition(); case 738893626: return new Practitioner(); @@ -621,6 +635,8 @@ public class ResourceFactory extends Factory { case 1133777670: return new StructureDefinition(); case 1958247177: return new StructureMap(); case 505523517: return new Subscription(); + case 108709775: return new SubscriptionStatus(); + case 835579378: return new SubscriptionTopic(); case -1760959152: return new Substance(); case 1971491523: return new SubstanceDefinition(); case -300807236: return new SubstanceNucleicAcid(); @@ -634,7 +650,6 @@ public class ResourceFactory extends Factory { case -549565975: return new TerminologyCapabilities(); case -616289146: return new TestReport(); case -589453283: return new TestScript(); - case 80993551: return new Topic(); case -1345530543: return new ValueSet(); case 957089336: return new VerificationResult(); case -555387838: return new VisionPrescription(); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceType.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceType.java index 417129e12..b2fc5340c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceType.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ResourceType.java @@ -1,11 +1,61 @@ package org.hl7.fhir.r5.model; +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + + + import org.hl7.fhir.exceptions.FHIRException; -// Generated on Thu, Oct 17, 2019 19:56+1100 for FHIR v4.1.0 - public enum ResourceType { - Account, +Account, ActivityDefinition, AdministrableProductDefinition, AdverseEvent, @@ -25,6 +75,7 @@ public enum ResourceType { CatalogEntry, ChargeItem, ChargeItemDefinition, + Citation, Claim, ClaimResponse, ClinicalImpression, @@ -58,6 +109,7 @@ public enum ResourceType { EpisodeOfCare, EventDefinition, Evidence, + EvidenceFocus, EvidenceVariable, ExampleScenario, ExplanationOfBenefit, @@ -96,6 +148,7 @@ public enum ResourceType { NamingSystem, NutritionIntake, NutritionOrder, + NutritionProduct, Observation, ObservationDefinition, OperationDefinition, @@ -107,6 +160,7 @@ public enum ResourceType { Patient, PaymentNotice, PaymentReconciliation, + Permission, Person, PlanDefinition, Practitioner, @@ -130,6 +184,8 @@ public enum ResourceType { StructureDefinition, StructureMap, Subscription, + SubscriptionStatus, + SubscriptionTopic, Substance, SubstanceDefinition, SubstanceNucleicAcid, @@ -143,7 +199,6 @@ public enum ResourceType { TerminologyCapabilities, TestReport, TestScript, - Topic, ValueSet, VerificationResult, VisionPrescription; @@ -191,6 +246,8 @@ public enum ResourceType { return "chargeitem"; case ChargeItemDefinition: return "chargeitemdefinition"; + case Citation: + return "citation"; case Claim: return "claim"; case ClaimResponse: @@ -257,6 +314,8 @@ public enum ResourceType { return "eventdefinition"; case Evidence: return "evidence"; + case EvidenceFocus: + return "evidencefocus"; case EvidenceVariable: return "evidencevariable"; case ExampleScenario: @@ -333,6 +392,8 @@ public enum ResourceType { return "nutritionintake"; case NutritionOrder: return "nutritionorder"; + case NutritionProduct: + return "nutritionproduct"; case Observation: return "observation"; case ObservationDefinition: @@ -355,6 +416,8 @@ public enum ResourceType { return "paymentnotice"; case PaymentReconciliation: return "paymentreconciliation"; + case Permission: + return "permission"; case Person: return "person"; case PlanDefinition: @@ -401,6 +464,10 @@ public enum ResourceType { return "structuremap"; case Subscription: return "subscription"; + case SubscriptionStatus: + return "subscriptionstatus"; + case SubscriptionTopic: + return "subscriptiontopic"; case Substance: return "substance"; case SubstanceDefinition: @@ -427,16 +494,15 @@ public enum ResourceType { return "testreport"; case TestScript: return "testscript"; - case Topic: - return "topic"; case ValueSet: return "valueset"; case VerificationResult: return "verificationresult"; case VisionPrescription: return "visionprescription"; + } - return null; + return null; } @@ -481,6 +547,8 @@ public enum ResourceType { return ChargeItem; if ("ChargeItemDefinition".equals(code)) return ChargeItemDefinition; + if ("Citation".equals(code)) + return Citation; if ("Claim".equals(code)) return Claim; if ("ClaimResponse".equals(code)) @@ -547,6 +615,8 @@ public enum ResourceType { return EventDefinition; if ("Evidence".equals(code)) return Evidence; + if ("EvidenceFocus".equals(code)) + return EvidenceFocus; if ("EvidenceVariable".equals(code)) return EvidenceVariable; if ("ExampleScenario".equals(code)) @@ -623,6 +693,8 @@ public enum ResourceType { return NutritionIntake; if ("NutritionOrder".equals(code)) return NutritionOrder; + if ("NutritionProduct".equals(code)) + return NutritionProduct; if ("Observation".equals(code)) return Observation; if ("ObservationDefinition".equals(code)) @@ -645,6 +717,8 @@ public enum ResourceType { return PaymentNotice; if ("PaymentReconciliation".equals(code)) return PaymentReconciliation; + if ("Permission".equals(code)) + return Permission; if ("Person".equals(code)) return Person; if ("PlanDefinition".equals(code)) @@ -691,6 +765,10 @@ public enum ResourceType { return StructureMap; if ("Subscription".equals(code)) return Subscription; + if ("SubscriptionStatus".equals(code)) + return SubscriptionStatus; + if ("SubscriptionTopic".equals(code)) + return SubscriptionTopic; if ("Substance".equals(code)) return Substance; if ("SubstanceDefinition".equals(code)) @@ -717,8 +795,6 @@ public enum ResourceType { return TestReport; if ("TestScript".equals(code)) return TestScript; - if ("Topic".equals(code)) - return Topic; if ("ValueSet".equals(code)) return ValueSet; if ("VerificationResult".equals(code)) diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RiskAssessment.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RiskAssessment.java index be0f6bcbf..e6a8ea999 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RiskAssessment.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/RiskAssessment.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1870,10 +1870,10 @@ public class RiskAssessment extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -1899,7 +1899,7 @@ public class RiskAssessment extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -2081,10 +2081,10 @@ public class RiskAssessment extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2125,7 +2125,7 @@ public class RiskAssessment extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SampledData.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SampledData.java index a3786940a..fb50e1457 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SampledData.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SampledData.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Schedule.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Schedule.java index 4f88e5316..7c4669525 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Schedule.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Schedule.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SearchParameter.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SearchParameter.java index e3ad3edde..5138d6572 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SearchParameter.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SearchParameter.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ServiceRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ServiceRequest.java index cc6fa3986..70a82d762 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ServiceRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ServiceRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2868,10 +2868,10 @@ public class ServiceRequest extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ - @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) + @SearchParamDefinition(name="code", path="AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Code that identifies the allergy or intolerance\r\n* [Condition](condition.html): Code for the condition\r\n* [DeviceRequest](devicerequest.html): Code for what is being requested/ordered\r\n* [DiagnosticReport](diagnosticreport.html): The code for the report, as opposed to codes for the atomic results, which are the names on the observation resource referred to from the result\r\n* [FamilyMemberHistory](familymemberhistory.html): A search by a condition code\r\n* [List](list.html): What the purpose of this list is\r\n* [Medication](medication.html): Returns medications for a specific code\r\n* [MedicationAdministration](medicationadministration.html): Return administrations of this medication code\r\n* [MedicationDispense](medicationdispense.html): Returns dispenses of this medicine code\r\n* [MedicationRequest](medicationrequest.html): Return prescriptions of this medication code\r\n* [MedicationUsage](medicationusage.html): Return statements of this medication code\r\n* [Observation](observation.html): The code of the observation type\r\n* [Procedure](procedure.html): A code to identify a procedure\r\n* [ServiceRequest](servicerequest.html): What is being requested/ordered\r\n", type="token" ) public static final String SP_CODE = "code"; /** * Fluent Client search parameter constant for code @@ -2894,7 +2894,7 @@ public class ServiceRequest extends DomainResource { * [ServiceRequest](servicerequest.html): What is being requested/ordered
* Type: token
- * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | (DeviceRequest.code as CodeableConcept) | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | (MedicationAdministration.medication as CodeableConcept) | (MedicationDispense.medication as CodeableConcept) | (MedicationRequest.medication as CodeableConcept) | (MedicationUsage.medication as CodeableConcept) | Observation.code | Procedure.code | ServiceRequest.code
+ * Path: AllergyIntolerance.code | AllergyIntolerance.reaction.substance | Condition.code | DeviceRequest.code.concept | DiagnosticReport.code | FamilyMemberHistory.condition.code | List.code | Medication.code | MedicationAdministration.medication.concept | MedicationDispense.medication.concept | MedicationRequest.medication.concept | MedicationUsage.medication.concept | Observation.code | Procedure.code | ServiceRequest.code
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); @@ -3076,10 +3076,10 @@ public class ServiceRequest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -3120,7 +3120,7 @@ public class ServiceRequest extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Signature.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Signature.java index 0bcebdb64..10869c5fe 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Signature.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Signature.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Slot.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Slot.java index 6242a63d4..e36a0c9cf 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Slot.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Slot.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Specimen.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Specimen.java index 442f2b49b..0d79b1209 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Specimen.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Specimen.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SpecimenDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SpecimenDefinition.java index 90d6b88ad..3b658371f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SpecimenDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SpecimenDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -201,14 +201,14 @@ public class SpecimenDefinition extends DomainResource { * Requirements for delivery and special handling of this kind of conditioned specimen. */ @Child(name = "requirement", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Specimen requirements", formalDefinition="Requirements for delivery and special handling of this kind of conditioned specimen." ) + @Description(shortDefinition="Requirements for specimen delivery and special handling", formalDefinition="Requirements for delivery and special handling of this kind of conditioned specimen." ) protected StringType requirement; /** * The usual time that a specimen of this kind is retained after the ordered tests are completed, for the purpose of additional testing. */ @Child(name = "retentionTime", type = {Duration.class}, order=6, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Specimen retention time", formalDefinition="The usual time that a specimen of this kind is retained after the ordered tests are completed, for the purpose of additional testing." ) + @Description(shortDefinition="The usual time for retaining this kind of specimen", formalDefinition="The usual time that a specimen of this kind is retained after the ordered tests are completed, for the purpose of additional testing." ) protected Duration retentionTime; /** @@ -222,7 +222,7 @@ public class SpecimenDefinition extends DomainResource { * Criterion for rejection of the specimen in its container by the laboratory. */ @Child(name = "rejectionCriterion", type = {CodeableConcept.class}, order=8, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=false) - @Description(shortDefinition="Rejection criterion", formalDefinition="Criterion for rejection of the specimen in its container by the laboratory." ) + @Description(shortDefinition="Criterion specified for specimen rejection", formalDefinition="Criterion for rejection of the specimen in its container by the laboratory." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/rejection-criteria") protected List rejectionCriterion; @@ -941,7 +941,7 @@ public class SpecimenDefinition extends DomainResource { * The type of material of the container. */ @Child(name = "material", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Container material", formalDefinition="The type of material of the container." ) + @Description(shortDefinition="The material type used for the container", formalDefinition="The type of material of the container." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/container-material") protected CodeableConcept material; @@ -965,14 +965,14 @@ public class SpecimenDefinition extends DomainResource { * The textual description of the kind of container. */ @Child(name = "description", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Container description", formalDefinition="The textual description of the kind of container." ) + @Description(shortDefinition="The description of the kind of container", formalDefinition="The textual description of the kind of container." ) protected StringType description; /** * The capacity (volume or other measure) of this kind of container. */ @Child(name = "capacity", type = {Quantity.class}, order=5, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Container capacity", formalDefinition="The capacity (volume or other measure) of this kind of container." ) + @Description(shortDefinition="The capacity of this kind of container", formalDefinition="The capacity (volume or other measure) of this kind of container." ) protected Quantity capacity; /** @@ -993,7 +993,7 @@ public class SpecimenDefinition extends DomainResource { * Special processing that should be applied to the container for this kind of specimen. */ @Child(name = "preparation", type = {StringType.class}, order=8, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Specimen container preparation", formalDefinition="Special processing that should be applied to the container for this kind of specimen." ) + @Description(shortDefinition="Special processing applied to the container for this specimen type", formalDefinition="Special processing that should be applied to the container for this kind of specimen." ) protected StringType preparation; private static final long serialVersionUID = -1498817064L; @@ -1739,7 +1739,7 @@ public class SpecimenDefinition extends DomainResource { * It qualifies the interval of temperature, which characterizes an occurrence of handling. Conditions that are not related to temperature may be handled in the instruction element. */ @Child(name = "temperatureQualifier", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Temperature qualifier", formalDefinition="It qualifies the interval of temperature, which characterizes an occurrence of handling. Conditions that are not related to temperature may be handled in the instruction element." ) + @Description(shortDefinition="Qualifies the interval of temperature", formalDefinition="It qualifies the interval of temperature, which characterizes an occurrence of handling. Conditions that are not related to temperature may be handled in the instruction element." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/handling-condition") protected CodeableConcept temperatureQualifier; @@ -1747,7 +1747,7 @@ public class SpecimenDefinition extends DomainResource { * The temperature interval for this set of handling instructions. */ @Child(name = "temperatureRange", type = {Range.class}, order=2, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Temperature range", formalDefinition="The temperature interval for this set of handling instructions." ) + @Description(shortDefinition="Temperature range for these handling instructions", formalDefinition="The temperature interval for this set of handling instructions." ) protected Range temperatureRange; /** @@ -2186,7 +2186,7 @@ public class SpecimenDefinition extends DomainResource { * The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date. */ @Child(name = "lastReviewDate", type = {DateType.class}, order=18, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Last review date for the SpecimenDefinition", formalDefinition="The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date." ) + @Description(shortDefinition="The date on which the asset content was last reviewed", formalDefinition="The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date." ) protected DateType lastReviewDate; /** @@ -4098,6 +4098,26 @@ public class SpecimenDefinition extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); + /** + * Search parameter: url + *

+ * Description: The uri that identifies the specimen definition
+ * Type: uri
+ * Path: SpecimenDefinition.url
+ *

+ */ + @SearchParamDefinition(name="url", path="SpecimenDefinition.url", description="The uri that identifies the specimen definition", type="uri" ) + public static final String SP_URL = "url"; + /** + * Fluent Client search parameter constant for url + *

+ * Description: The uri that identifies the specimen definition
+ * Type: uri
+ * Path: SpecimenDefinition.url
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); + } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Statistic.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Statistic.java index c1bed4f1e..787282835 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Statistic.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Statistic.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureDefinition.java index bfa5e507a..508005b50 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1552,10 +1552,10 @@ public class StructureDefinition extends CanonicalResource { protected List keyword; /** - * The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version. + * The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version. */ @Child(name = "fhirVersion", type = {CodeType.class}, order=16, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="FHIR Version this StructureDefinition targets", formalDefinition="The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version." ) + @Description(shortDefinition="FHIR Version this StructureDefinition targets", formalDefinition="The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/FHIR-version") protected Enumeration fhirVersion; @@ -2443,7 +2443,7 @@ public class StructureDefinition extends CanonicalResource { } /** - * @return {@link #fhirVersion} (The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.). This is the underlying object with id, value and extensions. The accessor "getFhirVersion" gives direct access to the value + * @return {@link #fhirVersion} (The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.). This is the underlying object with id, value and extensions. The accessor "getFhirVersion" gives direct access to the value */ public Enumeration getFhirVersionElement() { if (this.fhirVersion == null) @@ -2463,7 +2463,7 @@ public class StructureDefinition extends CanonicalResource { } /** - * @param value {@link #fhirVersion} (The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.). This is the underlying object with id, value and extensions. The accessor "getFhirVersion" gives direct access to the value + * @param value {@link #fhirVersion} (The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.). This is the underlying object with id, value and extensions. The accessor "getFhirVersion" gives direct access to the value */ public StructureDefinition setFhirVersionElement(Enumeration value) { this.fhirVersion = value; @@ -2471,14 +2471,14 @@ public class StructureDefinition extends CanonicalResource { } /** - * @return The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version. + * @return The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version. */ public FHIRVersion getFhirVersion() { return this.fhirVersion == null ? null : this.fhirVersion.getValue(); } /** - * @param value The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version. + * @param value The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version. */ public StructureDefinition setFhirVersion(FHIRVersion value) { if (value == null) @@ -2957,7 +2957,7 @@ public class StructureDefinition extends CanonicalResource { children.add(new Property("purpose", "markdown", "Explanation of why this structure definition is needed and why it has been designed as it has.", 0, 1, purpose)); children.add(new Property("copyright", "markdown", "A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition.", 0, 1, copyright)); children.add(new Property("keyword", "Coding", "A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes.", 0, java.lang.Integer.MAX_VALUE, keyword)); - children.add(new Property("fhirVersion", "code", "The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.", 0, 1, fhirVersion)); + children.add(new Property("fhirVersion", "code", "The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.", 0, 1, fhirVersion)); children.add(new Property("mapping", "", "An external specification that the content is mapped to.", 0, java.lang.Integer.MAX_VALUE, mapping)); children.add(new Property("kind", "code", "Defines the kind of structure that this definition is describing.", 0, 1, kind)); children.add(new Property("abstract", "boolean", "Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.", 0, 1, abstract_)); @@ -2989,7 +2989,7 @@ public class StructureDefinition extends CanonicalResource { case -220463842: /*purpose*/ return new Property("purpose", "markdown", "Explanation of why this structure definition is needed and why it has been designed as it has.", 0, 1, purpose); case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the structure definition and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the structure definition.", 0, 1, copyright); case -814408215: /*keyword*/ return new Property("keyword", "Coding", "A set of key words or terms from external terminologies that may be used to assist with indexing and searching of templates nby describing the use of this structure definition, or the content it describes.", 0, java.lang.Integer.MAX_VALUE, keyword); - case 461006061: /*fhirVersion*/ return new Property("fhirVersion", "code", "The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.2.0. for this version.", 0, 1, fhirVersion); + case 461006061: /*fhirVersion*/ return new Property("fhirVersion", "code", "The version of the FHIR specification on which this StructureDefinition is based - this is the formal version of the specification, without the revision number, e.g. [publication].[major].[minor], which is 4.4.0. for this version.", 0, 1, fhirVersion); case 837556430: /*mapping*/ return new Property("mapping", "", "An external specification that the content is mapped to.", 0, java.lang.Integer.MAX_VALUE, mapping); case 3292052: /*kind*/ return new Property("kind", "code", "Defines the kind of structure that this definition is describing.", 0, 1, kind); case 1732898850: /*abstract*/ return new Property("abstract", "boolean", "Whether structure this definition describes is abstract or not - that is, whether the structure is not intended to be instantiated. For Resources and Data types, abstract types will never be exchanged between systems.", 0, 1, abstract_); @@ -4089,13 +4089,14 @@ public class StructureDefinition extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) + @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier @@ -4107,10 +4108,11 @@ public class StructureDefinition extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureMap.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureMap.java index 407c6474f..d6a517099 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureMap.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/StructureMap.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -7981,13 +7981,14 @@ public class StructureMap extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) + @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier @@ -7999,10 +8000,11 @@ public class StructureMap extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Subscription.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Subscription.java index e86a7a651..725931c9c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Subscription.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Subscription.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -68,151 +68,11 @@ import ca.uhn.fhir.model.api.annotation.Description; import ca.uhn.fhir.model.api.annotation.Block; /** - * The subscription resource describes a particular client's request to be notified about a Topic. + * The subscription resource describes a particular client's request to be notified about a SubscriptionTopic. */ @ResourceDef(name="Subscription", profile="http://hl7.org/fhir/StructureDefinition/Subscription") public class Subscription extends DomainResource { - public enum SubscriptionFilterByMatchType { - /** - * Used to match a value according to FHIR Search rules (e.g., Patient/123, Encounter/2002). - */ - EQUAL, - /** - * The key value in the topic stream is an active members of the reference set identified by the concept provided as the filter value. - */ - IN, - /** - * The key value in the topic stream is NOT an active members of the reference set identified by the concept provided as the filter value. - */ - NOTIN, - /** - * The key value is subsumes the value in the filter value. - */ - ABOVE, - /** - * The key value is subsumed by the value in the filter value. - */ - BELOW, - /** - * added to help the parsers with the generic types - */ - NULL; - public static SubscriptionFilterByMatchType fromCode(String codeString) throws FHIRException { - if (codeString == null || "".equals(codeString)) - return null; - if ("=".equals(codeString)) - return EQUAL; - if ("in".equals(codeString)) - return IN; - if ("not-in".equals(codeString)) - return NOTIN; - if ("above".equals(codeString)) - return ABOVE; - if ("below".equals(codeString)) - return BELOW; - if (Configuration.isAcceptInvalidEnums()) - return null; - else - throw new FHIRException("Unknown SubscriptionFilterByMatchType code '"+codeString+"'"); - } - public String toCode() { - switch (this) { - case EQUAL: return "="; - case IN: return "in"; - case NOTIN: return "not-in"; - case ABOVE: return "above"; - case BELOW: return "below"; - default: return "?"; - } - } - public String getSystem() { - switch (this) { - case EQUAL: return "http://hl7.org/fhir/subscription-operator"; - case IN: return "http://hl7.org/fhir/subscription-operator"; - case NOTIN: return "http://hl7.org/fhir/subscription-operator"; - case ABOVE: return "http://hl7.org/fhir/subscription-operator"; - case BELOW: return "http://hl7.org/fhir/subscription-operator"; - default: return "?"; - } - } - public String getDefinition() { - switch (this) { - case EQUAL: return "Used to match a value according to FHIR Search rules (e.g., Patient/123, Encounter/2002)."; - case IN: return "The key value in the topic stream is an active members of the reference set identified by the concept provided as the filter value."; - case NOTIN: return "The key value in the topic stream is NOT an active members of the reference set identified by the concept provided as the filter value."; - case ABOVE: return "The key value is subsumes the value in the filter value."; - case BELOW: return "The key value is subsumed by the value in the filter value."; - default: return "?"; - } - } - public String getDisplay() { - switch (this) { - case EQUAL: return "="; - case IN: return "in"; - case NOTIN: return "not-in"; - case ABOVE: return "above"; - case BELOW: return "below"; - default: return "?"; - } - } - } - - public static class SubscriptionFilterByMatchTypeEnumFactory implements EnumFactory { - public SubscriptionFilterByMatchType fromCode(String codeString) throws IllegalArgumentException { - if (codeString == null || "".equals(codeString)) - if (codeString == null || "".equals(codeString)) - return null; - if ("=".equals(codeString)) - return SubscriptionFilterByMatchType.EQUAL; - if ("in".equals(codeString)) - return SubscriptionFilterByMatchType.IN; - if ("not-in".equals(codeString)) - return SubscriptionFilterByMatchType.NOTIN; - if ("above".equals(codeString)) - return SubscriptionFilterByMatchType.ABOVE; - if ("below".equals(codeString)) - return SubscriptionFilterByMatchType.BELOW; - throw new IllegalArgumentException("Unknown SubscriptionFilterByMatchType code '"+codeString+"'"); - } - public Enumeration fromType(Base code) throws FHIRException { - if (code == null) - return null; - if (code.isEmpty()) - return new Enumeration(this); - String codeString = ((PrimitiveType) code).asStringValue(); - if (codeString == null || "".equals(codeString)) - return null; - if ("=".equals(codeString)) - return new Enumeration(this, SubscriptionFilterByMatchType.EQUAL); - if ("in".equals(codeString)) - return new Enumeration(this, SubscriptionFilterByMatchType.IN); - if ("not-in".equals(codeString)) - return new Enumeration(this, SubscriptionFilterByMatchType.NOTIN); - if ("above".equals(codeString)) - return new Enumeration(this, SubscriptionFilterByMatchType.ABOVE); - if ("below".equals(codeString)) - return new Enumeration(this, SubscriptionFilterByMatchType.BELOW); - throw new FHIRException("Unknown SubscriptionFilterByMatchType code '"+codeString+"'"); - } - public String toCode(SubscriptionFilterByMatchType code) { - if (code == SubscriptionFilterByMatchType.EQUAL) - return "="; - if (code == SubscriptionFilterByMatchType.IN) - return "in"; - if (code == SubscriptionFilterByMatchType.NOTIN) - return "not-in"; - if (code == SubscriptionFilterByMatchType.ABOVE) - return "above"; - if (code == SubscriptionFilterByMatchType.BELOW) - return "below"; - return "?"; - } - public String toSystem(SubscriptionFilterByMatchType code) { - return code.getSystem(); - } - } - public enum SubscriptionPayloadContent { /** * No resource content is transacted in the notification payload. @@ -321,146 +181,22 @@ public class Subscription extends DomainResource { } } - public enum SubscriptionStatus { - /** - * The client has requested the subscription, and the server has not yet set it up. - */ - REQUESTED, - /** - * The subscription is active. - */ - ACTIVE, - /** - * The server has an error executing the notification. - */ - ERROR, - /** - * Too many errors have occurred or the subscription has expired. - */ - OFF, - /** - * added to help the parsers with the generic types - */ - NULL; - public static SubscriptionStatus fromCode(String codeString) throws FHIRException { - if (codeString == null || "".equals(codeString)) - return null; - if ("requested".equals(codeString)) - return REQUESTED; - if ("active".equals(codeString)) - return ACTIVE; - if ("error".equals(codeString)) - return ERROR; - if ("off".equals(codeString)) - return OFF; - if (Configuration.isAcceptInvalidEnums()) - return null; - else - throw new FHIRException("Unknown SubscriptionStatus code '"+codeString+"'"); - } - public String toCode() { - switch (this) { - case REQUESTED: return "requested"; - case ACTIVE: return "active"; - case ERROR: return "error"; - case OFF: return "off"; - default: return "?"; - } - } - public String getSystem() { - switch (this) { - case REQUESTED: return "http://hl7.org/fhir/subscription-status"; - case ACTIVE: return "http://hl7.org/fhir/subscription-status"; - case ERROR: return "http://hl7.org/fhir/subscription-status"; - case OFF: return "http://hl7.org/fhir/subscription-status"; - default: return "?"; - } - } - public String getDefinition() { - switch (this) { - case REQUESTED: return "The client has requested the subscription, and the server has not yet set it up."; - case ACTIVE: return "The subscription is active."; - case ERROR: return "The server has an error executing the notification."; - case OFF: return "Too many errors have occurred or the subscription has expired."; - default: return "?"; - } - } - public String getDisplay() { - switch (this) { - case REQUESTED: return "Requested"; - case ACTIVE: return "Active"; - case ERROR: return "Error"; - case OFF: return "Off"; - default: return "?"; - } - } - } - - public static class SubscriptionStatusEnumFactory implements EnumFactory { - public SubscriptionStatus fromCode(String codeString) throws IllegalArgumentException { - if (codeString == null || "".equals(codeString)) - if (codeString == null || "".equals(codeString)) - return null; - if ("requested".equals(codeString)) - return SubscriptionStatus.REQUESTED; - if ("active".equals(codeString)) - return SubscriptionStatus.ACTIVE; - if ("error".equals(codeString)) - return SubscriptionStatus.ERROR; - if ("off".equals(codeString)) - return SubscriptionStatus.OFF; - throw new IllegalArgumentException("Unknown SubscriptionStatus code '"+codeString+"'"); - } - public Enumeration fromType(Base code) throws FHIRException { - if (code == null) - return null; - if (code.isEmpty()) - return new Enumeration(this); - String codeString = ((PrimitiveType) code).asStringValue(); - if (codeString == null || "".equals(codeString)) - return null; - if ("requested".equals(codeString)) - return new Enumeration(this, SubscriptionStatus.REQUESTED); - if ("active".equals(codeString)) - return new Enumeration(this, SubscriptionStatus.ACTIVE); - if ("error".equals(codeString)) - return new Enumeration(this, SubscriptionStatus.ERROR); - if ("off".equals(codeString)) - return new Enumeration(this, SubscriptionStatus.OFF); - throw new FHIRException("Unknown SubscriptionStatus code '"+codeString+"'"); - } - public String toCode(SubscriptionStatus code) { - if (code == SubscriptionStatus.REQUESTED) - return "requested"; - if (code == SubscriptionStatus.ACTIVE) - return "active"; - if (code == SubscriptionStatus.ERROR) - return "error"; - if (code == SubscriptionStatus.OFF) - return "off"; - return "?"; - } - public String toSystem(SubscriptionStatus code) { - return code.getSystem(); - } - } - @Block() public static class SubscriptionFilterByComponent extends BackboneElement implements IBaseBackboneElement { /** - * The filter label (=key) as defined in the `Topic.canFilterBy.name` element. + * The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element. */ - @Child(name = "name", type = {StringType.class}, order=1, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="Filter label defined in Topic", formalDefinition="The filter label (=key) as defined in the `Topic.canFilterBy.name` element." ) - protected StringType name; + @Child(name = "searchParamName", type = {StringType.class}, order=1, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Filter label defined in SubscriptionTopic", formalDefinition="The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element." ) + protected StringType searchParamName; /** * The operator to apply to the filter value when determining matches (Search modifiers). */ - @Child(name = "matchType", type = {CodeType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="= | in | not-in | above | below", formalDefinition="The operator to apply to the filter value when determining matches (Search modifiers)." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-operator") - protected Enumeration matchType; + @Child(name = "searchModifier", type = {CodeType.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="= | eq | ne | gt | lt | ge | le | sa | eb | ap | above | below | in | not-in | of-type", formalDefinition="The operator to apply to the filter value when determining matches (Search modifiers)." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-search-modifier") + protected Enumeration searchModifier; /** * The literal value or resource path as is legal in search - for example, "Patient/123" or "le1950". @@ -469,7 +205,7 @@ public class Subscription extends DomainResource { @Description(shortDefinition="Literal value or resource path", formalDefinition="The literal value or resource path as is legal in search - for example, \"Patient/123\" or \"le1950\"." ) protected StringType value; - private static final long serialVersionUID = -1805389171L; + private static final long serialVersionUID = -1346206527L; /** * Constructor @@ -481,102 +217,102 @@ public class Subscription extends DomainResource { /** * Constructor */ - public SubscriptionFilterByComponent(String name, String value) { + public SubscriptionFilterByComponent(String searchParamName, String value) { super(); - this.setName(name); + this.setSearchParamName(searchParamName); this.setValue(value); } /** - * @return {@link #name} (The filter label (=key) as defined in the `Topic.canFilterBy.name` element.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + * @return {@link #searchParamName} (The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element.). This is the underlying object with id, value and extensions. The accessor "getSearchParamName" gives direct access to the value */ - public StringType getNameElement() { - if (this.name == null) + public StringType getSearchParamNameElement() { + if (this.searchParamName == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionFilterByComponent.name"); + throw new Error("Attempt to auto-create SubscriptionFilterByComponent.searchParamName"); else if (Configuration.doAutoCreate()) - this.name = new StringType(); // bb - return this.name; + this.searchParamName = new StringType(); // bb + return this.searchParamName; } - public boolean hasNameElement() { - return this.name != null && !this.name.isEmpty(); + public boolean hasSearchParamNameElement() { + return this.searchParamName != null && !this.searchParamName.isEmpty(); } - public boolean hasName() { - return this.name != null && !this.name.isEmpty(); + public boolean hasSearchParamName() { + return this.searchParamName != null && !this.searchParamName.isEmpty(); } /** - * @param value {@link #name} (The filter label (=key) as defined in the `Topic.canFilterBy.name` element.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + * @param value {@link #searchParamName} (The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element.). This is the underlying object with id, value and extensions. The accessor "getSearchParamName" gives direct access to the value */ - public SubscriptionFilterByComponent setNameElement(StringType value) { - this.name = value; + public SubscriptionFilterByComponent setSearchParamNameElement(StringType value) { + this.searchParamName = value; return this; } /** - * @return The filter label (=key) as defined in the `Topic.canFilterBy.name` element. + * @return The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element. */ - public String getName() { - return this.name == null ? null : this.name.getValue(); + public String getSearchParamName() { + return this.searchParamName == null ? null : this.searchParamName.getValue(); } /** - * @param value The filter label (=key) as defined in the `Topic.canFilterBy.name` element. + * @param value The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element. */ - public SubscriptionFilterByComponent setName(String value) { - if (this.name == null) - this.name = new StringType(); - this.name.setValue(value); + public SubscriptionFilterByComponent setSearchParamName(String value) { + if (this.searchParamName == null) + this.searchParamName = new StringType(); + this.searchParamName.setValue(value); return this; } /** - * @return {@link #matchType} (The operator to apply to the filter value when determining matches (Search modifiers).). This is the underlying object with id, value and extensions. The accessor "getMatchType" gives direct access to the value + * @return {@link #searchModifier} (The operator to apply to the filter value when determining matches (Search modifiers).). This is the underlying object with id, value and extensions. The accessor "getSearchModifier" gives direct access to the value */ - public Enumeration getMatchTypeElement() { - if (this.matchType == null) + public Enumeration getSearchModifierElement() { + if (this.searchModifier == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionFilterByComponent.matchType"); + throw new Error("Attempt to auto-create SubscriptionFilterByComponent.searchModifier"); else if (Configuration.doAutoCreate()) - this.matchType = new Enumeration(new SubscriptionFilterByMatchTypeEnumFactory()); // bb - return this.matchType; + this.searchModifier = new Enumeration(new SubscriptionSearchModifierEnumFactory()); // bb + return this.searchModifier; } - public boolean hasMatchTypeElement() { - return this.matchType != null && !this.matchType.isEmpty(); + public boolean hasSearchModifierElement() { + return this.searchModifier != null && !this.searchModifier.isEmpty(); } - public boolean hasMatchType() { - return this.matchType != null && !this.matchType.isEmpty(); + public boolean hasSearchModifier() { + return this.searchModifier != null && !this.searchModifier.isEmpty(); } /** - * @param value {@link #matchType} (The operator to apply to the filter value when determining matches (Search modifiers).). This is the underlying object with id, value and extensions. The accessor "getMatchType" gives direct access to the value + * @param value {@link #searchModifier} (The operator to apply to the filter value when determining matches (Search modifiers).). This is the underlying object with id, value and extensions. The accessor "getSearchModifier" gives direct access to the value */ - public SubscriptionFilterByComponent setMatchTypeElement(Enumeration value) { - this.matchType = value; + public SubscriptionFilterByComponent setSearchModifierElement(Enumeration value) { + this.searchModifier = value; return this; } /** * @return The operator to apply to the filter value when determining matches (Search modifiers). */ - public SubscriptionFilterByMatchType getMatchType() { - return this.matchType == null ? null : this.matchType.getValue(); + public SubscriptionSearchModifier getSearchModifier() { + return this.searchModifier == null ? null : this.searchModifier.getValue(); } /** * @param value The operator to apply to the filter value when determining matches (Search modifiers). */ - public SubscriptionFilterByComponent setMatchType(SubscriptionFilterByMatchType value) { + public SubscriptionFilterByComponent setSearchModifier(SubscriptionSearchModifier value) { if (value == null) - this.matchType = null; + this.searchModifier = null; else { - if (this.matchType == null) - this.matchType = new Enumeration(new SubscriptionFilterByMatchTypeEnumFactory()); - this.matchType.setValue(value); + if (this.searchModifier == null) + this.searchModifier = new Enumeration(new SubscriptionSearchModifierEnumFactory()); + this.searchModifier.setValue(value); } return this; } @@ -628,16 +364,16 @@ public class Subscription extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("name", "string", "The filter label (=key) as defined in the `Topic.canFilterBy.name` element.", 0, 1, name)); - children.add(new Property("matchType", "code", "The operator to apply to the filter value when determining matches (Search modifiers).", 0, 1, matchType)); + children.add(new Property("searchParamName", "string", "The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element.", 0, 1, searchParamName)); + children.add(new Property("searchModifier", "code", "The operator to apply to the filter value when determining matches (Search modifiers).", 0, 1, searchModifier)); children.add(new Property("value", "string", "The literal value or resource path as is legal in search - for example, \"Patient/123\" or \"le1950\".", 0, 1, value)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3373707: /*name*/ return new Property("name", "string", "The filter label (=key) as defined in the `Topic.canFilterBy.name` element.", 0, 1, name); - case 614036127: /*matchType*/ return new Property("matchType", "code", "The operator to apply to the filter value when determining matches (Search modifiers).", 0, 1, matchType); + case 83857392: /*searchParamName*/ return new Property("searchParamName", "string", "The filter label (=key) as defined in the `SubscriptionTopic.canfilterBy.searchParamName` element.", 0, 1, searchParamName); + case 1540924575: /*searchModifier*/ return new Property("searchModifier", "code", "The operator to apply to the filter value when determining matches (Search modifiers).", 0, 1, searchModifier); case 111972721: /*value*/ return new Property("value", "string", "The literal value or resource path as is legal in search - for example, \"Patient/123\" or \"le1950\".", 0, 1, value); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -647,8 +383,8 @@ public class Subscription extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType - case 614036127: /*matchType*/ return this.matchType == null ? new Base[0] : new Base[] {this.matchType}; // Enumeration + case 83857392: /*searchParamName*/ return this.searchParamName == null ? new Base[0] : new Base[] {this.searchParamName}; // StringType + case 1540924575: /*searchModifier*/ return this.searchModifier == null ? new Base[0] : new Base[] {this.searchModifier}; // Enumeration case 111972721: /*value*/ return this.value == null ? new Base[0] : new Base[] {this.value}; // StringType default: return super.getProperty(hash, name, checkValid); } @@ -658,12 +394,12 @@ public class Subscription extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 3373707: // name - this.name = TypeConvertor.castToString(value); // StringType + case 83857392: // searchParamName + this.searchParamName = TypeConvertor.castToString(value); // StringType return value; - case 614036127: // matchType - value = new SubscriptionFilterByMatchTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.matchType = (Enumeration) value; // Enumeration + case 1540924575: // searchModifier + value = new SubscriptionSearchModifierEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.searchModifier = (Enumeration) value; // Enumeration return value; case 111972721: // value this.value = TypeConvertor.castToString(value); // StringType @@ -675,11 +411,11 @@ public class Subscription extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("name")) { - this.name = TypeConvertor.castToString(value); // StringType - } else if (name.equals("matchType")) { - value = new SubscriptionFilterByMatchTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.matchType = (Enumeration) value; // Enumeration + if (name.equals("searchParamName")) { + this.searchParamName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("searchModifier")) { + value = new SubscriptionSearchModifierEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.searchModifier = (Enumeration) value; // Enumeration } else if (name.equals("value")) { this.value = TypeConvertor.castToString(value); // StringType } else @@ -690,8 +426,8 @@ public class Subscription extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3373707: return getNameElement(); - case 614036127: return getMatchTypeElement(); + case 83857392: return getSearchParamNameElement(); + case 1540924575: return getSearchModifierElement(); case 111972721: return getValueElement(); default: return super.makeProperty(hash, name); } @@ -701,8 +437,8 @@ public class Subscription extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3373707: /*name*/ return new String[] {"string"}; - case 614036127: /*matchType*/ return new String[] {"code"}; + case 83857392: /*searchParamName*/ return new String[] {"string"}; + case 1540924575: /*searchModifier*/ return new String[] {"code"}; case 111972721: /*value*/ return new String[] {"string"}; default: return super.getTypesForProperty(hash, name); } @@ -711,11 +447,11 @@ public class Subscription extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("name")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.filterBy.name"); + if (name.equals("searchParamName")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.filterBy.searchParamName"); } - else if (name.equals("matchType")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.filterBy.matchType"); + else if (name.equals("searchModifier")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.filterBy.searchModifier"); } else if (name.equals("value")) { throw new FHIRException("Cannot call addChild on a primitive type Subscription.filterBy.value"); @@ -732,8 +468,8 @@ public class Subscription extends DomainResource { public void copyValues(SubscriptionFilterByComponent dst) { super.copyValues(dst); - dst.name = name == null ? null : name.copy(); - dst.matchType = matchType == null ? null : matchType.copy(); + dst.searchParamName = searchParamName == null ? null : searchParamName.copy(); + dst.searchModifier = searchModifier == null ? null : searchModifier.copy(); dst.value = value == null ? null : value.copy(); } @@ -744,8 +480,8 @@ public class Subscription extends DomainResource { if (!(other_ instanceof SubscriptionFilterByComponent)) return false; SubscriptionFilterByComponent o = (SubscriptionFilterByComponent) other_; - return compareDeep(name, o.name, true) && compareDeep(matchType, o.matchType, true) && compareDeep(value, o.value, true) - ; + return compareDeep(searchParamName, o.searchParamName, true) && compareDeep(searchModifier, o.searchModifier, true) + && compareDeep(value, o.value, true); } @Override @@ -755,12 +491,13 @@ public class Subscription extends DomainResource { if (!(other_ instanceof SubscriptionFilterByComponent)) return false; SubscriptionFilterByComponent o = (SubscriptionFilterByComponent) other_; - return compareValues(name, o.name, true) && compareValues(matchType, o.matchType, true) && compareValues(value, o.value, true) - ; + return compareValues(searchParamName, o.searchParamName, true) && compareValues(searchModifier, o.searchModifier, true) + && compareValues(value, o.value, true); } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(name, matchType, value); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(searchParamName, searchModifier + , value); } public String fhirType() { @@ -768,695 +505,6 @@ public class Subscription extends DomainResource { } - } - - @Block() - public static class SubscriptionChannelComponent extends BackboneElement implements IBaseBackboneElement { - /** - * The type of channel to send notifications on. - */ - @Child(name = "type", type = {CodeableConcept.class}, order=1, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="rest-hook | websocket | email | message", formalDefinition="The type of channel to send notifications on." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-channel-type") - protected CodeableConcept type; - - /** - * The url that describes the actual end-point to send messages to. - */ - @Child(name = "endpoint", type = {UrlType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Where the channel points to", formalDefinition="The url that describes the actual end-point to send messages to." ) - protected UrlType endpoint; - - /** - * Additional headers / information to send as part of the notification. - */ - @Child(name = "header", type = {StringType.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Usage depends on the channel type", formalDefinition="Additional headers / information to send as part of the notification." ) - protected List header; - - /** - * If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. - */ - @Child(name = "heartbeatPeriod", type = {UnsignedIntType.class}, order=4, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Interval in seconds to send 'heartbeat' notification", formalDefinition="If present, a 'hearbeat\" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent." ) - protected UnsignedIntType heartbeatPeriod; - - /** - * The payload mimetype and content. If the payload is not present, then there is no payload in the notification, just a notification. - */ - @Child(name = "payload", type = {}, order=5, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Payload definition", formalDefinition="The payload mimetype and content. If the payload is not present, then there is no payload in the notification, just a notification." ) - protected SubscriptionChannelPayloadComponent payload; - - private static final long serialVersionUID = -1807149281L; - - /** - * Constructor - */ - public SubscriptionChannelComponent() { - super(); - } - - /** - * Constructor - */ - public SubscriptionChannelComponent(CodeableConcept type) { - super(); - this.setType(type); - } - - /** - * @return {@link #type} (The type of channel to send notifications on.) - */ - public CodeableConcept getType() { - if (this.type == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionChannelComponent.type"); - else if (Configuration.doAutoCreate()) - this.type = new CodeableConcept(); // cc - return this.type; - } - - public boolean hasType() { - return this.type != null && !this.type.isEmpty(); - } - - /** - * @param value {@link #type} (The type of channel to send notifications on.) - */ - public SubscriptionChannelComponent setType(CodeableConcept value) { - this.type = value; - return this; - } - - /** - * @return {@link #endpoint} (The url that describes the actual end-point to send messages to.). This is the underlying object with id, value and extensions. The accessor "getEndpoint" gives direct access to the value - */ - public UrlType getEndpointElement() { - if (this.endpoint == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionChannelComponent.endpoint"); - else if (Configuration.doAutoCreate()) - this.endpoint = new UrlType(); // bb - return this.endpoint; - } - - public boolean hasEndpointElement() { - return this.endpoint != null && !this.endpoint.isEmpty(); - } - - public boolean hasEndpoint() { - return this.endpoint != null && !this.endpoint.isEmpty(); - } - - /** - * @param value {@link #endpoint} (The url that describes the actual end-point to send messages to.). This is the underlying object with id, value and extensions. The accessor "getEndpoint" gives direct access to the value - */ - public SubscriptionChannelComponent setEndpointElement(UrlType value) { - this.endpoint = value; - return this; - } - - /** - * @return The url that describes the actual end-point to send messages to. - */ - public String getEndpoint() { - return this.endpoint == null ? null : this.endpoint.getValue(); - } - - /** - * @param value The url that describes the actual end-point to send messages to. - */ - public SubscriptionChannelComponent setEndpoint(String value) { - if (Utilities.noString(value)) - this.endpoint = null; - else { - if (this.endpoint == null) - this.endpoint = new UrlType(); - this.endpoint.setValue(value); - } - return this; - } - - /** - * @return {@link #header} (Additional headers / information to send as part of the notification.) - */ - public List getHeader() { - if (this.header == null) - this.header = new ArrayList(); - return this.header; - } - - /** - * @return Returns a reference to this for easy method chaining - */ - public SubscriptionChannelComponent setHeader(List theHeader) { - this.header = theHeader; - return this; - } - - public boolean hasHeader() { - if (this.header == null) - return false; - for (StringType item : this.header) - if (!item.isEmpty()) - return true; - return false; - } - - /** - * @return {@link #header} (Additional headers / information to send as part of the notification.) - */ - public StringType addHeaderElement() {//2 - StringType t = new StringType(); - if (this.header == null) - this.header = new ArrayList(); - this.header.add(t); - return t; - } - - /** - * @param value {@link #header} (Additional headers / information to send as part of the notification.) - */ - public SubscriptionChannelComponent addHeader(String value) { //1 - StringType t = new StringType(); - t.setValue(value); - if (this.header == null) - this.header = new ArrayList(); - this.header.add(t); - return this; - } - - /** - * @param value {@link #header} (Additional headers / information to send as part of the notification.) - */ - public boolean hasHeader(String value) { - if (this.header == null) - return false; - for (StringType v : this.header) - if (v.getValue().equals(value)) // string - return true; - return false; - } - - /** - * @return {@link #heartbeatPeriod} (If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.). This is the underlying object with id, value and extensions. The accessor "getHeartbeatPeriod" gives direct access to the value - */ - public UnsignedIntType getHeartbeatPeriodElement() { - if (this.heartbeatPeriod == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionChannelComponent.heartbeatPeriod"); - else if (Configuration.doAutoCreate()) - this.heartbeatPeriod = new UnsignedIntType(); // bb - return this.heartbeatPeriod; - } - - public boolean hasHeartbeatPeriodElement() { - return this.heartbeatPeriod != null && !this.heartbeatPeriod.isEmpty(); - } - - public boolean hasHeartbeatPeriod() { - return this.heartbeatPeriod != null && !this.heartbeatPeriod.isEmpty(); - } - - /** - * @param value {@link #heartbeatPeriod} (If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.). This is the underlying object with id, value and extensions. The accessor "getHeartbeatPeriod" gives direct access to the value - */ - public SubscriptionChannelComponent setHeartbeatPeriodElement(UnsignedIntType value) { - this.heartbeatPeriod = value; - return this; - } - - /** - * @return If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. - */ - public int getHeartbeatPeriod() { - return this.heartbeatPeriod == null || this.heartbeatPeriod.isEmpty() ? 0 : this.heartbeatPeriod.getValue(); - } - - /** - * @param value If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. - */ - public SubscriptionChannelComponent setHeartbeatPeriod(int value) { - if (this.heartbeatPeriod == null) - this.heartbeatPeriod = new UnsignedIntType(); - this.heartbeatPeriod.setValue(value); - return this; - } - - /** - * @return {@link #payload} (The payload mimetype and content. If the payload is not present, then there is no payload in the notification, just a notification.) - */ - public SubscriptionChannelPayloadComponent getPayload() { - if (this.payload == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionChannelComponent.payload"); - else if (Configuration.doAutoCreate()) - this.payload = new SubscriptionChannelPayloadComponent(); // cc - return this.payload; - } - - public boolean hasPayload() { - return this.payload != null && !this.payload.isEmpty(); - } - - /** - * @param value {@link #payload} (The payload mimetype and content. If the payload is not present, then there is no payload in the notification, just a notification.) - */ - public SubscriptionChannelComponent setPayload(SubscriptionChannelPayloadComponent value) { - this.payload = value; - return this; - } - - protected void listChildren(List children) { - super.listChildren(children); - children.add(new Property("type", "CodeableConcept", "The type of channel to send notifications on.", 0, 1, type)); - children.add(new Property("endpoint", "url", "The url that describes the actual end-point to send messages to.", 0, 1, endpoint)); - children.add(new Property("header", "string", "Additional headers / information to send as part of the notification.", 0, java.lang.Integer.MAX_VALUE, header)); - children.add(new Property("heartbeatPeriod", "unsignedInt", "If present, a 'hearbeat\" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.", 0, 1, heartbeatPeriod)); - children.add(new Property("payload", "", "The payload mimetype and content. If the payload is not present, then there is no payload in the notification, just a notification.", 0, 1, payload)); - } - - @Override - public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { - switch (_hash) { - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The type of channel to send notifications on.", 0, 1, type); - case 1741102485: /*endpoint*/ return new Property("endpoint", "url", "The url that describes the actual end-point to send messages to.", 0, 1, endpoint); - case -1221270899: /*header*/ return new Property("header", "string", "Additional headers / information to send as part of the notification.", 0, java.lang.Integer.MAX_VALUE, header); - case -938465827: /*heartbeatPeriod*/ return new Property("heartbeatPeriod", "unsignedInt", "If present, a 'hearbeat\" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.", 0, 1, heartbeatPeriod); - case -786701938: /*payload*/ return new Property("payload", "", "The payload mimetype and content. If the payload is not present, then there is no payload in the notification, just a notification.", 0, 1, payload); - default: return super.getNamedProperty(_hash, _name, _checkValid); - } - - } - - @Override - public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { - switch (hash) { - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept - case 1741102485: /*endpoint*/ return this.endpoint == null ? new Base[0] : new Base[] {this.endpoint}; // UrlType - case -1221270899: /*header*/ return this.header == null ? new Base[0] : this.header.toArray(new Base[this.header.size()]); // StringType - case -938465827: /*heartbeatPeriod*/ return this.heartbeatPeriod == null ? new Base[0] : new Base[] {this.heartbeatPeriod}; // UnsignedIntType - case -786701938: /*payload*/ return this.payload == null ? new Base[0] : new Base[] {this.payload}; // SubscriptionChannelPayloadComponent - default: return super.getProperty(hash, name, checkValid); - } - - } - - @Override - public Base setProperty(int hash, String name, Base value) throws FHIRException { - switch (hash) { - case 3575610: // type - this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - return value; - case 1741102485: // endpoint - this.endpoint = TypeConvertor.castToUrl(value); // UrlType - return value; - case -1221270899: // header - this.getHeader().add(TypeConvertor.castToString(value)); // StringType - return value; - case -938465827: // heartbeatPeriod - this.heartbeatPeriod = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType - return value; - case -786701938: // payload - this.payload = (SubscriptionChannelPayloadComponent) value; // SubscriptionChannelPayloadComponent - return value; - default: return super.setProperty(hash, name, value); - } - - } - - @Override - public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("type")) { - this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - } else if (name.equals("endpoint")) { - this.endpoint = TypeConvertor.castToUrl(value); // UrlType - } else if (name.equals("header")) { - this.getHeader().add(TypeConvertor.castToString(value)); - } else if (name.equals("heartbeatPeriod")) { - this.heartbeatPeriod = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType - } else if (name.equals("payload")) { - this.payload = (SubscriptionChannelPayloadComponent) value; // SubscriptionChannelPayloadComponent - } else - return super.setProperty(name, value); - return value; - } - - @Override - public Base makeProperty(int hash, String name) throws FHIRException { - switch (hash) { - case 3575610: return getType(); - case 1741102485: return getEndpointElement(); - case -1221270899: return addHeaderElement(); - case -938465827: return getHeartbeatPeriodElement(); - case -786701938: return getPayload(); - default: return super.makeProperty(hash, name); - } - - } - - @Override - public String[] getTypesForProperty(int hash, String name) throws FHIRException { - switch (hash) { - case 3575610: /*type*/ return new String[] {"CodeableConcept"}; - case 1741102485: /*endpoint*/ return new String[] {"url"}; - case -1221270899: /*header*/ return new String[] {"string"}; - case -938465827: /*heartbeatPeriod*/ return new String[] {"unsignedInt"}; - case -786701938: /*payload*/ return new String[] {}; - default: return super.getTypesForProperty(hash, name); - } - - } - - @Override - public Base addChild(String name) throws FHIRException { - if (name.equals("type")) { - this.type = new CodeableConcept(); - return this.type; - } - else if (name.equals("endpoint")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.channel.endpoint"); - } - else if (name.equals("header")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.channel.header"); - } - else if (name.equals("heartbeatPeriod")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.channel.heartbeatPeriod"); - } - else if (name.equals("payload")) { - this.payload = new SubscriptionChannelPayloadComponent(); - return this.payload; - } - else - return super.addChild(name); - } - - public SubscriptionChannelComponent copy() { - SubscriptionChannelComponent dst = new SubscriptionChannelComponent(); - copyValues(dst); - return dst; - } - - public void copyValues(SubscriptionChannelComponent dst) { - super.copyValues(dst); - dst.type = type == null ? null : type.copy(); - dst.endpoint = endpoint == null ? null : endpoint.copy(); - if (header != null) { - dst.header = new ArrayList(); - for (StringType i : header) - dst.header.add(i.copy()); - }; - dst.heartbeatPeriod = heartbeatPeriod == null ? null : heartbeatPeriod.copy(); - dst.payload = payload == null ? null : payload.copy(); - } - - @Override - public boolean equalsDeep(Base other_) { - if (!super.equalsDeep(other_)) - return false; - if (!(other_ instanceof SubscriptionChannelComponent)) - return false; - SubscriptionChannelComponent o = (SubscriptionChannelComponent) other_; - return compareDeep(type, o.type, true) && compareDeep(endpoint, o.endpoint, true) && compareDeep(header, o.header, true) - && compareDeep(heartbeatPeriod, o.heartbeatPeriod, true) && compareDeep(payload, o.payload, true) - ; - } - - @Override - public boolean equalsShallow(Base other_) { - if (!super.equalsShallow(other_)) - return false; - if (!(other_ instanceof SubscriptionChannelComponent)) - return false; - SubscriptionChannelComponent o = (SubscriptionChannelComponent) other_; - return compareValues(endpoint, o.endpoint, true) && compareValues(header, o.header, true) && compareValues(heartbeatPeriod, o.heartbeatPeriod, true) - ; - } - - public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, endpoint, header, heartbeatPeriod - , payload); - } - - public String fhirType() { - return "Subscription.channel"; - - } - - } - - @Block() - public static class SubscriptionChannelPayloadComponent extends BackboneElement implements IBaseBackboneElement { - /** - * The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions. - */ - @Child(name = "contentType", type = {CodeType.class}, order=1, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="MIME type to send, or omit for no payload", formalDefinition="The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types \"text/plain\" and \"text/html\" may also be used for Email subscriptions." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/mimetypes") - protected CodeType contentType; - - /** - * How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. - */ - @Child(name = "content", type = {CodeType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="empty | id-only | full-resource", formalDefinition="How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-payload-content") - protected Enumeration content; - - private static final long serialVersionUID = -1128800132L; - - /** - * Constructor - */ - public SubscriptionChannelPayloadComponent() { - super(); - } - - /** - * @return {@link #contentType} (The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions.). This is the underlying object with id, value and extensions. The accessor "getContentType" gives direct access to the value - */ - public CodeType getContentTypeElement() { - if (this.contentType == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionChannelPayloadComponent.contentType"); - else if (Configuration.doAutoCreate()) - this.contentType = new CodeType(); // bb - return this.contentType; - } - - public boolean hasContentTypeElement() { - return this.contentType != null && !this.contentType.isEmpty(); - } - - public boolean hasContentType() { - return this.contentType != null && !this.contentType.isEmpty(); - } - - /** - * @param value {@link #contentType} (The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions.). This is the underlying object with id, value and extensions. The accessor "getContentType" gives direct access to the value - */ - public SubscriptionChannelPayloadComponent setContentTypeElement(CodeType value) { - this.contentType = value; - return this; - } - - /** - * @return The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions. - */ - public String getContentType() { - return this.contentType == null ? null : this.contentType.getValue(); - } - - /** - * @param value The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions. - */ - public SubscriptionChannelPayloadComponent setContentType(String value) { - if (Utilities.noString(value)) - this.contentType = null; - else { - if (this.contentType == null) - this.contentType = new CodeType(); - this.contentType.setValue(value); - } - return this; - } - - /** - * @return {@link #content} (How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.). This is the underlying object with id, value and extensions. The accessor "getContent" gives direct access to the value - */ - public Enumeration getContentElement() { - if (this.content == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubscriptionChannelPayloadComponent.content"); - else if (Configuration.doAutoCreate()) - this.content = new Enumeration(new SubscriptionPayloadContentEnumFactory()); // bb - return this.content; - } - - public boolean hasContentElement() { - return this.content != null && !this.content.isEmpty(); - } - - public boolean hasContent() { - return this.content != null && !this.content.isEmpty(); - } - - /** - * @param value {@link #content} (How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.). This is the underlying object with id, value and extensions. The accessor "getContent" gives direct access to the value - */ - public SubscriptionChannelPayloadComponent setContentElement(Enumeration value) { - this.content = value; - return this; - } - - /** - * @return How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. - */ - public SubscriptionPayloadContent getContent() { - return this.content == null ? null : this.content.getValue(); - } - - /** - * @param value How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. - */ - public SubscriptionChannelPayloadComponent setContent(SubscriptionPayloadContent value) { - if (value == null) - this.content = null; - else { - if (this.content == null) - this.content = new Enumeration(new SubscriptionPayloadContentEnumFactory()); - this.content.setValue(value); - } - return this; - } - - protected void listChildren(List children) { - super.listChildren(children); - children.add(new Property("contentType", "code", "The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types \"text/plain\" and \"text/html\" may also be used for Email subscriptions.", 0, 1, contentType)); - children.add(new Property("content", "code", "How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.", 0, 1, content)); - } - - @Override - public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { - switch (_hash) { - case -389131437: /*contentType*/ return new Property("contentType", "code", "The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types \"text/plain\" and \"text/html\" may also be used for Email subscriptions.", 0, 1, contentType); - case 951530617: /*content*/ return new Property("content", "code", "How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.", 0, 1, content); - default: return super.getNamedProperty(_hash, _name, _checkValid); - } - - } - - @Override - public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { - switch (hash) { - case -389131437: /*contentType*/ return this.contentType == null ? new Base[0] : new Base[] {this.contentType}; // CodeType - case 951530617: /*content*/ return this.content == null ? new Base[0] : new Base[] {this.content}; // Enumeration - default: return super.getProperty(hash, name, checkValid); - } - - } - - @Override - public Base setProperty(int hash, String name, Base value) throws FHIRException { - switch (hash) { - case -389131437: // contentType - this.contentType = TypeConvertor.castToCode(value); // CodeType - return value; - case 951530617: // content - value = new SubscriptionPayloadContentEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.content = (Enumeration) value; // Enumeration - return value; - default: return super.setProperty(hash, name, value); - } - - } - - @Override - public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("contentType")) { - this.contentType = TypeConvertor.castToCode(value); // CodeType - } else if (name.equals("content")) { - value = new SubscriptionPayloadContentEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.content = (Enumeration) value; // Enumeration - } else - return super.setProperty(name, value); - return value; - } - - @Override - public Base makeProperty(int hash, String name) throws FHIRException { - switch (hash) { - case -389131437: return getContentTypeElement(); - case 951530617: return getContentElement(); - default: return super.makeProperty(hash, name); - } - - } - - @Override - public String[] getTypesForProperty(int hash, String name) throws FHIRException { - switch (hash) { - case -389131437: /*contentType*/ return new String[] {"code"}; - case 951530617: /*content*/ return new String[] {"code"}; - default: return super.getTypesForProperty(hash, name); - } - - } - - @Override - public Base addChild(String name) throws FHIRException { - if (name.equals("contentType")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.channel.payload.contentType"); - } - else if (name.equals("content")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.channel.payload.content"); - } - else - return super.addChild(name); - } - - public SubscriptionChannelPayloadComponent copy() { - SubscriptionChannelPayloadComponent dst = new SubscriptionChannelPayloadComponent(); - copyValues(dst); - return dst; - } - - public void copyValues(SubscriptionChannelPayloadComponent dst) { - super.copyValues(dst); - dst.contentType = contentType == null ? null : contentType.copy(); - dst.content = content == null ? null : content.copy(); - } - - @Override - public boolean equalsDeep(Base other_) { - if (!super.equalsDeep(other_)) - return false; - if (!(other_ instanceof SubscriptionChannelPayloadComponent)) - return false; - SubscriptionChannelPayloadComponent o = (SubscriptionChannelPayloadComponent) other_; - return compareDeep(contentType, o.contentType, true) && compareDeep(content, o.content, true); - } - - @Override - public boolean equalsShallow(Base other_) { - if (!super.equalsShallow(other_)) - return false; - if (!(other_ instanceof SubscriptionChannelPayloadComponent)) - return false; - SubscriptionChannelPayloadComponent o = (SubscriptionChannelPayloadComponent) other_; - return compareValues(contentType, o.contentType, true) && compareValues(content, o.content, true); - } - - public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(contentType, content); - } - - public String fhirType() { - return "Subscription.channel.payload"; - - } - } /** @@ -1478,14 +526,14 @@ public class Subscription extends DomainResource { */ @Child(name = "status", type = {CodeType.class}, order=2, min=1, max=1, modifier=true, summary=true) @Description(shortDefinition="requested | active | error | off", formalDefinition="The status of the subscription, which marks the server state for managing the subscription." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-status") - protected Enumeration status; + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-state") + protected Enumeration status; /** - * The reference to the topic to be notified about. + * The reference to the subscription topic to be notified about. */ - @Child(name = "topic", type = {Topic.class}, order=3, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="Reference to the topic being subscribed to", formalDefinition="The reference to the topic to be notified about." ) + @Child(name = "topic", type = {SubscriptionTopic.class}, order=3, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Reference to the subscription topic being subscribed to", formalDefinition="The reference to the subscription topic to be notified about." ) protected Reference topic; /** @@ -1510,10 +558,10 @@ public class Subscription extends DomainResource { protected StringType reason; /** - * The filter properties to be applied to narrow the topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND). + * The filter properties to be applied to narrow the subscription topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND). */ @Child(name = "filterBy", type = {}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Criteria for narrowing the topic stream", formalDefinition="The filter properties to be applied to narrow the topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND)." ) + @Description(shortDefinition="Criteria for narrowing the subscription topic stream", formalDefinition="The filter properties to be applied to narrow the subscription topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND)." ) protected List filterBy; /** @@ -1525,20 +573,58 @@ public class Subscription extends DomainResource { protected List error; /** - * A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an "active" or "error" state -- not "requested" or "off"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values. + * The type of channel to send notifications on. */ - @Child(name = "eventCount", type = {UnsignedIntType.class}, order=9, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Notification event counter", formalDefinition="A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an \"active\" or \"error\" state -- not \"requested\" or \"off\"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values." ) - protected UnsignedIntType eventCount; + @Child(name = "channelType", type = {Coding.class}, order=9, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Channel type for notifications", formalDefinition="The type of channel to send notifications on." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-channel-type") + protected Coding channelType; /** - * Details where to send notifications when resources are received that meet the criteria. + * The url that describes the actual end-point to send messages to. */ - @Child(name = "channel", type = {}, order=10, min=1, max=1, modifier=false, summary=true) - @Description(shortDefinition="The channel on which to report matches to the criteria", formalDefinition="Details where to send notifications when resources are received that meet the criteria." ) - protected SubscriptionChannelComponent channel; + @Child(name = "endpoint", type = {UrlType.class}, order=10, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Where the channel points to", formalDefinition="The url that describes the actual end-point to send messages to." ) + protected UrlType endpoint; - private static final long serialVersionUID = -1374014223L; + /** + * Additional headers / information to send as part of the notification. + */ + @Child(name = "header", type = {StringType.class}, order=11, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="Usage depends on the channel type", formalDefinition="Additional headers / information to send as part of the notification." ) + protected List header; + + /** + * If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. + */ + @Child(name = "heartbeatPeriod", type = {UnsignedIntType.class}, order=12, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Interval in seconds to send 'heartbeat' notification", formalDefinition="If present, a 'hearbeat\" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent." ) + protected UnsignedIntType heartbeatPeriod; + + /** + * If present, the maximum amount of time a server will allow before failing a notification attempt. + */ + @Child(name = "timeout", type = {UnsignedIntType.class}, order=13, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Timeout in seconds to attempt notification delivery", formalDefinition="If present, the maximum amount of time a server will allow before failing a notification attempt." ) + protected UnsignedIntType timeout; + + /** + * The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions. + */ + @Child(name = "contentType", type = {CodeType.class}, order=14, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="MIME type to send, or omit for no payload", formalDefinition="The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types \"text/plain\" and \"text/html\" may also be used for Email subscriptions." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/mimetypes") + protected CodeType contentType; + + /** + * How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. + */ + @Child(name = "content", type = {CodeType.class}, order=15, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="empty | id-only | full-resource", formalDefinition="How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-payload-content") + protected Enumeration content; + + private static final long serialVersionUID = -779068822L; /** * Constructor @@ -1550,11 +636,11 @@ public class Subscription extends DomainResource { /** * Constructor */ - public Subscription(SubscriptionStatus status, Reference topic, SubscriptionChannelComponent channel) { + public Subscription(SubscriptionState status, Reference topic, Coding channelType) { super(); this.setStatus(status); this.setTopic(topic); - this.setChannel(channel); + this.setChannelType(channelType); } /** @@ -1662,12 +748,12 @@ public class Subscription extends DomainResource { /** * @return {@link #status} (The status of the subscription, which marks the server state for managing the subscription.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ - public Enumeration getStatusElement() { + public Enumeration getStatusElement() { if (this.status == null) if (Configuration.errorOnAutoCreate()) throw new Error("Attempt to auto-create Subscription.status"); else if (Configuration.doAutoCreate()) - this.status = new Enumeration(new SubscriptionStatusEnumFactory()); // bb + this.status = new Enumeration(new SubscriptionStateEnumFactory()); // bb return this.status; } @@ -1682,7 +768,7 @@ public class Subscription extends DomainResource { /** * @param value {@link #status} (The status of the subscription, which marks the server state for managing the subscription.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ - public Subscription setStatusElement(Enumeration value) { + public Subscription setStatusElement(Enumeration value) { this.status = value; return this; } @@ -1690,22 +776,22 @@ public class Subscription extends DomainResource { /** * @return The status of the subscription, which marks the server state for managing the subscription. */ - public SubscriptionStatus getStatus() { + public SubscriptionState getStatus() { return this.status == null ? null : this.status.getValue(); } /** * @param value The status of the subscription, which marks the server state for managing the subscription. */ - public Subscription setStatus(SubscriptionStatus value) { + public Subscription setStatus(SubscriptionState value) { if (this.status == null) - this.status = new Enumeration(new SubscriptionStatusEnumFactory()); + this.status = new Enumeration(new SubscriptionStateEnumFactory()); this.status.setValue(value); return this; } /** - * @return {@link #topic} (The reference to the topic to be notified about.) + * @return {@link #topic} (The reference to the subscription topic to be notified about.) */ public Reference getTopic() { if (this.topic == null) @@ -1721,7 +807,7 @@ public class Subscription extends DomainResource { } /** - * @param value {@link #topic} (The reference to the topic to be notified about.) + * @param value {@link #topic} (The reference to the subscription topic to be notified about.) */ public Subscription setTopic(Reference value) { this.topic = value; @@ -1880,7 +966,7 @@ public class Subscription extends DomainResource { } /** - * @return {@link #filterBy} (The filter properties to be applied to narrow the topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND).) + * @return {@link #filterBy} (The filter properties to be applied to narrow the subscription topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND).) */ public List getFilterBy() { if (this.filterBy == null) @@ -1986,71 +1072,324 @@ public class Subscription extends DomainResource { } /** - * @return {@link #eventCount} (A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an "active" or "error" state -- not "requested" or "off"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values.). This is the underlying object with id, value and extensions. The accessor "getEventCount" gives direct access to the value + * @return {@link #channelType} (The type of channel to send notifications on.) */ - public UnsignedIntType getEventCountElement() { - if (this.eventCount == null) + public Coding getChannelType() { + if (this.channelType == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Subscription.eventCount"); + throw new Error("Attempt to auto-create Subscription.channelType"); else if (Configuration.doAutoCreate()) - this.eventCount = new UnsignedIntType(); // bb - return this.eventCount; + this.channelType = new Coding(); // cc + return this.channelType; } - public boolean hasEventCountElement() { - return this.eventCount != null && !this.eventCount.isEmpty(); - } - - public boolean hasEventCount() { - return this.eventCount != null && !this.eventCount.isEmpty(); + public boolean hasChannelType() { + return this.channelType != null && !this.channelType.isEmpty(); } /** - * @param value {@link #eventCount} (A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an "active" or "error" state -- not "requested" or "off"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values.). This is the underlying object with id, value and extensions. The accessor "getEventCount" gives direct access to the value + * @param value {@link #channelType} (The type of channel to send notifications on.) */ - public Subscription setEventCountElement(UnsignedIntType value) { - this.eventCount = value; + public Subscription setChannelType(Coding value) { + this.channelType = value; return this; } /** - * @return A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an "active" or "error" state -- not "requested" or "off"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values. + * @return {@link #endpoint} (The url that describes the actual end-point to send messages to.). This is the underlying object with id, value and extensions. The accessor "getEndpoint" gives direct access to the value */ - public int getEventCount() { - return this.eventCount == null || this.eventCount.isEmpty() ? 0 : this.eventCount.getValue(); + public UrlType getEndpointElement() { + if (this.endpoint == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Subscription.endpoint"); + else if (Configuration.doAutoCreate()) + this.endpoint = new UrlType(); // bb + return this.endpoint; + } + + public boolean hasEndpointElement() { + return this.endpoint != null && !this.endpoint.isEmpty(); + } + + public boolean hasEndpoint() { + return this.endpoint != null && !this.endpoint.isEmpty(); } /** - * @param value A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an "active" or "error" state -- not "requested" or "off"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values. + * @param value {@link #endpoint} (The url that describes the actual end-point to send messages to.). This is the underlying object with id, value and extensions. The accessor "getEndpoint" gives direct access to the value */ - public Subscription setEventCount(int value) { - if (this.eventCount == null) - this.eventCount = new UnsignedIntType(); - this.eventCount.setValue(value); + public Subscription setEndpointElement(UrlType value) { + this.endpoint = value; return this; } /** - * @return {@link #channel} (Details where to send notifications when resources are received that meet the criteria.) + * @return The url that describes the actual end-point to send messages to. */ - public SubscriptionChannelComponent getChannel() { - if (this.channel == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Subscription.channel"); - else if (Configuration.doAutoCreate()) - this.channel = new SubscriptionChannelComponent(); // cc - return this.channel; - } - - public boolean hasChannel() { - return this.channel != null && !this.channel.isEmpty(); + public String getEndpoint() { + return this.endpoint == null ? null : this.endpoint.getValue(); } /** - * @param value {@link #channel} (Details where to send notifications when resources are received that meet the criteria.) + * @param value The url that describes the actual end-point to send messages to. */ - public Subscription setChannel(SubscriptionChannelComponent value) { - this.channel = value; + public Subscription setEndpoint(String value) { + if (Utilities.noString(value)) + this.endpoint = null; + else { + if (this.endpoint == null) + this.endpoint = new UrlType(); + this.endpoint.setValue(value); + } + return this; + } + + /** + * @return {@link #header} (Additional headers / information to send as part of the notification.) + */ + public List getHeader() { + if (this.header == null) + this.header = new ArrayList(); + return this.header; + } + + /** + * @return Returns a reference to this for easy method chaining + */ + public Subscription setHeader(List theHeader) { + this.header = theHeader; + return this; + } + + public boolean hasHeader() { + if (this.header == null) + return false; + for (StringType item : this.header) + if (!item.isEmpty()) + return true; + return false; + } + + /** + * @return {@link #header} (Additional headers / information to send as part of the notification.) + */ + public StringType addHeaderElement() {//2 + StringType t = new StringType(); + if (this.header == null) + this.header = new ArrayList(); + this.header.add(t); + return t; + } + + /** + * @param value {@link #header} (Additional headers / information to send as part of the notification.) + */ + public Subscription addHeader(String value) { //1 + StringType t = new StringType(); + t.setValue(value); + if (this.header == null) + this.header = new ArrayList(); + this.header.add(t); + return this; + } + + /** + * @param value {@link #header} (Additional headers / information to send as part of the notification.) + */ + public boolean hasHeader(String value) { + if (this.header == null) + return false; + for (StringType v : this.header) + if (v.getValue().equals(value)) // string + return true; + return false; + } + + /** + * @return {@link #heartbeatPeriod} (If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.). This is the underlying object with id, value and extensions. The accessor "getHeartbeatPeriod" gives direct access to the value + */ + public UnsignedIntType getHeartbeatPeriodElement() { + if (this.heartbeatPeriod == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Subscription.heartbeatPeriod"); + else if (Configuration.doAutoCreate()) + this.heartbeatPeriod = new UnsignedIntType(); // bb + return this.heartbeatPeriod; + } + + public boolean hasHeartbeatPeriodElement() { + return this.heartbeatPeriod != null && !this.heartbeatPeriod.isEmpty(); + } + + public boolean hasHeartbeatPeriod() { + return this.heartbeatPeriod != null && !this.heartbeatPeriod.isEmpty(); + } + + /** + * @param value {@link #heartbeatPeriod} (If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.). This is the underlying object with id, value and extensions. The accessor "getHeartbeatPeriod" gives direct access to the value + */ + public Subscription setHeartbeatPeriodElement(UnsignedIntType value) { + this.heartbeatPeriod = value; + return this; + } + + /** + * @return If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. + */ + public int getHeartbeatPeriod() { + return this.heartbeatPeriod == null || this.heartbeatPeriod.isEmpty() ? 0 : this.heartbeatPeriod.getValue(); + } + + /** + * @param value If present, a 'hearbeat" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent. + */ + public Subscription setHeartbeatPeriod(int value) { + if (this.heartbeatPeriod == null) + this.heartbeatPeriod = new UnsignedIntType(); + this.heartbeatPeriod.setValue(value); + return this; + } + + /** + * @return {@link #timeout} (If present, the maximum amount of time a server will allow before failing a notification attempt.). This is the underlying object with id, value and extensions. The accessor "getTimeout" gives direct access to the value + */ + public UnsignedIntType getTimeoutElement() { + if (this.timeout == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Subscription.timeout"); + else if (Configuration.doAutoCreate()) + this.timeout = new UnsignedIntType(); // bb + return this.timeout; + } + + public boolean hasTimeoutElement() { + return this.timeout != null && !this.timeout.isEmpty(); + } + + public boolean hasTimeout() { + return this.timeout != null && !this.timeout.isEmpty(); + } + + /** + * @param value {@link #timeout} (If present, the maximum amount of time a server will allow before failing a notification attempt.). This is the underlying object with id, value and extensions. The accessor "getTimeout" gives direct access to the value + */ + public Subscription setTimeoutElement(UnsignedIntType value) { + this.timeout = value; + return this; + } + + /** + * @return If present, the maximum amount of time a server will allow before failing a notification attempt. + */ + public int getTimeout() { + return this.timeout == null || this.timeout.isEmpty() ? 0 : this.timeout.getValue(); + } + + /** + * @param value If present, the maximum amount of time a server will allow before failing a notification attempt. + */ + public Subscription setTimeout(int value) { + if (this.timeout == null) + this.timeout = new UnsignedIntType(); + this.timeout.setValue(value); + return this; + } + + /** + * @return {@link #contentType} (The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions.). This is the underlying object with id, value and extensions. The accessor "getContentType" gives direct access to the value + */ + public CodeType getContentTypeElement() { + if (this.contentType == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Subscription.contentType"); + else if (Configuration.doAutoCreate()) + this.contentType = new CodeType(); // bb + return this.contentType; + } + + public boolean hasContentTypeElement() { + return this.contentType != null && !this.contentType.isEmpty(); + } + + public boolean hasContentType() { + return this.contentType != null && !this.contentType.isEmpty(); + } + + /** + * @param value {@link #contentType} (The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions.). This is the underlying object with id, value and extensions. The accessor "getContentType" gives direct access to the value + */ + public Subscription setContentTypeElement(CodeType value) { + this.contentType = value; + return this; + } + + /** + * @return The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions. + */ + public String getContentType() { + return this.contentType == null ? null : this.contentType.getValue(); + } + + /** + * @param value The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types "text/plain" and "text/html" may also be used for Email subscriptions. + */ + public Subscription setContentType(String value) { + if (Utilities.noString(value)) + this.contentType = null; + else { + if (this.contentType == null) + this.contentType = new CodeType(); + this.contentType.setValue(value); + } + return this; + } + + /** + * @return {@link #content} (How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.). This is the underlying object with id, value and extensions. The accessor "getContent" gives direct access to the value + */ + public Enumeration getContentElement() { + if (this.content == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create Subscription.content"); + else if (Configuration.doAutoCreate()) + this.content = new Enumeration(new SubscriptionPayloadContentEnumFactory()); // bb + return this.content; + } + + public boolean hasContentElement() { + return this.content != null && !this.content.isEmpty(); + } + + public boolean hasContent() { + return this.content != null && !this.content.isEmpty(); + } + + /** + * @param value {@link #content} (How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.). This is the underlying object with id, value and extensions. The accessor "getContent" gives direct access to the value + */ + public Subscription setContentElement(Enumeration value) { + this.content = value; + return this; + } + + /** + * @return How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. + */ + public SubscriptionPayloadContent getContent() { + return this.content == null ? null : this.content.getValue(); + } + + /** + * @param value How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content. + */ + public Subscription setContent(SubscriptionPayloadContent value) { + if (value == null) + this.content = null; + else { + if (this.content == null) + this.content = new Enumeration(new SubscriptionPayloadContentEnumFactory()); + this.content.setValue(value); + } return this; } @@ -2059,14 +1398,19 @@ public class Subscription extends DomainResource { children.add(new Property("identifier", "Identifier", "A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier)); children.add(new Property("name", "string", "A natural language name identifying the subscription.", 0, 1, name)); children.add(new Property("status", "code", "The status of the subscription, which marks the server state for managing the subscription.", 0, 1, status)); - children.add(new Property("topic", "Reference(Topic)", "The reference to the topic to be notified about.", 0, 1, topic)); + children.add(new Property("topic", "Reference(SubscriptionTopic)", "The reference to the subscription topic to be notified about.", 0, 1, topic)); children.add(new Property("contact", "ContactPoint", "Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.", 0, java.lang.Integer.MAX_VALUE, contact)); children.add(new Property("end", "instant", "The time for the server to turn the subscription off.", 0, 1, end)); children.add(new Property("reason", "string", "A description of why this subscription is defined.", 0, 1, reason)); - children.add(new Property("filterBy", "", "The filter properties to be applied to narrow the topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND).", 0, java.lang.Integer.MAX_VALUE, filterBy)); + children.add(new Property("filterBy", "", "The filter properties to be applied to narrow the subscription topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND).", 0, java.lang.Integer.MAX_VALUE, filterBy)); children.add(new Property("error", "CodeableConcept", "A record of the last error that occurred when the server processed a notification.", 0, java.lang.Integer.MAX_VALUE, error)); - children.add(new Property("eventCount", "unsignedInt", "A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an \"active\" or \"error\" state -- not \"requested\" or \"off\"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values.", 0, 1, eventCount)); - children.add(new Property("channel", "", "Details where to send notifications when resources are received that meet the criteria.", 0, 1, channel)); + children.add(new Property("channelType", "Coding", "The type of channel to send notifications on.", 0, 1, channelType)); + children.add(new Property("endpoint", "url", "The url that describes the actual end-point to send messages to.", 0, 1, endpoint)); + children.add(new Property("header", "string", "Additional headers / information to send as part of the notification.", 0, java.lang.Integer.MAX_VALUE, header)); + children.add(new Property("heartbeatPeriod", "unsignedInt", "If present, a 'hearbeat\" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.", 0, 1, heartbeatPeriod)); + children.add(new Property("timeout", "unsignedInt", "If present, the maximum amount of time a server will allow before failing a notification attempt.", 0, 1, timeout)); + children.add(new Property("contentType", "code", "The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types \"text/plain\" and \"text/html\" may also be used for Email subscriptions.", 0, 1, contentType)); + children.add(new Property("content", "code", "How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.", 0, 1, content)); } @Override @@ -2075,14 +1419,19 @@ public class Subscription extends DomainResource { case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "A formal identifier that is used to identify this code system when it is represented in other formats, or referenced in a specification, model, design or an instance.", 0, java.lang.Integer.MAX_VALUE, identifier); case 3373707: /*name*/ return new Property("name", "string", "A natural language name identifying the subscription.", 0, 1, name); case -892481550: /*status*/ return new Property("status", "code", "The status of the subscription, which marks the server state for managing the subscription.", 0, 1, status); - case 110546223: /*topic*/ return new Property("topic", "Reference(Topic)", "The reference to the topic to be notified about.", 0, 1, topic); + case 110546223: /*topic*/ return new Property("topic", "Reference(SubscriptionTopic)", "The reference to the subscription topic to be notified about.", 0, 1, topic); case 951526432: /*contact*/ return new Property("contact", "ContactPoint", "Contact details for a human to contact about the subscription. The primary use of this for system administrator troubleshooting.", 0, java.lang.Integer.MAX_VALUE, contact); case 100571: /*end*/ return new Property("end", "instant", "The time for the server to turn the subscription off.", 0, 1, end); case -934964668: /*reason*/ return new Property("reason", "string", "A description of why this subscription is defined.", 0, 1, reason); - case -721168913: /*filterBy*/ return new Property("filterBy", "", "The filter properties to be applied to narrow the topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND).", 0, java.lang.Integer.MAX_VALUE, filterBy); + case -721168913: /*filterBy*/ return new Property("filterBy", "", "The filter properties to be applied to narrow the subscription topic stream. When multiple filters are applied, evaluates to true if all the conditions are met; otherwise it returns false. (i.e., logical AND).", 0, java.lang.Integer.MAX_VALUE, filterBy); case 96784904: /*error*/ return new Property("error", "CodeableConcept", "A record of the last error that occurred when the server processed a notification.", 0, java.lang.Integer.MAX_VALUE, error); - case 958365333: /*eventCount*/ return new Property("eventCount", "unsignedInt", "A record of the number of events for which the server has attempted delivery on this subscription (i.e., the number of events that occurred while the subscription is in an \"active\" or \"error\" state -- not \"requested\" or \"off\"). Server Initializes to 0 for a new subscription. Repeated attempts at delivery of the *same* event notification do not increment this counter. Valid values are unsigned integers (0+). The decmial type is used to ensure that counts can grow larger than 32-bit values.", 0, 1, eventCount); - case 738950403: /*channel*/ return new Property("channel", "", "Details where to send notifications when resources are received that meet the criteria.", 0, 1, channel); + case 274155229: /*channelType*/ return new Property("channelType", "Coding", "The type of channel to send notifications on.", 0, 1, channelType); + case 1741102485: /*endpoint*/ return new Property("endpoint", "url", "The url that describes the actual end-point to send messages to.", 0, 1, endpoint); + case -1221270899: /*header*/ return new Property("header", "string", "Additional headers / information to send as part of the notification.", 0, java.lang.Integer.MAX_VALUE, header); + case -938465827: /*heartbeatPeriod*/ return new Property("heartbeatPeriod", "unsignedInt", "If present, a 'hearbeat\" notification (keepalive) is sent via this channel with an the interval period equal to this elements integer value in seconds. If not present, a heartbeat notification is not sent.", 0, 1, heartbeatPeriod); + case -1313911455: /*timeout*/ return new Property("timeout", "unsignedInt", "If present, the maximum amount of time a server will allow before failing a notification attempt.", 0, 1, timeout); + case -389131437: /*contentType*/ return new Property("contentType", "code", "The mime type to send the payload in - either application/fhir+xml, or application/fhir+json. The MIME types \"text/plain\" and \"text/html\" may also be used for Email subscriptions.", 0, 1, contentType); + case 951530617: /*content*/ return new Property("content", "code", "How much of the resource content to deliver in the notification payload. The choices are an empty payload, only the resource id, or the full resource content.", 0, 1, content); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -2093,15 +1442,20 @@ public class Subscription extends DomainResource { switch (hash) { case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : this.identifier.toArray(new Base[this.identifier.size()]); // Identifier case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType - case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case 110546223: /*topic*/ return this.topic == null ? new Base[0] : new Base[] {this.topic}; // Reference case 951526432: /*contact*/ return this.contact == null ? new Base[0] : this.contact.toArray(new Base[this.contact.size()]); // ContactPoint case 100571: /*end*/ return this.end == null ? new Base[0] : new Base[] {this.end}; // InstantType case -934964668: /*reason*/ return this.reason == null ? new Base[0] : new Base[] {this.reason}; // StringType case -721168913: /*filterBy*/ return this.filterBy == null ? new Base[0] : this.filterBy.toArray(new Base[this.filterBy.size()]); // SubscriptionFilterByComponent case 96784904: /*error*/ return this.error == null ? new Base[0] : this.error.toArray(new Base[this.error.size()]); // CodeableConcept - case 958365333: /*eventCount*/ return this.eventCount == null ? new Base[0] : new Base[] {this.eventCount}; // UnsignedIntType - case 738950403: /*channel*/ return this.channel == null ? new Base[0] : new Base[] {this.channel}; // SubscriptionChannelComponent + case 274155229: /*channelType*/ return this.channelType == null ? new Base[0] : new Base[] {this.channelType}; // Coding + case 1741102485: /*endpoint*/ return this.endpoint == null ? new Base[0] : new Base[] {this.endpoint}; // UrlType + case -1221270899: /*header*/ return this.header == null ? new Base[0] : this.header.toArray(new Base[this.header.size()]); // StringType + case -938465827: /*heartbeatPeriod*/ return this.heartbeatPeriod == null ? new Base[0] : new Base[] {this.heartbeatPeriod}; // UnsignedIntType + case -1313911455: /*timeout*/ return this.timeout == null ? new Base[0] : new Base[] {this.timeout}; // UnsignedIntType + case -389131437: /*contentType*/ return this.contentType == null ? new Base[0] : new Base[] {this.contentType}; // CodeType + case 951530617: /*content*/ return this.content == null ? new Base[0] : new Base[] {this.content}; // Enumeration default: return super.getProperty(hash, name, checkValid); } @@ -2117,8 +1471,8 @@ public class Subscription extends DomainResource { this.name = TypeConvertor.castToString(value); // StringType return value; case -892481550: // status - value = new SubscriptionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.status = (Enumeration) value; // Enumeration + value = new SubscriptionStateEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration return value; case 110546223: // topic this.topic = TypeConvertor.castToReference(value); // Reference @@ -2138,11 +1492,27 @@ public class Subscription extends DomainResource { case 96784904: // error this.getError().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; - case 958365333: // eventCount - this.eventCount = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType + case 274155229: // channelType + this.channelType = TypeConvertor.castToCoding(value); // Coding return value; - case 738950403: // channel - this.channel = (SubscriptionChannelComponent) value; // SubscriptionChannelComponent + case 1741102485: // endpoint + this.endpoint = TypeConvertor.castToUrl(value); // UrlType + return value; + case -1221270899: // header + this.getHeader().add(TypeConvertor.castToString(value)); // StringType + return value; + case -938465827: // heartbeatPeriod + this.heartbeatPeriod = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType + return value; + case -1313911455: // timeout + this.timeout = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType + return value; + case -389131437: // contentType + this.contentType = TypeConvertor.castToCode(value); // CodeType + return value; + case 951530617: // content + value = new SubscriptionPayloadContentEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.content = (Enumeration) value; // Enumeration return value; default: return super.setProperty(hash, name, value); } @@ -2156,8 +1526,8 @@ public class Subscription extends DomainResource { } else if (name.equals("name")) { this.name = TypeConvertor.castToString(value); // StringType } else if (name.equals("status")) { - value = new SubscriptionStatusEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.status = (Enumeration) value; // Enumeration + value = new SubscriptionStateEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration } else if (name.equals("topic")) { this.topic = TypeConvertor.castToReference(value); // Reference } else if (name.equals("contact")) { @@ -2170,10 +1540,21 @@ public class Subscription extends DomainResource { this.getFilterBy().add((SubscriptionFilterByComponent) value); } else if (name.equals("error")) { this.getError().add(TypeConvertor.castToCodeableConcept(value)); - } else if (name.equals("eventCount")) { - this.eventCount = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType - } else if (name.equals("channel")) { - this.channel = (SubscriptionChannelComponent) value; // SubscriptionChannelComponent + } else if (name.equals("channelType")) { + this.channelType = TypeConvertor.castToCoding(value); // Coding + } else if (name.equals("endpoint")) { + this.endpoint = TypeConvertor.castToUrl(value); // UrlType + } else if (name.equals("header")) { + this.getHeader().add(TypeConvertor.castToString(value)); + } else if (name.equals("heartbeatPeriod")) { + this.heartbeatPeriod = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType + } else if (name.equals("timeout")) { + this.timeout = TypeConvertor.castToUnsignedInt(value); // UnsignedIntType + } else if (name.equals("contentType")) { + this.contentType = TypeConvertor.castToCode(value); // CodeType + } else if (name.equals("content")) { + value = new SubscriptionPayloadContentEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.content = (Enumeration) value; // Enumeration } else return super.setProperty(name, value); return value; @@ -2191,8 +1572,13 @@ public class Subscription extends DomainResource { case -934964668: return getReasonElement(); case -721168913: return addFilterBy(); case 96784904: return addError(); - case 958365333: return getEventCountElement(); - case 738950403: return getChannel(); + case 274155229: return getChannelType(); + case 1741102485: return getEndpointElement(); + case -1221270899: return addHeaderElement(); + case -938465827: return getHeartbeatPeriodElement(); + case -1313911455: return getTimeoutElement(); + case -389131437: return getContentTypeElement(); + case 951530617: return getContentElement(); default: return super.makeProperty(hash, name); } @@ -2210,8 +1596,13 @@ public class Subscription extends DomainResource { case -934964668: /*reason*/ return new String[] {"string"}; case -721168913: /*filterBy*/ return new String[] {}; case 96784904: /*error*/ return new String[] {"CodeableConcept"}; - case 958365333: /*eventCount*/ return new String[] {"unsignedInt"}; - case 738950403: /*channel*/ return new String[] {}; + case 274155229: /*channelType*/ return new String[] {"Coding"}; + case 1741102485: /*endpoint*/ return new String[] {"url"}; + case -1221270899: /*header*/ return new String[] {"string"}; + case -938465827: /*heartbeatPeriod*/ return new String[] {"unsignedInt"}; + case -1313911455: /*timeout*/ return new String[] {"unsignedInt"}; + case -389131437: /*contentType*/ return new String[] {"code"}; + case 951530617: /*content*/ return new String[] {"code"}; default: return super.getTypesForProperty(hash, name); } @@ -2247,12 +1638,27 @@ public class Subscription extends DomainResource { else if (name.equals("error")) { return addError(); } - else if (name.equals("eventCount")) { - throw new FHIRException("Cannot call addChild on a primitive type Subscription.eventCount"); + else if (name.equals("channelType")) { + this.channelType = new Coding(); + return this.channelType; } - else if (name.equals("channel")) { - this.channel = new SubscriptionChannelComponent(); - return this.channel; + else if (name.equals("endpoint")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.endpoint"); + } + else if (name.equals("header")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.header"); + } + else if (name.equals("heartbeatPeriod")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.heartbeatPeriod"); + } + else if (name.equals("timeout")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.timeout"); + } + else if (name.equals("contentType")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.contentType"); + } + else if (name.equals("content")) { + throw new FHIRException("Cannot call addChild on a primitive type Subscription.content"); } else return super.addChild(name); @@ -2296,8 +1702,17 @@ public class Subscription extends DomainResource { for (CodeableConcept i : error) dst.error.add(i.copy()); }; - dst.eventCount = eventCount == null ? null : eventCount.copy(); - dst.channel = channel == null ? null : channel.copy(); + dst.channelType = channelType == null ? null : channelType.copy(); + dst.endpoint = endpoint == null ? null : endpoint.copy(); + if (header != null) { + dst.header = new ArrayList(); + for (StringType i : header) + dst.header.add(i.copy()); + }; + dst.heartbeatPeriod = heartbeatPeriod == null ? null : heartbeatPeriod.copy(); + dst.timeout = timeout == null ? null : timeout.copy(); + dst.contentType = contentType == null ? null : contentType.copy(); + dst.content = content == null ? null : content.copy(); } protected Subscription typedCopy() { @@ -2314,7 +1729,9 @@ public class Subscription extends DomainResource { return compareDeep(identifier, o.identifier, true) && compareDeep(name, o.name, true) && compareDeep(status, o.status, true) && compareDeep(topic, o.topic, true) && compareDeep(contact, o.contact, true) && compareDeep(end, o.end, true) && compareDeep(reason, o.reason, true) && compareDeep(filterBy, o.filterBy, true) && compareDeep(error, o.error, true) - && compareDeep(eventCount, o.eventCount, true) && compareDeep(channel, o.channel, true); + && compareDeep(channelType, o.channelType, true) && compareDeep(endpoint, o.endpoint, true) && compareDeep(header, o.header, true) + && compareDeep(heartbeatPeriod, o.heartbeatPeriod, true) && compareDeep(timeout, o.timeout, true) + && compareDeep(contentType, o.contentType, true) && compareDeep(content, o.content, true); } @Override @@ -2325,12 +1742,15 @@ public class Subscription extends DomainResource { return false; Subscription o = (Subscription) other_; return compareValues(name, o.name, true) && compareValues(status, o.status, true) && compareValues(end, o.end, true) - && compareValues(reason, o.reason, true) && compareValues(eventCount, o.eventCount, true); + && compareValues(reason, o.reason, true) && compareValues(endpoint, o.endpoint, true) && compareValues(header, o.header, true) + && compareValues(heartbeatPeriod, o.heartbeatPeriod, true) && compareValues(timeout, o.timeout, true) + && compareValues(contentType, o.contentType, true) && compareValues(content, o.content, true); } public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, name, status - , topic, contact, end, reason, filterBy, error, eventCount, channel); + , topic, contact, end, reason, filterBy, error, channelType, endpoint, header + , heartbeatPeriod, timeout, contentType, content); } @Override @@ -2363,17 +1783,17 @@ public class Subscription extends DomainResource { *

* Description: The mime-type of the notification payload
* Type: token
- * Path: Subscription.channel.payload.contentType
+ * Path: null
*

*/ - @SearchParamDefinition(name="payload", path="Subscription.channel.payload.contentType", description="The mime-type of the notification payload", type="token" ) + @SearchParamDefinition(name="payload", path="", description="The mime-type of the notification payload", type="token" ) public static final String SP_PAYLOAD = "payload"; /** * Fluent Client search parameter constant for payload *

* Description: The mime-type of the notification payload
* Type: token
- * Path: Subscription.channel.payload.contentType
+ * Path: null
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam PAYLOAD = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_PAYLOAD); @@ -2403,17 +1823,17 @@ public class Subscription extends DomainResource { *

* Description: The type of channel for the sent notifications
* Type: token
- * Path: Subscription.channel.type
+ * Path: null
*

*/ - @SearchParamDefinition(name="type", path="Subscription.channel.type", description="The type of channel for the sent notifications", type="token" ) + @SearchParamDefinition(name="type", path="", description="The type of channel for the sent notifications", type="token" ) public static final String SP_TYPE = "type"; /** * Fluent Client search parameter constant for type *

* Description: The type of channel for the sent notifications
* Type: token
- * Path: Subscription.channel.type
+ * Path: null
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_TYPE); @@ -2423,17 +1843,17 @@ public class Subscription extends DomainResource { *

* Description: The uri that will receive the notifications
* Type: uri
- * Path: Subscription.channel.endpoint
+ * Path: null
*

*/ - @SearchParamDefinition(name="url", path="Subscription.channel.endpoint", description="The uri that will receive the notifications", type="uri" ) + @SearchParamDefinition(name="url", path="", description="The uri that will receive the notifications", type="uri" ) public static final String SP_URL = "url"; /** * Fluent Client search parameter constant for url *

* Description: The uri that will receive the notifications
* Type: uri
- * Path: Subscription.channel.endpoint
+ * Path: null
*

*/ public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionStatus.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionStatus.java new file mode 100644 index 000000000..8d9fa4682 --- /dev/null +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionStatus.java @@ -0,0 +1,680 @@ +package org.hl7.fhir.r5.model; + + +/* + * #%L + * org.hl7.fhir.r5 + * %% + * Copyright (C) 2014 - 2019 Health Level 7 + * %% + * Licensed under the Apache License, Version 2.0 (the \"License\"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an \"AS IS\" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, \ + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this \ + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, \ + this list of conditions and the following disclaimer in the documentation \ + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND \ + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED \ + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. \ + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, \ + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT \ + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR \ + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, \ + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) \ + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE \ + POSSIBILITY OF SUCH DAMAGE. + */ + +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.r5.model.Enumerations.*; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.instance.model.api.ICompositeType; +import ca.uhn.fhir.model.api.annotation.ResourceDef; +import ca.uhn.fhir.model.api.annotation.SearchParamDefinition; +import org.hl7.fhir.instance.model.api.IBaseBackboneElement; +import ca.uhn.fhir.model.api.annotation.Child; +import ca.uhn.fhir.model.api.annotation.ChildOrder; +import ca.uhn.fhir.model.api.annotation.Description; +import ca.uhn.fhir.model.api.annotation.Block; + +/** + * The SubscriptionStatus resource describes the state of a Subscription during notifications. + */ +@ResourceDef(name="SubscriptionStatus", profile="http://hl7.org/fhir/StructureDefinition/SubscriptionStatus") +public class SubscriptionStatus extends DomainResource { + + public enum SubscriptionNotificationType { + /** + * The notification is being sent as part of the setup or verification of a communications channel. + */ + HANDSHAKE, + /** + * The notification is being sent because there has not been a notification generated over an extended period of time. + */ + HEARTBEAT, + /** + * The notification is being sent due to an event for the subscriber. + */ + EVENTNOTIFICATION, + /** + * added to help the parsers with the generic types + */ + NULL; + public static SubscriptionNotificationType fromCode(String codeString) throws FHIRException { + if (codeString == null || "".equals(codeString)) + return null; + if ("handshake".equals(codeString)) + return HANDSHAKE; + if ("heartbeat".equals(codeString)) + return HEARTBEAT; + if ("event-notification".equals(codeString)) + return EVENTNOTIFICATION; + if (Configuration.isAcceptInvalidEnums()) + return null; + else + throw new FHIRException("Unknown SubscriptionNotificationType code '"+codeString+"'"); + } + public String toCode() { + switch (this) { + case HANDSHAKE: return "handshake"; + case HEARTBEAT: return "heartbeat"; + case EVENTNOTIFICATION: return "event-notification"; + default: return "?"; + } + } + public String getSystem() { + switch (this) { + case HANDSHAKE: return "http://hl7.org/fhir/subscription-notification-type"; + case HEARTBEAT: return "http://hl7.org/fhir/subscription-notification-type"; + case EVENTNOTIFICATION: return "http://hl7.org/fhir/subscription-notification-type"; + default: return "?"; + } + } + public String getDefinition() { + switch (this) { + case HANDSHAKE: return "The notification is being sent as part of the setup or verification of a communications channel."; + case HEARTBEAT: return "The notification is being sent because there has not been a notification generated over an extended period of time."; + case EVENTNOTIFICATION: return "The notification is being sent due to an event for the subscriber."; + default: return "?"; + } + } + public String getDisplay() { + switch (this) { + case HANDSHAKE: return "Handshake"; + case HEARTBEAT: return "Heartbeat"; + case EVENTNOTIFICATION: return "Event Notification"; + default: return "?"; + } + } + } + + public static class SubscriptionNotificationTypeEnumFactory implements EnumFactory { + public SubscriptionNotificationType fromCode(String codeString) throws IllegalArgumentException { + if (codeString == null || "".equals(codeString)) + if (codeString == null || "".equals(codeString)) + return null; + if ("handshake".equals(codeString)) + return SubscriptionNotificationType.HANDSHAKE; + if ("heartbeat".equals(codeString)) + return SubscriptionNotificationType.HEARTBEAT; + if ("event-notification".equals(codeString)) + return SubscriptionNotificationType.EVENTNOTIFICATION; + throw new IllegalArgumentException("Unknown SubscriptionNotificationType code '"+codeString+"'"); + } + public Enumeration fromType(Base code) throws FHIRException { + if (code == null) + return null; + if (code.isEmpty()) + return new Enumeration(this); + String codeString = ((PrimitiveType) code).asStringValue(); + if (codeString == null || "".equals(codeString)) + return null; + if ("handshake".equals(codeString)) + return new Enumeration(this, SubscriptionNotificationType.HANDSHAKE); + if ("heartbeat".equals(codeString)) + return new Enumeration(this, SubscriptionNotificationType.HEARTBEAT); + if ("event-notification".equals(codeString)) + return new Enumeration(this, SubscriptionNotificationType.EVENTNOTIFICATION); + throw new FHIRException("Unknown SubscriptionNotificationType code '"+codeString+"'"); + } + public String toCode(SubscriptionNotificationType code) { + if (code == SubscriptionNotificationType.HANDSHAKE) + return "handshake"; + if (code == SubscriptionNotificationType.HEARTBEAT) + return "heartbeat"; + if (code == SubscriptionNotificationType.EVENTNOTIFICATION) + return "event-notification"; + return "?"; + } + public String toSystem(SubscriptionNotificationType code) { + return code.getSystem(); + } + } + + /** + * The type of event being conveyed with this notificaiton. + */ + @Child(name = "notificationType", type = {CodeType.class}, order=0, min=1, max=1, modifier=true, summary=true) + @Description(shortDefinition="handshake | heartbeat | event-notification", formalDefinition="The type of event being conveyed with this notificaiton." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-notification-type") + protected Enumeration notificationType; + + /** + * The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications. + */ + @Child(name = "eventsSinceSubscriptionStart", type = {Integer64Type.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Events since the Subscription was created", formalDefinition="The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications." ) + protected Integer64Type eventsSinceSubscriptionStart; + + /** + * The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching. + */ + @Child(name = "eventsInNotification", type = {IntegerType.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Events in this notification", formalDefinition="The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching." ) + protected IntegerType eventsInNotification; + + /** + * The reference to the Subscription which generated this notification. + */ + @Child(name = "subscription", type = {Subscription.class}, order=3, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Reference to the Subscription responsible for this notification", formalDefinition="The reference to the Subscription which generated this notification." ) + protected Reference subscription; + + /** + * The status of the subscription, which marks the server state for managing the subscription. + */ + @Child(name = "status", type = {CodeType.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="requested | active | error | off", formalDefinition="The status of the subscription, which marks the server state for managing the subscription." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-state") + protected Enumeration status; + + /** + * The reference to the SubscriptionTopic for the Subscription which generated this notification. + */ + @Child(name = "topic", type = {SubscriptionTopic.class}, order=5, min=1, max=1, modifier=false, summary=true) + @Description(shortDefinition="Reference to the SubscriptionTopic this notification relates to", formalDefinition="The reference to the SubscriptionTopic for the Subscription which generated this notification." ) + protected Reference topic; + + private static final long serialVersionUID = -1378030794L; + + /** + * Constructor + */ + public SubscriptionStatus() { + super(); + } + + /** + * Constructor + */ + public SubscriptionStatus(SubscriptionNotificationType notificationType, Reference subscription, Reference topic) { + super(); + this.setNotificationType(notificationType); + this.setSubscription(subscription); + this.setTopic(topic); + } + + /** + * @return {@link #notificationType} (The type of event being conveyed with this notificaiton.). This is the underlying object with id, value and extensions. The accessor "getNotificationType" gives direct access to the value + */ + public Enumeration getNotificationTypeElement() { + if (this.notificationType == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubscriptionStatus.notificationType"); + else if (Configuration.doAutoCreate()) + this.notificationType = new Enumeration(new SubscriptionNotificationTypeEnumFactory()); // bb + return this.notificationType; + } + + public boolean hasNotificationTypeElement() { + return this.notificationType != null && !this.notificationType.isEmpty(); + } + + public boolean hasNotificationType() { + return this.notificationType != null && !this.notificationType.isEmpty(); + } + + /** + * @param value {@link #notificationType} (The type of event being conveyed with this notificaiton.). This is the underlying object with id, value and extensions. The accessor "getNotificationType" gives direct access to the value + */ + public SubscriptionStatus setNotificationTypeElement(Enumeration value) { + this.notificationType = value; + return this; + } + + /** + * @return The type of event being conveyed with this notificaiton. + */ + public SubscriptionNotificationType getNotificationType() { + return this.notificationType == null ? null : this.notificationType.getValue(); + } + + /** + * @param value The type of event being conveyed with this notificaiton. + */ + public SubscriptionStatus setNotificationType(SubscriptionNotificationType value) { + if (this.notificationType == null) + this.notificationType = new Enumeration(new SubscriptionNotificationTypeEnumFactory()); + this.notificationType.setValue(value); + return this; + } + + /** + * @return {@link #eventsSinceSubscriptionStart} (The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications.). This is the underlying object with id, value and extensions. The accessor "getEventsSinceSubscriptionStart" gives direct access to the value + */ + public Integer64Type getEventsSinceSubscriptionStartElement() { + if (this.eventsSinceSubscriptionStart == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubscriptionStatus.eventsSinceSubscriptionStart"); + else if (Configuration.doAutoCreate()) + this.eventsSinceSubscriptionStart = new Integer64Type(); // bb + return this.eventsSinceSubscriptionStart; + } + + public boolean hasEventsSinceSubscriptionStartElement() { + return this.eventsSinceSubscriptionStart != null && !this.eventsSinceSubscriptionStart.isEmpty(); + } + + public boolean hasEventsSinceSubscriptionStart() { + return this.eventsSinceSubscriptionStart != null && !this.eventsSinceSubscriptionStart.isEmpty(); + } + + /** + * @param value {@link #eventsSinceSubscriptionStart} (The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications.). This is the underlying object with id, value and extensions. The accessor "getEventsSinceSubscriptionStart" gives direct access to the value + */ + public SubscriptionStatus setEventsSinceSubscriptionStartElement(Integer64Type value) { + this.eventsSinceSubscriptionStart = value; + return this; + } + + /** + * @return The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications. + */ + public long getEventsSinceSubscriptionStart() { + return this.eventsSinceSubscriptionStart == null || this.eventsSinceSubscriptionStart.isEmpty() ? 0 : this.eventsSinceSubscriptionStart.getValue(); + } + + /** + * @param value The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications. + */ + public SubscriptionStatus setEventsSinceSubscriptionStart(long value) { + this.eventsSinceSubscriptionStart = new Integer64Type(); + this.eventsSinceSubscriptionStart.setValue(value); + return this; + } + + /** + * @return {@link #eventsInNotification} (The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching.). This is the underlying object with id, value and extensions. The accessor "getEventsInNotification" gives direct access to the value + */ + public IntegerType getEventsInNotificationElement() { + if (this.eventsInNotification == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubscriptionStatus.eventsInNotification"); + else if (Configuration.doAutoCreate()) + this.eventsInNotification = new IntegerType(); // bb + return this.eventsInNotification; + } + + public boolean hasEventsInNotificationElement() { + return this.eventsInNotification != null && !this.eventsInNotification.isEmpty(); + } + + public boolean hasEventsInNotification() { + return this.eventsInNotification != null && !this.eventsInNotification.isEmpty(); + } + + /** + * @param value {@link #eventsInNotification} (The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching.). This is the underlying object with id, value and extensions. The accessor "getEventsInNotification" gives direct access to the value + */ + public SubscriptionStatus setEventsInNotificationElement(IntegerType value) { + this.eventsInNotification = value; + return this; + } + + /** + * @return The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching. + */ + public int getEventsInNotification() { + return this.eventsInNotification == null || this.eventsInNotification.isEmpty() ? 0 : this.eventsInNotification.getValue(); + } + + /** + * @param value The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching. + */ + public SubscriptionStatus setEventsInNotification(int value) { + if (this.eventsInNotification == null) + this.eventsInNotification = new IntegerType(); + this.eventsInNotification.setValue(value); + return this; + } + + /** + * @return {@link #subscription} (The reference to the Subscription which generated this notification.) + */ + public Reference getSubscription() { + if (this.subscription == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubscriptionStatus.subscription"); + else if (Configuration.doAutoCreate()) + this.subscription = new Reference(); // cc + return this.subscription; + } + + public boolean hasSubscription() { + return this.subscription != null && !this.subscription.isEmpty(); + } + + /** + * @param value {@link #subscription} (The reference to the Subscription which generated this notification.) + */ + public SubscriptionStatus setSubscription(Reference value) { + this.subscription = value; + return this; + } + + /** + * @return {@link #status} (The status of the subscription, which marks the server state for managing the subscription.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public Enumeration getStatusElement() { + if (this.status == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubscriptionStatus.status"); + else if (Configuration.doAutoCreate()) + this.status = new Enumeration(new SubscriptionStateEnumFactory()); // bb + return this.status; + } + + public boolean hasStatusElement() { + return this.status != null && !this.status.isEmpty(); + } + + public boolean hasStatus() { + return this.status != null && !this.status.isEmpty(); + } + + /** + * @param value {@link #status} (The status of the subscription, which marks the server state for managing the subscription.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + */ + public SubscriptionStatus setStatusElement(Enumeration value) { + this.status = value; + return this; + } + + /** + * @return The status of the subscription, which marks the server state for managing the subscription. + */ + public SubscriptionState getStatus() { + return this.status == null ? null : this.status.getValue(); + } + + /** + * @param value The status of the subscription, which marks the server state for managing the subscription. + */ + public SubscriptionStatus setStatus(SubscriptionState value) { + if (value == null) + this.status = null; + else { + if (this.status == null) + this.status = new Enumeration(new SubscriptionStateEnumFactory()); + this.status.setValue(value); + } + return this; + } + + /** + * @return {@link #topic} (The reference to the SubscriptionTopic for the Subscription which generated this notification.) + */ + public Reference getTopic() { + if (this.topic == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubscriptionStatus.topic"); + else if (Configuration.doAutoCreate()) + this.topic = new Reference(); // cc + return this.topic; + } + + public boolean hasTopic() { + return this.topic != null && !this.topic.isEmpty(); + } + + /** + * @param value {@link #topic} (The reference to the SubscriptionTopic for the Subscription which generated this notification.) + */ + public SubscriptionStatus setTopic(Reference value) { + this.topic = value; + return this; + } + + protected void listChildren(List children) { + super.listChildren(children); + children.add(new Property("notificationType", "code", "The type of event being conveyed with this notificaiton.", 0, 1, notificationType)); + children.add(new Property("eventsSinceSubscriptionStart", "integer64", "The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications.", 0, 1, eventsSinceSubscriptionStart)); + children.add(new Property("eventsInNotification", "integer", "The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching.", 0, 1, eventsInNotification)); + children.add(new Property("subscription", "Reference(Subscription)", "The reference to the Subscription which generated this notification.", 0, 1, subscription)); + children.add(new Property("status", "code", "The status of the subscription, which marks the server state for managing the subscription.", 0, 1, status)); + children.add(new Property("topic", "Reference(SubscriptionTopic)", "The reference to the SubscriptionTopic for the Subscription which generated this notification.", 0, 1, topic)); + } + + @Override + public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { + switch (_hash) { + case 1611538117: /*notificationType*/ return new Property("notificationType", "code", "The type of event being conveyed with this notificaiton.", 0, 1, notificationType); + case 304566692: /*eventsSinceSubscriptionStart*/ return new Property("eventsSinceSubscriptionStart", "integer64", "The total number of actual events which have been generated since the Subscription was created (inclusive of this notification) - regardless of how many have been successfully communicated. This number is NOT incremented for handshake and heartbeat notifications.", 0, 1, eventsSinceSubscriptionStart); + case 191408169: /*eventsInNotification*/ return new Property("eventsInNotification", "integer", "The total number of actual events represented within this notification. For handshake and heartbeat notifications, this will be zero or not present. For event-notifications, this number may be one or more, depending on server batching.", 0, 1, eventsInNotification); + case 341203229: /*subscription*/ return new Property("subscription", "Reference(Subscription)", "The reference to the Subscription which generated this notification.", 0, 1, subscription); + case -892481550: /*status*/ return new Property("status", "code", "The status of the subscription, which marks the server state for managing the subscription.", 0, 1, status); + case 110546223: /*topic*/ return new Property("topic", "Reference(SubscriptionTopic)", "The reference to the SubscriptionTopic for the Subscription which generated this notification.", 0, 1, topic); + default: return super.getNamedProperty(_hash, _name, _checkValid); + } + + } + + @Override + public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { + switch (hash) { + case 1611538117: /*notificationType*/ return this.notificationType == null ? new Base[0] : new Base[] {this.notificationType}; // Enumeration + case 304566692: /*eventsSinceSubscriptionStart*/ return this.eventsSinceSubscriptionStart == null ? new Base[0] : new Base[] {this.eventsSinceSubscriptionStart}; // Integer64Type + case 191408169: /*eventsInNotification*/ return this.eventsInNotification == null ? new Base[0] : new Base[] {this.eventsInNotification}; // IntegerType + case 341203229: /*subscription*/ return this.subscription == null ? new Base[0] : new Base[] {this.subscription}; // Reference + case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration + case 110546223: /*topic*/ return this.topic == null ? new Base[0] : new Base[] {this.topic}; // Reference + default: return super.getProperty(hash, name, checkValid); + } + + } + + @Override + public Base setProperty(int hash, String name, Base value) throws FHIRException { + switch (hash) { + case 1611538117: // notificationType + value = new SubscriptionNotificationTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.notificationType = (Enumeration) value; // Enumeration + return value; + case 304566692: // eventsSinceSubscriptionStart + this.eventsSinceSubscriptionStart = TypeConvertor.castToInteger64(value); // Integer64Type + return value; + case 191408169: // eventsInNotification + this.eventsInNotification = TypeConvertor.castToInteger(value); // IntegerType + return value; + case 341203229: // subscription + this.subscription = TypeConvertor.castToReference(value); // Reference + return value; + case -892481550: // status + value = new SubscriptionStateEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + return value; + case 110546223: // topic + this.topic = TypeConvertor.castToReference(value); // Reference + return value; + default: return super.setProperty(hash, name, value); + } + + } + + @Override + public Base setProperty(String name, Base value) throws FHIRException { + if (name.equals("notificationType")) { + value = new SubscriptionNotificationTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.notificationType = (Enumeration) value; // Enumeration + } else if (name.equals("eventsSinceSubscriptionStart")) { + this.eventsSinceSubscriptionStart = TypeConvertor.castToInteger64(value); // Integer64Type + } else if (name.equals("eventsInNotification")) { + this.eventsInNotification = TypeConvertor.castToInteger(value); // IntegerType + } else if (name.equals("subscription")) { + this.subscription = TypeConvertor.castToReference(value); // Reference + } else if (name.equals("status")) { + value = new SubscriptionStateEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.status = (Enumeration) value; // Enumeration + } else if (name.equals("topic")) { + this.topic = TypeConvertor.castToReference(value); // Reference + } else + return super.setProperty(name, value); + return value; + } + + @Override + public Base makeProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1611538117: return getNotificationTypeElement(); + case 304566692: return getEventsSinceSubscriptionStartElement(); + case 191408169: return getEventsInNotificationElement(); + case 341203229: return getSubscription(); + case -892481550: return getStatusElement(); + case 110546223: return getTopic(); + default: return super.makeProperty(hash, name); + } + + } + + @Override + public String[] getTypesForProperty(int hash, String name) throws FHIRException { + switch (hash) { + case 1611538117: /*notificationType*/ return new String[] {"code"}; + case 304566692: /*eventsSinceSubscriptionStart*/ return new String[] {"integer64"}; + case 191408169: /*eventsInNotification*/ return new String[] {"integer"}; + case 341203229: /*subscription*/ return new String[] {"Reference"}; + case -892481550: /*status*/ return new String[] {"code"}; + case 110546223: /*topic*/ return new String[] {"Reference"}; + default: return super.getTypesForProperty(hash, name); + } + + } + + @Override + public Base addChild(String name) throws FHIRException { + if (name.equals("notificationType")) { + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionStatus.notificationType"); + } + else if (name.equals("eventsSinceSubscriptionStart")) { + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionStatus.eventsSinceSubscriptionStart"); + } + else if (name.equals("eventsInNotification")) { + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionStatus.eventsInNotification"); + } + else if (name.equals("subscription")) { + this.subscription = new Reference(); + return this.subscription; + } + else if (name.equals("status")) { + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionStatus.status"); + } + else if (name.equals("topic")) { + this.topic = new Reference(); + return this.topic; + } + else + return super.addChild(name); + } + + public String fhirType() { + return "SubscriptionStatus"; + + } + + public SubscriptionStatus copy() { + SubscriptionStatus dst = new SubscriptionStatus(); + copyValues(dst); + return dst; + } + + public void copyValues(SubscriptionStatus dst) { + super.copyValues(dst); + dst.notificationType = notificationType == null ? null : notificationType.copy(); + dst.eventsSinceSubscriptionStart = eventsSinceSubscriptionStart == null ? null : eventsSinceSubscriptionStart.copy(); + dst.eventsInNotification = eventsInNotification == null ? null : eventsInNotification.copy(); + dst.subscription = subscription == null ? null : subscription.copy(); + dst.status = status == null ? null : status.copy(); + dst.topic = topic == null ? null : topic.copy(); + } + + protected SubscriptionStatus typedCopy() { + return copy(); + } + + @Override + public boolean equalsDeep(Base other_) { + if (!super.equalsDeep(other_)) + return false; + if (!(other_ instanceof SubscriptionStatus)) + return false; + SubscriptionStatus o = (SubscriptionStatus) other_; + return compareDeep(notificationType, o.notificationType, true) && compareDeep(eventsSinceSubscriptionStart, o.eventsSinceSubscriptionStart, true) + && compareDeep(eventsInNotification, o.eventsInNotification, true) && compareDeep(subscription, o.subscription, true) + && compareDeep(status, o.status, true) && compareDeep(topic, o.topic, true); + } + + @Override + public boolean equalsShallow(Base other_) { + if (!super.equalsShallow(other_)) + return false; + if (!(other_ instanceof SubscriptionStatus)) + return false; + SubscriptionStatus o = (SubscriptionStatus) other_; + return compareValues(notificationType, o.notificationType, true) && compareValues(eventsSinceSubscriptionStart, o.eventsSinceSubscriptionStart, true) + && compareValues(eventsInNotification, o.eventsInNotification, true) && compareValues(status, o.status, true) + ; + } + + public boolean isEmpty() { + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(notificationType, eventsSinceSubscriptionStart + , eventsInNotification, subscription, status, topic); + } + + @Override + public ResourceType getResourceType() { + return ResourceType.SubscriptionStatus; + } + + +} + diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Topic.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionTopic.java similarity index 68% rename from org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Topic.java rename to org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionTopic.java index 4622e773b..a2593a7db 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Topic.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubscriptionTopic.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -70,8 +70,8 @@ import ca.uhn.fhir.model.api.annotation.Block; /** * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. */ -@ResourceDef(name="Topic", profile="http://hl7.org/fhir/StructureDefinition/Topic") -public class Topic extends DomainResource { +@ResourceDef(name="SubscriptionTopic", profile="http://hl7.org/fhir/StructureDefinition/SubscriptionTopic") +public class SubscriptionTopic extends DomainResource { public enum InteractionTrigger { /** @@ -181,160 +181,20 @@ public class Topic extends DomainResource { } } - public enum TopicFilterByMatchType { - /** - * Used to match a value according to FHIR Search rules (e.g., Patient/123, Encounter/2002). - */ - EQUAL, - /** - * The key value in the topic stream is an active members of the reference set identified by the concept provided as the filter value. - */ - IN, - /** - * The key value in the topic stream is NOT an active members of the reference set identified by the concept provided as the filter value. - */ - NOTIN, - /** - * The key value is subsumes the value in the filter value. - */ - ABOVE, - /** - * The key value is subsumed by the value in the filter value. - */ - BELOW, - /** - * added to help the parsers with the generic types - */ - NULL; - public static TopicFilterByMatchType fromCode(String codeString) throws FHIRException { - if (codeString == null || "".equals(codeString)) - return null; - if ("=".equals(codeString)) - return EQUAL; - if ("in".equals(codeString)) - return IN; - if ("not-in".equals(codeString)) - return NOTIN; - if ("above".equals(codeString)) - return ABOVE; - if ("below".equals(codeString)) - return BELOW; - if (Configuration.isAcceptInvalidEnums()) - return null; - else - throw new FHIRException("Unknown TopicFilterByMatchType code '"+codeString+"'"); - } - public String toCode() { - switch (this) { - case EQUAL: return "="; - case IN: return "in"; - case NOTIN: return "not-in"; - case ABOVE: return "above"; - case BELOW: return "below"; - default: return "?"; - } - } - public String getSystem() { - switch (this) { - case EQUAL: return "http://hl7.org/fhir/topic-match-operator"; - case IN: return "http://hl7.org/fhir/topic-match-operator"; - case NOTIN: return "http://hl7.org/fhir/topic-match-operator"; - case ABOVE: return "http://hl7.org/fhir/topic-match-operator"; - case BELOW: return "http://hl7.org/fhir/topic-match-operator"; - default: return "?"; - } - } - public String getDefinition() { - switch (this) { - case EQUAL: return "Used to match a value according to FHIR Search rules (e.g., Patient/123, Encounter/2002)."; - case IN: return "The key value in the topic stream is an active members of the reference set identified by the concept provided as the filter value."; - case NOTIN: return "The key value in the topic stream is NOT an active members of the reference set identified by the concept provided as the filter value."; - case ABOVE: return "The key value is subsumes the value in the filter value."; - case BELOW: return "The key value is subsumed by the value in the filter value."; - default: return "?"; - } - } - public String getDisplay() { - switch (this) { - case EQUAL: return "="; - case IN: return "in"; - case NOTIN: return "not-in"; - case ABOVE: return "above"; - case BELOW: return "below"; - default: return "?"; - } - } - } - - public static class TopicFilterByMatchTypeEnumFactory implements EnumFactory { - public TopicFilterByMatchType fromCode(String codeString) throws IllegalArgumentException { - if (codeString == null || "".equals(codeString)) - if (codeString == null || "".equals(codeString)) - return null; - if ("=".equals(codeString)) - return TopicFilterByMatchType.EQUAL; - if ("in".equals(codeString)) - return TopicFilterByMatchType.IN; - if ("not-in".equals(codeString)) - return TopicFilterByMatchType.NOTIN; - if ("above".equals(codeString)) - return TopicFilterByMatchType.ABOVE; - if ("below".equals(codeString)) - return TopicFilterByMatchType.BELOW; - throw new IllegalArgumentException("Unknown TopicFilterByMatchType code '"+codeString+"'"); - } - public Enumeration fromType(Base code) throws FHIRException { - if (code == null) - return null; - if (code.isEmpty()) - return new Enumeration(this); - String codeString = ((PrimitiveType) code).asStringValue(); - if (codeString == null || "".equals(codeString)) - return null; - if ("=".equals(codeString)) - return new Enumeration(this, TopicFilterByMatchType.EQUAL); - if ("in".equals(codeString)) - return new Enumeration(this, TopicFilterByMatchType.IN); - if ("not-in".equals(codeString)) - return new Enumeration(this, TopicFilterByMatchType.NOTIN); - if ("above".equals(codeString)) - return new Enumeration(this, TopicFilterByMatchType.ABOVE); - if ("below".equals(codeString)) - return new Enumeration(this, TopicFilterByMatchType.BELOW); - throw new FHIRException("Unknown TopicFilterByMatchType code '"+codeString+"'"); - } - public String toCode(TopicFilterByMatchType code) { - if (code == TopicFilterByMatchType.EQUAL) - return "="; - if (code == TopicFilterByMatchType.IN) - return "in"; - if (code == TopicFilterByMatchType.NOTIN) - return "not-in"; - if (code == TopicFilterByMatchType.ABOVE) - return "above"; - if (code == TopicFilterByMatchType.BELOW) - return "below"; - return "?"; - } - public String toSystem(TopicFilterByMatchType code) { - return code.getSystem(); - } - } - @Block() - public static class TopicResourceTriggerComponent extends BackboneElement implements IBaseBackboneElement { + public static class SubscriptionTopicResourceTriggerComponent extends BackboneElement implements IBaseBackboneElement { /** - * The human readable description of what triggers inclusion into this topic - for example, "Beginning of a clinical encounter". + * The human readable description of what triggers inclusion into this subscription topic - for example, "Beginning of a clinical encounter". */ @Child(name = "description", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Text representation of the trigger", formalDefinition="The human readable description of what triggers inclusion into this topic - for example, \"Beginning of a clinical encounter\"." ) + @Description(shortDefinition="Text representation of the trigger", formalDefinition="The human readable description of what triggers inclusion into this subscription topic - for example, \"Beginning of a clinical encounter\"." ) protected StringType description; /** - * The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic. + * The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic. */ @Child(name = "resourceType", type = {CodeType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Candidate types for this topic", formalDefinition="The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic." ) + @Description(shortDefinition="Candidate types for this subscription topic", formalDefinition="The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/resource-types") protected List resourceType; @@ -347,35 +207,35 @@ public class Topic extends DomainResource { protected List> methodCriteria; /** - * The FHIR query based rules that the server should use to determine when to trigger a notification for this topic. + * The FHIR query based rules that the server should use to determine when to trigger a notification for this subscription topic. */ @Child(name = "queryCriteria", type = {}, order=4, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Query based trigger rule", formalDefinition="The FHIR query based rules that the server should use to determine when to trigger a notification for this topic." ) - protected TopicResourceTriggerQueryCriteriaComponent queryCriteria; + @Description(shortDefinition="Query based trigger rule", formalDefinition="The FHIR query based rules that the server should use to determine when to trigger a notification for this subscription topic." ) + protected SubscriptionTopicResourceTriggerQueryCriteriaComponent queryCriteria; /** - * The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. + * The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND. */ - @Child(name = "fhirPathCriteria", type = {StringType.class}, order=5, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="FHIRPath based trigger rule", formalDefinition="The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic." ) - protected StringType fhirPathCriteria; + @Child(name = "fhirPathCriteria", type = {StringType.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="FHIRPath based trigger rule", formalDefinition="The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND." ) + protected List fhirPathCriteria; - private static final long serialVersionUID = 1020326735L; + private static final long serialVersionUID = -265026948L; /** * Constructor */ - public TopicResourceTriggerComponent() { + public SubscriptionTopicResourceTriggerComponent() { super(); } /** - * @return {@link #description} (The human readable description of what triggers inclusion into this topic - for example, "Beginning of a clinical encounter".). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + * @return {@link #description} (The human readable description of what triggers inclusion into this subscription topic - for example, "Beginning of a clinical encounter".). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value */ public StringType getDescriptionElement() { if (this.description == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicResourceTriggerComponent.description"); + throw new Error("Attempt to auto-create SubscriptionTopicResourceTriggerComponent.description"); else if (Configuration.doAutoCreate()) this.description = new StringType(); // bb return this.description; @@ -390,24 +250,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #description} (The human readable description of what triggers inclusion into this topic - for example, "Beginning of a clinical encounter".). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value + * @param value {@link #description} (The human readable description of what triggers inclusion into this subscription topic - for example, "Beginning of a clinical encounter".). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value */ - public TopicResourceTriggerComponent setDescriptionElement(StringType value) { + public SubscriptionTopicResourceTriggerComponent setDescriptionElement(StringType value) { this.description = value; return this; } /** - * @return The human readable description of what triggers inclusion into this topic - for example, "Beginning of a clinical encounter". + * @return The human readable description of what triggers inclusion into this subscription topic - for example, "Beginning of a clinical encounter". */ public String getDescription() { return this.description == null ? null : this.description.getValue(); } /** - * @param value The human readable description of what triggers inclusion into this topic - for example, "Beginning of a clinical encounter". + * @param value The human readable description of what triggers inclusion into this subscription topic - for example, "Beginning of a clinical encounter". */ - public TopicResourceTriggerComponent setDescription(String value) { + public SubscriptionTopicResourceTriggerComponent setDescription(String value) { if (Utilities.noString(value)) this.description = null; else { @@ -419,7 +279,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #resourceType} (The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic.) + * @return {@link #resourceType} (The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic.) */ public List getResourceType() { if (this.resourceType == null) @@ -430,7 +290,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public TopicResourceTriggerComponent setResourceType(List theResourceType) { + public SubscriptionTopicResourceTriggerComponent setResourceType(List theResourceType) { this.resourceType = theResourceType; return this; } @@ -445,7 +305,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #resourceType} (The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic.) + * @return {@link #resourceType} (The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic.) */ public CodeType addResourceTypeElement() {//2 CodeType t = new CodeType(); @@ -456,9 +316,9 @@ public class Topic extends DomainResource { } /** - * @param value {@link #resourceType} (The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic.) + * @param value {@link #resourceType} (The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic.) */ - public TopicResourceTriggerComponent addResourceType(String value) { //1 + public SubscriptionTopicResourceTriggerComponent addResourceType(String value) { //1 CodeType t = new CodeType(); t.setValue(value); if (this.resourceType == null) @@ -468,7 +328,7 @@ public class Topic extends DomainResource { } /** - * @param value {@link #resourceType} (The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic.) + * @param value {@link #resourceType} (The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic.) */ public boolean hasResourceType(String value) { if (this.resourceType == null) @@ -491,7 +351,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public TopicResourceTriggerComponent setMethodCriteria(List> theMethodCriteria) { + public SubscriptionTopicResourceTriggerComponent setMethodCriteria(List> theMethodCriteria) { this.methodCriteria = theMethodCriteria; return this; } @@ -519,7 +379,7 @@ public class Topic extends DomainResource { /** * @param value {@link #methodCriteria} (The REST interaction based rules that the server should use to determine when to trigger a notification for this topic.) */ - public TopicResourceTriggerComponent addMethodCriteria(InteractionTrigger value) { //1 + public SubscriptionTopicResourceTriggerComponent addMethodCriteria(InteractionTrigger value) { //1 Enumeration t = new Enumeration(new InteractionTriggerEnumFactory()); t.setValue(value); if (this.methodCriteria == null) @@ -541,14 +401,14 @@ public class Topic extends DomainResource { } /** - * @return {@link #queryCriteria} (The FHIR query based rules that the server should use to determine when to trigger a notification for this topic.) + * @return {@link #queryCriteria} (The FHIR query based rules that the server should use to determine when to trigger a notification for this subscription topic.) */ - public TopicResourceTriggerQueryCriteriaComponent getQueryCriteria() { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent getQueryCriteria() { if (this.queryCriteria == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicResourceTriggerComponent.queryCriteria"); + throw new Error("Attempt to auto-create SubscriptionTopicResourceTriggerComponent.queryCriteria"); else if (Configuration.doAutoCreate()) - this.queryCriteria = new TopicResourceTriggerQueryCriteriaComponent(); // cc + this.queryCriteria = new SubscriptionTopicResourceTriggerQueryCriteriaComponent(); // cc return this.queryCriteria; } @@ -557,79 +417,91 @@ public class Topic extends DomainResource { } /** - * @param value {@link #queryCriteria} (The FHIR query based rules that the server should use to determine when to trigger a notification for this topic.) + * @param value {@link #queryCriteria} (The FHIR query based rules that the server should use to determine when to trigger a notification for this subscription topic.) */ - public TopicResourceTriggerComponent setQueryCriteria(TopicResourceTriggerQueryCriteriaComponent value) { + public SubscriptionTopicResourceTriggerComponent setQueryCriteria(SubscriptionTopicResourceTriggerQueryCriteriaComponent value) { this.queryCriteria = value; return this; } /** - * @return {@link #fhirPathCriteria} (The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic.). This is the underlying object with id, value and extensions. The accessor "getFhirPathCriteria" gives direct access to the value + * @return {@link #fhirPathCriteria} (The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND.) */ - public StringType getFhirPathCriteriaElement() { + public List getFhirPathCriteria() { if (this.fhirPathCriteria == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicResourceTriggerComponent.fhirPathCriteria"); - else if (Configuration.doAutoCreate()) - this.fhirPathCriteria = new StringType(); // bb + this.fhirPathCriteria = new ArrayList(); return this.fhirPathCriteria; } - public boolean hasFhirPathCriteriaElement() { - return this.fhirPathCriteria != null && !this.fhirPathCriteria.isEmpty(); + /** + * @return Returns a reference to this for easy method chaining + */ + public SubscriptionTopicResourceTriggerComponent setFhirPathCriteria(List theFhirPathCriteria) { + this.fhirPathCriteria = theFhirPathCriteria; + return this; } public boolean hasFhirPathCriteria() { - return this.fhirPathCriteria != null && !this.fhirPathCriteria.isEmpty(); + if (this.fhirPathCriteria == null) + return false; + for (StringType item : this.fhirPathCriteria) + if (!item.isEmpty()) + return true; + return false; } /** - * @param value {@link #fhirPathCriteria} (The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic.). This is the underlying object with id, value and extensions. The accessor "getFhirPathCriteria" gives direct access to the value + * @return {@link #fhirPathCriteria} (The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND.) */ - public TopicResourceTriggerComponent setFhirPathCriteriaElement(StringType value) { - this.fhirPathCriteria = value; + public StringType addFhirPathCriteriaElement() {//2 + StringType t = new StringType(); + if (this.fhirPathCriteria == null) + this.fhirPathCriteria = new ArrayList(); + this.fhirPathCriteria.add(t); + return t; + } + + /** + * @param value {@link #fhirPathCriteria} (The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND.) + */ + public SubscriptionTopicResourceTriggerComponent addFhirPathCriteria(String value) { //1 + StringType t = new StringType(); + t.setValue(value); + if (this.fhirPathCriteria == null) + this.fhirPathCriteria = new ArrayList(); + this.fhirPathCriteria.add(t); return this; } /** - * @return The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. + * @param value {@link #fhirPathCriteria} (The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND.) */ - public String getFhirPathCriteria() { - return this.fhirPathCriteria == null ? null : this.fhirPathCriteria.getValue(); - } - - /** - * @param value The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. - */ - public TopicResourceTriggerComponent setFhirPathCriteria(String value) { - if (Utilities.noString(value)) - this.fhirPathCriteria = null; - else { - if (this.fhirPathCriteria == null) - this.fhirPathCriteria = new StringType(); - this.fhirPathCriteria.setValue(value); - } - return this; + public boolean hasFhirPathCriteria(String value) { + if (this.fhirPathCriteria == null) + return false; + for (StringType v : this.fhirPathCriteria) + if (v.getValue().equals(value)) // string + return true; + return false; } protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("description", "string", "The human readable description of what triggers inclusion into this topic - for example, \"Beginning of a clinical encounter\".", 0, 1, description)); - children.add(new Property("resourceType", "code", "The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic.", 0, java.lang.Integer.MAX_VALUE, resourceType)); + children.add(new Property("description", "string", "The human readable description of what triggers inclusion into this subscription topic - for example, \"Beginning of a clinical encounter\".", 0, 1, description)); + children.add(new Property("resourceType", "code", "The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic.", 0, java.lang.Integer.MAX_VALUE, resourceType)); children.add(new Property("methodCriteria", "code", "The REST interaction based rules that the server should use to determine when to trigger a notification for this topic.", 0, java.lang.Integer.MAX_VALUE, methodCriteria)); - children.add(new Property("queryCriteria", "", "The FHIR query based rules that the server should use to determine when to trigger a notification for this topic.", 0, 1, queryCriteria)); - children.add(new Property("fhirPathCriteria", "string", "The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic.", 0, 1, fhirPathCriteria)); + children.add(new Property("queryCriteria", "", "The FHIR query based rules that the server should use to determine when to trigger a notification for this subscription topic.", 0, 1, queryCriteria)); + children.add(new Property("fhirPathCriteria", "string", "The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND.", 0, java.lang.Integer.MAX_VALUE, fhirPathCriteria)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case -1724546052: /*description*/ return new Property("description", "string", "The human readable description of what triggers inclusion into this topic - for example, \"Beginning of a clinical encounter\".", 0, 1, description); - case -384364440: /*resourceType*/ return new Property("resourceType", "code", "The list of resource types that are candidates for this topic. For example, the Encounter resource is updated in an 'admission' topic.", 0, java.lang.Integer.MAX_VALUE, resourceType); + case -1724546052: /*description*/ return new Property("description", "string", "The human readable description of what triggers inclusion into this subscription topic - for example, \"Beginning of a clinical encounter\".", 0, 1, description); + case -384364440: /*resourceType*/ return new Property("resourceType", "code", "The list of resource types that are candidates for this subscription topic. For example, the Encounter resource is updated in an 'admission' subscription topic.", 0, java.lang.Integer.MAX_VALUE, resourceType); case -1924160672: /*methodCriteria*/ return new Property("methodCriteria", "code", "The REST interaction based rules that the server should use to determine when to trigger a notification for this topic.", 0, java.lang.Integer.MAX_VALUE, methodCriteria); - case -545123257: /*queryCriteria*/ return new Property("queryCriteria", "", "The FHIR query based rules that the server should use to determine when to trigger a notification for this topic.", 0, 1, queryCriteria); - case 1929785263: /*fhirPathCriteria*/ return new Property("fhirPathCriteria", "string", "The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic.", 0, 1, fhirPathCriteria); + case -545123257: /*queryCriteria*/ return new Property("queryCriteria", "", "The FHIR query based rules that the server should use to determine when to trigger a notification for this subscription topic.", 0, 1, queryCriteria); + case 1929785263: /*fhirPathCriteria*/ return new Property("fhirPathCriteria", "string", "The FHIRPath based rules that the server should use to determine when to trigger a notification for this topic. If there are multiple, FHIRPath filters are joined with AND.", 0, java.lang.Integer.MAX_VALUE, fhirPathCriteria); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -641,8 +513,8 @@ public class Topic extends DomainResource { case -1724546052: /*description*/ return this.description == null ? new Base[0] : new Base[] {this.description}; // StringType case -384364440: /*resourceType*/ return this.resourceType == null ? new Base[0] : this.resourceType.toArray(new Base[this.resourceType.size()]); // CodeType case -1924160672: /*methodCriteria*/ return this.methodCriteria == null ? new Base[0] : this.methodCriteria.toArray(new Base[this.methodCriteria.size()]); // Enumeration - case -545123257: /*queryCriteria*/ return this.queryCriteria == null ? new Base[0] : new Base[] {this.queryCriteria}; // TopicResourceTriggerQueryCriteriaComponent - case 1929785263: /*fhirPathCriteria*/ return this.fhirPathCriteria == null ? new Base[0] : new Base[] {this.fhirPathCriteria}; // StringType + case -545123257: /*queryCriteria*/ return this.queryCriteria == null ? new Base[0] : new Base[] {this.queryCriteria}; // SubscriptionTopicResourceTriggerQueryCriteriaComponent + case 1929785263: /*fhirPathCriteria*/ return this.fhirPathCriteria == null ? new Base[0] : this.fhirPathCriteria.toArray(new Base[this.fhirPathCriteria.size()]); // StringType default: return super.getProperty(hash, name, checkValid); } @@ -662,10 +534,10 @@ public class Topic extends DomainResource { this.getMethodCriteria().add((Enumeration) value); // Enumeration return value; case -545123257: // queryCriteria - this.queryCriteria = (TopicResourceTriggerQueryCriteriaComponent) value; // TopicResourceTriggerQueryCriteriaComponent + this.queryCriteria = (SubscriptionTopicResourceTriggerQueryCriteriaComponent) value; // SubscriptionTopicResourceTriggerQueryCriteriaComponent return value; case 1929785263: // fhirPathCriteria - this.fhirPathCriteria = TypeConvertor.castToString(value); // StringType + this.getFhirPathCriteria().add(TypeConvertor.castToString(value)); // StringType return value; default: return super.setProperty(hash, name, value); } @@ -682,9 +554,9 @@ public class Topic extends DomainResource { value = new InteractionTriggerEnumFactory().fromType(TypeConvertor.castToCode(value)); this.getMethodCriteria().add((Enumeration) value); } else if (name.equals("queryCriteria")) { - this.queryCriteria = (TopicResourceTriggerQueryCriteriaComponent) value; // TopicResourceTriggerQueryCriteriaComponent + this.queryCriteria = (SubscriptionTopicResourceTriggerQueryCriteriaComponent) value; // SubscriptionTopicResourceTriggerQueryCriteriaComponent } else if (name.equals("fhirPathCriteria")) { - this.fhirPathCriteria = TypeConvertor.castToString(value); // StringType + this.getFhirPathCriteria().add(TypeConvertor.castToString(value)); } else return super.setProperty(name, value); return value; @@ -697,7 +569,7 @@ public class Topic extends DomainResource { case -384364440: return addResourceTypeElement(); case -1924160672: return addMethodCriteriaElement(); case -545123257: return getQueryCriteria(); - case 1929785263: return getFhirPathCriteriaElement(); + case 1929785263: return addFhirPathCriteriaElement(); default: return super.makeProperty(hash, name); } @@ -719,32 +591,32 @@ public class Topic extends DomainResource { @Override public Base addChild(String name) throws FHIRException { if (name.equals("description")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.description"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.description"); } else if (name.equals("resourceType")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.resourceType"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.resourceType"); } else if (name.equals("methodCriteria")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.methodCriteria"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.methodCriteria"); } else if (name.equals("queryCriteria")) { - this.queryCriteria = new TopicResourceTriggerQueryCriteriaComponent(); + this.queryCriteria = new SubscriptionTopicResourceTriggerQueryCriteriaComponent(); return this.queryCriteria; } else if (name.equals("fhirPathCriteria")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.fhirPathCriteria"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.fhirPathCriteria"); } else return super.addChild(name); } - public TopicResourceTriggerComponent copy() { - TopicResourceTriggerComponent dst = new TopicResourceTriggerComponent(); + public SubscriptionTopicResourceTriggerComponent copy() { + SubscriptionTopicResourceTriggerComponent dst = new SubscriptionTopicResourceTriggerComponent(); copyValues(dst); return dst; } - public void copyValues(TopicResourceTriggerComponent dst) { + public void copyValues(SubscriptionTopicResourceTriggerComponent dst) { super.copyValues(dst); dst.description = description == null ? null : description.copy(); if (resourceType != null) { @@ -758,16 +630,20 @@ public class Topic extends DomainResource { dst.methodCriteria.add(i.copy()); }; dst.queryCriteria = queryCriteria == null ? null : queryCriteria.copy(); - dst.fhirPathCriteria = fhirPathCriteria == null ? null : fhirPathCriteria.copy(); + if (fhirPathCriteria != null) { + dst.fhirPathCriteria = new ArrayList(); + for (StringType i : fhirPathCriteria) + dst.fhirPathCriteria.add(i.copy()); + }; } @Override public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof TopicResourceTriggerComponent)) + if (!(other_ instanceof SubscriptionTopicResourceTriggerComponent)) return false; - TopicResourceTriggerComponent o = (TopicResourceTriggerComponent) other_; + SubscriptionTopicResourceTriggerComponent o = (SubscriptionTopicResourceTriggerComponent) other_; return compareDeep(description, o.description, true) && compareDeep(resourceType, o.resourceType, true) && compareDeep(methodCriteria, o.methodCriteria, true) && compareDeep(queryCriteria, o.queryCriteria, true) && compareDeep(fhirPathCriteria, o.fhirPathCriteria, true); @@ -777,9 +653,9 @@ public class Topic extends DomainResource { public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof TopicResourceTriggerComponent)) + if (!(other_ instanceof SubscriptionTopicResourceTriggerComponent)) return false; - TopicResourceTriggerComponent o = (TopicResourceTriggerComponent) other_; + SubscriptionTopicResourceTriggerComponent o = (SubscriptionTopicResourceTriggerComponent) other_; return compareValues(description, o.description, true) && compareValues(resourceType, o.resourceType, true) && compareValues(methodCriteria, o.methodCriteria, true) && compareValues(fhirPathCriteria, o.fhirPathCriteria, true) ; @@ -791,14 +667,14 @@ public class Topic extends DomainResource { } public String fhirType() { - return "Topic.resourceTrigger"; + return "SubscriptionTopic.resourceTrigger"; } } @Block() - public static class TopicResourceTriggerQueryCriteriaComponent extends BackboneElement implements IBaseBackboneElement { + public static class SubscriptionTopicResourceTriggerQueryCriteriaComponent extends BackboneElement implements IBaseBackboneElement { /** * The FHIR query based rules are applied to the previous resource state. */ @@ -825,7 +701,7 @@ public class Topic extends DomainResource { /** * Constructor */ - public TopicResourceTriggerQueryCriteriaComponent() { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent() { super(); } @@ -835,7 +711,7 @@ public class Topic extends DomainResource { public StringType getPreviousElement() { if (this.previous == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicResourceTriggerQueryCriteriaComponent.previous"); + throw new Error("Attempt to auto-create SubscriptionTopicResourceTriggerQueryCriteriaComponent.previous"); else if (Configuration.doAutoCreate()) this.previous = new StringType(); // bb return this.previous; @@ -852,7 +728,7 @@ public class Topic extends DomainResource { /** * @param value {@link #previous} (The FHIR query based rules are applied to the previous resource state.). This is the underlying object with id, value and extensions. The accessor "getPrevious" gives direct access to the value */ - public TopicResourceTriggerQueryCriteriaComponent setPreviousElement(StringType value) { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent setPreviousElement(StringType value) { this.previous = value; return this; } @@ -867,7 +743,7 @@ public class Topic extends DomainResource { /** * @param value The FHIR query based rules are applied to the previous resource state. */ - public TopicResourceTriggerQueryCriteriaComponent setPrevious(String value) { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent setPrevious(String value) { if (Utilities.noString(value)) this.previous = null; else { @@ -884,7 +760,7 @@ public class Topic extends DomainResource { public StringType getCurrentElement() { if (this.current == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicResourceTriggerQueryCriteriaComponent.current"); + throw new Error("Attempt to auto-create SubscriptionTopicResourceTriggerQueryCriteriaComponent.current"); else if (Configuration.doAutoCreate()) this.current = new StringType(); // bb return this.current; @@ -901,7 +777,7 @@ public class Topic extends DomainResource { /** * @param value {@link #current} (The FHIR query based rules are applied to the current resource state.). This is the underlying object with id, value and extensions. The accessor "getCurrent" gives direct access to the value */ - public TopicResourceTriggerQueryCriteriaComponent setCurrentElement(StringType value) { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent setCurrentElement(StringType value) { this.current = value; return this; } @@ -916,7 +792,7 @@ public class Topic extends DomainResource { /** * @param value The FHIR query based rules are applied to the current resource state. */ - public TopicResourceTriggerQueryCriteriaComponent setCurrent(String value) { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent setCurrent(String value) { if (Utilities.noString(value)) this.current = null; else { @@ -933,7 +809,7 @@ public class Topic extends DomainResource { public BooleanType getRequireBothElement() { if (this.requireBoth == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicResourceTriggerQueryCriteriaComponent.requireBoth"); + throw new Error("Attempt to auto-create SubscriptionTopicResourceTriggerQueryCriteriaComponent.requireBoth"); else if (Configuration.doAutoCreate()) this.requireBoth = new BooleanType(); // bb return this.requireBoth; @@ -950,7 +826,7 @@ public class Topic extends DomainResource { /** * @param value {@link #requireBoth} (If set to true, both current and previous criteria must evaluate true to trigger a notification for this topic. Otherwise a notification for this topic will be triggered if either one evaluates to true.). This is the underlying object with id, value and extensions. The accessor "getRequireBoth" gives direct access to the value */ - public TopicResourceTriggerQueryCriteriaComponent setRequireBothElement(BooleanType value) { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent setRequireBothElement(BooleanType value) { this.requireBoth = value; return this; } @@ -965,7 +841,7 @@ public class Topic extends DomainResource { /** * @param value If set to true, both current and previous criteria must evaluate true to trigger a notification for this topic. Otherwise a notification for this topic will be triggered if either one evaluates to true. */ - public TopicResourceTriggerQueryCriteriaComponent setRequireBoth(boolean value) { + public SubscriptionTopicResourceTriggerQueryCriteriaComponent setRequireBoth(boolean value) { if (this.requireBoth == null) this.requireBoth = new BooleanType(); this.requireBoth.setValue(value); @@ -1056,25 +932,25 @@ public class Topic extends DomainResource { @Override public Base addChild(String name) throws FHIRException { if (name.equals("previous")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.queryCriteria.previous"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.queryCriteria.previous"); } else if (name.equals("current")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.queryCriteria.current"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.queryCriteria.current"); } else if (name.equals("requireBoth")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.resourceTrigger.queryCriteria.requireBoth"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.resourceTrigger.queryCriteria.requireBoth"); } else return super.addChild(name); } - public TopicResourceTriggerQueryCriteriaComponent copy() { - TopicResourceTriggerQueryCriteriaComponent dst = new TopicResourceTriggerQueryCriteriaComponent(); + public SubscriptionTopicResourceTriggerQueryCriteriaComponent copy() { + SubscriptionTopicResourceTriggerQueryCriteriaComponent dst = new SubscriptionTopicResourceTriggerQueryCriteriaComponent(); copyValues(dst); return dst; } - public void copyValues(TopicResourceTriggerQueryCriteriaComponent dst) { + public void copyValues(SubscriptionTopicResourceTriggerQueryCriteriaComponent dst) { super.copyValues(dst); dst.previous = previous == null ? null : previous.copy(); dst.current = current == null ? null : current.copy(); @@ -1085,9 +961,9 @@ public class Topic extends DomainResource { public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof TopicResourceTriggerQueryCriteriaComponent)) + if (!(other_ instanceof SubscriptionTopicResourceTriggerQueryCriteriaComponent)) return false; - TopicResourceTriggerQueryCriteriaComponent o = (TopicResourceTriggerQueryCriteriaComponent) other_; + SubscriptionTopicResourceTriggerQueryCriteriaComponent o = (SubscriptionTopicResourceTriggerQueryCriteriaComponent) other_; return compareDeep(previous, o.previous, true) && compareDeep(current, o.current, true) && compareDeep(requireBoth, o.requireBoth, true) ; } @@ -1096,9 +972,9 @@ public class Topic extends DomainResource { public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof TopicResourceTriggerQueryCriteriaComponent)) + if (!(other_ instanceof SubscriptionTopicResourceTriggerQueryCriteriaComponent)) return false; - TopicResourceTriggerQueryCriteriaComponent o = (TopicResourceTriggerQueryCriteriaComponent) other_; + SubscriptionTopicResourceTriggerQueryCriteriaComponent o = (SubscriptionTopicResourceTriggerQueryCriteriaComponent) other_; return compareValues(previous, o.previous, true) && compareValues(current, o.current, true) && compareValues(requireBoth, o.requireBoth, true) ; } @@ -1109,28 +985,28 @@ public class Topic extends DomainResource { } public String fhirType() { - return "Topic.resourceTrigger.queryCriteria"; + return "SubscriptionTopic.resourceTrigger.queryCriteria"; } } @Block() - public static class TopicCanFilterByComponent extends BackboneElement implements IBaseBackboneElement { + public static class SubscriptionTopicCanFilterByComponent extends BackboneElement implements IBaseBackboneElement { /** * A search parameter (like "patient") which is a label for the filter. */ - @Child(name = "name", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Child(name = "searchParamName", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Search parameter that serves as filter key", formalDefinition="A search parameter (like \"patient\") which is a label for the filter." ) - protected StringType name; + protected StringType searchParamName; /** * Allowable operators to apply when determining matches (Search Modifiers). */ - @Child(name = "matchType", type = {CodeType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="= | in | not-in | above | below", formalDefinition="Allowable operators to apply when determining matches (Search Modifiers)." ) - @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/topic-match-operator") - protected List> matchType; + @Child(name = "searchModifier", type = {CodeType.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="= | eq | ne | gt | lt | ge | le | sa | eb | ap | above | below | in | not-in | of-type", formalDefinition="Allowable operators to apply when determining matches (Search Modifiers)." ) + @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/subscription-search-modifier") + protected List> searchModifier; /** * Description of how this filter parameter is intended to be used. @@ -1139,120 +1015,120 @@ public class Topic extends DomainResource { @Description(shortDefinition="Description of this filter parameter", formalDefinition="Description of how this filter parameter is intended to be used." ) protected MarkdownType documentation; - private static final long serialVersionUID = -9356414L; + private static final long serialVersionUID = 482273720L; /** * Constructor */ - public TopicCanFilterByComponent() { + public SubscriptionTopicCanFilterByComponent() { super(); } /** - * @return {@link #name} (A search parameter (like "patient") which is a label for the filter.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + * @return {@link #searchParamName} (A search parameter (like "patient") which is a label for the filter.). This is the underlying object with id, value and extensions. The accessor "getSearchParamName" gives direct access to the value */ - public StringType getNameElement() { - if (this.name == null) + public StringType getSearchParamNameElement() { + if (this.searchParamName == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicCanFilterByComponent.name"); + throw new Error("Attempt to auto-create SubscriptionTopicCanFilterByComponent.searchParamName"); else if (Configuration.doAutoCreate()) - this.name = new StringType(); // bb - return this.name; + this.searchParamName = new StringType(); // bb + return this.searchParamName; } - public boolean hasNameElement() { - return this.name != null && !this.name.isEmpty(); + public boolean hasSearchParamNameElement() { + return this.searchParamName != null && !this.searchParamName.isEmpty(); } - public boolean hasName() { - return this.name != null && !this.name.isEmpty(); + public boolean hasSearchParamName() { + return this.searchParamName != null && !this.searchParamName.isEmpty(); } /** - * @param value {@link #name} (A search parameter (like "patient") which is a label for the filter.). This is the underlying object with id, value and extensions. The accessor "getName" gives direct access to the value + * @param value {@link #searchParamName} (A search parameter (like "patient") which is a label for the filter.). This is the underlying object with id, value and extensions. The accessor "getSearchParamName" gives direct access to the value */ - public TopicCanFilterByComponent setNameElement(StringType value) { - this.name = value; + public SubscriptionTopicCanFilterByComponent setSearchParamNameElement(StringType value) { + this.searchParamName = value; return this; } /** * @return A search parameter (like "patient") which is a label for the filter. */ - public String getName() { - return this.name == null ? null : this.name.getValue(); + public String getSearchParamName() { + return this.searchParamName == null ? null : this.searchParamName.getValue(); } /** * @param value A search parameter (like "patient") which is a label for the filter. */ - public TopicCanFilterByComponent setName(String value) { + public SubscriptionTopicCanFilterByComponent setSearchParamName(String value) { if (Utilities.noString(value)) - this.name = null; + this.searchParamName = null; else { - if (this.name == null) - this.name = new StringType(); - this.name.setValue(value); + if (this.searchParamName == null) + this.searchParamName = new StringType(); + this.searchParamName.setValue(value); } return this; } /** - * @return {@link #matchType} (Allowable operators to apply when determining matches (Search Modifiers).) + * @return {@link #searchModifier} (Allowable operators to apply when determining matches (Search Modifiers).) */ - public List> getMatchType() { - if (this.matchType == null) - this.matchType = new ArrayList>(); - return this.matchType; + public List> getSearchModifier() { + if (this.searchModifier == null) + this.searchModifier = new ArrayList>(); + return this.searchModifier; } /** * @return Returns a reference to this for easy method chaining */ - public TopicCanFilterByComponent setMatchType(List> theMatchType) { - this.matchType = theMatchType; + public SubscriptionTopicCanFilterByComponent setSearchModifier(List> theSearchModifier) { + this.searchModifier = theSearchModifier; return this; } - public boolean hasMatchType() { - if (this.matchType == null) + public boolean hasSearchModifier() { + if (this.searchModifier == null) return false; - for (Enumeration item : this.matchType) + for (Enumeration item : this.searchModifier) if (!item.isEmpty()) return true; return false; } /** - * @return {@link #matchType} (Allowable operators to apply when determining matches (Search Modifiers).) + * @return {@link #searchModifier} (Allowable operators to apply when determining matches (Search Modifiers).) */ - public Enumeration addMatchTypeElement() {//2 - Enumeration t = new Enumeration(new TopicFilterByMatchTypeEnumFactory()); - if (this.matchType == null) - this.matchType = new ArrayList>(); - this.matchType.add(t); + public Enumeration addSearchModifierElement() {//2 + Enumeration t = new Enumeration(new SubscriptionSearchModifierEnumFactory()); + if (this.searchModifier == null) + this.searchModifier = new ArrayList>(); + this.searchModifier.add(t); return t; } /** - * @param value {@link #matchType} (Allowable operators to apply when determining matches (Search Modifiers).) + * @param value {@link #searchModifier} (Allowable operators to apply when determining matches (Search Modifiers).) */ - public TopicCanFilterByComponent addMatchType(TopicFilterByMatchType value) { //1 - Enumeration t = new Enumeration(new TopicFilterByMatchTypeEnumFactory()); + public SubscriptionTopicCanFilterByComponent addSearchModifier(SubscriptionSearchModifier value) { //1 + Enumeration t = new Enumeration(new SubscriptionSearchModifierEnumFactory()); t.setValue(value); - if (this.matchType == null) - this.matchType = new ArrayList>(); - this.matchType.add(t); + if (this.searchModifier == null) + this.searchModifier = new ArrayList>(); + this.searchModifier.add(t); return this; } /** - * @param value {@link #matchType} (Allowable operators to apply when determining matches (Search Modifiers).) + * @param value {@link #searchModifier} (Allowable operators to apply when determining matches (Search Modifiers).) */ - public boolean hasMatchType(TopicFilterByMatchType value) { - if (this.matchType == null) + public boolean hasSearchModifier(SubscriptionSearchModifier value) { + if (this.searchModifier == null) return false; - for (Enumeration v : this.matchType) + for (Enumeration v : this.searchModifier) if (v.getValue().equals(value)) // code return true; return false; @@ -1264,7 +1140,7 @@ public class Topic extends DomainResource { public MarkdownType getDocumentationElement() { if (this.documentation == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create TopicCanFilterByComponent.documentation"); + throw new Error("Attempt to auto-create SubscriptionTopicCanFilterByComponent.documentation"); else if (Configuration.doAutoCreate()) this.documentation = new MarkdownType(); // bb return this.documentation; @@ -1281,7 +1157,7 @@ public class Topic extends DomainResource { /** * @param value {@link #documentation} (Description of how this filter parameter is intended to be used.). This is the underlying object with id, value and extensions. The accessor "getDocumentation" gives direct access to the value */ - public TopicCanFilterByComponent setDocumentationElement(MarkdownType value) { + public SubscriptionTopicCanFilterByComponent setDocumentationElement(MarkdownType value) { this.documentation = value; return this; } @@ -1296,7 +1172,7 @@ public class Topic extends DomainResource { /** * @param value Description of how this filter parameter is intended to be used. */ - public TopicCanFilterByComponent setDocumentation(String value) { + public SubscriptionTopicCanFilterByComponent setDocumentation(String value) { if (value == null) this.documentation = null; else { @@ -1309,16 +1185,16 @@ public class Topic extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("name", "string", "A search parameter (like \"patient\") which is a label for the filter.", 0, 1, name)); - children.add(new Property("matchType", "code", "Allowable operators to apply when determining matches (Search Modifiers).", 0, java.lang.Integer.MAX_VALUE, matchType)); + children.add(new Property("searchParamName", "string", "A search parameter (like \"patient\") which is a label for the filter.", 0, 1, searchParamName)); + children.add(new Property("searchModifier", "code", "Allowable operators to apply when determining matches (Search Modifiers).", 0, java.lang.Integer.MAX_VALUE, searchModifier)); children.add(new Property("documentation", "markdown", "Description of how this filter parameter is intended to be used.", 0, 1, documentation)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 3373707: /*name*/ return new Property("name", "string", "A search parameter (like \"patient\") which is a label for the filter.", 0, 1, name); - case 614036127: /*matchType*/ return new Property("matchType", "code", "Allowable operators to apply when determining matches (Search Modifiers).", 0, java.lang.Integer.MAX_VALUE, matchType); + case 83857392: /*searchParamName*/ return new Property("searchParamName", "string", "A search parameter (like \"patient\") which is a label for the filter.", 0, 1, searchParamName); + case 1540924575: /*searchModifier*/ return new Property("searchModifier", "code", "Allowable operators to apply when determining matches (Search Modifiers).", 0, java.lang.Integer.MAX_VALUE, searchModifier); case 1587405498: /*documentation*/ return new Property("documentation", "markdown", "Description of how this filter parameter is intended to be used.", 0, 1, documentation); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1328,8 +1204,8 @@ public class Topic extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 3373707: /*name*/ return this.name == null ? new Base[0] : new Base[] {this.name}; // StringType - case 614036127: /*matchType*/ return this.matchType == null ? new Base[0] : this.matchType.toArray(new Base[this.matchType.size()]); // Enumeration + case 83857392: /*searchParamName*/ return this.searchParamName == null ? new Base[0] : new Base[] {this.searchParamName}; // StringType + case 1540924575: /*searchModifier*/ return this.searchModifier == null ? new Base[0] : this.searchModifier.toArray(new Base[this.searchModifier.size()]); // Enumeration case 1587405498: /*documentation*/ return this.documentation == null ? new Base[0] : new Base[] {this.documentation}; // MarkdownType default: return super.getProperty(hash, name, checkValid); } @@ -1339,12 +1215,12 @@ public class Topic extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 3373707: // name - this.name = TypeConvertor.castToString(value); // StringType + case 83857392: // searchParamName + this.searchParamName = TypeConvertor.castToString(value); // StringType return value; - case 614036127: // matchType - value = new TopicFilterByMatchTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.getMatchType().add((Enumeration) value); // Enumeration + case 1540924575: // searchModifier + value = new SubscriptionSearchModifierEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.getSearchModifier().add((Enumeration) value); // Enumeration return value; case 1587405498: // documentation this.documentation = TypeConvertor.castToMarkdown(value); // MarkdownType @@ -1356,11 +1232,11 @@ public class Topic extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("name")) { - this.name = TypeConvertor.castToString(value); // StringType - } else if (name.equals("matchType")) { - value = new TopicFilterByMatchTypeEnumFactory().fromType(TypeConvertor.castToCode(value)); - this.getMatchType().add((Enumeration) value); + if (name.equals("searchParamName")) { + this.searchParamName = TypeConvertor.castToString(value); // StringType + } else if (name.equals("searchModifier")) { + value = new SubscriptionSearchModifierEnumFactory().fromType(TypeConvertor.castToCode(value)); + this.getSearchModifier().add((Enumeration) value); } else if (name.equals("documentation")) { this.documentation = TypeConvertor.castToMarkdown(value); // MarkdownType } else @@ -1371,8 +1247,8 @@ public class Topic extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3373707: return getNameElement(); - case 614036127: return addMatchTypeElement(); + case 83857392: return getSearchParamNameElement(); + case 1540924575: return addSearchModifierElement(); case 1587405498: return getDocumentationElement(); default: return super.makeProperty(hash, name); } @@ -1382,8 +1258,8 @@ public class Topic extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 3373707: /*name*/ return new String[] {"string"}; - case 614036127: /*matchType*/ return new String[] {"code"}; + case 83857392: /*searchParamName*/ return new String[] {"string"}; + case 1540924575: /*searchModifier*/ return new String[] {"code"}; case 1587405498: /*documentation*/ return new String[] {"markdown"}; default: return super.getTypesForProperty(hash, name); } @@ -1392,32 +1268,32 @@ public class Topic extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("name")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.canFilterBy.name"); + if (name.equals("searchParamName")) { + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.canFilterBy.searchParamName"); } - else if (name.equals("matchType")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.canFilterBy.matchType"); + else if (name.equals("searchModifier")) { + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.canFilterBy.searchModifier"); } else if (name.equals("documentation")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.canFilterBy.documentation"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.canFilterBy.documentation"); } else return super.addChild(name); } - public TopicCanFilterByComponent copy() { - TopicCanFilterByComponent dst = new TopicCanFilterByComponent(); + public SubscriptionTopicCanFilterByComponent copy() { + SubscriptionTopicCanFilterByComponent dst = new SubscriptionTopicCanFilterByComponent(); copyValues(dst); return dst; } - public void copyValues(TopicCanFilterByComponent dst) { + public void copyValues(SubscriptionTopicCanFilterByComponent dst) { super.copyValues(dst); - dst.name = name == null ? null : name.copy(); - if (matchType != null) { - dst.matchType = new ArrayList>(); - for (Enumeration i : matchType) - dst.matchType.add(i.copy()); + dst.searchParamName = searchParamName == null ? null : searchParamName.copy(); + if (searchModifier != null) { + dst.searchModifier = new ArrayList>(); + for (Enumeration i : searchModifier) + dst.searchModifier.add(i.copy()); }; dst.documentation = documentation == null ? null : documentation.copy(); } @@ -1426,91 +1302,91 @@ public class Topic extends DomainResource { public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof TopicCanFilterByComponent)) + if (!(other_ instanceof SubscriptionTopicCanFilterByComponent)) return false; - TopicCanFilterByComponent o = (TopicCanFilterByComponent) other_; - return compareDeep(name, o.name, true) && compareDeep(matchType, o.matchType, true) && compareDeep(documentation, o.documentation, true) - ; + SubscriptionTopicCanFilterByComponent o = (SubscriptionTopicCanFilterByComponent) other_; + return compareDeep(searchParamName, o.searchParamName, true) && compareDeep(searchModifier, o.searchModifier, true) + && compareDeep(documentation, o.documentation, true); } @Override public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof TopicCanFilterByComponent)) + if (!(other_ instanceof SubscriptionTopicCanFilterByComponent)) return false; - TopicCanFilterByComponent o = (TopicCanFilterByComponent) other_; - return compareValues(name, o.name, true) && compareValues(matchType, o.matchType, true) && compareValues(documentation, o.documentation, true) - ; + SubscriptionTopicCanFilterByComponent o = (SubscriptionTopicCanFilterByComponent) other_; + return compareValues(searchParamName, o.searchParamName, true) && compareValues(searchModifier, o.searchModifier, true) + && compareValues(documentation, o.documentation, true); } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(name, matchType, documentation - ); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(searchParamName, searchModifier + , documentation); } public String fhirType() { - return "Topic.canFilterBy"; + return "SubscriptionTopic.canFilterBy"; } } /** - * An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions). + * An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions). */ @Child(name = "url", type = {UriType.class}, order=0, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Logical canonical URL to reference this Topic (globally unique)", formalDefinition="An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions)." ) + @Description(shortDefinition="Logical canonical URL to reference this SubscriptionTopic (globally unique)", formalDefinition="An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions)." ) protected UriType url; /** - * Business identifiers assigned to this Topic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server. + * Business identifiers assigned to this SubscriptionTopic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server. */ @Child(name = "identifier", type = {Identifier.class}, order=1, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Business Identifier for Topic", formalDefinition="Business identifiers assigned to this Topic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server." ) + @Description(shortDefinition="Business Identifier for SubscriptionTopic", formalDefinition="Business identifiers assigned to this SubscriptionTopic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server." ) protected List identifier; /** - * The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable. + * The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable. */ @Child(name = "version", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Business version of the Topic", formalDefinition="The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable." ) + @Description(shortDefinition="Business version of the SubscriptionTopic", formalDefinition="The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable." ) protected StringType version; /** - * A short, descriptive, user-friendly title for the Topic, for example, "admission". + * A short, descriptive, user-friendly title for the SubscriptionTopic, for example, "admission". */ @Child(name = "title", type = {StringType.class}, order=3, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Name for this Topic (Human friendly)", formalDefinition="A short, descriptive, user-friendly title for the Topic, for example, \"admission\"." ) + @Description(shortDefinition="Name for this SubscriptionTopic (Human friendly)", formalDefinition="A short, descriptive, user-friendly title for the SubscriptionTopic, for example, \"admission\"." ) protected StringType title; /** - * The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic. + * The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic. */ @Child(name = "derivedFromCanonical", type = {CanonicalType.class}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Based on FHIR protocol or definition", formalDefinition="The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic." ) + @Description(shortDefinition="Based on FHIR protocol or definition", formalDefinition="The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic." ) protected List derivedFromCanonical; /** - * The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition. + * The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition. */ @Child(name = "derivedFromUri", type = {UriType.class}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Based on external protocol or definition", formalDefinition="The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition." ) + @Description(shortDefinition="Based on external protocol or definition", formalDefinition="The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition." ) protected List derivedFromUri; /** - * The current state of the Topic. + * The current state of the SubscriptionTopic. */ @Child(name = "status", type = {CodeType.class}, order=6, min=1, max=1, modifier=true, summary=true) - @Description(shortDefinition="draft | active | retired | unknown", formalDefinition="The current state of the Topic." ) + @Description(shortDefinition="draft | active | retired | unknown", formalDefinition="The current state of the SubscriptionTopic." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/publication-status") protected Enumeration status; /** - * A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. + * A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. */ @Child(name = "experimental", type = {BooleanType.class}, order=7, min=0, max=1, modifier=true, summary=true) - @Description(shortDefinition="If for testing purposes, not real usage", formalDefinition="A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage." ) + @Description(shortDefinition="If for testing purposes, not real usage", formalDefinition="A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage." ) protected BooleanType experimental; /** @@ -1521,10 +1397,10 @@ public class Topic extends DomainResource { protected DateTimeType date; /** - * Helps establish the "authority/credibility" of the Topic. May also allow for contact. + * Helps establish the "authority/credibility" of the SubscriptionTopic. May also allow for contact. */ @Child(name = "publisher", type = {Practitioner.class, PractitionerRole.class, Organization.class}, order=9, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The name of the individual or organization that published the Topic", formalDefinition="Helps establish the \"authority/credibility\" of the Topic. May also allow for contact." ) + @Description(shortDefinition="The name of the individual or organization that published the SubscriptionTopic", formalDefinition="Helps establish the \"authority/credibility\" of the SubscriptionTopic. May also allow for contact." ) protected Reference publisher; /** @@ -1538,7 +1414,7 @@ public class Topic extends DomainResource { * A free text natural language description of the Topic from the consumer's perspective. */ @Child(name = "description", type = {MarkdownType.class}, order=11, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Natural language description of the Topic", formalDefinition="A free text natural language description of the Topic from the consumer's perspective." ) + @Description(shortDefinition="Natural language description of the ToSubscriptionTopicpic", formalDefinition="A free text natural language description of the Topic from the consumer's perspective." ) protected MarkdownType description; /** @@ -1560,75 +1436,75 @@ public class Topic extends DomainResource { * Explains why this Topic is needed and why it has been designed as it has. */ @Child(name = "purpose", type = {MarkdownType.class}, order=14, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Why this Topic is defined", formalDefinition="Explains why this Topic is needed and why it has been designed as it has." ) + @Description(shortDefinition="Why this SubscriptionTopic is defined", formalDefinition="Explains why this Topic is needed and why it has been designed as it has." ) protected MarkdownType purpose; /** - * A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic. + * A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic. */ @Child(name = "copyright", type = {MarkdownType.class}, order=15, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Use and/or publishing restrictions", formalDefinition="A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic." ) + @Description(shortDefinition="Use and/or publishing restrictions", formalDefinition="A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic." ) protected MarkdownType copyright; /** * The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage. */ @Child(name = "approvalDate", type = {DateType.class}, order=16, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="When Topic approved by publisher", formalDefinition="The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage." ) + @Description(shortDefinition="When SubscriptionTopic is/was approved by publisher", formalDefinition="The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage." ) protected DateType approvalDate; /** * The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date. */ @Child(name = "lastReviewDate", type = {DateType.class}, order=17, min=0, max=1, modifier=false, summary=false) - @Description(shortDefinition="Last review date for the Topic", formalDefinition="The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date." ) + @Description(shortDefinition="Last review date for the SubscriptionTopic", formalDefinition="The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date." ) protected DateType lastReviewDate; /** - * The period during which the Topic content was or is planned to be effective. + * The period during which the SubscriptionTopic content was or is planned to be effective. */ @Child(name = "effectivePeriod", type = {Period.class}, order=18, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The effective date range for the Topic", formalDefinition="The period during which the Topic content was or is planned to be effective." ) + @Description(shortDefinition="The effective date range for the SubscriptionTopic", formalDefinition="The period during which the SubscriptionTopic content was or is planned to be effective." ) protected Period effectivePeriod; /** - * The criteria for including updates to a nominated resource in the topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression. + * The criteria for including updates to a nominated resource in the subscription topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression. */ @Child(name = "resourceTrigger", type = {}, order=19, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="Criteria for including a resource update in the topic", formalDefinition="The criteria for including updates to a nominated resource in the topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression." ) - protected TopicResourceTriggerComponent resourceTrigger; + @Description(shortDefinition="Criteria for including a resource update in the subscription topic", formalDefinition="The criteria for including updates to a nominated resource in the subscription topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression." ) + protected SubscriptionTopicResourceTriggerComponent resourceTrigger; /** - * List of properties by which Subscriptions on the topic can be filtered. + * List of properties by which Subscriptions on the subscription topic can be filtered. */ @Child(name = "canFilterBy", type = {}, order=20, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Properties by which a Subscription can further filter a Topic", formalDefinition="List of properties by which Subscriptions on the topic can be filtered." ) - protected List canFilterBy; + @Description(shortDefinition="Properties by which a Subscription can further filter a SubscriptionTopic", formalDefinition="List of properties by which Subscriptions on the subscription topic can be filtered." ) + protected List canFilterBy; - private static final long serialVersionUID = -1683916811L; + private static final long serialVersionUID = 2064987797L; /** * Constructor */ - public Topic() { + public SubscriptionTopic() { super(); } /** * Constructor */ - public Topic(PublicationStatus status) { + public SubscriptionTopic(PublicationStatus status) { super(); this.setStatus(status); } /** - * @return {@link #url} (An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + * @return {@link #url} (An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value */ public UriType getUrlElement() { if (this.url == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.url"); + throw new Error("Attempt to auto-create SubscriptionTopic.url"); else if (Configuration.doAutoCreate()) this.url = new UriType(); // bb return this.url; @@ -1643,24 +1519,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #url} (An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value + * @param value {@link #url} (An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).). This is the underlying object with id, value and extensions. The accessor "getUrl" gives direct access to the value */ - public Topic setUrlElement(UriType value) { + public SubscriptionTopic setUrlElement(UriType value) { this.url = value; return this; } /** - * @return An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions). + * @return An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions). */ public String getUrl() { return this.url == null ? null : this.url.getValue(); } /** - * @param value An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions). + * @param value An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions). */ - public Topic setUrl(String value) { + public SubscriptionTopic setUrl(String value) { if (Utilities.noString(value)) this.url = null; else { @@ -1672,7 +1548,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #identifier} (Business identifiers assigned to this Topic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.) + * @return {@link #identifier} (Business identifiers assigned to this SubscriptionTopic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.) */ public List getIdentifier() { if (this.identifier == null) @@ -1683,7 +1559,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public Topic setIdentifier(List theIdentifier) { + public SubscriptionTopic setIdentifier(List theIdentifier) { this.identifier = theIdentifier; return this; } @@ -1705,7 +1581,7 @@ public class Topic extends DomainResource { return t; } - public Topic addIdentifier(Identifier t) { //3 + public SubscriptionTopic addIdentifier(Identifier t) { //3 if (t == null) return this; if (this.identifier == null) @@ -1725,12 +1601,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #version} (The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value + * @return {@link #version} (The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value */ public StringType getVersionElement() { if (this.version == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.version"); + throw new Error("Attempt to auto-create SubscriptionTopic.version"); else if (Configuration.doAutoCreate()) this.version = new StringType(); // bb return this.version; @@ -1745,24 +1621,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #version} (The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value + * @param value {@link #version} (The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.). This is the underlying object with id, value and extensions. The accessor "getVersion" gives direct access to the value */ - public Topic setVersionElement(StringType value) { + public SubscriptionTopic setVersionElement(StringType value) { this.version = value; return this; } /** - * @return The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable. + * @return The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable. */ public String getVersion() { return this.version == null ? null : this.version.getValue(); } /** - * @param value The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable. + * @param value The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable. */ - public Topic setVersion(String value) { + public SubscriptionTopic setVersion(String value) { if (Utilities.noString(value)) this.version = null; else { @@ -1774,12 +1650,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #title} (A short, descriptive, user-friendly title for the Topic, for example, "admission".). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + * @return {@link #title} (A short, descriptive, user-friendly title for the SubscriptionTopic, for example, "admission".). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value */ public StringType getTitleElement() { if (this.title == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.title"); + throw new Error("Attempt to auto-create SubscriptionTopic.title"); else if (Configuration.doAutoCreate()) this.title = new StringType(); // bb return this.title; @@ -1794,24 +1670,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #title} (A short, descriptive, user-friendly title for the Topic, for example, "admission".). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value + * @param value {@link #title} (A short, descriptive, user-friendly title for the SubscriptionTopic, for example, "admission".). This is the underlying object with id, value and extensions. The accessor "getTitle" gives direct access to the value */ - public Topic setTitleElement(StringType value) { + public SubscriptionTopic setTitleElement(StringType value) { this.title = value; return this; } /** - * @return A short, descriptive, user-friendly title for the Topic, for example, "admission". + * @return A short, descriptive, user-friendly title for the SubscriptionTopic, for example, "admission". */ public String getTitle() { return this.title == null ? null : this.title.getValue(); } /** - * @param value A short, descriptive, user-friendly title for the Topic, for example, "admission". + * @param value A short, descriptive, user-friendly title for the SubscriptionTopic, for example, "admission". */ - public Topic setTitle(String value) { + public SubscriptionTopic setTitle(String value) { if (Utilities.noString(value)) this.title = null; else { @@ -1823,7 +1699,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic.) + * @return {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic.) */ public List getDerivedFromCanonical() { if (this.derivedFromCanonical == null) @@ -1834,7 +1710,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public Topic setDerivedFromCanonical(List theDerivedFromCanonical) { + public SubscriptionTopic setDerivedFromCanonical(List theDerivedFromCanonical) { this.derivedFromCanonical = theDerivedFromCanonical; return this; } @@ -1849,7 +1725,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic.) + * @return {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic.) */ public CanonicalType addDerivedFromCanonicalElement() {//2 CanonicalType t = new CanonicalType(); @@ -1860,9 +1736,9 @@ public class Topic extends DomainResource { } /** - * @param value {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic.) + * @param value {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic.) */ - public Topic addDerivedFromCanonical(String value) { //1 + public SubscriptionTopic addDerivedFromCanonical(String value) { //1 CanonicalType t = new CanonicalType(); t.setValue(value); if (this.derivedFromCanonical == null) @@ -1872,7 +1748,7 @@ public class Topic extends DomainResource { } /** - * @param value {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic.) + * @param value {@link #derivedFromCanonical} (The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic.) */ public boolean hasDerivedFromCanonical(String value) { if (this.derivedFromCanonical == null) @@ -1884,7 +1760,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #derivedFromUri} (The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition.) + * @return {@link #derivedFromUri} (The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition.) */ public List getDerivedFromUri() { if (this.derivedFromUri == null) @@ -1895,7 +1771,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public Topic setDerivedFromUri(List theDerivedFromUri) { + public SubscriptionTopic setDerivedFromUri(List theDerivedFromUri) { this.derivedFromUri = theDerivedFromUri; return this; } @@ -1910,7 +1786,7 @@ public class Topic extends DomainResource { } /** - * @return {@link #derivedFromUri} (The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition.) + * @return {@link #derivedFromUri} (The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition.) */ public UriType addDerivedFromUriElement() {//2 UriType t = new UriType(); @@ -1921,9 +1797,9 @@ public class Topic extends DomainResource { } /** - * @param value {@link #derivedFromUri} (The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition.) + * @param value {@link #derivedFromUri} (The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition.) */ - public Topic addDerivedFromUri(String value) { //1 + public SubscriptionTopic addDerivedFromUri(String value) { //1 UriType t = new UriType(); t.setValue(value); if (this.derivedFromUri == null) @@ -1933,7 +1809,7 @@ public class Topic extends DomainResource { } /** - * @param value {@link #derivedFromUri} (The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition.) + * @param value {@link #derivedFromUri} (The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition.) */ public boolean hasDerivedFromUri(String value) { if (this.derivedFromUri == null) @@ -1945,12 +1821,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #status} (The current state of the Topic.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + * @return {@link #status} (The current state of the SubscriptionTopic.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ public Enumeration getStatusElement() { if (this.status == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.status"); + throw new Error("Attempt to auto-create SubscriptionTopic.status"); else if (Configuration.doAutoCreate()) this.status = new Enumeration(new PublicationStatusEnumFactory()); // bb return this.status; @@ -1965,24 +1841,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #status} (The current state of the Topic.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value + * @param value {@link #status} (The current state of the SubscriptionTopic.). This is the underlying object with id, value and extensions. The accessor "getStatus" gives direct access to the value */ - public Topic setStatusElement(Enumeration value) { + public SubscriptionTopic setStatusElement(Enumeration value) { this.status = value; return this; } /** - * @return The current state of the Topic. + * @return The current state of the SubscriptionTopic. */ public PublicationStatus getStatus() { return this.status == null ? null : this.status.getValue(); } /** - * @param value The current state of the Topic. + * @param value The current state of the SubscriptionTopic. */ - public Topic setStatus(PublicationStatus value) { + public SubscriptionTopic setStatus(PublicationStatus value) { if (this.status == null) this.status = new Enumeration(new PublicationStatusEnumFactory()); this.status.setValue(value); @@ -1990,12 +1866,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #experimental} (A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value + * @return {@link #experimental} (A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value */ public BooleanType getExperimentalElement() { if (this.experimental == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.experimental"); + throw new Error("Attempt to auto-create SubscriptionTopic.experimental"); else if (Configuration.doAutoCreate()) this.experimental = new BooleanType(); // bb return this.experimental; @@ -2010,24 +1886,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #experimental} (A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value + * @param value {@link #experimental} (A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.). This is the underlying object with id, value and extensions. The accessor "getExperimental" gives direct access to the value */ - public Topic setExperimentalElement(BooleanType value) { + public SubscriptionTopic setExperimentalElement(BooleanType value) { this.experimental = value; return this; } /** - * @return A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. + * @return A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. */ public boolean getExperimental() { return this.experimental == null || this.experimental.isEmpty() ? false : this.experimental.getValue(); } /** - * @param value A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. + * @param value A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage. */ - public Topic setExperimental(boolean value) { + public SubscriptionTopic setExperimental(boolean value) { if (this.experimental == null) this.experimental = new BooleanType(); this.experimental.setValue(value); @@ -2040,7 +1916,7 @@ public class Topic extends DomainResource { public DateTimeType getDateElement() { if (this.date == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.date"); + throw new Error("Attempt to auto-create SubscriptionTopic.date"); else if (Configuration.doAutoCreate()) this.date = new DateTimeType(); // bb return this.date; @@ -2057,7 +1933,7 @@ public class Topic extends DomainResource { /** * @param value {@link #date} (For draft definitions, indicates the date of initial creation. For active definitions, represents the date of activation. For withdrawn definitions, indicates the date of withdrawal.). This is the underlying object with id, value and extensions. The accessor "getDate" gives direct access to the value */ - public Topic setDateElement(DateTimeType value) { + public SubscriptionTopic setDateElement(DateTimeType value) { this.date = value; return this; } @@ -2072,7 +1948,7 @@ public class Topic extends DomainResource { /** * @param value For draft definitions, indicates the date of initial creation. For active definitions, represents the date of activation. For withdrawn definitions, indicates the date of withdrawal. */ - public Topic setDate(Date value) { + public SubscriptionTopic setDate(Date value) { if (value == null) this.date = null; else { @@ -2084,12 +1960,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #publisher} (Helps establish the "authority/credibility" of the Topic. May also allow for contact.) + * @return {@link #publisher} (Helps establish the "authority/credibility" of the SubscriptionTopic. May also allow for contact.) */ public Reference getPublisher() { if (this.publisher == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.publisher"); + throw new Error("Attempt to auto-create SubscriptionTopic.publisher"); else if (Configuration.doAutoCreate()) this.publisher = new Reference(); // cc return this.publisher; @@ -2100,9 +1976,9 @@ public class Topic extends DomainResource { } /** - * @param value {@link #publisher} (Helps establish the "authority/credibility" of the Topic. May also allow for contact.) + * @param value {@link #publisher} (Helps establish the "authority/credibility" of the SubscriptionTopic. May also allow for contact.) */ - public Topic setPublisher(Reference value) { + public SubscriptionTopic setPublisher(Reference value) { this.publisher = value; return this; } @@ -2119,7 +1995,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public Topic setContact(List theContact) { + public SubscriptionTopic setContact(List theContact) { this.contact = theContact; return this; } @@ -2141,7 +2017,7 @@ public class Topic extends DomainResource { return t; } - public Topic addContact(ContactDetail t) { //3 + public SubscriptionTopic addContact(ContactDetail t) { //3 if (t == null) return this; if (this.contact == null) @@ -2166,7 +2042,7 @@ public class Topic extends DomainResource { public MarkdownType getDescriptionElement() { if (this.description == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.description"); + throw new Error("Attempt to auto-create SubscriptionTopic.description"); else if (Configuration.doAutoCreate()) this.description = new MarkdownType(); // bb return this.description; @@ -2183,7 +2059,7 @@ public class Topic extends DomainResource { /** * @param value {@link #description} (A free text natural language description of the Topic from the consumer's perspective.). This is the underlying object with id, value and extensions. The accessor "getDescription" gives direct access to the value */ - public Topic setDescriptionElement(MarkdownType value) { + public SubscriptionTopic setDescriptionElement(MarkdownType value) { this.description = value; return this; } @@ -2198,7 +2074,7 @@ public class Topic extends DomainResource { /** * @param value A free text natural language description of the Topic from the consumer's perspective. */ - public Topic setDescription(String value) { + public SubscriptionTopic setDescription(String value) { if (value == null) this.description = null; else { @@ -2221,7 +2097,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public Topic setUseContext(List theUseContext) { + public SubscriptionTopic setUseContext(List theUseContext) { this.useContext = theUseContext; return this; } @@ -2243,7 +2119,7 @@ public class Topic extends DomainResource { return t; } - public Topic addUseContext(UsageContext t) { //3 + public SubscriptionTopic addUseContext(UsageContext t) { //3 if (t == null) return this; if (this.useContext == null) @@ -2274,7 +2150,7 @@ public class Topic extends DomainResource { /** * @return Returns a reference to this for easy method chaining */ - public Topic setJurisdiction(List theJurisdiction) { + public SubscriptionTopic setJurisdiction(List theJurisdiction) { this.jurisdiction = theJurisdiction; return this; } @@ -2296,7 +2172,7 @@ public class Topic extends DomainResource { return t; } - public Topic addJurisdiction(CodeableConcept t) { //3 + public SubscriptionTopic addJurisdiction(CodeableConcept t) { //3 if (t == null) return this; if (this.jurisdiction == null) @@ -2321,7 +2197,7 @@ public class Topic extends DomainResource { public MarkdownType getPurposeElement() { if (this.purpose == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.purpose"); + throw new Error("Attempt to auto-create SubscriptionTopic.purpose"); else if (Configuration.doAutoCreate()) this.purpose = new MarkdownType(); // bb return this.purpose; @@ -2338,7 +2214,7 @@ public class Topic extends DomainResource { /** * @param value {@link #purpose} (Explains why this Topic is needed and why it has been designed as it has.). This is the underlying object with id, value and extensions. The accessor "getPurpose" gives direct access to the value */ - public Topic setPurposeElement(MarkdownType value) { + public SubscriptionTopic setPurposeElement(MarkdownType value) { this.purpose = value; return this; } @@ -2353,7 +2229,7 @@ public class Topic extends DomainResource { /** * @param value Explains why this Topic is needed and why it has been designed as it has. */ - public Topic setPurpose(String value) { + public SubscriptionTopic setPurpose(String value) { if (value == null) this.purpose = null; else { @@ -2365,12 +2241,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #copyright} (A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value + * @return {@link #copyright} (A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value */ public MarkdownType getCopyrightElement() { if (this.copyright == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.copyright"); + throw new Error("Attempt to auto-create SubscriptionTopic.copyright"); else if (Configuration.doAutoCreate()) this.copyright = new MarkdownType(); // bb return this.copyright; @@ -2385,24 +2261,24 @@ public class Topic extends DomainResource { } /** - * @param value {@link #copyright} (A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value + * @param value {@link #copyright} (A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic.). This is the underlying object with id, value and extensions. The accessor "getCopyright" gives direct access to the value */ - public Topic setCopyrightElement(MarkdownType value) { + public SubscriptionTopic setCopyrightElement(MarkdownType value) { this.copyright = value; return this; } /** - * @return A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic. + * @return A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic. */ public String getCopyright() { return this.copyright == null ? null : this.copyright.getValue(); } /** - * @param value A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic. + * @param value A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic. */ - public Topic setCopyright(String value) { + public SubscriptionTopic setCopyright(String value) { if (value == null) this.copyright = null; else { @@ -2419,7 +2295,7 @@ public class Topic extends DomainResource { public DateType getApprovalDateElement() { if (this.approvalDate == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.approvalDate"); + throw new Error("Attempt to auto-create SubscriptionTopic.approvalDate"); else if (Configuration.doAutoCreate()) this.approvalDate = new DateType(); // bb return this.approvalDate; @@ -2436,7 +2312,7 @@ public class Topic extends DomainResource { /** * @param value {@link #approvalDate} (The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage.). This is the underlying object with id, value and extensions. The accessor "getApprovalDate" gives direct access to the value */ - public Topic setApprovalDateElement(DateType value) { + public SubscriptionTopic setApprovalDateElement(DateType value) { this.approvalDate = value; return this; } @@ -2451,7 +2327,7 @@ public class Topic extends DomainResource { /** * @param value The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage. */ - public Topic setApprovalDate(Date value) { + public SubscriptionTopic setApprovalDate(Date value) { if (value == null) this.approvalDate = null; else { @@ -2468,7 +2344,7 @@ public class Topic extends DomainResource { public DateType getLastReviewDateElement() { if (this.lastReviewDate == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.lastReviewDate"); + throw new Error("Attempt to auto-create SubscriptionTopic.lastReviewDate"); else if (Configuration.doAutoCreate()) this.lastReviewDate = new DateType(); // bb return this.lastReviewDate; @@ -2485,7 +2361,7 @@ public class Topic extends DomainResource { /** * @param value {@link #lastReviewDate} (The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date.). This is the underlying object with id, value and extensions. The accessor "getLastReviewDate" gives direct access to the value */ - public Topic setLastReviewDateElement(DateType value) { + public SubscriptionTopic setLastReviewDateElement(DateType value) { this.lastReviewDate = value; return this; } @@ -2500,7 +2376,7 @@ public class Topic extends DomainResource { /** * @param value The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date. */ - public Topic setLastReviewDate(Date value) { + public SubscriptionTopic setLastReviewDate(Date value) { if (value == null) this.lastReviewDate = null; else { @@ -2512,12 +2388,12 @@ public class Topic extends DomainResource { } /** - * @return {@link #effectivePeriod} (The period during which the Topic content was or is planned to be effective.) + * @return {@link #effectivePeriod} (The period during which the SubscriptionTopic content was or is planned to be effective.) */ public Period getEffectivePeriod() { if (this.effectivePeriod == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.effectivePeriod"); + throw new Error("Attempt to auto-create SubscriptionTopic.effectivePeriod"); else if (Configuration.doAutoCreate()) this.effectivePeriod = new Period(); // cc return this.effectivePeriod; @@ -2528,22 +2404,22 @@ public class Topic extends DomainResource { } /** - * @param value {@link #effectivePeriod} (The period during which the Topic content was or is planned to be effective.) + * @param value {@link #effectivePeriod} (The period during which the SubscriptionTopic content was or is planned to be effective.) */ - public Topic setEffectivePeriod(Period value) { + public SubscriptionTopic setEffectivePeriod(Period value) { this.effectivePeriod = value; return this; } /** - * @return {@link #resourceTrigger} (The criteria for including updates to a nominated resource in the topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.) + * @return {@link #resourceTrigger} (The criteria for including updates to a nominated resource in the subscription topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.) */ - public TopicResourceTriggerComponent getResourceTrigger() { + public SubscriptionTopicResourceTriggerComponent getResourceTrigger() { if (this.resourceTrigger == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create Topic.resourceTrigger"); + throw new Error("Attempt to auto-create SubscriptionTopic.resourceTrigger"); else if (Configuration.doAutoCreate()) - this.resourceTrigger = new TopicResourceTriggerComponent(); // cc + this.resourceTrigger = new SubscriptionTopicResourceTriggerComponent(); // cc return this.resourceTrigger; } @@ -2552,26 +2428,26 @@ public class Topic extends DomainResource { } /** - * @param value {@link #resourceTrigger} (The criteria for including updates to a nominated resource in the topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.) + * @param value {@link #resourceTrigger} (The criteria for including updates to a nominated resource in the subscription topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.) */ - public Topic setResourceTrigger(TopicResourceTriggerComponent value) { + public SubscriptionTopic setResourceTrigger(SubscriptionTopicResourceTriggerComponent value) { this.resourceTrigger = value; return this; } /** - * @return {@link #canFilterBy} (List of properties by which Subscriptions on the topic can be filtered.) + * @return {@link #canFilterBy} (List of properties by which Subscriptions on the subscription topic can be filtered.) */ - public List getCanFilterBy() { + public List getCanFilterBy() { if (this.canFilterBy == null) - this.canFilterBy = new ArrayList(); + this.canFilterBy = new ArrayList(); return this.canFilterBy; } /** * @return Returns a reference to this for easy method chaining */ - public Topic setCanFilterBy(List theCanFilterBy) { + public SubscriptionTopic setCanFilterBy(List theCanFilterBy) { this.canFilterBy = theCanFilterBy; return this; } @@ -2579,25 +2455,25 @@ public class Topic extends DomainResource { public boolean hasCanFilterBy() { if (this.canFilterBy == null) return false; - for (TopicCanFilterByComponent item : this.canFilterBy) + for (SubscriptionTopicCanFilterByComponent item : this.canFilterBy) if (!item.isEmpty()) return true; return false; } - public TopicCanFilterByComponent addCanFilterBy() { //3 - TopicCanFilterByComponent t = new TopicCanFilterByComponent(); + public SubscriptionTopicCanFilterByComponent addCanFilterBy() { //3 + SubscriptionTopicCanFilterByComponent t = new SubscriptionTopicCanFilterByComponent(); if (this.canFilterBy == null) - this.canFilterBy = new ArrayList(); + this.canFilterBy = new ArrayList(); this.canFilterBy.add(t); return t; } - public Topic addCanFilterBy(TopicCanFilterByComponent t) { //3 + public SubscriptionTopic addCanFilterBy(SubscriptionTopicCanFilterByComponent t) { //3 if (t == null) return this; if (this.canFilterBy == null) - this.canFilterBy = new ArrayList(); + this.canFilterBy = new ArrayList(); this.canFilterBy.add(t); return this; } @@ -2605,7 +2481,7 @@ public class Topic extends DomainResource { /** * @return The first repetition of repeating field {@link #canFilterBy}, creating it if it does not already exist {3} */ - public TopicCanFilterByComponent getCanFilterByFirstRep() { + public SubscriptionTopicCanFilterByComponent getCanFilterByFirstRep() { if (getCanFilterBy().isEmpty()) { addCanFilterBy(); } @@ -2614,53 +2490,53 @@ public class Topic extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("url", "uri", "An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).", 0, 1, url)); - children.add(new Property("identifier", "Identifier", "Business identifiers assigned to this Topic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier)); - children.add(new Property("version", "string", "The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.", 0, 1, version)); - children.add(new Property("title", "string", "A short, descriptive, user-friendly title for the Topic, for example, \"admission\".", 0, 1, title)); - children.add(new Property("derivedFromCanonical", "canonical(Topic)", "The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic.", 0, java.lang.Integer.MAX_VALUE, derivedFromCanonical)); - children.add(new Property("derivedFromUri", "uri", "The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition.", 0, java.lang.Integer.MAX_VALUE, derivedFromUri)); - children.add(new Property("status", "code", "The current state of the Topic.", 0, 1, status)); - children.add(new Property("experimental", "boolean", "A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.", 0, 1, experimental)); + children.add(new Property("url", "uri", "An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).", 0, 1, url)); + children.add(new Property("identifier", "Identifier", "Business identifiers assigned to this SubscriptionTopic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier)); + children.add(new Property("version", "string", "The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.", 0, 1, version)); + children.add(new Property("title", "string", "A short, descriptive, user-friendly title for the SubscriptionTopic, for example, \"admission\".", 0, 1, title)); + children.add(new Property("derivedFromCanonical", "canonical(SubscriptionTopic)", "The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic.", 0, java.lang.Integer.MAX_VALUE, derivedFromCanonical)); + children.add(new Property("derivedFromUri", "uri", "The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition.", 0, java.lang.Integer.MAX_VALUE, derivedFromUri)); + children.add(new Property("status", "code", "The current state of the SubscriptionTopic.", 0, 1, status)); + children.add(new Property("experimental", "boolean", "A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.", 0, 1, experimental)); children.add(new Property("date", "dateTime", "For draft definitions, indicates the date of initial creation. For active definitions, represents the date of activation. For withdrawn definitions, indicates the date of withdrawal.", 0, 1, date)); - children.add(new Property("publisher", "Reference(Practitioner|PractitionerRole|Organization)", "Helps establish the \"authority/credibility\" of the Topic. May also allow for contact.", 0, 1, publisher)); + children.add(new Property("publisher", "Reference(Practitioner|PractitionerRole|Organization)", "Helps establish the \"authority/credibility\" of the SubscriptionTopic. May also allow for contact.", 0, 1, publisher)); children.add(new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact)); children.add(new Property("description", "markdown", "A free text natural language description of the Topic from the consumer's perspective.", 0, 1, description)); children.add(new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of code system definitions.", 0, java.lang.Integer.MAX_VALUE, useContext)); children.add(new Property("jurisdiction", "CodeableConcept", "A jurisdiction in which the Topic is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction)); children.add(new Property("purpose", "markdown", "Explains why this Topic is needed and why it has been designed as it has.", 0, 1, purpose)); - children.add(new Property("copyright", "markdown", "A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic.", 0, 1, copyright)); + children.add(new Property("copyright", "markdown", "A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic.", 0, 1, copyright)); children.add(new Property("approvalDate", "date", "The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 0, 1, approvalDate)); children.add(new Property("lastReviewDate", "date", "The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date.", 0, 1, lastReviewDate)); - children.add(new Property("effectivePeriod", "Period", "The period during which the Topic content was or is planned to be effective.", 0, 1, effectivePeriod)); - children.add(new Property("resourceTrigger", "", "The criteria for including updates to a nominated resource in the topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.", 0, 1, resourceTrigger)); - children.add(new Property("canFilterBy", "", "List of properties by which Subscriptions on the topic can be filtered.", 0, java.lang.Integer.MAX_VALUE, canFilterBy)); + children.add(new Property("effectivePeriod", "Period", "The period during which the SubscriptionTopic content was or is planned to be effective.", 0, 1, effectivePeriod)); + children.add(new Property("resourceTrigger", "", "The criteria for including updates to a nominated resource in the subscription topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.", 0, 1, resourceTrigger)); + children.add(new Property("canFilterBy", "", "List of properties by which Subscriptions on the subscription topic can be filtered.", 0, java.lang.Integer.MAX_VALUE, canFilterBy)); } @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 116079: /*url*/ return new Property("url", "uri", "An absolute URL that is used to identify this Topic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).", 0, 1, url); - case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifiers assigned to this Topic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier); - case 351608024: /*version*/ return new Property("version", "string", "The identifier that is used to identify this version of the Topic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.", 0, 1, version); - case 110371416: /*title*/ return new Property("title", "string", "A short, descriptive, user-friendly title for the Topic, for example, \"admission\".", 0, 1, title); - case -978133683: /*derivedFromCanonical*/ return new Property("derivedFromCanonical", "canonical(Topic)", "The canonical URL pointing to another FHIR-defined Topic that is adhered to in whole or in part by this Topic.", 0, java.lang.Integer.MAX_VALUE, derivedFromCanonical); - case -1076333435: /*derivedFromUri*/ return new Property("derivedFromUri", "uri", "The URL pointing to an externally-defined subscription topic or other definition that is adhered to in whole or in part by this definition.", 0, java.lang.Integer.MAX_VALUE, derivedFromUri); - case -892481550: /*status*/ return new Property("status", "code", "The current state of the Topic.", 0, 1, status); - case -404562712: /*experimental*/ return new Property("experimental", "boolean", "A flag to indicate that this Topic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.", 0, 1, experimental); + case 116079: /*url*/ return new Property("url", "uri", "An absolute URL that is used to identify this SubscriptionTopic 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 Topic is (or will be) published. The URL SHOULD include the major version of the Topic. For more information see [Technical and Business Versions](resource.html#versions).", 0, 1, url); + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Business identifiers assigned to this SubscriptionTopic by the performer and/or other systems. These identifiers remain constant as the resource is updated and propagates from server to server.", 0, java.lang.Integer.MAX_VALUE, identifier); + case 351608024: /*version*/ return new Property("version", "string", "The identifier that is used to identify this version of the SubscriptionTopic when it is referenced in a specification, model, design or instance. This is an arbitrary value managed by the Topic author and is not expected to be globally unique. For example, it might be a timestamp (e.g. yyyymmdd) if a managed version is not available. There is also no expectation that versions are orderable.", 0, 1, version); + case 110371416: /*title*/ return new Property("title", "string", "A short, descriptive, user-friendly title for the SubscriptionTopic, for example, \"admission\".", 0, 1, title); + case -978133683: /*derivedFromCanonical*/ return new Property("derivedFromCanonical", "canonical(SubscriptionTopic)", "The canonical URL pointing to another FHIR-defined SubscriptionTopic that is adhered to in whole or in part by this SubscriptionTopic.", 0, java.lang.Integer.MAX_VALUE, derivedFromCanonical); + case -1076333435: /*derivedFromUri*/ return new Property("derivedFromUri", "uri", "The URL pointing to an externally-defined SubscriptionTopic or other definition that is adhered to in whole or in part by this definition.", 0, java.lang.Integer.MAX_VALUE, derivedFromUri); + case -892481550: /*status*/ return new Property("status", "code", "The current state of the SubscriptionTopic.", 0, 1, status); + case -404562712: /*experimental*/ return new Property("experimental", "boolean", "A flag to indicate that this TopSubscriptionTopicic is authored for testing purposes (or education/evaluation/marketing), and is not intended to be used for genuine usage.", 0, 1, experimental); case 3076014: /*date*/ return new Property("date", "dateTime", "For draft definitions, indicates the date of initial creation. For active definitions, represents the date of activation. For withdrawn definitions, indicates the date of withdrawal.", 0, 1, date); - case 1447404028: /*publisher*/ return new Property("publisher", "Reference(Practitioner|PractitionerRole|Organization)", "Helps establish the \"authority/credibility\" of the Topic. May also allow for contact.", 0, 1, publisher); + case 1447404028: /*publisher*/ return new Property("publisher", "Reference(Practitioner|PractitionerRole|Organization)", "Helps establish the \"authority/credibility\" of the SubscriptionTopic. May also allow for contact.", 0, 1, publisher); case 951526432: /*contact*/ return new Property("contact", "ContactDetail", "Contact details to assist a user in finding and communicating with the publisher.", 0, java.lang.Integer.MAX_VALUE, contact); case -1724546052: /*description*/ return new Property("description", "markdown", "A free text natural language description of the Topic from the consumer's perspective.", 0, 1, description); case -669707736: /*useContext*/ return new Property("useContext", "UsageContext", "The content was developed with a focus and intent of supporting the contexts that are listed. These terms may be used to assist with indexing and searching of code system definitions.", 0, java.lang.Integer.MAX_VALUE, useContext); case -507075711: /*jurisdiction*/ return new Property("jurisdiction", "CodeableConcept", "A jurisdiction in which the Topic is intended to be used.", 0, java.lang.Integer.MAX_VALUE, jurisdiction); case -220463842: /*purpose*/ return new Property("purpose", "markdown", "Explains why this Topic is needed and why it has been designed as it has.", 0, 1, purpose); - case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the Topic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the Topic.", 0, 1, copyright); + case 1522889671: /*copyright*/ return new Property("copyright", "markdown", "A copyright statement relating to the SubscriptionTopic and/or its contents. Copyright statements are generally legal restrictions on the use and publishing of the SubscriptionTopic.", 0, 1, copyright); case 223539345: /*approvalDate*/ return new Property("approvalDate", "date", "The date on which the asset content was approved by the publisher. Approval happens once when the content is officially approved for usage.", 0, 1, approvalDate); case -1687512484: /*lastReviewDate*/ return new Property("lastReviewDate", "date", "The date on which the asset content was last reviewed. Review happens periodically after that, but doesn't change the original approval date.", 0, 1, lastReviewDate); - case -403934648: /*effectivePeriod*/ return new Property("effectivePeriod", "Period", "The period during which the Topic content was or is planned to be effective.", 0, 1, effectivePeriod); - case -424927798: /*resourceTrigger*/ return new Property("resourceTrigger", "", "The criteria for including updates to a nominated resource in the topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.", 0, 1, resourceTrigger); - case -1299519009: /*canFilterBy*/ return new Property("canFilterBy", "", "List of properties by which Subscriptions on the topic can be filtered.", 0, java.lang.Integer.MAX_VALUE, canFilterBy); + case -403934648: /*effectivePeriod*/ return new Property("effectivePeriod", "Period", "The period during which the SubscriptionTopic content was or is planned to be effective.", 0, 1, effectivePeriod); + case -424927798: /*resourceTrigger*/ return new Property("resourceTrigger", "", "The criteria for including updates to a nominated resource in the subscription topic. Thie criteria may be just a human readable description and/or a full FHIR search string or FHIRPath expression.", 0, 1, resourceTrigger); + case -1299519009: /*canFilterBy*/ return new Property("canFilterBy", "", "List of properties by which Subscriptions on the subscription topic can be filtered.", 0, java.lang.Integer.MAX_VALUE, canFilterBy); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -2688,8 +2564,8 @@ public class Topic extends DomainResource { case 223539345: /*approvalDate*/ return this.approvalDate == null ? new Base[0] : new Base[] {this.approvalDate}; // DateType case -1687512484: /*lastReviewDate*/ return this.lastReviewDate == null ? new Base[0] : new Base[] {this.lastReviewDate}; // DateType case -403934648: /*effectivePeriod*/ return this.effectivePeriod == null ? new Base[0] : new Base[] {this.effectivePeriod}; // Period - case -424927798: /*resourceTrigger*/ return this.resourceTrigger == null ? new Base[0] : new Base[] {this.resourceTrigger}; // TopicResourceTriggerComponent - case -1299519009: /*canFilterBy*/ return this.canFilterBy == null ? new Base[0] : this.canFilterBy.toArray(new Base[this.canFilterBy.size()]); // TopicCanFilterByComponent + case -424927798: /*resourceTrigger*/ return this.resourceTrigger == null ? new Base[0] : new Base[] {this.resourceTrigger}; // SubscriptionTopicResourceTriggerComponent + case -1299519009: /*canFilterBy*/ return this.canFilterBy == null ? new Base[0] : this.canFilterBy.toArray(new Base[this.canFilterBy.size()]); // SubscriptionTopicCanFilterByComponent default: return super.getProperty(hash, name, checkValid); } @@ -2757,10 +2633,10 @@ public class Topic extends DomainResource { this.effectivePeriod = TypeConvertor.castToPeriod(value); // Period return value; case -424927798: // resourceTrigger - this.resourceTrigger = (TopicResourceTriggerComponent) value; // TopicResourceTriggerComponent + this.resourceTrigger = (SubscriptionTopicResourceTriggerComponent) value; // SubscriptionTopicResourceTriggerComponent return value; case -1299519009: // canFilterBy - this.getCanFilterBy().add((TopicCanFilterByComponent) value); // TopicCanFilterByComponent + this.getCanFilterBy().add((SubscriptionTopicCanFilterByComponent) value); // SubscriptionTopicCanFilterByComponent return value; default: return super.setProperty(hash, name, value); } @@ -2809,9 +2685,9 @@ public class Topic extends DomainResource { } else if (name.equals("effectivePeriod")) { this.effectivePeriod = TypeConvertor.castToPeriod(value); // Period } else if (name.equals("resourceTrigger")) { - this.resourceTrigger = (TopicResourceTriggerComponent) value; // TopicResourceTriggerComponent + this.resourceTrigger = (SubscriptionTopicResourceTriggerComponent) value; // SubscriptionTopicResourceTriggerComponent } else if (name.equals("canFilterBy")) { - this.getCanFilterBy().add((TopicCanFilterByComponent) value); + this.getCanFilterBy().add((SubscriptionTopicCanFilterByComponent) value); } else return super.setProperty(name, value); return value; @@ -2878,31 +2754,31 @@ public class Topic extends DomainResource { @Override public Base addChild(String name) throws FHIRException { if (name.equals("url")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.url"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.url"); } else if (name.equals("identifier")) { return addIdentifier(); } else if (name.equals("version")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.version"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.version"); } else if (name.equals("title")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.title"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.title"); } else if (name.equals("derivedFromCanonical")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.derivedFromCanonical"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.derivedFromCanonical"); } else if (name.equals("derivedFromUri")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.derivedFromUri"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.derivedFromUri"); } else if (name.equals("status")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.status"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.status"); } else if (name.equals("experimental")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.experimental"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.experimental"); } else if (name.equals("date")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.date"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.date"); } else if (name.equals("publisher")) { this.publisher = new Reference(); @@ -2912,7 +2788,7 @@ public class Topic extends DomainResource { return addContact(); } else if (name.equals("description")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.description"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.description"); } else if (name.equals("useContext")) { return addUseContext(); @@ -2921,23 +2797,23 @@ public class Topic extends DomainResource { return addJurisdiction(); } else if (name.equals("purpose")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.purpose"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.purpose"); } else if (name.equals("copyright")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.copyright"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.copyright"); } else if (name.equals("approvalDate")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.approvalDate"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.approvalDate"); } else if (name.equals("lastReviewDate")) { - throw new FHIRException("Cannot call addChild on a primitive type Topic.lastReviewDate"); + throw new FHIRException("Cannot call addChild on a primitive type SubscriptionTopic.lastReviewDate"); } else if (name.equals("effectivePeriod")) { this.effectivePeriod = new Period(); return this.effectivePeriod; } else if (name.equals("resourceTrigger")) { - this.resourceTrigger = new TopicResourceTriggerComponent(); + this.resourceTrigger = new SubscriptionTopicResourceTriggerComponent(); return this.resourceTrigger; } else if (name.equals("canFilterBy")) { @@ -2948,17 +2824,17 @@ public class Topic extends DomainResource { } public String fhirType() { - return "Topic"; + return "SubscriptionTopic"; } - public Topic copy() { - Topic dst = new Topic(); + public SubscriptionTopic copy() { + SubscriptionTopic dst = new SubscriptionTopic(); copyValues(dst); return dst; } - public void copyValues(Topic dst) { + public void copyValues(SubscriptionTopic dst) { super.copyValues(dst); dst.url = url == null ? null : url.copy(); if (identifier != null) { @@ -3005,13 +2881,13 @@ public class Topic extends DomainResource { dst.effectivePeriod = effectivePeriod == null ? null : effectivePeriod.copy(); dst.resourceTrigger = resourceTrigger == null ? null : resourceTrigger.copy(); if (canFilterBy != null) { - dst.canFilterBy = new ArrayList(); - for (TopicCanFilterByComponent i : canFilterBy) + dst.canFilterBy = new ArrayList(); + for (SubscriptionTopicCanFilterByComponent i : canFilterBy) dst.canFilterBy.add(i.copy()); }; } - protected Topic typedCopy() { + protected SubscriptionTopic typedCopy() { return copy(); } @@ -3019,9 +2895,9 @@ public class Topic extends DomainResource { public boolean equalsDeep(Base other_) { if (!super.equalsDeep(other_)) return false; - if (!(other_ instanceof Topic)) + if (!(other_ instanceof SubscriptionTopic)) return false; - Topic o = (Topic) other_; + SubscriptionTopic o = (SubscriptionTopic) other_; return compareDeep(url, o.url, true) && compareDeep(identifier, o.identifier, true) && compareDeep(version, o.version, true) && compareDeep(title, o.title, true) && compareDeep(derivedFromCanonical, o.derivedFromCanonical, true) && compareDeep(derivedFromUri, o.derivedFromUri, true) && compareDeep(status, o.status, true) && compareDeep(experimental, o.experimental, true) @@ -3037,9 +2913,9 @@ public class Topic extends DomainResource { public boolean equalsShallow(Base other_) { if (!super.equalsShallow(other_)) return false; - if (!(other_ instanceof Topic)) + if (!(other_ instanceof SubscriptionTopic)) return false; - Topic o = (Topic) other_; + SubscriptionTopic o = (SubscriptionTopic) other_; return compareValues(url, o.url, true) && compareValues(version, o.version, true) && compareValues(title, o.title, true) && compareValues(derivedFromCanonical, o.derivedFromCanonical, true) && compareValues(derivedFromUri, o.derivedFromUri, true) && compareValues(status, o.status, true) && compareValues(experimental, o.experimental, true) && compareValues(date, o.date, true) @@ -3057,7 +2933,7 @@ public class Topic extends DomainResource { @Override public ResourceType getResourceType() { - return ResourceType.Topic; + return ResourceType.SubscriptionTopic; } /** @@ -3065,17 +2941,17 @@ public class Topic extends DomainResource { *

* Description: Date status first applied
* Type: date
- * Path: Topic.date
+ * Path: SubscriptionTopic.date
*

*/ - @SearchParamDefinition(name="date", path="Topic.date", description="Date status first applied", type="date" ) + @SearchParamDefinition(name="date", path="SubscriptionTopic.date", description="Date status first applied", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date *

* Description: Date status first applied
* Type: date
- * Path: Topic.date
+ * Path: SubscriptionTopic.date
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); @@ -3083,19 +2959,19 @@ public class Topic extends DomainResource { /** * Search parameter: identifier *

- * Description: Business Identifier for Topic
+ * Description: Business Identifier for SubscriptionTopic
* Type: token
- * Path: Topic.identifier
+ * Path: SubscriptionTopic.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="Topic.identifier", description="Business Identifier for Topic", type="token" ) + @SearchParamDefinition(name="identifier", path="SubscriptionTopic.identifier", description="Business Identifier for SubscriptionTopic", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier *

- * Description: Business Identifier for Topic
+ * Description: Business Identifier for SubscriptionTopic
* Type: token
- * Path: Topic.identifier
+ * Path: SubscriptionTopic.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); @@ -3103,45 +2979,45 @@ public class Topic extends DomainResource { /** * Search parameter: publisher *

- * Description: The name of the individual or organization that published the Topic
+ * Description: The name of the individual or organization that published the SubscriptionTopic
* Type: reference
- * Path: Topic.publisher
+ * Path: SubscriptionTopic.publisher
*

*/ - @SearchParamDefinition(name="publisher", path="Topic.publisher", description="The name of the individual or organization that published the Topic", type="reference", target={Organization.class, Practitioner.class, PractitionerRole.class } ) + @SearchParamDefinition(name="publisher", path="SubscriptionTopic.publisher", description="The name of the individual or organization that published the SubscriptionTopic", type="reference", target={Organization.class, Practitioner.class, PractitionerRole.class } ) public static final String SP_PUBLISHER = "publisher"; /** * Fluent Client search parameter constant for publisher *

- * Description: The name of the individual or organization that published the Topic
+ * Description: The name of the individual or organization that published the SubscriptionTopic
* Type: reference
- * Path: Topic.publisher
+ * Path: SubscriptionTopic.publisher
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PUBLISHER = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PUBLISHER); /** * Constant for fluent queries to be used to add include statements. Specifies - * the path value of "Topic:publisher". + * the path value of "SubscriptionTopic:publisher". */ - public static final ca.uhn.fhir.model.api.Include INCLUDE_PUBLISHER = new ca.uhn.fhir.model.api.Include("Topic:publisher").toLocked(); + public static final ca.uhn.fhir.model.api.Include INCLUDE_PUBLISHER = new ca.uhn.fhir.model.api.Include("SubscriptionTopic:publisher").toLocked(); /** * Search parameter: resource-type *

- * Description: Candidate types for this topic
+ * Description: Candidate types for this subscription topic
* Type: token
- * Path: Topic.resourceTrigger.resourceType
+ * Path: SubscriptionTopic.resourceTrigger.resourceType
*

*/ - @SearchParamDefinition(name="resource-type", path="Topic.resourceTrigger.resourceType", description="Candidate types for this topic", type="token" ) + @SearchParamDefinition(name="resource-type", path="SubscriptionTopic.resourceTrigger.resourceType", description="Candidate types for this subscription topic", type="token" ) public static final String SP_RESOURCE_TYPE = "resource-type"; /** * Fluent Client search parameter constant for resource-type *

- * Description: Candidate types for this topic
+ * Description: Candidate types for this subscription topic
* Type: token
- * Path: Topic.resourceTrigger.resourceType
+ * Path: SubscriptionTopic.resourceTrigger.resourceType
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam RESOURCE_TYPE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_RESOURCE_TYPE); @@ -3151,17 +3027,17 @@ public class Topic extends DomainResource { *

* Description: draft | active | retired | unknown
* Type: token
- * Path: Topic.status
+ * Path: SubscriptionTopic.status
*

*/ - @SearchParamDefinition(name="status", path="Topic.status", description="draft | active | retired | unknown", type="token" ) + @SearchParamDefinition(name="status", path="SubscriptionTopic.status", description="draft | active | retired | unknown", type="token" ) public static final String SP_STATUS = "status"; /** * Fluent Client search parameter constant for status *

* Description: draft | active | retired | unknown
* Type: token
- * Path: Topic.status
+ * Path: SubscriptionTopic.status
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam STATUS = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_STATUS); @@ -3169,19 +3045,19 @@ public class Topic extends DomainResource { /** * Search parameter: title *

- * Description: Name for this Topic (Human friendly)
+ * Description: Name for this SubscriptionTopic (Human friendly)
* Type: string
- * Path: Topic.title
+ * Path: SubscriptionTopic.title
*

*/ - @SearchParamDefinition(name="title", path="Topic.title", description="Name for this Topic (Human friendly)", type="string" ) + @SearchParamDefinition(name="title", path="SubscriptionTopic.title", description="Name for this SubscriptionTopic (Human friendly)", type="string" ) public static final String SP_TITLE = "title"; /** * Fluent Client search parameter constant for title *

- * Description: Name for this Topic (Human friendly)
+ * Description: Name for this SubscriptionTopic (Human friendly)
* Type: string
- * Path: Topic.title
+ * Path: SubscriptionTopic.title
*

*/ public static final ca.uhn.fhir.rest.gclient.StringClientParam TITLE = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TITLE); @@ -3191,17 +3067,17 @@ public class Topic extends DomainResource { *

* Description: Text representation of the trigger
* Type: string
- * Path: Topic.resourceTrigger.description
+ * Path: SubscriptionTopic.resourceTrigger.description
*

*/ - @SearchParamDefinition(name="trigger-description", path="Topic.resourceTrigger.description", description="Text representation of the trigger", type="string" ) + @SearchParamDefinition(name="trigger-description", path="SubscriptionTopic.resourceTrigger.description", description="Text representation of the trigger", type="string" ) public static final String SP_TRIGGER_DESCRIPTION = "trigger-description"; /** * Fluent Client search parameter constant for trigger-description *

* Description: Text representation of the trigger
* Type: string
- * Path: Topic.resourceTrigger.description
+ * Path: SubscriptionTopic.resourceTrigger.description
*

*/ public static final ca.uhn.fhir.rest.gclient.StringClientParam TRIGGER_DESCRIPTION = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_TRIGGER_DESCRIPTION); @@ -3209,19 +3085,19 @@ public class Topic extends DomainResource { /** * Search parameter: url *

- * Description: Logical canonical URL to reference this Topic (globally unique)
+ * Description: Logical canonical URL to reference this SubscriptionTopic (globally unique)
* Type: uri
- * Path: Topic.url
+ * Path: SubscriptionTopic.url
*

*/ - @SearchParamDefinition(name="url", path="Topic.url", description="Logical canonical URL to reference this Topic (globally unique)", type="uri" ) + @SearchParamDefinition(name="url", path="SubscriptionTopic.url", description="Logical canonical URL to reference this SubscriptionTopic (globally unique)", type="uri" ) public static final String SP_URL = "url"; /** * Fluent Client search parameter constant for url *

- * Description: Logical canonical URL to reference this Topic (globally unique)
+ * Description: Logical canonical URL to reference this SubscriptionTopic (globally unique)
* Type: uri
- * Path: Topic.url
+ * Path: SubscriptionTopic.url
*

*/ public static final ca.uhn.fhir.rest.gclient.UriClientParam URL = new ca.uhn.fhir.rest.gclient.UriClientParam(SP_URL); @@ -3229,19 +3105,19 @@ public class Topic extends DomainResource { /** * Search parameter: version *

- * Description: Business version of the Topic
+ * Description: Business version of the SubscriptionTopic
* Type: token
- * Path: Topic.version
+ * Path: SubscriptionTopic.version
*

*/ - @SearchParamDefinition(name="version", path="Topic.version", description="Business version of the Topic", type="token" ) + @SearchParamDefinition(name="version", path="SubscriptionTopic.version", description="Business version of the SubscriptionTopic", type="token" ) public static final String SP_VERSION = "version"; /** * Fluent Client search parameter constant for version *

- * Description: Business version of the Topic
+ * Description: Business version of the SubscriptionTopic
* Type: token
- * Path: Topic.version
+ * Path: SubscriptionTopic.version
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam VERSION = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_VERSION); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Substance.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Substance.java index f665a6be9..958309b1d 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Substance.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Substance.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceAmount.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceAmount.java index 298880323..b05b00db1 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceAmount.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceAmount.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceDefinition.java index 9ed3d0e2d..c18c240a9 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1243,11 +1243,11 @@ public class SubstanceDefinition extends DomainResource { protected SubstanceDefinitionStructureIsotopeMolecularWeightComponent molecularWeight; /** - * Describes the source of information. + * The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay. */ - @Child(name = "sourceCoding", type = {Coding.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Describes the source of information", formalDefinition="Describes the source of information." ) - protected List sourceCoding; + @Child(name = "technique", type = {CodeableConcept.class}, order=7, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Description(shortDefinition="The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay", formalDefinition="The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay." ) + protected List technique; /** * Supporting literature about the source of information. @@ -1263,7 +1263,7 @@ public class SubstanceDefinition extends DomainResource { @Description(shortDefinition="Molecular structural representation", formalDefinition="Molecular structural representation." ) protected List representation; - private static final long serialVersionUID = 1607179069L; + private static final long serialVersionUID = -1648605311L; /** * Constructor @@ -1496,56 +1496,56 @@ public class SubstanceDefinition extends DomainResource { } /** - * @return {@link #sourceCoding} (Describes the source of information.) + * @return {@link #technique} (The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay.) */ - public List getSourceCoding() { - if (this.sourceCoding == null) - this.sourceCoding = new ArrayList(); - return this.sourceCoding; + public List getTechnique() { + if (this.technique == null) + this.technique = new ArrayList(); + return this.technique; } /** * @return Returns a reference to this for easy method chaining */ - public SubstanceDefinitionStructureComponent setSourceCoding(List theSourceCoding) { - this.sourceCoding = theSourceCoding; + public SubstanceDefinitionStructureComponent setTechnique(List theTechnique) { + this.technique = theTechnique; return this; } - public boolean hasSourceCoding() { - if (this.sourceCoding == null) + public boolean hasTechnique() { + if (this.technique == null) return false; - for (Coding item : this.sourceCoding) + for (CodeableConcept item : this.technique) if (!item.isEmpty()) return true; return false; } - public Coding addSourceCoding() { //3 - Coding t = new Coding(); - if (this.sourceCoding == null) - this.sourceCoding = new ArrayList(); - this.sourceCoding.add(t); + public CodeableConcept addTechnique() { //3 + CodeableConcept t = new CodeableConcept(); + if (this.technique == null) + this.technique = new ArrayList(); + this.technique.add(t); return t; } - public SubstanceDefinitionStructureComponent addSourceCoding(Coding t) { //3 + public SubstanceDefinitionStructureComponent addTechnique(CodeableConcept t) { //3 if (t == null) return this; - if (this.sourceCoding == null) - this.sourceCoding = new ArrayList(); - this.sourceCoding.add(t); + if (this.technique == null) + this.technique = new ArrayList(); + this.technique.add(t); return this; } /** - * @return The first repetition of repeating field {@link #sourceCoding}, creating it if it does not already exist {3} + * @return The first repetition of repeating field {@link #technique}, creating it if it does not already exist {3} */ - public Coding getSourceCodingFirstRep() { - if (getSourceCoding().isEmpty()) { - addSourceCoding(); + public CodeableConcept getTechniqueFirstRep() { + if (getTechnique().isEmpty()) { + addTechnique(); } - return getSourceCoding().get(0); + return getTechnique().get(0); } /** @@ -1662,7 +1662,7 @@ public class SubstanceDefinition extends DomainResource { children.add(new Property("molecularFormulaByMoiety", "string", "Specified per moiety according to the Hill system, i.e. first C, then H, then alphabetical, each moiety separated by a dot.", 0, 1, molecularFormulaByMoiety)); children.add(new Property("isotope", "", "Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio.", 0, java.lang.Integer.MAX_VALUE, isotope)); children.add(new Property("molecularWeight", "@SubstanceDefinition.structure.isotope.molecularWeight", "The molecular weight or weight range (for proteins, polymers or nucleic acids).", 0, 1, molecularWeight)); - children.add(new Property("sourceCoding", "Coding", "Describes the source of information.", 0, java.lang.Integer.MAX_VALUE, sourceCoding)); + children.add(new Property("technique", "CodeableConcept", "The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay.", 0, java.lang.Integer.MAX_VALUE, technique)); children.add(new Property("sourceDocument", "Reference(DocumentReference)", "Supporting literature about the source of information.", 0, java.lang.Integer.MAX_VALUE, sourceDocument)); children.add(new Property("representation", "", "Molecular structural representation.", 0, java.lang.Integer.MAX_VALUE, representation)); } @@ -1676,7 +1676,7 @@ public class SubstanceDefinition extends DomainResource { case 1315452848: /*molecularFormulaByMoiety*/ return new Property("molecularFormulaByMoiety", "string", "Specified per moiety according to the Hill system, i.e. first C, then H, then alphabetical, each moiety separated by a dot.", 0, 1, molecularFormulaByMoiety); case 2097035189: /*isotope*/ return new Property("isotope", "", "Applicable for single substances that contain a radionuclide or a non-natural isotopic ratio.", 0, java.lang.Integer.MAX_VALUE, isotope); case 635625672: /*molecularWeight*/ return new Property("molecularWeight", "@SubstanceDefinition.structure.isotope.molecularWeight", "The molecular weight or weight range (for proteins, polymers or nucleic acids).", 0, 1, molecularWeight); - case 864720741: /*sourceCoding*/ return new Property("sourceCoding", "Coding", "Describes the source of information.", 0, java.lang.Integer.MAX_VALUE, sourceCoding); + case 1469675088: /*technique*/ return new Property("technique", "CodeableConcept", "The method used to elucidate the structure or characterization of the drug substance. Examples: X-ray, HPLC, NMR, Peptide mapping, Ligand binding assay.", 0, java.lang.Integer.MAX_VALUE, technique); case -501788074: /*sourceDocument*/ return new Property("sourceDocument", "Reference(DocumentReference)", "Supporting literature about the source of information.", 0, java.lang.Integer.MAX_VALUE, sourceDocument); case -671065907: /*representation*/ return new Property("representation", "", "Molecular structural representation.", 0, java.lang.Integer.MAX_VALUE, representation); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -1693,7 +1693,7 @@ public class SubstanceDefinition extends DomainResource { case 1315452848: /*molecularFormulaByMoiety*/ return this.molecularFormulaByMoiety == null ? new Base[0] : new Base[] {this.molecularFormulaByMoiety}; // StringType case 2097035189: /*isotope*/ return this.isotope == null ? new Base[0] : this.isotope.toArray(new Base[this.isotope.size()]); // SubstanceDefinitionStructureIsotopeComponent case 635625672: /*molecularWeight*/ return this.molecularWeight == null ? new Base[0] : new Base[] {this.molecularWeight}; // SubstanceDefinitionStructureIsotopeMolecularWeightComponent - case 864720741: /*sourceCoding*/ return this.sourceCoding == null ? new Base[0] : this.sourceCoding.toArray(new Base[this.sourceCoding.size()]); // Coding + case 1469675088: /*technique*/ return this.technique == null ? new Base[0] : this.technique.toArray(new Base[this.technique.size()]); // CodeableConcept case -501788074: /*sourceDocument*/ return this.sourceDocument == null ? new Base[0] : this.sourceDocument.toArray(new Base[this.sourceDocument.size()]); // Reference case -671065907: /*representation*/ return this.representation == null ? new Base[0] : this.representation.toArray(new Base[this.representation.size()]); // SubstanceDefinitionStructureRepresentationComponent default: return super.getProperty(hash, name, checkValid); @@ -1722,8 +1722,8 @@ public class SubstanceDefinition extends DomainResource { case 635625672: // molecularWeight this.molecularWeight = (SubstanceDefinitionStructureIsotopeMolecularWeightComponent) value; // SubstanceDefinitionStructureIsotopeMolecularWeightComponent return value; - case 864720741: // sourceCoding - this.getSourceCoding().add(TypeConvertor.castToCoding(value)); // Coding + case 1469675088: // technique + this.getTechnique().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case -501788074: // sourceDocument this.getSourceDocument().add(TypeConvertor.castToReference(value)); // Reference @@ -1750,8 +1750,8 @@ public class SubstanceDefinition extends DomainResource { this.getIsotope().add((SubstanceDefinitionStructureIsotopeComponent) value); } else if (name.equals("molecularWeight")) { this.molecularWeight = (SubstanceDefinitionStructureIsotopeMolecularWeightComponent) value; // SubstanceDefinitionStructureIsotopeMolecularWeightComponent - } else if (name.equals("sourceCoding")) { - this.getSourceCoding().add(TypeConvertor.castToCoding(value)); + } else if (name.equals("technique")) { + this.getTechnique().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("sourceDocument")) { this.getSourceDocument().add(TypeConvertor.castToReference(value)); } else if (name.equals("representation")) { @@ -1770,7 +1770,7 @@ public class SubstanceDefinition extends DomainResource { case 1315452848: return getMolecularFormulaByMoietyElement(); case 2097035189: return addIsotope(); case 635625672: return getMolecularWeight(); - case 864720741: return addSourceCoding(); + case 1469675088: return addTechnique(); case -501788074: return addSourceDocument(); case -671065907: return addRepresentation(); default: return super.makeProperty(hash, name); @@ -1787,7 +1787,7 @@ public class SubstanceDefinition extends DomainResource { case 1315452848: /*molecularFormulaByMoiety*/ return new String[] {"string"}; case 2097035189: /*isotope*/ return new String[] {}; case 635625672: /*molecularWeight*/ return new String[] {"@SubstanceDefinition.structure.isotope.molecularWeight"}; - case 864720741: /*sourceCoding*/ return new String[] {"Coding"}; + case 1469675088: /*technique*/ return new String[] {"CodeableConcept"}; case -501788074: /*sourceDocument*/ return new String[] {"Reference"}; case -671065907: /*representation*/ return new String[] {}; default: return super.getTypesForProperty(hash, name); @@ -1818,8 +1818,8 @@ public class SubstanceDefinition extends DomainResource { this.molecularWeight = new SubstanceDefinitionStructureIsotopeMolecularWeightComponent(); return this.molecularWeight; } - else if (name.equals("sourceCoding")) { - return addSourceCoding(); + else if (name.equals("technique")) { + return addTechnique(); } else if (name.equals("sourceDocument")) { return addSourceDocument(); @@ -1849,10 +1849,10 @@ public class SubstanceDefinition extends DomainResource { dst.isotope.add(i.copy()); }; dst.molecularWeight = molecularWeight == null ? null : molecularWeight.copy(); - if (sourceCoding != null) { - dst.sourceCoding = new ArrayList(); - for (Coding i : sourceCoding) - dst.sourceCoding.add(i.copy()); + if (technique != null) { + dst.technique = new ArrayList(); + for (CodeableConcept i : technique) + dst.technique.add(i.copy()); }; if (sourceDocument != null) { dst.sourceDocument = new ArrayList(); @@ -1876,7 +1876,7 @@ public class SubstanceDefinition extends DomainResource { return compareDeep(stereochemistry, o.stereochemistry, true) && compareDeep(opticalActivity, o.opticalActivity, true) && compareDeep(molecularFormula, o.molecularFormula, true) && compareDeep(molecularFormulaByMoiety, o.molecularFormulaByMoiety, true) && compareDeep(isotope, o.isotope, true) && compareDeep(molecularWeight, o.molecularWeight, true) - && compareDeep(sourceCoding, o.sourceCoding, true) && compareDeep(sourceDocument, o.sourceDocument, true) + && compareDeep(technique, o.technique, true) && compareDeep(sourceDocument, o.sourceDocument, true) && compareDeep(representation, o.representation, true); } @@ -1893,7 +1893,7 @@ public class SubstanceDefinition extends DomainResource { public boolean isEmpty() { return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(stereochemistry, opticalActivity - , molecularFormula, molecularFormulaByMoiety, isotope, molecularWeight, sourceCoding + , molecularFormula, molecularFormulaByMoiety, isotope, molecularWeight, technique , sourceDocument, representation); } @@ -2504,20 +2504,27 @@ public class SubstanceDefinition extends DomainResource { protected CodeableConcept type; /** - * The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX. + * The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF. */ @Child(name = "representation", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) - @Description(shortDefinition="The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX", formalDefinition="The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX." ) + @Description(shortDefinition="The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF", formalDefinition="The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF." ) protected StringType representation; + /** + * The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF. + */ + @Child(name = "format", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF", formalDefinition="The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF." ) + protected CodeableConcept format; + /** * An attached file with the structural representation. */ - @Child(name = "attachment", type = {Attachment.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Child(name = "attachment", type = {Attachment.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="An attached file with the structural representation", formalDefinition="An attached file with the structural representation." ) protected Attachment attachment; - private static final long serialVersionUID = 167954495L; + private static final long serialVersionUID = -1385695515L; /** * Constructor @@ -2551,7 +2558,7 @@ public class SubstanceDefinition extends DomainResource { } /** - * @return {@link #representation} (The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX.). This is the underlying object with id, value and extensions. The accessor "getRepresentation" gives direct access to the value + * @return {@link #representation} (The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.). This is the underlying object with id, value and extensions. The accessor "getRepresentation" gives direct access to the value */ public StringType getRepresentationElement() { if (this.representation == null) @@ -2571,7 +2578,7 @@ public class SubstanceDefinition extends DomainResource { } /** - * @param value {@link #representation} (The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX.). This is the underlying object with id, value and extensions. The accessor "getRepresentation" gives direct access to the value + * @param value {@link #representation} (The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.). This is the underlying object with id, value and extensions. The accessor "getRepresentation" gives direct access to the value */ public SubstanceDefinitionStructureRepresentationComponent setRepresentationElement(StringType value) { this.representation = value; @@ -2579,14 +2586,14 @@ public class SubstanceDefinition extends DomainResource { } /** - * @return The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX. + * @return The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF. */ public String getRepresentation() { return this.representation == null ? null : this.representation.getValue(); } /** - * @param value The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX. + * @param value The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF. */ public SubstanceDefinitionStructureRepresentationComponent setRepresentation(String value) { if (Utilities.noString(value)) @@ -2599,6 +2606,30 @@ public class SubstanceDefinition extends DomainResource { return this; } + /** + * @return {@link #format} (The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.) + */ + public CodeableConcept getFormat() { + if (this.format == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubstanceDefinitionStructureRepresentationComponent.format"); + else if (Configuration.doAutoCreate()) + this.format = new CodeableConcept(); // cc + return this.format; + } + + public boolean hasFormat() { + return this.format != null && !this.format.isEmpty(); + } + + /** + * @param value {@link #format} (The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.) + */ + public SubstanceDefinitionStructureRepresentationComponent setFormat(CodeableConcept value) { + this.format = value; + return this; + } + /** * @return {@link #attachment} (An attached file with the structural representation.) */ @@ -2626,7 +2657,8 @@ public class SubstanceDefinition extends DomainResource { protected void listChildren(List children) { super.listChildren(children); children.add(new Property("type", "CodeableConcept", "The type of structure (e.g. Full, Partial, Representative).", 0, 1, type)); - children.add(new Property("representation", "string", "The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX.", 0, 1, representation)); + children.add(new Property("representation", "string", "The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.", 0, 1, representation)); + children.add(new Property("format", "CodeableConcept", "The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.", 0, 1, format)); children.add(new Property("attachment", "Attachment", "An attached file with the structural representation.", 0, 1, attachment)); } @@ -2634,7 +2666,8 @@ public class SubstanceDefinition extends DomainResource { public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { case 3575610: /*type*/ return new Property("type", "CodeableConcept", "The type of structure (e.g. Full, Partial, Representative).", 0, 1, type); - case -671065907: /*representation*/ return new Property("representation", "string", "The structural representation as text string in a format e.g. InChI, SMILES, MOLFILE, CDX.", 0, 1, representation); + case -671065907: /*representation*/ return new Property("representation", "string", "The structural representation as text string in a standard format e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.", 0, 1, representation); + case -1268779017: /*format*/ return new Property("format", "CodeableConcept", "The format of the representation e.g. InChI, SMILES, MOLFILE, CDX, SDF, PDB, mmCIF.", 0, 1, format); case -1963501277: /*attachment*/ return new Property("attachment", "Attachment", "An attached file with the structural representation.", 0, 1, attachment); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -2646,6 +2679,7 @@ public class SubstanceDefinition extends DomainResource { switch (hash) { case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept case -671065907: /*representation*/ return this.representation == null ? new Base[0] : new Base[] {this.representation}; // StringType + case -1268779017: /*format*/ return this.format == null ? new Base[0] : new Base[] {this.format}; // CodeableConcept case -1963501277: /*attachment*/ return this.attachment == null ? new Base[0] : new Base[] {this.attachment}; // Attachment default: return super.getProperty(hash, name, checkValid); } @@ -2661,6 +2695,9 @@ public class SubstanceDefinition extends DomainResource { case -671065907: // representation this.representation = TypeConvertor.castToString(value); // StringType return value; + case -1268779017: // format + this.format = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; case -1963501277: // attachment this.attachment = TypeConvertor.castToAttachment(value); // Attachment return value; @@ -2675,6 +2712,8 @@ public class SubstanceDefinition extends DomainResource { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("representation")) { this.representation = TypeConvertor.castToString(value); // StringType + } else if (name.equals("format")) { + this.format = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("attachment")) { this.attachment = TypeConvertor.castToAttachment(value); // Attachment } else @@ -2687,6 +2726,7 @@ public class SubstanceDefinition extends DomainResource { switch (hash) { case 3575610: return getType(); case -671065907: return getRepresentationElement(); + case -1268779017: return getFormat(); case -1963501277: return getAttachment(); default: return super.makeProperty(hash, name); } @@ -2698,6 +2738,7 @@ public class SubstanceDefinition extends DomainResource { switch (hash) { case 3575610: /*type*/ return new String[] {"CodeableConcept"}; case -671065907: /*representation*/ return new String[] {"string"}; + case -1268779017: /*format*/ return new String[] {"CodeableConcept"}; case -1963501277: /*attachment*/ return new String[] {"Attachment"}; default: return super.getTypesForProperty(hash, name); } @@ -2713,6 +2754,10 @@ public class SubstanceDefinition extends DomainResource { else if (name.equals("representation")) { throw new FHIRException("Cannot call addChild on a primitive type SubstanceDefinition.structure.representation.representation"); } + else if (name.equals("format")) { + this.format = new CodeableConcept(); + return this.format; + } else if (name.equals("attachment")) { this.attachment = new Attachment(); return this.attachment; @@ -2731,6 +2776,7 @@ public class SubstanceDefinition extends DomainResource { super.copyValues(dst); dst.type = type == null ? null : type.copy(); dst.representation = representation == null ? null : representation.copy(); + dst.format = format == null ? null : format.copy(); dst.attachment = attachment == null ? null : attachment.copy(); } @@ -2741,8 +2787,8 @@ public class SubstanceDefinition extends DomainResource { if (!(other_ instanceof SubstanceDefinitionStructureRepresentationComponent)) return false; SubstanceDefinitionStructureRepresentationComponent o = (SubstanceDefinitionStructureRepresentationComponent) other_; - return compareDeep(type, o.type, true) && compareDeep(representation, o.representation, true) && compareDeep(attachment, o.attachment, true) - ; + return compareDeep(type, o.type, true) && compareDeep(representation, o.representation, true) && compareDeep(format, o.format, true) + && compareDeep(attachment, o.attachment, true); } @Override @@ -2756,8 +2802,8 @@ public class SubstanceDefinition extends DomainResource { } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, representation, attachment - ); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, representation, format + , attachment); } public String fhirType() { @@ -6461,6 +6507,26 @@ public class SubstanceDefinition extends DomainResource { return ResourceType.SubstanceDefinition; } + /** + * Search parameter: category + *

+ * Description: High level categorization, e.g. polymer or nucleic acid, or food, chemical, biological
+ * Type: token
+ * Path: SubstanceDefinition.category
+ *

+ */ + @SearchParamDefinition(name="category", path="SubstanceDefinition.category", description="High level categorization, e.g. polymer or nucleic acid, or food, chemical, biological", type="token" ) + public static final String SP_CATEGORY = "category"; + /** + * Fluent Client search parameter constant for category + *

+ * Description: High level categorization, e.g. polymer or nucleic acid, or food, chemical, biological
+ * Type: token
+ * Path: SubstanceDefinition.category
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam CATEGORY = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CATEGORY); + /** * Search parameter: code *

@@ -6481,6 +6547,26 @@ public class SubstanceDefinition extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.TokenClientParam CODE = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_CODE); + /** + * Search parameter: domain + *

+ * Description: If the substance applies to only human or veterinary use
+ * Type: token
+ * Path: SubstanceDefinition.domain
+ *

+ */ + @SearchParamDefinition(name="domain", path="SubstanceDefinition.domain", description="If the substance applies to only human or veterinary use", type="token" ) + public static final String SP_DOMAIN = "domain"; + /** + * Fluent Client search parameter constant for domain + *

+ * Description: If the substance applies to only human or veterinary use
+ * Type: token
+ * Path: SubstanceDefinition.domain
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.TokenClientParam DOMAIN = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_DOMAIN); + /** * Search parameter: identifier *

@@ -6501,6 +6587,26 @@ public class SubstanceDefinition extends DomainResource { */ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); + /** + * Search parameter: name + *

+ * Description: The actual name
+ * Type: string
+ * Path: SubstanceDefinition.name.name
+ *

+ */ + @SearchParamDefinition(name="name", path="SubstanceDefinition.name.name", description="The actual name", type="string" ) + public static final String SP_NAME = "name"; + /** + * Fluent Client search parameter constant for name + *

+ * Description: The actual name
+ * Type: string
+ * Path: SubstanceDefinition.name.name
+ *

+ */ + public static final ca.uhn.fhir.rest.gclient.StringClientParam NAME = new ca.uhn.fhir.rest.gclient.StringClientParam(SP_NAME); + } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceNucleicAcid.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceNucleicAcid.java index a6784d42e..9f497a5b4 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceNucleicAcid.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceNucleicAcid.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstancePolymer.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstancePolymer.java index da4513407..7f638ff81 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstancePolymer.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstancePolymer.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -313,16 +313,16 @@ public class SubstancePolymer extends DomainResource { /** * Todo. */ - @Child(name = "material", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Child(name = "code", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) - protected CodeableConcept material; + protected CodeableConcept code; /** * Todo. */ - @Child(name = "type", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "category", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) - protected CodeableConcept type; + protected CodeableConcept category; /** * Todo. @@ -338,7 +338,7 @@ public class SubstancePolymer extends DomainResource { @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected SubstanceAmount amount; - private static final long serialVersionUID = 589614045L; + private static final long serialVersionUID = -254439457L; /** * Constructor @@ -348,50 +348,50 @@ public class SubstancePolymer extends DomainResource { } /** - * @return {@link #material} (Todo.) + * @return {@link #code} (Todo.) */ - public CodeableConcept getMaterial() { - if (this.material == null) + public CodeableConcept getCode() { + if (this.code == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubstancePolymerMonomerSetStartingMaterialComponent.material"); + throw new Error("Attempt to auto-create SubstancePolymerMonomerSetStartingMaterialComponent.code"); else if (Configuration.doAutoCreate()) - this.material = new CodeableConcept(); // cc - return this.material; + this.code = new CodeableConcept(); // cc + return this.code; } - public boolean hasMaterial() { - return this.material != null && !this.material.isEmpty(); + public boolean hasCode() { + return this.code != null && !this.code.isEmpty(); } /** - * @param value {@link #material} (Todo.) + * @param value {@link #code} (Todo.) */ - public SubstancePolymerMonomerSetStartingMaterialComponent setMaterial(CodeableConcept value) { - this.material = value; + public SubstancePolymerMonomerSetStartingMaterialComponent setCode(CodeableConcept value) { + this.code = value; return this; } /** - * @return {@link #type} (Todo.) + * @return {@link #category} (Todo.) */ - public CodeableConcept getType() { - if (this.type == null) + public CodeableConcept getCategory() { + if (this.category == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubstancePolymerMonomerSetStartingMaterialComponent.type"); + throw new Error("Attempt to auto-create SubstancePolymerMonomerSetStartingMaterialComponent.category"); else if (Configuration.doAutoCreate()) - this.type = new CodeableConcept(); // cc - return this.type; + this.category = new CodeableConcept(); // cc + return this.category; } - public boolean hasType() { - return this.type != null && !this.type.isEmpty(); + public boolean hasCategory() { + return this.category != null && !this.category.isEmpty(); } /** - * @param value {@link #type} (Todo.) + * @param value {@link #category} (Todo.) */ - public SubstancePolymerMonomerSetStartingMaterialComponent setType(CodeableConcept value) { - this.type = value; + public SubstancePolymerMonomerSetStartingMaterialComponent setCategory(CodeableConcept value) { + this.category = value; return this; } @@ -466,8 +466,8 @@ public class SubstancePolymer extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("material", "CodeableConcept", "Todo.", 0, 1, material)); - children.add(new Property("type", "CodeableConcept", "Todo.", 0, 1, type)); + children.add(new Property("code", "CodeableConcept", "Todo.", 0, 1, code)); + children.add(new Property("category", "CodeableConcept", "Todo.", 0, 1, category)); children.add(new Property("isDefining", "boolean", "Todo.", 0, 1, isDefining)); children.add(new Property("amount", "SubstanceAmount", "Todo.", 0, 1, amount)); } @@ -475,8 +475,8 @@ public class SubstancePolymer extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 299066663: /*material*/ return new Property("material", "CodeableConcept", "Todo.", 0, 1, material); - case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Todo.", 0, 1, type); + case 3059181: /*code*/ return new Property("code", "CodeableConcept", "Todo.", 0, 1, code); + case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Todo.", 0, 1, category); case -141812990: /*isDefining*/ return new Property("isDefining", "boolean", "Todo.", 0, 1, isDefining); case -1413853096: /*amount*/ return new Property("amount", "SubstanceAmount", "Todo.", 0, 1, amount); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -487,8 +487,8 @@ public class SubstancePolymer extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 299066663: /*material*/ return this.material == null ? new Base[0] : new Base[] {this.material}; // CodeableConcept - case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept + case 3059181: /*code*/ return this.code == null ? new Base[0] : new Base[] {this.code}; // CodeableConcept + case 50511102: /*category*/ return this.category == null ? new Base[0] : new Base[] {this.category}; // CodeableConcept case -141812990: /*isDefining*/ return this.isDefining == null ? new Base[0] : new Base[] {this.isDefining}; // BooleanType case -1413853096: /*amount*/ return this.amount == null ? new Base[0] : new Base[] {this.amount}; // SubstanceAmount default: return super.getProperty(hash, name, checkValid); @@ -499,11 +499,11 @@ public class SubstancePolymer extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 299066663: // material - this.material = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + case 3059181: // code + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; - case 3575610: // type - this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + case 50511102: // category + this.category = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -141812990: // isDefining this.isDefining = TypeConvertor.castToBoolean(value); // BooleanType @@ -518,10 +518,10 @@ public class SubstancePolymer extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("material")) { - this.material = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - } else if (name.equals("type")) { - this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + if (name.equals("code")) { + this.code = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + } else if (name.equals("category")) { + this.category = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("isDefining")) { this.isDefining = TypeConvertor.castToBoolean(value); // BooleanType } else if (name.equals("amount")) { @@ -534,8 +534,8 @@ public class SubstancePolymer extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 299066663: return getMaterial(); - case 3575610: return getType(); + case 3059181: return getCode(); + case 50511102: return getCategory(); case -141812990: return getIsDefiningElement(); case -1413853096: return getAmount(); default: return super.makeProperty(hash, name); @@ -546,8 +546,8 @@ public class SubstancePolymer extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 299066663: /*material*/ return new String[] {"CodeableConcept"}; - case 3575610: /*type*/ return new String[] {"CodeableConcept"}; + case 3059181: /*code*/ return new String[] {"CodeableConcept"}; + case 50511102: /*category*/ return new String[] {"CodeableConcept"}; case -141812990: /*isDefining*/ return new String[] {"boolean"}; case -1413853096: /*amount*/ return new String[] {"SubstanceAmount"}; default: return super.getTypesForProperty(hash, name); @@ -557,13 +557,13 @@ public class SubstancePolymer extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("material")) { - this.material = new CodeableConcept(); - return this.material; + if (name.equals("code")) { + this.code = new CodeableConcept(); + return this.code; } - else if (name.equals("type")) { - this.type = new CodeableConcept(); - return this.type; + else if (name.equals("category")) { + this.category = new CodeableConcept(); + return this.category; } else if (name.equals("isDefining")) { throw new FHIRException("Cannot call addChild on a primitive type SubstancePolymer.monomerSet.startingMaterial.isDefining"); @@ -584,8 +584,8 @@ public class SubstancePolymer extends DomainResource { public void copyValues(SubstancePolymerMonomerSetStartingMaterialComponent dst) { super.copyValues(dst); - dst.material = material == null ? null : material.copy(); - dst.type = type == null ? null : type.copy(); + dst.code = code == null ? null : code.copy(); + dst.category = category == null ? null : category.copy(); dst.isDefining = isDefining == null ? null : isDefining.copy(); dst.amount = amount == null ? null : amount.copy(); } @@ -597,7 +597,7 @@ public class SubstancePolymer extends DomainResource { if (!(other_ instanceof SubstancePolymerMonomerSetStartingMaterialComponent)) return false; SubstancePolymerMonomerSetStartingMaterialComponent o = (SubstancePolymerMonomerSetStartingMaterialComponent) other_; - return compareDeep(material, o.material, true) && compareDeep(type, o.type, true) && compareDeep(isDefining, o.isDefining, true) + return compareDeep(code, o.code, true) && compareDeep(category, o.category, true) && compareDeep(isDefining, o.isDefining, true) && compareDeep(amount, o.amount, true); } @@ -612,7 +612,7 @@ public class SubstancePolymer extends DomainResource { } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(material, type, isDefining + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(code, category, isDefining , amount); } @@ -1001,16 +1001,16 @@ public class SubstancePolymer extends DomainResource { /** * Todo. */ - @Child(name = "orientationOfPolymerisation", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Child(name = "unit", type = {StringType.class}, order=1, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) - protected CodeableConcept orientationOfPolymerisation; + protected StringType unit; /** * Todo. */ - @Child(name = "repeatUnit", type = {StringType.class}, order=2, min=0, max=1, modifier=false, summary=true) + @Child(name = "orientation", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) - protected StringType repeatUnit; + protected CodeableConcept orientation; /** * Todo. @@ -1033,7 +1033,7 @@ public class SubstancePolymer extends DomainResource { @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected List structuralRepresentation; - private static final long serialVersionUID = -1823741061L; + private static final long serialVersionUID = -1739084500L; /** * Constructor @@ -1043,78 +1043,78 @@ public class SubstancePolymer extends DomainResource { } /** - * @return {@link #orientationOfPolymerisation} (Todo.) + * @return {@link #unit} (Todo.). This is the underlying object with id, value and extensions. The accessor "getUnit" gives direct access to the value */ - public CodeableConcept getOrientationOfPolymerisation() { - if (this.orientationOfPolymerisation == null) + public StringType getUnitElement() { + if (this.unit == null) if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubstancePolymerRepeatRepeatUnitComponent.orientationOfPolymerisation"); + throw new Error("Attempt to auto-create SubstancePolymerRepeatRepeatUnitComponent.unit"); else if (Configuration.doAutoCreate()) - this.orientationOfPolymerisation = new CodeableConcept(); // cc - return this.orientationOfPolymerisation; + this.unit = new StringType(); // bb + return this.unit; } - public boolean hasOrientationOfPolymerisation() { - return this.orientationOfPolymerisation != null && !this.orientationOfPolymerisation.isEmpty(); + public boolean hasUnitElement() { + return this.unit != null && !this.unit.isEmpty(); + } + + public boolean hasUnit() { + return this.unit != null && !this.unit.isEmpty(); } /** - * @param value {@link #orientationOfPolymerisation} (Todo.) + * @param value {@link #unit} (Todo.). This is the underlying object with id, value and extensions. The accessor "getUnit" gives direct access to the value */ - public SubstancePolymerRepeatRepeatUnitComponent setOrientationOfPolymerisation(CodeableConcept value) { - this.orientationOfPolymerisation = value; - return this; - } - - /** - * @return {@link #repeatUnit} (Todo.). This is the underlying object with id, value and extensions. The accessor "getRepeatUnit" gives direct access to the value - */ - public StringType getRepeatUnitElement() { - if (this.repeatUnit == null) - if (Configuration.errorOnAutoCreate()) - throw new Error("Attempt to auto-create SubstancePolymerRepeatRepeatUnitComponent.repeatUnit"); - else if (Configuration.doAutoCreate()) - this.repeatUnit = new StringType(); // bb - return this.repeatUnit; - } - - public boolean hasRepeatUnitElement() { - return this.repeatUnit != null && !this.repeatUnit.isEmpty(); - } - - public boolean hasRepeatUnit() { - return this.repeatUnit != null && !this.repeatUnit.isEmpty(); - } - - /** - * @param value {@link #repeatUnit} (Todo.). This is the underlying object with id, value and extensions. The accessor "getRepeatUnit" gives direct access to the value - */ - public SubstancePolymerRepeatRepeatUnitComponent setRepeatUnitElement(StringType value) { - this.repeatUnit = value; + public SubstancePolymerRepeatRepeatUnitComponent setUnitElement(StringType value) { + this.unit = value; return this; } /** * @return Todo. */ - public String getRepeatUnit() { - return this.repeatUnit == null ? null : this.repeatUnit.getValue(); + public String getUnit() { + return this.unit == null ? null : this.unit.getValue(); } /** * @param value Todo. */ - public SubstancePolymerRepeatRepeatUnitComponent setRepeatUnit(String value) { + public SubstancePolymerRepeatRepeatUnitComponent setUnit(String value) { if (Utilities.noString(value)) - this.repeatUnit = null; + this.unit = null; else { - if (this.repeatUnit == null) - this.repeatUnit = new StringType(); - this.repeatUnit.setValue(value); + if (this.unit == null) + this.unit = new StringType(); + this.unit.setValue(value); } return this; } + /** + * @return {@link #orientation} (Todo.) + */ + public CodeableConcept getOrientation() { + if (this.orientation == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubstancePolymerRepeatRepeatUnitComponent.orientation"); + else if (Configuration.doAutoCreate()) + this.orientation = new CodeableConcept(); // cc + return this.orientation; + } + + public boolean hasOrientation() { + return this.orientation != null && !this.orientation.isEmpty(); + } + + /** + * @param value {@link #orientation} (Todo.) + */ + public SubstancePolymerRepeatRepeatUnitComponent setOrientation(CodeableConcept value) { + this.orientation = value; + return this; + } + /** * @return {@link #amount} (Todo.) */ @@ -1247,8 +1247,8 @@ public class SubstancePolymer extends DomainResource { protected void listChildren(List children) { super.listChildren(children); - children.add(new Property("orientationOfPolymerisation", "CodeableConcept", "Todo.", 0, 1, orientationOfPolymerisation)); - children.add(new Property("repeatUnit", "string", "Todo.", 0, 1, repeatUnit)); + children.add(new Property("unit", "string", "Todo.", 0, 1, unit)); + children.add(new Property("orientation", "CodeableConcept", "Todo.", 0, 1, orientation)); children.add(new Property("amount", "SubstanceAmount", "Todo.", 0, 1, amount)); children.add(new Property("degreeOfPolymerisation", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, degreeOfPolymerisation)); children.add(new Property("structuralRepresentation", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, structuralRepresentation)); @@ -1257,8 +1257,8 @@ public class SubstancePolymer extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { - case 1795817828: /*orientationOfPolymerisation*/ return new Property("orientationOfPolymerisation", "CodeableConcept", "Todo.", 0, 1, orientationOfPolymerisation); - case 1159607743: /*repeatUnit*/ return new Property("repeatUnit", "string", "Todo.", 0, 1, repeatUnit); + case 3594628: /*unit*/ return new Property("unit", "string", "Todo.", 0, 1, unit); + case -1439500848: /*orientation*/ return new Property("orientation", "CodeableConcept", "Todo.", 0, 1, orientation); case -1413853096: /*amount*/ return new Property("amount", "SubstanceAmount", "Todo.", 0, 1, amount); case -159251872: /*degreeOfPolymerisation*/ return new Property("degreeOfPolymerisation", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, degreeOfPolymerisation); case 14311178: /*structuralRepresentation*/ return new Property("structuralRepresentation", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, structuralRepresentation); @@ -1270,8 +1270,8 @@ public class SubstancePolymer extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { - case 1795817828: /*orientationOfPolymerisation*/ return this.orientationOfPolymerisation == null ? new Base[0] : new Base[] {this.orientationOfPolymerisation}; // CodeableConcept - case 1159607743: /*repeatUnit*/ return this.repeatUnit == null ? new Base[0] : new Base[] {this.repeatUnit}; // StringType + case 3594628: /*unit*/ return this.unit == null ? new Base[0] : new Base[] {this.unit}; // StringType + case -1439500848: /*orientation*/ return this.orientation == null ? new Base[0] : new Base[] {this.orientation}; // CodeableConcept case -1413853096: /*amount*/ return this.amount == null ? new Base[0] : new Base[] {this.amount}; // SubstanceAmount case -159251872: /*degreeOfPolymerisation*/ return this.degreeOfPolymerisation == null ? new Base[0] : this.degreeOfPolymerisation.toArray(new Base[this.degreeOfPolymerisation.size()]); // SubstancePolymerRepeatRepeatUnitDegreeOfPolymerisationComponent case 14311178: /*structuralRepresentation*/ return this.structuralRepresentation == null ? new Base[0] : this.structuralRepresentation.toArray(new Base[this.structuralRepresentation.size()]); // SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent @@ -1283,11 +1283,11 @@ public class SubstancePolymer extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { - case 1795817828: // orientationOfPolymerisation - this.orientationOfPolymerisation = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + case 3594628: // unit + this.unit = TypeConvertor.castToString(value); // StringType return value; - case 1159607743: // repeatUnit - this.repeatUnit = TypeConvertor.castToString(value); // StringType + case -1439500848: // orientation + this.orientation = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; case -1413853096: // amount this.amount = TypeConvertor.castToSubstanceAmount(value); // SubstanceAmount @@ -1305,10 +1305,10 @@ public class SubstancePolymer extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("orientationOfPolymerisation")) { - this.orientationOfPolymerisation = TypeConvertor.castToCodeableConcept(value); // CodeableConcept - } else if (name.equals("repeatUnit")) { - this.repeatUnit = TypeConvertor.castToString(value); // StringType + if (name.equals("unit")) { + this.unit = TypeConvertor.castToString(value); // StringType + } else if (name.equals("orientation")) { + this.orientation = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("amount")) { this.amount = TypeConvertor.castToSubstanceAmount(value); // SubstanceAmount } else if (name.equals("degreeOfPolymerisation")) { @@ -1323,8 +1323,8 @@ public class SubstancePolymer extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { - case 1795817828: return getOrientationOfPolymerisation(); - case 1159607743: return getRepeatUnitElement(); + case 3594628: return getUnitElement(); + case -1439500848: return getOrientation(); case -1413853096: return getAmount(); case -159251872: return addDegreeOfPolymerisation(); case 14311178: return addStructuralRepresentation(); @@ -1336,8 +1336,8 @@ public class SubstancePolymer extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { - case 1795817828: /*orientationOfPolymerisation*/ return new String[] {"CodeableConcept"}; - case 1159607743: /*repeatUnit*/ return new String[] {"string"}; + case 3594628: /*unit*/ return new String[] {"string"}; + case -1439500848: /*orientation*/ return new String[] {"CodeableConcept"}; case -1413853096: /*amount*/ return new String[] {"SubstanceAmount"}; case -159251872: /*degreeOfPolymerisation*/ return new String[] {}; case 14311178: /*structuralRepresentation*/ return new String[] {}; @@ -1348,12 +1348,12 @@ public class SubstancePolymer extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("orientationOfPolymerisation")) { - this.orientationOfPolymerisation = new CodeableConcept(); - return this.orientationOfPolymerisation; + if (name.equals("unit")) { + throw new FHIRException("Cannot call addChild on a primitive type SubstancePolymer.repeat.repeatUnit.unit"); } - else if (name.equals("repeatUnit")) { - throw new FHIRException("Cannot call addChild on a primitive type SubstancePolymer.repeat.repeatUnit.repeatUnit"); + else if (name.equals("orientation")) { + this.orientation = new CodeableConcept(); + return this.orientation; } else if (name.equals("amount")) { this.amount = new SubstanceAmount(); @@ -1377,8 +1377,8 @@ public class SubstancePolymer extends DomainResource { public void copyValues(SubstancePolymerRepeatRepeatUnitComponent dst) { super.copyValues(dst); - dst.orientationOfPolymerisation = orientationOfPolymerisation == null ? null : orientationOfPolymerisation.copy(); - dst.repeatUnit = repeatUnit == null ? null : repeatUnit.copy(); + dst.unit = unit == null ? null : unit.copy(); + dst.orientation = orientation == null ? null : orientation.copy(); dst.amount = amount == null ? null : amount.copy(); if (degreeOfPolymerisation != null) { dst.degreeOfPolymerisation = new ArrayList(); @@ -1399,9 +1399,9 @@ public class SubstancePolymer extends DomainResource { if (!(other_ instanceof SubstancePolymerRepeatRepeatUnitComponent)) return false; SubstancePolymerRepeatRepeatUnitComponent o = (SubstancePolymerRepeatRepeatUnitComponent) other_; - return compareDeep(orientationOfPolymerisation, o.orientationOfPolymerisation, true) && compareDeep(repeatUnit, o.repeatUnit, true) - && compareDeep(amount, o.amount, true) && compareDeep(degreeOfPolymerisation, o.degreeOfPolymerisation, true) - && compareDeep(structuralRepresentation, o.structuralRepresentation, true); + return compareDeep(unit, o.unit, true) && compareDeep(orientation, o.orientation, true) && compareDeep(amount, o.amount, true) + && compareDeep(degreeOfPolymerisation, o.degreeOfPolymerisation, true) && compareDeep(structuralRepresentation, o.structuralRepresentation, true) + ; } @Override @@ -1411,12 +1411,12 @@ public class SubstancePolymer extends DomainResource { if (!(other_ instanceof SubstancePolymerRepeatRepeatUnitComponent)) return false; SubstancePolymerRepeatRepeatUnitComponent o = (SubstancePolymerRepeatRepeatUnitComponent) other_; - return compareValues(repeatUnit, o.repeatUnit, true); + return compareValues(unit, o.unit, true); } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(orientationOfPolymerisation - , repeatUnit, amount, degreeOfPolymerisation, structuralRepresentation); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(unit, orientation, amount + , degreeOfPolymerisation, structuralRepresentation); } public String fhirType() { @@ -1646,11 +1646,18 @@ public class SubstancePolymer extends DomainResource { /** * Todo. */ - @Child(name = "attachment", type = {Attachment.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Child(name = "format", type = {CodeableConcept.class}, order=3, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Todo", formalDefinition="Todo." ) + protected CodeableConcept format; + + /** + * Todo. + */ + @Child(name = "attachment", type = {Attachment.class}, order=4, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected Attachment attachment; - private static final long serialVersionUID = 167954495L; + private static final long serialVersionUID = -1385695515L; /** * Constructor @@ -1732,6 +1739,30 @@ public class SubstancePolymer extends DomainResource { return this; } + /** + * @return {@link #format} (Todo.) + */ + public CodeableConcept getFormat() { + if (this.format == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent.format"); + else if (Configuration.doAutoCreate()) + this.format = new CodeableConcept(); // cc + return this.format; + } + + public boolean hasFormat() { + return this.format != null && !this.format.isEmpty(); + } + + /** + * @param value {@link #format} (Todo.) + */ + public SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent setFormat(CodeableConcept value) { + this.format = value; + return this; + } + /** * @return {@link #attachment} (Todo.) */ @@ -1760,6 +1791,7 @@ public class SubstancePolymer extends DomainResource { super.listChildren(children); children.add(new Property("type", "CodeableConcept", "Todo.", 0, 1, type)); children.add(new Property("representation", "string", "Todo.", 0, 1, representation)); + children.add(new Property("format", "CodeableConcept", "Todo.", 0, 1, format)); children.add(new Property("attachment", "Attachment", "Todo.", 0, 1, attachment)); } @@ -1768,6 +1800,7 @@ public class SubstancePolymer extends DomainResource { switch (_hash) { case 3575610: /*type*/ return new Property("type", "CodeableConcept", "Todo.", 0, 1, type); case -671065907: /*representation*/ return new Property("representation", "string", "Todo.", 0, 1, representation); + case -1268779017: /*format*/ return new Property("format", "CodeableConcept", "Todo.", 0, 1, format); case -1963501277: /*attachment*/ return new Property("attachment", "Attachment", "Todo.", 0, 1, attachment); default: return super.getNamedProperty(_hash, _name, _checkValid); } @@ -1779,6 +1812,7 @@ public class SubstancePolymer extends DomainResource { switch (hash) { case 3575610: /*type*/ return this.type == null ? new Base[0] : new Base[] {this.type}; // CodeableConcept case -671065907: /*representation*/ return this.representation == null ? new Base[0] : new Base[] {this.representation}; // StringType + case -1268779017: /*format*/ return this.format == null ? new Base[0] : new Base[] {this.format}; // CodeableConcept case -1963501277: /*attachment*/ return this.attachment == null ? new Base[0] : new Base[] {this.attachment}; // Attachment default: return super.getProperty(hash, name, checkValid); } @@ -1794,6 +1828,9 @@ public class SubstancePolymer extends DomainResource { case -671065907: // representation this.representation = TypeConvertor.castToString(value); // StringType return value; + case -1268779017: // format + this.format = TypeConvertor.castToCodeableConcept(value); // CodeableConcept + return value; case -1963501277: // attachment this.attachment = TypeConvertor.castToAttachment(value); // Attachment return value; @@ -1808,6 +1845,8 @@ public class SubstancePolymer extends DomainResource { this.type = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("representation")) { this.representation = TypeConvertor.castToString(value); // StringType + } else if (name.equals("format")) { + this.format = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("attachment")) { this.attachment = TypeConvertor.castToAttachment(value); // Attachment } else @@ -1820,6 +1859,7 @@ public class SubstancePolymer extends DomainResource { switch (hash) { case 3575610: return getType(); case -671065907: return getRepresentationElement(); + case -1268779017: return getFormat(); case -1963501277: return getAttachment(); default: return super.makeProperty(hash, name); } @@ -1831,6 +1871,7 @@ public class SubstancePolymer extends DomainResource { switch (hash) { case 3575610: /*type*/ return new String[] {"CodeableConcept"}; case -671065907: /*representation*/ return new String[] {"string"}; + case -1268779017: /*format*/ return new String[] {"CodeableConcept"}; case -1963501277: /*attachment*/ return new String[] {"Attachment"}; default: return super.getTypesForProperty(hash, name); } @@ -1846,6 +1887,10 @@ public class SubstancePolymer extends DomainResource { else if (name.equals("representation")) { throw new FHIRException("Cannot call addChild on a primitive type SubstancePolymer.repeat.repeatUnit.structuralRepresentation.representation"); } + else if (name.equals("format")) { + this.format = new CodeableConcept(); + return this.format; + } else if (name.equals("attachment")) { this.attachment = new Attachment(); return this.attachment; @@ -1864,6 +1909,7 @@ public class SubstancePolymer extends DomainResource { super.copyValues(dst); dst.type = type == null ? null : type.copy(); dst.representation = representation == null ? null : representation.copy(); + dst.format = format == null ? null : format.copy(); dst.attachment = attachment == null ? null : attachment.copy(); } @@ -1874,8 +1920,8 @@ public class SubstancePolymer extends DomainResource { if (!(other_ instanceof SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent)) return false; SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent o = (SubstancePolymerRepeatRepeatUnitStructuralRepresentationComponent) other_; - return compareDeep(type, o.type, true) && compareDeep(representation, o.representation, true) && compareDeep(attachment, o.attachment, true) - ; + return compareDeep(type, o.type, true) && compareDeep(representation, o.representation, true) && compareDeep(format, o.format, true) + && compareDeep(attachment, o.attachment, true); } @Override @@ -1889,8 +1935,8 @@ public class SubstancePolymer extends DomainResource { } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, representation, attachment - ); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(type, representation, format + , attachment); } public String fhirType() { @@ -1903,46 +1949,53 @@ public class SubstancePolymer extends DomainResource { /** * Todo. */ - @Child(name = "class", type = {CodeableConcept.class}, order=0, min=0, max=1, modifier=false, summary=true) + @Child(name = "identifier", type = {Identifier.class}, order=0, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Todo", formalDefinition="Todo." ) + protected Identifier identifier; + + /** + * Todo. + */ + @Child(name = "class", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected CodeableConcept class_; /** * Todo. */ - @Child(name = "geometry", type = {CodeableConcept.class}, order=1, min=0, max=1, modifier=false, summary=true) + @Child(name = "geometry", type = {CodeableConcept.class}, order=2, min=0, max=1, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected CodeableConcept geometry; /** * Todo. */ - @Child(name = "copolymerConnectivity", type = {CodeableConcept.class}, order=2, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "copolymerConnectivity", type = {CodeableConcept.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected List copolymerConnectivity; /** - * Todo. + * Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder. */ - @Child(name = "modification", type = {StringType.class}, order=3, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) - @Description(shortDefinition="Todo", formalDefinition="Todo." ) - protected List modification; + @Child(name = "modification", type = {StringType.class}, order=4, min=0, max=1, modifier=false, summary=true) + @Description(shortDefinition="Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder", formalDefinition="Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder." ) + protected StringType modification; /** * Todo. */ - @Child(name = "monomerSet", type = {}, order=4, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "monomerSet", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected List monomerSet; /** * Todo. */ - @Child(name = "repeat", type = {}, order=5, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) + @Child(name = "repeat", type = {}, order=6, min=0, max=Child.MAX_UNLIMITED, modifier=false, summary=true) @Description(shortDefinition="Todo", formalDefinition="Todo." ) protected List repeat; - private static final long serialVersionUID = -58301650L; + private static final long serialVersionUID = 11937102L; /** * Constructor @@ -1951,6 +2004,30 @@ public class SubstancePolymer extends DomainResource { super(); } + /** + * @return {@link #identifier} (Todo.) + */ + public Identifier getIdentifier() { + if (this.identifier == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubstancePolymer.identifier"); + else if (Configuration.doAutoCreate()) + this.identifier = new Identifier(); // cc + return this.identifier; + } + + public boolean hasIdentifier() { + return this.identifier != null && !this.identifier.isEmpty(); + } + + /** + * @param value {@link #identifier} (Todo.) + */ + public SubstancePolymer setIdentifier(Identifier value) { + this.identifier = value; + return this; + } + /** * @return {@link #class_} (Todo.) */ @@ -2053,64 +2130,52 @@ public class SubstancePolymer extends DomainResource { } /** - * @return {@link #modification} (Todo.) + * @return {@link #modification} (Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder.). This is the underlying object with id, value and extensions. The accessor "getModification" gives direct access to the value */ - public List getModification() { + public StringType getModificationElement() { if (this.modification == null) - this.modification = new ArrayList(); + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SubstancePolymer.modification"); + else if (Configuration.doAutoCreate()) + this.modification = new StringType(); // bb return this.modification; } - /** - * @return Returns a reference to this for easy method chaining - */ - public SubstancePolymer setModification(List theModification) { - this.modification = theModification; - return this; + public boolean hasModificationElement() { + return this.modification != null && !this.modification.isEmpty(); } public boolean hasModification() { - if (this.modification == null) - return false; - for (StringType item : this.modification) - if (!item.isEmpty()) - return true; - return false; + return this.modification != null && !this.modification.isEmpty(); } /** - * @return {@link #modification} (Todo.) + * @param value {@link #modification} (Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder.). This is the underlying object with id, value and extensions. The accessor "getModification" gives direct access to the value */ - public StringType addModificationElement() {//2 - StringType t = new StringType(); - if (this.modification == null) - this.modification = new ArrayList(); - this.modification.add(t); - return t; - } - - /** - * @param value {@link #modification} (Todo.) - */ - public SubstancePolymer addModification(String value) { //1 - StringType t = new StringType(); - t.setValue(value); - if (this.modification == null) - this.modification = new ArrayList(); - this.modification.add(t); + public SubstancePolymer setModificationElement(StringType value) { + this.modification = value; return this; } /** - * @param value {@link #modification} (Todo.) + * @return Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder. */ - public boolean hasModification(String value) { - if (this.modification == null) - return false; - for (StringType v : this.modification) - if (v.getValue().equals(value)) // string - return true; - return false; + public String getModification() { + return this.modification == null ? null : this.modification.getValue(); + } + + /** + * @param value Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder. + */ + public SubstancePolymer setModification(String value) { + if (Utilities.noString(value)) + this.modification = null; + else { + if (this.modification == null) + this.modification = new StringType(); + this.modification.setValue(value); + } + return this; } /** @@ -2221,10 +2286,11 @@ public class SubstancePolymer extends DomainResource { protected void listChildren(List children) { super.listChildren(children); + children.add(new Property("identifier", "Identifier", "Todo.", 0, 1, identifier)); children.add(new Property("class", "CodeableConcept", "Todo.", 0, 1, class_)); children.add(new Property("geometry", "CodeableConcept", "Todo.", 0, 1, geometry)); children.add(new Property("copolymerConnectivity", "CodeableConcept", "Todo.", 0, java.lang.Integer.MAX_VALUE, copolymerConnectivity)); - children.add(new Property("modification", "string", "Todo.", 0, java.lang.Integer.MAX_VALUE, modification)); + children.add(new Property("modification", "string", "Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder.", 0, 1, modification)); children.add(new Property("monomerSet", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, monomerSet)); children.add(new Property("repeat", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, repeat)); } @@ -2232,10 +2298,11 @@ public class SubstancePolymer extends DomainResource { @Override public Property getNamedProperty(int _hash, String _name, boolean _checkValid) throws FHIRException { switch (_hash) { + case -1618432855: /*identifier*/ return new Property("identifier", "Identifier", "Todo.", 0, 1, identifier); case 94742904: /*class*/ return new Property("class", "CodeableConcept", "Todo.", 0, 1, class_); case 1846020210: /*geometry*/ return new Property("geometry", "CodeableConcept", "Todo.", 0, 1, geometry); case 997107577: /*copolymerConnectivity*/ return new Property("copolymerConnectivity", "CodeableConcept", "Todo.", 0, java.lang.Integer.MAX_VALUE, copolymerConnectivity); - case -684600932: /*modification*/ return new Property("modification", "string", "Todo.", 0, java.lang.Integer.MAX_VALUE, modification); + case -684600932: /*modification*/ return new Property("modification", "string", "Todo. This is intended to connect to a repeating full modification structure, also used by Protein and Nucleic Acid . String is just a placeholder.", 0, 1, modification); case -1622483765: /*monomerSet*/ return new Property("monomerSet", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, monomerSet); case -934531685: /*repeat*/ return new Property("repeat", "", "Todo.", 0, java.lang.Integer.MAX_VALUE, repeat); default: return super.getNamedProperty(_hash, _name, _checkValid); @@ -2246,10 +2313,11 @@ public class SubstancePolymer extends DomainResource { @Override public Base[] getProperty(int hash, String name, boolean checkValid) throws FHIRException { switch (hash) { + case -1618432855: /*identifier*/ return this.identifier == null ? new Base[0] : new Base[] {this.identifier}; // Identifier case 94742904: /*class*/ return this.class_ == null ? new Base[0] : new Base[] {this.class_}; // CodeableConcept case 1846020210: /*geometry*/ return this.geometry == null ? new Base[0] : new Base[] {this.geometry}; // CodeableConcept case 997107577: /*copolymerConnectivity*/ return this.copolymerConnectivity == null ? new Base[0] : this.copolymerConnectivity.toArray(new Base[this.copolymerConnectivity.size()]); // CodeableConcept - case -684600932: /*modification*/ return this.modification == null ? new Base[0] : this.modification.toArray(new Base[this.modification.size()]); // StringType + case -684600932: /*modification*/ return this.modification == null ? new Base[0] : new Base[] {this.modification}; // StringType case -1622483765: /*monomerSet*/ return this.monomerSet == null ? new Base[0] : this.monomerSet.toArray(new Base[this.monomerSet.size()]); // SubstancePolymerMonomerSetComponent case -934531685: /*repeat*/ return this.repeat == null ? new Base[0] : this.repeat.toArray(new Base[this.repeat.size()]); // SubstancePolymerRepeatComponent default: return super.getProperty(hash, name, checkValid); @@ -2260,6 +2328,9 @@ public class SubstancePolymer extends DomainResource { @Override public Base setProperty(int hash, String name, Base value) throws FHIRException { switch (hash) { + case -1618432855: // identifier + this.identifier = TypeConvertor.castToIdentifier(value); // Identifier + return value; case 94742904: // class this.class_ = TypeConvertor.castToCodeableConcept(value); // CodeableConcept return value; @@ -2270,7 +2341,7 @@ public class SubstancePolymer extends DomainResource { this.getCopolymerConnectivity().add(TypeConvertor.castToCodeableConcept(value)); // CodeableConcept return value; case -684600932: // modification - this.getModification().add(TypeConvertor.castToString(value)); // StringType + this.modification = TypeConvertor.castToString(value); // StringType return value; case -1622483765: // monomerSet this.getMonomerSet().add((SubstancePolymerMonomerSetComponent) value); // SubstancePolymerMonomerSetComponent @@ -2285,14 +2356,16 @@ public class SubstancePolymer extends DomainResource { @Override public Base setProperty(String name, Base value) throws FHIRException { - if (name.equals("class")) { + if (name.equals("identifier")) { + this.identifier = TypeConvertor.castToIdentifier(value); // Identifier + } else if (name.equals("class")) { this.class_ = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("geometry")) { this.geometry = TypeConvertor.castToCodeableConcept(value); // CodeableConcept } else if (name.equals("copolymerConnectivity")) { this.getCopolymerConnectivity().add(TypeConvertor.castToCodeableConcept(value)); } else if (name.equals("modification")) { - this.getModification().add(TypeConvertor.castToString(value)); + this.modification = TypeConvertor.castToString(value); // StringType } else if (name.equals("monomerSet")) { this.getMonomerSet().add((SubstancePolymerMonomerSetComponent) value); } else if (name.equals("repeat")) { @@ -2305,10 +2378,11 @@ public class SubstancePolymer extends DomainResource { @Override public Base makeProperty(int hash, String name) throws FHIRException { switch (hash) { + case -1618432855: return getIdentifier(); case 94742904: return getClass_(); case 1846020210: return getGeometry(); case 997107577: return addCopolymerConnectivity(); - case -684600932: return addModificationElement(); + case -684600932: return getModificationElement(); case -1622483765: return addMonomerSet(); case -934531685: return addRepeat(); default: return super.makeProperty(hash, name); @@ -2319,6 +2393,7 @@ public class SubstancePolymer extends DomainResource { @Override public String[] getTypesForProperty(int hash, String name) throws FHIRException { switch (hash) { + case -1618432855: /*identifier*/ return new String[] {"Identifier"}; case 94742904: /*class*/ return new String[] {"CodeableConcept"}; case 1846020210: /*geometry*/ return new String[] {"CodeableConcept"}; case 997107577: /*copolymerConnectivity*/ return new String[] {"CodeableConcept"}; @@ -2332,7 +2407,11 @@ public class SubstancePolymer extends DomainResource { @Override public Base addChild(String name) throws FHIRException { - if (name.equals("class")) { + if (name.equals("identifier")) { + this.identifier = new Identifier(); + return this.identifier; + } + else if (name.equals("class")) { this.class_ = new CodeableConcept(); return this.class_; } @@ -2369,6 +2448,7 @@ public class SubstancePolymer extends DomainResource { public void copyValues(SubstancePolymer dst) { super.copyValues(dst); + dst.identifier = identifier == null ? null : identifier.copy(); dst.class_ = class_ == null ? null : class_.copy(); dst.geometry = geometry == null ? null : geometry.copy(); if (copolymerConnectivity != null) { @@ -2376,11 +2456,7 @@ public class SubstancePolymer extends DomainResource { for (CodeableConcept i : copolymerConnectivity) dst.copolymerConnectivity.add(i.copy()); }; - if (modification != null) { - dst.modification = new ArrayList(); - for (StringType i : modification) - dst.modification.add(i.copy()); - }; + dst.modification = modification == null ? null : modification.copy(); if (monomerSet != null) { dst.monomerSet = new ArrayList(); for (SubstancePolymerMonomerSetComponent i : monomerSet) @@ -2404,9 +2480,9 @@ public class SubstancePolymer extends DomainResource { if (!(other_ instanceof SubstancePolymer)) return false; SubstancePolymer o = (SubstancePolymer) other_; - return compareDeep(class_, o.class_, true) && compareDeep(geometry, o.geometry, true) && compareDeep(copolymerConnectivity, o.copolymerConnectivity, true) - && compareDeep(modification, o.modification, true) && compareDeep(monomerSet, o.monomerSet, true) - && compareDeep(repeat, o.repeat, true); + return compareDeep(identifier, o.identifier, true) && compareDeep(class_, o.class_, true) && compareDeep(geometry, o.geometry, true) + && compareDeep(copolymerConnectivity, o.copolymerConnectivity, true) && compareDeep(modification, o.modification, true) + && compareDeep(monomerSet, o.monomerSet, true) && compareDeep(repeat, o.repeat, true); } @Override @@ -2420,8 +2496,8 @@ public class SubstancePolymer extends DomainResource { } public boolean isEmpty() { - return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(class_, geometry, copolymerConnectivity - , modification, monomerSet, repeat); + return super.isEmpty() && ca.uhn.fhir.util.ElementUtil.isEmpty(identifier, class_, geometry + , copolymerConnectivity, modification, monomerSet, repeat); } @Override diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceProtein.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceProtein.java index b8741df9a..a5f7af76c 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceProtein.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceProtein.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceReferenceInformation.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceReferenceInformation.java index 98916cd53..299e94963 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceReferenceInformation.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceReferenceInformation.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceSourceMaterial.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceSourceMaterial.java index 161ee4373..c5af0f42b 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceSourceMaterial.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SubstanceSourceMaterial.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyDelivery.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyDelivery.java index 4e3236fa6..fb69901fd 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyDelivery.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyDelivery.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1466,10 +1466,10 @@ public class SupplyDelivery extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -1510,7 +1510,7 @@ public class SupplyDelivery extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyRequest.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyRequest.java index c21c230e9..6ee8d3944 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyRequest.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/SupplyRequest.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -555,10 +555,10 @@ public class SupplyRequest extends DomainResource { /** * The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list. */ - @Child(name = "item", type = {CodeableConcept.class, Medication.class, Substance.class, Device.class}, order=4, min=1, max=1, modifier=false, summary=true) + @Child(name = "item", type = {CodeableReference.class}, order=4, min=1, max=1, modifier=false, summary=true) @Description(shortDefinition="Medication, Substance, or Device requested to be supplied", formalDefinition="The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list." ) @ca.uhn.fhir.model.api.annotation.Binding(valueSet="http://hl7.org/fhir/ValueSet/supply-item") - protected DataType item; + protected CodeableReference item; /** * The amount that is being ordered of the indicated item. @@ -624,7 +624,7 @@ public class SupplyRequest extends DomainResource { @Description(shortDefinition="The destination of the supply", formalDefinition="Where the supply is destined to go." ) protected Reference deliverTo; - private static final long serialVersionUID = 1227479248L; + private static final long serialVersionUID = -898869904L; /** * Constructor @@ -636,7 +636,7 @@ public class SupplyRequest extends DomainResource { /** * Constructor */ - public SupplyRequest(DataType item, Quantity quantity) { + public SupplyRequest(CodeableReference item, Quantity quantity) { super(); this.setItem(item); this.setQuantity(quantity); @@ -820,40 +820,15 @@ public class SupplyRequest extends DomainResource { /** * @return {@link #item} (The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.) */ - public DataType getItem() { + public CodeableReference getItem() { + if (this.item == null) + if (Configuration.errorOnAutoCreate()) + throw new Error("Attempt to auto-create SupplyRequest.item"); + else if (Configuration.doAutoCreate()) + this.item = new CodeableReference(); // cc return this.item; } - /** - * @return {@link #item} (The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.) - */ - public CodeableConcept getItemCodeableConcept() throws FHIRException { - if (this.item == null) - this.item = new CodeableConcept(); - if (!(this.item instanceof CodeableConcept)) - throw new FHIRException("Type mismatch: the type CodeableConcept was expected, but "+this.item.getClass().getName()+" was encountered"); - return (CodeableConcept) this.item; - } - - public boolean hasItemCodeableConcept() { - return this != null && this.item instanceof CodeableConcept; - } - - /** - * @return {@link #item} (The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.) - */ - public Reference getItemReference() throws FHIRException { - if (this.item == null) - this.item = new Reference(); - if (!(this.item instanceof Reference)) - throw new FHIRException("Type mismatch: the type Reference was expected, but "+this.item.getClass().getName()+" was encountered"); - return (Reference) this.item; - } - - public boolean hasItemReference() { - return this != null && this.item instanceof Reference; - } - public boolean hasItem() { return this.item != null && !this.item.isEmpty(); } @@ -861,9 +836,7 @@ public class SupplyRequest extends DomainResource { /** * @param value {@link #item} (The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.) */ - public SupplyRequest setItem(DataType value) { - if (value != null && !(value instanceof CodeableConcept || value instanceof Reference)) - throw new Error("Not the right type for SupplyRequest.item[x]: "+value.fhirType()); + public SupplyRequest setItem(CodeableReference value) { this.item = value; return this; } @@ -1244,7 +1217,7 @@ public class SupplyRequest extends DomainResource { children.add(new Property("status", "code", "Status of the supply request.", 0, 1, status)); children.add(new Property("category", "CodeableConcept", "Category of supply, e.g. central, non-stock, etc. This is used to support work flows associated with the supply process.", 0, 1, category)); children.add(new Property("priority", "code", "Indicates how quickly this SupplyRequest should be addressed with respect to other requests.", 0, 1, priority)); - children.add(new Property("item[x]", "CodeableConcept|Reference(Medication|Substance|Device)", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item)); + children.add(new Property("item", "CodeableReference(Medication|Substance|Device|DeviceDefinition)", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item)); children.add(new Property("quantity", "Quantity", "The amount that is being ordered of the indicated item.", 0, 1, quantity)); children.add(new Property("parameter", "", "Specific parameters for the ordered item. For example, the size of the indicated item.", 0, java.lang.Integer.MAX_VALUE, parameter)); children.add(new Property("occurrence[x]", "dateTime|Period|Timing", "When the request should be fulfilled.", 0, 1, occurrence)); @@ -1263,10 +1236,7 @@ public class SupplyRequest extends DomainResource { case -892481550: /*status*/ return new Property("status", "code", "Status of the supply request.", 0, 1, status); case 50511102: /*category*/ return new Property("category", "CodeableConcept", "Category of supply, e.g. central, non-stock, etc. This is used to support work flows associated with the supply process.", 0, 1, category); case -1165461084: /*priority*/ return new Property("priority", "code", "Indicates how quickly this SupplyRequest should be addressed with respect to other requests.", 0, 1, priority); - case 2116201613: /*item[x]*/ return new Property("item[x]", "CodeableConcept|Reference(Medication|Substance|Device)", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item); - case 3242771: /*item*/ return new Property("item[x]", "CodeableConcept|Reference(Medication|Substance|Device)", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item); - case 106644494: /*itemCodeableConcept*/ return new Property("item[x]", "CodeableConcept", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item); - case 1376364920: /*itemReference*/ return new Property("item[x]", "Reference(Medication|Substance|Device)", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item); + case 3242771: /*item*/ return new Property("item", "CodeableReference(Medication|Substance|Device|DeviceDefinition)", "The item that is requested to be supplied. This is either a link to a resource representing the details of the item or a code that identifies the item from a known list.", 0, 1, item); case -1285004149: /*quantity*/ return new Property("quantity", "Quantity", "The amount that is being ordered of the indicated item.", 0, 1, quantity); case 1954460585: /*parameter*/ return new Property("parameter", "", "Specific parameters for the ordered item. For example, the size of the indicated item.", 0, java.lang.Integer.MAX_VALUE, parameter); case -2022646513: /*occurrence[x]*/ return new Property("occurrence[x]", "dateTime|Period|Timing", "When the request should be fulfilled.", 0, 1, occurrence); @@ -1292,7 +1262,7 @@ public class SupplyRequest extends DomainResource { case -892481550: /*status*/ return this.status == null ? new Base[0] : new Base[] {this.status}; // Enumeration case 50511102: /*category*/ return this.category == null ? new Base[0] : new Base[] {this.category}; // CodeableConcept case -1165461084: /*priority*/ return this.priority == null ? new Base[0] : new Base[] {this.priority}; // Enumeration - case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // DataType + case 3242771: /*item*/ return this.item == null ? new Base[0] : new Base[] {this.item}; // CodeableReference case -1285004149: /*quantity*/ return this.quantity == null ? new Base[0] : new Base[] {this.quantity}; // Quantity case 1954460585: /*parameter*/ return this.parameter == null ? new Base[0] : this.parameter.toArray(new Base[this.parameter.size()]); // SupplyRequestParameterComponent case 1687874001: /*occurrence*/ return this.occurrence == null ? new Base[0] : new Base[] {this.occurrence}; // DataType @@ -1325,7 +1295,7 @@ public class SupplyRequest extends DomainResource { this.priority = (Enumeration) value; // Enumeration return value; case 3242771: // item - this.item = TypeConvertor.castToType(value); // DataType + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference return value; case -1285004149: // quantity this.quantity = TypeConvertor.castToQuantity(value); // Quantity @@ -1371,8 +1341,8 @@ public class SupplyRequest extends DomainResource { } else if (name.equals("priority")) { value = new RequestPriorityEnumFactory().fromType(TypeConvertor.castToCode(value)); this.priority = (Enumeration) value; // Enumeration - } else if (name.equals("item[x]")) { - this.item = TypeConvertor.castToType(value); // DataType + } else if (name.equals("item")) { + this.item = TypeConvertor.castToCodeableReference(value); // CodeableReference } else if (name.equals("quantity")) { this.quantity = TypeConvertor.castToQuantity(value); // Quantity } else if (name.equals("parameter")) { @@ -1403,7 +1373,6 @@ public class SupplyRequest extends DomainResource { case -892481550: return getStatusElement(); case 50511102: return getCategory(); case -1165461084: return getPriorityElement(); - case 2116201613: return getItem(); case 3242771: return getItem(); case -1285004149: return getQuantity(); case 1954460585: return addParameter(); @@ -1427,7 +1396,7 @@ public class SupplyRequest extends DomainResource { case -892481550: /*status*/ return new String[] {"code"}; case 50511102: /*category*/ return new String[] {"CodeableConcept"}; case -1165461084: /*priority*/ return new String[] {"code"}; - case 3242771: /*item*/ return new String[] {"CodeableConcept", "Reference"}; + case 3242771: /*item*/ return new String[] {"CodeableReference"}; case -1285004149: /*quantity*/ return new String[] {"Quantity"}; case 1954460585: /*parameter*/ return new String[] {}; case 1687874001: /*occurrence*/ return new String[] {"dateTime", "Period", "Timing"}; @@ -1457,12 +1426,8 @@ public class SupplyRequest extends DomainResource { else if (name.equals("priority")) { throw new FHIRException("Cannot call addChild on a primitive type SupplyRequest.priority"); } - else if (name.equals("itemCodeableConcept")) { - this.item = new CodeableConcept(); - return this.item; - } - else if (name.equals("itemReference")) { - this.item = new Reference(); + else if (name.equals("item")) { + this.item = new CodeableReference(); return this.item; } else if (name.equals("quantity")) { @@ -1736,10 +1701,10 @@ public class SupplyRequest extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ - @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) + @SearchParamDefinition(name="date", path="AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Date first version of the resource instance was recorded\r\n* [CarePlan](careplan.html): Time period plan covers\r\n* [CareTeam](careteam.html): A date within the coverage time period.\r\n* [ClinicalImpression](clinicalimpression.html): When the assessment was documented\r\n* [Composition](composition.html): Composition editing time\r\n* [Consent](consent.html): When consent was agreed to\r\n* [DiagnosticReport](diagnosticreport.html): The clinically relevant time of the report\r\n* [Encounter](encounter.html): A date within the period the Encounter lasted\r\n* [EpisodeOfCare](episodeofcare.html): The provided date search value falls within the episode of care's period\r\n* [FamilyMemberHistory](familymemberhistory.html): When history was recorded or last updated\r\n* [Flag](flag.html): Time period when flag is active\r\n* [Immunization](immunization.html): Vaccination (non)-Administration Date\r\n* [List](list.html): When the list was prepared\r\n* [Observation](observation.html): Obtained date/time. If the obtained element is a period, a date that falls in the period\r\n* [Procedure](procedure.html): When the procedure occurred or is occurring\r\n* [RiskAssessment](riskassessment.html): When was assessment made?\r\n* [SupplyRequest](supplyrequest.html): When the request was made\r\n", type="date" ) public static final String SP_DATE = "date"; /** * Fluent Client search parameter constant for date @@ -1765,7 +1730,7 @@ public class SupplyRequest extends DomainResource { * [SupplyRequest](supplyrequest.html): When the request was made
* Type: date
- * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | Immunization.occurrence | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
+ * Path: AllergyIntolerance.recordedDate | CarePlan.period | ClinicalImpression.date | Composition.date | Consent.dateTime | DiagnosticReport.effective | Encounter.period | EpisodeOfCare.period | FamilyMemberHistory.date | Flag.period | (Immunization.occurrence as dateTime) | List.date | Observation.effective | Procedure.occurrence | (RiskAssessment.occurrence as dateTime) | SupplyRequest.authoredOn
*

*/ public static final ca.uhn.fhir.rest.gclient.DateClientParam DATE = new ca.uhn.fhir.rest.gclient.DateClientParam(SP_DATE); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Task.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Task.java index 54e504c5b..979e8a5a5 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Task.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Task.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -5360,7 +5360,7 @@ public class Task extends DomainResource { * Path: Task.basedOn
*

*/ - @SearchParamDefinition(name="based-on", path="Task.basedOn", description="Search by requests this task is based on", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="based-on", path="Task.basedOn", description="Search by requests this task is based on", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_BASED_ON = "based-on"; /** * Fluent Client search parameter constant for based-on @@ -5452,7 +5452,7 @@ public class Task extends DomainResource { * Path: Task.focus
*

*/ - @SearchParamDefinition(name="focus", path="Task.focus", description="Search by task focus", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="focus", path="Task.focus", description="Search by task focus", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_FOCUS = "focus"; /** * Fluent Client search parameter constant for focus @@ -5742,7 +5742,7 @@ public class Task extends DomainResource { * Path: Task.for
*

*/ - @SearchParamDefinition(name="subject", path="Task.for", description="Search by subject", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="subject", path="Task.for", description="Search by subject", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_SUBJECT = "subject"; /** * Fluent Client search parameter constant for subject diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TerminologyCapabilities.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TerminologyCapabilities.java index 228891101..8251b73f2 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TerminologyCapabilities.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TerminologyCapabilities.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Mon, Jan 20, 2020 14:31+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestReport.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestReport.java index e44fefb10..3725cfc12 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestReport.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestReport.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestScript.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestScript.java index 9f8579c6e..4f76693f0 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestScript.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TestScript.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -1018,6 +1018,10 @@ public class TestScript extends CanonicalResource { * The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system. */ CHARGEITEMDEFINITION, + /** + * The Citation. + */ + CITATION, /** * A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement. */ @@ -1039,7 +1043,7 @@ public class TestScript extends CanonicalResource { */ CODESYSTEM, /** - * An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. + * A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition. */ COMMUNICATION, /** @@ -1107,7 +1111,7 @@ public class TestScript extends CanonicalResource { */ DEVICEREQUEST, /** - * A record of a device being used by a patient where the record is the result of a report from the patient or another clinician. + * A record of a device being used by a patient where the record is the result of a report from the patient or a clinician. */ DEVICEUSESTATEMENT, /** @@ -1155,7 +1159,11 @@ public class TestScript extends CanonicalResource { */ EVIDENCE, /** - * The EvidenceVariable resource describes a \"PICO\" element that knowledge (evidence, assertion, recommendation) is about. + * EvidenceFocus. + */ + EVIDENCEFOCUS, + /** + * The EvidenceVariable resource describes an element that knowledge (Evidence) is about. */ EVIDENCEVARIABLE, /** @@ -1306,6 +1314,10 @@ public class TestScript extends CanonicalResource { * A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident. */ NUTRITIONORDER, + /** + * A food or fluid product that is consumed by patients. + */ + NUTRITIONPRODUCT, /** * Measurements and simple assertions made about a patient, device or other subject. */ @@ -1350,6 +1362,10 @@ public class TestScript extends CanonicalResource { * This resource provides the details including amount of a payment and allocates the payment items being paid. */ PAYMENTRECONCILIATION, + /** + * Permission. + */ + PERMISSION, /** * Demographics and administrative information about a person independent of a specific health-related context. */ @@ -1383,7 +1399,7 @@ public class TestScript extends CanonicalResource { */ QUESTIONNAIRERESPONSE, /** - * The regulatory authorization of a medicinal product. + * The regulatory authorization of a medicinal product, device or process. */ REGULATEDAUTHORIZATION, /** @@ -1443,9 +1459,17 @@ public class TestScript extends CanonicalResource { */ STRUCTUREMAP, /** - * The subscription resource describes a particular client's request to be notified about a Topic. + * The subscription resource describes a particular client's request to be notified about a SubscriptionTopic. */ SUBSCRIPTION, + /** + * The SubscriptionStatus resource describes the state of a Subscription during notifications. + */ + SUBSCRIPTIONSTATUS, + /** + * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. + */ + SUBSCRIPTIONTOPIC, /** * A homogeneous material with a definite composition. */ @@ -1498,10 +1522,6 @@ public class TestScript extends CanonicalResource { * A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification. */ TESTSCRIPT, - /** - * Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic. - */ - TOPIC, /** * A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html). */ @@ -1703,6 +1723,8 @@ public class TestScript extends CanonicalResource { return CHARGEITEM; if ("ChargeItemDefinition".equals(codeString)) return CHARGEITEMDEFINITION; + if ("Citation".equals(codeString)) + return CITATION; if ("Claim".equals(codeString)) return CLAIM; if ("ClaimResponse".equals(codeString)) @@ -1771,6 +1793,8 @@ public class TestScript extends CanonicalResource { return EVENTDEFINITION; if ("Evidence".equals(codeString)) return EVIDENCE; + if ("EvidenceFocus".equals(codeString)) + return EVIDENCEFOCUS; if ("EvidenceVariable".equals(codeString)) return EVIDENCEVARIABLE; if ("ExampleScenario".equals(codeString)) @@ -1847,6 +1871,8 @@ public class TestScript extends CanonicalResource { return NUTRITIONINTAKE; if ("NutritionOrder".equals(codeString)) return NUTRITIONORDER; + if ("NutritionProduct".equals(codeString)) + return NUTRITIONPRODUCT; if ("Observation".equals(codeString)) return OBSERVATION; if ("ObservationDefinition".equals(codeString)) @@ -1869,6 +1895,8 @@ public class TestScript extends CanonicalResource { return PAYMENTNOTICE; if ("PaymentReconciliation".equals(codeString)) return PAYMENTRECONCILIATION; + if ("Permission".equals(codeString)) + return PERMISSION; if ("Person".equals(codeString)) return PERSON; if ("PlanDefinition".equals(codeString)) @@ -1917,6 +1945,10 @@ public class TestScript extends CanonicalResource { return STRUCTUREMAP; if ("Subscription".equals(codeString)) return SUBSCRIPTION; + if ("SubscriptionStatus".equals(codeString)) + return SUBSCRIPTIONSTATUS; + if ("SubscriptionTopic".equals(codeString)) + return SUBSCRIPTIONTOPIC; if ("Substance".equals(codeString)) return SUBSTANCE; if ("SubstanceDefinition".equals(codeString)) @@ -1943,8 +1975,6 @@ public class TestScript extends CanonicalResource { return TESTREPORT; if ("TestScript".equals(codeString)) return TESTSCRIPT; - if ("Topic".equals(codeString)) - return TOPIC; if ("ValueSet".equals(codeString)) return VALUESET; if ("VerificationResult".equals(codeString)) @@ -2049,6 +2079,7 @@ public class TestScript extends CanonicalResource { case CATALOGENTRY: return "CatalogEntry"; case CHARGEITEM: return "ChargeItem"; case CHARGEITEMDEFINITION: return "ChargeItemDefinition"; + case CITATION: return "Citation"; case CLAIM: return "Claim"; case CLAIMRESPONSE: return "ClaimResponse"; case CLINICALIMPRESSION: return "ClinicalImpression"; @@ -2083,6 +2114,7 @@ public class TestScript extends CanonicalResource { case EPISODEOFCARE: return "EpisodeOfCare"; case EVENTDEFINITION: return "EventDefinition"; case EVIDENCE: return "Evidence"; + case EVIDENCEFOCUS: return "EvidenceFocus"; case EVIDENCEVARIABLE: return "EvidenceVariable"; case EXAMPLESCENARIO: return "ExampleScenario"; case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; @@ -2121,6 +2153,7 @@ public class TestScript extends CanonicalResource { case NAMINGSYSTEM: return "NamingSystem"; case NUTRITIONINTAKE: return "NutritionIntake"; case NUTRITIONORDER: return "NutritionOrder"; + case NUTRITIONPRODUCT: return "NutritionProduct"; case OBSERVATION: return "Observation"; case OBSERVATIONDEFINITION: return "ObservationDefinition"; case OPERATIONDEFINITION: return "OperationDefinition"; @@ -2132,6 +2165,7 @@ public class TestScript extends CanonicalResource { case PATIENT: return "Patient"; case PAYMENTNOTICE: return "PaymentNotice"; case PAYMENTRECONCILIATION: return "PaymentReconciliation"; + case PERMISSION: return "Permission"; case PERSON: return "Person"; case PLANDEFINITION: return "PlanDefinition"; case PRACTITIONER: return "Practitioner"; @@ -2156,6 +2190,8 @@ public class TestScript extends CanonicalResource { case STRUCTUREDEFINITION: return "StructureDefinition"; case STRUCTUREMAP: return "StructureMap"; case SUBSCRIPTION: return "Subscription"; + case SUBSCRIPTIONSTATUS: return "SubscriptionStatus"; + case SUBSCRIPTIONTOPIC: return "SubscriptionTopic"; case SUBSTANCE: return "Substance"; case SUBSTANCEDEFINITION: return "SubstanceDefinition"; case SUBSTANCENUCLEICACID: return "SubstanceNucleicAcid"; @@ -2169,7 +2205,6 @@ public class TestScript extends CanonicalResource { case TERMINOLOGYCAPABILITIES: return "TerminologyCapabilities"; case TESTREPORT: return "TestReport"; case TESTSCRIPT: return "TestScript"; - case TOPIC: return "Topic"; case VALUESET: return "ValueSet"; case VERIFICATIONRESULT: return "VerificationResult"; case VISIONPRESCRIPTION: return "VisionPrescription"; @@ -2269,6 +2304,7 @@ public class TestScript extends CanonicalResource { case CATALOGENTRY: return "http://hl7.org/fhir/resource-types"; case CHARGEITEM: return "http://hl7.org/fhir/resource-types"; case CHARGEITEMDEFINITION: return "http://hl7.org/fhir/resource-types"; + case CITATION: return "http://hl7.org/fhir/resource-types"; case CLAIM: return "http://hl7.org/fhir/resource-types"; case CLAIMRESPONSE: return "http://hl7.org/fhir/resource-types"; case CLINICALIMPRESSION: return "http://hl7.org/fhir/resource-types"; @@ -2303,6 +2339,7 @@ public class TestScript extends CanonicalResource { case EPISODEOFCARE: return "http://hl7.org/fhir/resource-types"; case EVENTDEFINITION: return "http://hl7.org/fhir/resource-types"; case EVIDENCE: return "http://hl7.org/fhir/resource-types"; + case EVIDENCEFOCUS: return "http://hl7.org/fhir/resource-types"; case EVIDENCEVARIABLE: return "http://hl7.org/fhir/resource-types"; case EXAMPLESCENARIO: return "http://hl7.org/fhir/resource-types"; case EXPLANATIONOFBENEFIT: return "http://hl7.org/fhir/resource-types"; @@ -2341,6 +2378,7 @@ public class TestScript extends CanonicalResource { case NAMINGSYSTEM: return "http://hl7.org/fhir/resource-types"; case NUTRITIONINTAKE: return "http://hl7.org/fhir/resource-types"; case NUTRITIONORDER: return "http://hl7.org/fhir/resource-types"; + case NUTRITIONPRODUCT: return "http://hl7.org/fhir/resource-types"; case OBSERVATION: return "http://hl7.org/fhir/resource-types"; case OBSERVATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; case OPERATIONDEFINITION: return "http://hl7.org/fhir/resource-types"; @@ -2352,6 +2390,7 @@ public class TestScript extends CanonicalResource { case PATIENT: return "http://hl7.org/fhir/resource-types"; case PAYMENTNOTICE: return "http://hl7.org/fhir/resource-types"; case PAYMENTRECONCILIATION: return "http://hl7.org/fhir/resource-types"; + case PERMISSION: return "http://hl7.org/fhir/resource-types"; case PERSON: return "http://hl7.org/fhir/resource-types"; case PLANDEFINITION: return "http://hl7.org/fhir/resource-types"; case PRACTITIONER: return "http://hl7.org/fhir/resource-types"; @@ -2376,6 +2415,8 @@ public class TestScript extends CanonicalResource { case STRUCTUREDEFINITION: return "http://hl7.org/fhir/resource-types"; case STRUCTUREMAP: return "http://hl7.org/fhir/resource-types"; case SUBSCRIPTION: return "http://hl7.org/fhir/resource-types"; + case SUBSCRIPTIONSTATUS: return "http://hl7.org/fhir/resource-types"; + case SUBSCRIPTIONTOPIC: return "http://hl7.org/fhir/resource-types"; case SUBSTANCE: return "http://hl7.org/fhir/resource-types"; case SUBSTANCEDEFINITION: return "http://hl7.org/fhir/resource-types"; case SUBSTANCENUCLEICACID: return "http://hl7.org/fhir/resource-types"; @@ -2389,7 +2430,6 @@ public class TestScript extends CanonicalResource { case TERMINOLOGYCAPABILITIES: return "http://hl7.org/fhir/resource-types"; case TESTREPORT: return "http://hl7.org/fhir/resource-types"; case TESTSCRIPT: return "http://hl7.org/fhir/resource-types"; - case TOPIC: return "http://hl7.org/fhir/resource-types"; case VALUESET: return "http://hl7.org/fhir/resource-types"; case VERIFICATIONRESULT: return "http://hl7.org/fhir/resource-types"; case VISIONPRESCRIPTION: return "http://hl7.org/fhir/resource-types"; @@ -2489,12 +2529,13 @@ public class TestScript extends CanonicalResource { case CATALOGENTRY: return "Catalog entries are wrappers that contextualize items included in a catalog."; case CHARGEITEM: return "The resource ChargeItem describes the provision of healthcare provider products for a certain patient, therefore referring not only to the product, but containing in addition details of the provision, like date, time, amounts and participating organizations and persons. Main Usage of the ChargeItem is to enable the billing process and internal cost allocation."; case CHARGEITEMDEFINITION: return "The ChargeItemDefinition resource provides the properties that apply to the (billing) codes necessary to calculate costs and prices. The properties may differ largely depending on type and realm, therefore this resource gives only a rough structure and requires profiling for each type of billing code system."; + case CITATION: return "The Citation."; case CLAIM: return "A provider issued list of professional services and products which have been provided, or are to be provided, to a patient which is sent to an insurer for reimbursement."; case CLAIMRESPONSE: return "This resource provides the adjudication details from the processing of a Claim resource."; case CLINICALIMPRESSION: return "A record of a clinical assessment performed to determine what problem(s) may affect the patient and before planning the treatments or management strategies that are best to manage a patient's condition. Assessments are often 1:1 with a clinical consultation / encounter, but this varies greatly depending on the clinical workflow. This resource is called \"ClinicalImpression\" rather than \"ClinicalAssessment\" to avoid confusion with the recording of assessment tools such as Apgar score."; case CLINICALUSEISSUE: return "A single usage issue - either an indication, contraindication, interaction or an undesirable effect for a medicinal product, medication, device or procedure."; case CODESYSTEM: return "The CodeSystem resource is used to declare the existence of and describe a code system or code system supplement and its key properties, and optionally define a part or all of its content."; - case COMMUNICATION: return "An occurrence of information being transmitted; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition."; + case COMMUNICATION: return "A clinical or business level record of information being transmitted or shared; e.g. an alert that was sent to a responsible provider, a public health agency communication to a provider/reporter in response to a case report for a reportable condition."; case COMMUNICATIONREQUEST: return "A request to convey information; e.g. the CDS system proposes that an alert be sent to a responsible provider, the CDS system proposes that the public health agency be notified about a reportable condition."; case COMPARTMENTDEFINITION: return "A compartment definition that defines how resources are accessed on a server."; case COMPOSITION: return "A set of healthcare-related information that is assembled together into a single logical package that provides a single coherent statement of meaning, establishes its own context and that has clinical attestation with regard to who is making the statement. A Composition defines the structure and narrative content necessary for a document. However, a Composition alone does not constitute a document. Rather, the Composition must be the first entry in a Bundle where Bundle.type=document, and any other resources referenced from Composition must be included as subsequent entries in the Bundle (for example Patient, Practitioner, Encounter, etc.)."; @@ -2511,7 +2552,7 @@ public class TestScript extends CanonicalResource { case DEVICEDEFINITION: return "The characteristics, operational status and capabilities of a medical-related component of a medical device."; case DEVICEMETRIC: return "Describes a measurement, calculation or setting capability of a medical device."; case DEVICEREQUEST: return "Represents a request for a patient to employ a medical device. The device may be an implantable device, or an external assistive device, such as a walker."; - case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or another clinician."; + case DEVICEUSESTATEMENT: return "A record of a device being used by a patient where the record is the result of a report from the patient or a clinician."; case DIAGNOSTICREPORT: return "The findings and interpretation of diagnostic tests performed on patients, groups of patients, devices, and locations, and/or specimens derived from these. The report includes clinical context such as requesting and provider information, and some mix of atomic results, images, textual and coded interpretations, and formatted representation of diagnostic reports."; case DOCUMENTMANIFEST: return "A collection of documents compiled for a purpose together with metadata that applies to the collection."; case DOCUMENTREFERENCE: return "A reference to a document of any kind for any purpose. While the term “document” implies a more narrow focus, for this resource this \"document\" encompasses *any* serialized object with a mime-type, it includes formal patient-centric documents (CDA), clinical notes, scanned paper, non-patient specific documents like policy text, as well as a photo, video, or audio recording acquired or used in healthcare. The DocumentReference resource provides metadata about the document so that the document can be discovered and managed. The actual content may be inline base64 encoded data or provided by direct reference."; @@ -2523,7 +2564,8 @@ public class TestScript extends CanonicalResource { case EPISODEOFCARE: return "An association between a patient and an organization / healthcare provider(s) during which time encounters may occur. The managing organization assumes a level of responsibility for the patient during this time."; case EVENTDEFINITION: return "The EventDefinition resource provides a reusable description of when a particular event can occur."; case EVIDENCE: return "This represents statistics, certainty, both the intended and actual population, and evidence variables."; - case EVIDENCEVARIABLE: return "The EvidenceVariable resource describes a \"PICO\" element that knowledge (evidence, assertion, recommendation) is about."; + case EVIDENCEFOCUS: return "EvidenceFocus."; + case EVIDENCEVARIABLE: return "The EvidenceVariable resource describes an element that knowledge (Evidence) is about."; case EXAMPLESCENARIO: return "Example of workflow instance."; case EXPLANATIONOFBENEFIT: return "This resource provides: the claim details; adjudication details from the processing of a Claim; and optionally account balance information, for informing the subscriber of the benefits provided."; case FAMILYMEMBERHISTORY: return "Significant health conditions for a person related to the patient relevant in the context of care for the patient."; @@ -2561,6 +2603,7 @@ public class TestScript extends CanonicalResource { case NAMINGSYSTEM: return "A curated namespace that issues unique symbols within that namespace for the identification of concepts, people, devices, etc. Represents a \"System\" used within the Identifier and Coding data types."; case NUTRITIONINTAKE: return "A record of food or fluid that is being consumed by a patient. A NutritionIntake may indicate that the patient may be consuming the food or fluid now or has consumed the food or fluid in the past. The source of this information can be the patient, significant other (such as a family member or spouse), or a clinician. A common scenario where this information is captured is during the history taking process during a patient visit or stay or through an app that tracks food or fluids consumed. The consumption information may come from sources such as the patient's memory, from a nutrition label, or from a clinician documenting observed intake."; case NUTRITIONORDER: return "A request to supply a diet, formula feeding (enteral) or oral nutritional supplement to a patient/resident."; + case NUTRITIONPRODUCT: return "A food or fluid product that is consumed by patients."; case OBSERVATION: return "Measurements and simple assertions made about a patient, device or other subject."; case OBSERVATIONDEFINITION: return "Set of definitional characteristics for a kind of observation or measurement produced or consumed by an orderable health care service."; case OPERATIONDEFINITION: return "A formal computable definition of an operation (on the RESTful interface) or a named query (using the search interaction)."; @@ -2572,6 +2615,7 @@ public class TestScript extends CanonicalResource { case PATIENT: return "Demographics and other administrative information about an individual or animal receiving care or other health-related services."; case PAYMENTNOTICE: return "This resource provides the status of the payment for goods and services rendered, and the request and response resource references."; case PAYMENTRECONCILIATION: return "This resource provides the details including amount of a payment and allocates the payment items being paid."; + case PERMISSION: return "Permission."; case PERSON: return "Demographics and administrative information about a person independent of a specific health-related context."; case PLANDEFINITION: return "This resource allows for the definition of various types of plans as a sharable, consumable, and executable artifact. The resource is general enough to support the description of a broad range of clinical artifacts such as clinical decision support rules, order sets and protocols."; case PRACTITIONER: return "A person who is directly or indirectly involved in the provisioning of healthcare."; @@ -2580,7 +2624,7 @@ public class TestScript extends CanonicalResource { case PROVENANCE: return "Provenance of a resource is a record that describes entities and processes involved in producing and delivering or otherwise influencing that resource. Provenance provides a critical foundation for assessing authenticity, enabling trust, and allowing reproducibility. Provenance assertions are a form of contextual metadata and can themselves become important records with their own provenance. Provenance statement indicates clinical significance in terms of confidence in authenticity, reliability, and trustworthiness, integrity, and stage in lifecycle (e.g. Document Completion - has the artifact been legally authenticated), all of which may impact security, privacy, and trust policies."; case QUESTIONNAIRE: return "A structured set of questions intended to guide the collection of answers from end-users. Questionnaires provide detailed control over order, presentation, phraseology and grouping to allow coherent, consistent data collection."; case QUESTIONNAIRERESPONSE: return "A structured set of questions and their answers. The questions are ordered and grouped into coherent subsets, corresponding to the structure of the grouping of the questionnaire being responded to."; - case REGULATEDAUTHORIZATION: return "The regulatory authorization of a medicinal product."; + case REGULATEDAUTHORIZATION: return "The regulatory authorization of a medicinal product, device or process."; case RELATEDPERSON: return "Information about a person that is involved in the care for a patient, but who is not the target of healthcare, nor has a formal responsibility in the care process."; case REQUESTGROUP: return "A group of related requests that can be used to capture intended activities that have inter-dependencies such as \"give this medication after that one\"."; case RESEARCHSTUDY: return "A process where a researcher or organization plans and then executes a series of steps intended to increase the field of healthcare-related knowledge. This includes studies of safety, efficacy, comparative effectiveness and other information about medications, devices, therapies and other interventional and investigative techniques. A ResearchStudy involves the gathering of information about human or animal subjects."; @@ -2595,7 +2639,9 @@ public class TestScript extends CanonicalResource { case SPECIMENDEFINITION: return "A kind of specimen with associated set of requirements."; case STRUCTUREDEFINITION: return "A definition of a FHIR structure. This resource is used to describe the underlying resources, data types defined in FHIR, and also for describing extensions and constraints on resources and data types."; case STRUCTUREMAP: return "A Map of relationships between 2 structures that can be used to transform data."; - case SUBSCRIPTION: return "The subscription resource describes a particular client's request to be notified about a Topic."; + case SUBSCRIPTION: return "The subscription resource describes a particular client's request to be notified about a SubscriptionTopic."; + case SUBSCRIPTIONSTATUS: return "The SubscriptionStatus resource describes the state of a Subscription during notifications."; + case SUBSCRIPTIONTOPIC: return "Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic."; case SUBSTANCE: return "A homogeneous material with a definite composition."; case SUBSTANCEDEFINITION: return "The detailed description of a substance, typically at a level beyond what is used for prescribing."; case SUBSTANCENUCLEICACID: return "Nucleic acids are defined by three distinct elements: the base, sugar and linkage. Individual substance/moiety IDs will be created for each of these elements. The nucleotide sequence will be always entered in the 5’-3’ direction."; @@ -2609,7 +2655,6 @@ public class TestScript extends CanonicalResource { case TERMINOLOGYCAPABILITIES: return "A TerminologyCapabilities resource documents a set of capabilities (behaviors) of a FHIR Terminology Server that may be used as a statement of actual server functionality or a statement of required or desired server implementation."; case TESTREPORT: return "A summary of information based on the results of executing a TestScript."; case TESTSCRIPT: return "A structured set of tests against a FHIR server or client implementation to determine compliance against the FHIR specification."; - case TOPIC: return "Describes a stream of resource state changes identified by trigger criteria and annotated with labels useful to filter projections from this topic."; case VALUESET: return "A ValueSet resource instance specifies a set of codes drawn from one or more code systems, intended for use in a particular context. Value sets link between [[[CodeSystem]]] definitions and their use in [coded elements](terminologies.html)."; case VERIFICATIONRESULT: return "Describes validation requirements, source(s), status and dates for one or more elements."; case VISIONPRESCRIPTION: return "An authorization for the provision of glasses and/or contact lenses to a patient."; @@ -2709,6 +2754,7 @@ public class TestScript extends CanonicalResource { case CATALOGENTRY: return "CatalogEntry"; case CHARGEITEM: return "ChargeItem"; case CHARGEITEMDEFINITION: return "ChargeItemDefinition"; + case CITATION: return "Citation"; case CLAIM: return "Claim"; case CLAIMRESPONSE: return "ClaimResponse"; case CLINICALIMPRESSION: return "ClinicalImpression"; @@ -2743,6 +2789,7 @@ public class TestScript extends CanonicalResource { case EPISODEOFCARE: return "EpisodeOfCare"; case EVENTDEFINITION: return "EventDefinition"; case EVIDENCE: return "Evidence"; + case EVIDENCEFOCUS: return "EvidenceFocus"; case EVIDENCEVARIABLE: return "EvidenceVariable"; case EXAMPLESCENARIO: return "ExampleScenario"; case EXPLANATIONOFBENEFIT: return "ExplanationOfBenefit"; @@ -2781,6 +2828,7 @@ public class TestScript extends CanonicalResource { case NAMINGSYSTEM: return "NamingSystem"; case NUTRITIONINTAKE: return "NutritionIntake"; case NUTRITIONORDER: return "NutritionOrder"; + case NUTRITIONPRODUCT: return "NutritionProduct"; case OBSERVATION: return "Observation"; case OBSERVATIONDEFINITION: return "ObservationDefinition"; case OPERATIONDEFINITION: return "OperationDefinition"; @@ -2792,6 +2840,7 @@ public class TestScript extends CanonicalResource { case PATIENT: return "Patient"; case PAYMENTNOTICE: return "PaymentNotice"; case PAYMENTRECONCILIATION: return "PaymentReconciliation"; + case PERMISSION: return "Permission"; case PERSON: return "Person"; case PLANDEFINITION: return "PlanDefinition"; case PRACTITIONER: return "Practitioner"; @@ -2816,6 +2865,8 @@ public class TestScript extends CanonicalResource { case STRUCTUREDEFINITION: return "StructureDefinition"; case STRUCTUREMAP: return "StructureMap"; case SUBSCRIPTION: return "Subscription"; + case SUBSCRIPTIONSTATUS: return "SubscriptionStatus"; + case SUBSCRIPTIONTOPIC: return "SubscriptionTopic"; case SUBSTANCE: return "Substance"; case SUBSTANCEDEFINITION: return "SubstanceDefinition"; case SUBSTANCENUCLEICACID: return "SubstanceNucleicAcid"; @@ -2829,7 +2880,6 @@ public class TestScript extends CanonicalResource { case TERMINOLOGYCAPABILITIES: return "TerminologyCapabilities"; case TESTREPORT: return "TestReport"; case TESTSCRIPT: return "TestScript"; - case TOPIC: return "Topic"; case VALUESET: return "ValueSet"; case VERIFICATIONRESULT: return "VerificationResult"; case VISIONPRESCRIPTION: return "VisionPrescription"; @@ -3025,6 +3075,8 @@ public class TestScript extends CanonicalResource { return FHIRDefinedType.CHARGEITEM; if ("ChargeItemDefinition".equals(codeString)) return FHIRDefinedType.CHARGEITEMDEFINITION; + if ("Citation".equals(codeString)) + return FHIRDefinedType.CITATION; if ("Claim".equals(codeString)) return FHIRDefinedType.CLAIM; if ("ClaimResponse".equals(codeString)) @@ -3093,6 +3145,8 @@ public class TestScript extends CanonicalResource { return FHIRDefinedType.EVENTDEFINITION; if ("Evidence".equals(codeString)) return FHIRDefinedType.EVIDENCE; + if ("EvidenceFocus".equals(codeString)) + return FHIRDefinedType.EVIDENCEFOCUS; if ("EvidenceVariable".equals(codeString)) return FHIRDefinedType.EVIDENCEVARIABLE; if ("ExampleScenario".equals(codeString)) @@ -3169,6 +3223,8 @@ public class TestScript extends CanonicalResource { return FHIRDefinedType.NUTRITIONINTAKE; if ("NutritionOrder".equals(codeString)) return FHIRDefinedType.NUTRITIONORDER; + if ("NutritionProduct".equals(codeString)) + return FHIRDefinedType.NUTRITIONPRODUCT; if ("Observation".equals(codeString)) return FHIRDefinedType.OBSERVATION; if ("ObservationDefinition".equals(codeString)) @@ -3191,6 +3247,8 @@ public class TestScript extends CanonicalResource { return FHIRDefinedType.PAYMENTNOTICE; if ("PaymentReconciliation".equals(codeString)) return FHIRDefinedType.PAYMENTRECONCILIATION; + if ("Permission".equals(codeString)) + return FHIRDefinedType.PERMISSION; if ("Person".equals(codeString)) return FHIRDefinedType.PERSON; if ("PlanDefinition".equals(codeString)) @@ -3239,6 +3297,10 @@ public class TestScript extends CanonicalResource { return FHIRDefinedType.STRUCTUREMAP; if ("Subscription".equals(codeString)) return FHIRDefinedType.SUBSCRIPTION; + if ("SubscriptionStatus".equals(codeString)) + return FHIRDefinedType.SUBSCRIPTIONSTATUS; + if ("SubscriptionTopic".equals(codeString)) + return FHIRDefinedType.SUBSCRIPTIONTOPIC; if ("Substance".equals(codeString)) return FHIRDefinedType.SUBSTANCE; if ("SubstanceDefinition".equals(codeString)) @@ -3265,8 +3327,6 @@ public class TestScript extends CanonicalResource { return FHIRDefinedType.TESTREPORT; if ("TestScript".equals(codeString)) return FHIRDefinedType.TESTSCRIPT; - if ("Topic".equals(codeString)) - return FHIRDefinedType.TOPIC; if ("ValueSet".equals(codeString)) return FHIRDefinedType.VALUESET; if ("VerificationResult".equals(codeString)) @@ -3465,6 +3525,8 @@ public class TestScript extends CanonicalResource { return new Enumeration(this, FHIRDefinedType.CHARGEITEM); if ("ChargeItemDefinition".equals(codeString)) return new Enumeration(this, FHIRDefinedType.CHARGEITEMDEFINITION); + if ("Citation".equals(codeString)) + return new Enumeration(this, FHIRDefinedType.CITATION); if ("Claim".equals(codeString)) return new Enumeration(this, FHIRDefinedType.CLAIM); if ("ClaimResponse".equals(codeString)) @@ -3533,6 +3595,8 @@ public class TestScript extends CanonicalResource { return new Enumeration(this, FHIRDefinedType.EVENTDEFINITION); if ("Evidence".equals(codeString)) return new Enumeration(this, FHIRDefinedType.EVIDENCE); + if ("EvidenceFocus".equals(codeString)) + return new Enumeration(this, FHIRDefinedType.EVIDENCEFOCUS); if ("EvidenceVariable".equals(codeString)) return new Enumeration(this, FHIRDefinedType.EVIDENCEVARIABLE); if ("ExampleScenario".equals(codeString)) @@ -3609,6 +3673,8 @@ public class TestScript extends CanonicalResource { return new Enumeration(this, FHIRDefinedType.NUTRITIONINTAKE); if ("NutritionOrder".equals(codeString)) return new Enumeration(this, FHIRDefinedType.NUTRITIONORDER); + if ("NutritionProduct".equals(codeString)) + return new Enumeration(this, FHIRDefinedType.NUTRITIONPRODUCT); if ("Observation".equals(codeString)) return new Enumeration(this, FHIRDefinedType.OBSERVATION); if ("ObservationDefinition".equals(codeString)) @@ -3631,6 +3697,8 @@ public class TestScript extends CanonicalResource { return new Enumeration(this, FHIRDefinedType.PAYMENTNOTICE); if ("PaymentReconciliation".equals(codeString)) return new Enumeration(this, FHIRDefinedType.PAYMENTRECONCILIATION); + if ("Permission".equals(codeString)) + return new Enumeration(this, FHIRDefinedType.PERMISSION); if ("Person".equals(codeString)) return new Enumeration(this, FHIRDefinedType.PERSON); if ("PlanDefinition".equals(codeString)) @@ -3679,6 +3747,10 @@ public class TestScript extends CanonicalResource { return new Enumeration(this, FHIRDefinedType.STRUCTUREMAP); if ("Subscription".equals(codeString)) return new Enumeration(this, FHIRDefinedType.SUBSCRIPTION); + if ("SubscriptionStatus".equals(codeString)) + return new Enumeration(this, FHIRDefinedType.SUBSCRIPTIONSTATUS); + if ("SubscriptionTopic".equals(codeString)) + return new Enumeration(this, FHIRDefinedType.SUBSCRIPTIONTOPIC); if ("Substance".equals(codeString)) return new Enumeration(this, FHIRDefinedType.SUBSTANCE); if ("SubstanceDefinition".equals(codeString)) @@ -3705,8 +3777,6 @@ public class TestScript extends CanonicalResource { return new Enumeration(this, FHIRDefinedType.TESTREPORT); if ("TestScript".equals(codeString)) return new Enumeration(this, FHIRDefinedType.TESTSCRIPT); - if ("Topic".equals(codeString)) - return new Enumeration(this, FHIRDefinedType.TOPIC); if ("ValueSet".equals(codeString)) return new Enumeration(this, FHIRDefinedType.VALUESET); if ("VerificationResult".equals(codeString)) @@ -3898,6 +3968,8 @@ public class TestScript extends CanonicalResource { return "ChargeItem"; if (code == FHIRDefinedType.CHARGEITEMDEFINITION) return "ChargeItemDefinition"; + if (code == FHIRDefinedType.CITATION) + return "Citation"; if (code == FHIRDefinedType.CLAIM) return "Claim"; if (code == FHIRDefinedType.CLAIMRESPONSE) @@ -3966,6 +4038,8 @@ public class TestScript extends CanonicalResource { return "EventDefinition"; if (code == FHIRDefinedType.EVIDENCE) return "Evidence"; + if (code == FHIRDefinedType.EVIDENCEFOCUS) + return "EvidenceFocus"; if (code == FHIRDefinedType.EVIDENCEVARIABLE) return "EvidenceVariable"; if (code == FHIRDefinedType.EXAMPLESCENARIO) @@ -4042,6 +4116,8 @@ public class TestScript extends CanonicalResource { return "NutritionIntake"; if (code == FHIRDefinedType.NUTRITIONORDER) return "NutritionOrder"; + if (code == FHIRDefinedType.NUTRITIONPRODUCT) + return "NutritionProduct"; if (code == FHIRDefinedType.OBSERVATION) return "Observation"; if (code == FHIRDefinedType.OBSERVATIONDEFINITION) @@ -4064,6 +4140,8 @@ public class TestScript extends CanonicalResource { return "PaymentNotice"; if (code == FHIRDefinedType.PAYMENTRECONCILIATION) return "PaymentReconciliation"; + if (code == FHIRDefinedType.PERMISSION) + return "Permission"; if (code == FHIRDefinedType.PERSON) return "Person"; if (code == FHIRDefinedType.PLANDEFINITION) @@ -4112,6 +4190,10 @@ public class TestScript extends CanonicalResource { return "StructureMap"; if (code == FHIRDefinedType.SUBSCRIPTION) return "Subscription"; + if (code == FHIRDefinedType.SUBSCRIPTIONSTATUS) + return "SubscriptionStatus"; + if (code == FHIRDefinedType.SUBSCRIPTIONTOPIC) + return "SubscriptionTopic"; if (code == FHIRDefinedType.SUBSTANCE) return "Substance"; if (code == FHIRDefinedType.SUBSTANCEDEFINITION) @@ -4138,8 +4220,6 @@ public class TestScript extends CanonicalResource { return "TestReport"; if (code == FHIRDefinedType.TESTSCRIPT) return "TestScript"; - if (code == FHIRDefinedType.TOPIC) - return "Topic"; if (code == FHIRDefinedType.VALUESET) return "ValueSet"; if (code == FHIRDefinedType.VERIFICATIONRESULT) diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Timing.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Timing.java index 3d3be8a54..145fb270e 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Timing.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/Timing.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TriggerDefinition.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TriggerDefinition.java index 5202a3dab..bc9b36b1f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TriggerDefinition.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/TriggerDefinition.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/UsageContext.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/UsageContext.java index e384b40ba..30b8b727f 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/UsageContext.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/UsageContext.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ValueSet.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ValueSet.java index 834997a62..805ecfa66 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ValueSet.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/ValueSet.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -6192,13 +6192,14 @@ public class ValueSet extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ - @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) + @SearchParamDefinition(name="identifier", path="CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier", description="Multiple Resources: \r\n\r\n* [CodeSystem](codesystem.html): External identifier for the code system\r\n* [ConceptMap](conceptmap.html): External identifier for the concept map\r\n* [MessageDefinition](messagedefinition.html): External identifier for the message definition\r\n* [StructureDefinition](structuredefinition.html): External identifier for the structure definition\r\n* [StructureMap](structuremap.html): External identifier for the structure map\r\n* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities\r\n* [ValueSet](valueset.html): External identifier for the value set\r\n", type="token" ) public static final String SP_IDENTIFIER = "identifier"; /** * Fluent Client search parameter constant for identifier @@ -6210,10 +6211,11 @@ public class ValueSet extends CanonicalResource { * [MessageDefinition](messagedefinition.html): External identifier for the message definition * [StructureDefinition](structuredefinition.html): External identifier for the structure definition * [StructureMap](structuremap.html): External identifier for the structure map +* [TerminologyCapabilities](terminologycapabilities.html): External identifier for the terminology capabilities * [ValueSet](valueset.html): External identifier for the value set
* Type: token
- * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | ValueSet.identifier
+ * Path: CodeSystem.identifier | ConceptMap.identifier | MessageDefinition.identifier | StructureDefinition.identifier | StructureMap.identifier | TerminologyCapabilities.identifier | ValueSet.identifier
*

*/ public static final ca.uhn.fhir.rest.gclient.TokenClientParam IDENTIFIER = new ca.uhn.fhir.rest.gclient.TokenClientParam(SP_IDENTIFIER); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VerificationResult.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VerificationResult.java index 87b779783..7e8f4ca14 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VerificationResult.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VerificationResult.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2677,7 +2677,7 @@ public class VerificationResult extends DomainResource { * Path: VerificationResult.target
*

*/ - @SearchParamDefinition(name="target", path="VerificationResult.target", description="A resource that was validated", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, Topic.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) + @SearchParamDefinition(name="target", path="VerificationResult.target", description="A resource that was validated", type="reference", target={Account.class, ActivityDefinition.class, AdministrableProductDefinition.class, AdverseEvent.class, AllergyIntolerance.class, Appointment.class, AppointmentResponse.class, AuditEvent.class, Basic.class, Binary.class, BiologicallyDerivedProduct.class, BodyStructure.class, Bundle.class, CapabilityStatement.class, CapabilityStatement2.class, CarePlan.class, CareTeam.class, CatalogEntry.class, ChargeItem.class, ChargeItemDefinition.class, Citation.class, Claim.class, ClaimResponse.class, ClinicalImpression.class, ClinicalUseIssue.class, CodeSystem.class, Communication.class, CommunicationRequest.class, CompartmentDefinition.class, Composition.class, ConceptMap.class, Condition.class, ConditionDefinition.class, Consent.class, Contract.class, Coverage.class, CoverageEligibilityRequest.class, CoverageEligibilityResponse.class, DetectedIssue.class, Device.class, DeviceDefinition.class, DeviceMetric.class, DeviceRequest.class, DeviceUseStatement.class, DiagnosticReport.class, DocumentManifest.class, DocumentReference.class, Encounter.class, Endpoint.class, EnrollmentRequest.class, EnrollmentResponse.class, EpisodeOfCare.class, EventDefinition.class, Evidence.class, EvidenceFocus.class, EvidenceVariable.class, ExampleScenario.class, ExplanationOfBenefit.class, FamilyMemberHistory.class, Flag.class, Goal.class, GraphDefinition.class, Group.class, GuidanceResponse.class, HealthcareService.class, ImagingStudy.class, Immunization.class, ImmunizationEvaluation.class, ImmunizationRecommendation.class, ImplementationGuide.class, Ingredient.class, InsurancePlan.class, Invoice.class, Library.class, Linkage.class, ListResource.class, Location.class, ManufacturedItemDefinition.class, Measure.class, MeasureReport.class, Medication.class, MedicationAdministration.class, MedicationDispense.class, MedicationKnowledge.class, MedicationRequest.class, MedicationUsage.class, MedicinalProductDefinition.class, MessageDefinition.class, MessageHeader.class, MolecularSequence.class, NamingSystem.class, NutritionIntake.class, NutritionOrder.class, NutritionProduct.class, Observation.class, ObservationDefinition.class, OperationDefinition.class, OperationOutcome.class, Organization.class, OrganizationAffiliation.class, PackagedProductDefinition.class, Patient.class, PaymentNotice.class, PaymentReconciliation.class, Permission.class, Person.class, PlanDefinition.class, Practitioner.class, PractitionerRole.class, Procedure.class, Provenance.class, Questionnaire.class, QuestionnaireResponse.class, RegulatedAuthorization.class, RelatedPerson.class, RequestGroup.class, ResearchStudy.class, ResearchSubject.class, RiskAssessment.class, Schedule.class, SearchParameter.class, ServiceRequest.class, Slot.class, Specimen.class, SpecimenDefinition.class, StructureDefinition.class, StructureMap.class, Subscription.class, SubscriptionStatus.class, SubscriptionTopic.class, Substance.class, SubstanceDefinition.class, SubstanceNucleicAcid.class, SubstancePolymer.class, SubstanceProtein.class, SubstanceReferenceInformation.class, SubstanceSourceMaterial.class, SupplyDelivery.class, SupplyRequest.class, Task.class, TerminologyCapabilities.class, TestReport.class, TestScript.class, ValueSet.class, VerificationResult.class, VisionPrescription.class } ) public static final String SP_TARGET = "target"; /** * Fluent Client search parameter constant for target diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VisionPrescription.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VisionPrescription.java index c3fa39629..7b97a1655 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VisionPrescription.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/model/VisionPrescription.java @@ -49,7 +49,7 @@ package org.hl7.fhir.r5.model; POSSIBILITY OF SUCH DAMAGE. */ -// Generated on Tue, Dec 31, 2019 12:12+1100 for FHIR vcurrent +// Generated on Mon, May 11, 2020 09:58+1000 for FHIR vcurrent import java.util.ArrayList; import java.util.Date; @@ -2610,10 +2610,10 @@ public class VisionPrescription extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ - @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) + @SearchParamDefinition(name="patient", path="AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient", description="Multiple Resources: \r\n\r\n* [AllergyIntolerance](allergyintolerance.html): Who the sensitivity is for\r\n* [CarePlan](careplan.html): Who the care plan is for\r\n* [CareTeam](careteam.html): Who care team is for\r\n* [ClinicalImpression](clinicalimpression.html): Patient or group assessed\r\n* [Composition](composition.html): Who and/or what the composition is about\r\n* [Condition](condition.html): Who has the condition?\r\n* [Consent](consent.html): Who the consent applies to\r\n* [DetectedIssue](detectedissue.html): Associated patient\r\n* [DeviceRequest](devicerequest.html): Individual the service is ordered for\r\n* [DeviceUseStatement](deviceusestatement.html): Search by subject - a patient\r\n* [DiagnosticReport](diagnosticreport.html): The subject of the report if a patient\r\n* [DocumentManifest](documentmanifest.html): The subject of the set of documents\r\n* [DocumentReference](documentreference.html): Who/what is the subject of the document\r\n* [Encounter](encounter.html): The patient or group present at the encounter\r\n* [EpisodeOfCare](episodeofcare.html): The patient who is the focus of this episode of care\r\n* [FamilyMemberHistory](familymemberhistory.html): The identity of a subject to list family member history items for\r\n* [Flag](flag.html): The identity of a subject to list flags for\r\n* [Goal](goal.html): Who this goal is intended for\r\n* [ImagingStudy](imagingstudy.html): Who the study is about\r\n* [Immunization](immunization.html): The patient for the vaccination record\r\n* [List](list.html): If all resources have the same subject\r\n* [MedicationAdministration](medicationadministration.html): The identity of a patient to list administrations for\r\n* [MedicationDispense](medicationdispense.html): The identity of a patient to list dispenses for\r\n* [MedicationRequest](medicationrequest.html): Returns prescriptions for a specific patient\r\n* [MedicationUsage](medicationusage.html): Returns statements for a specific patient.\r\n* [NutritionOrder](nutritionorder.html): The identity of the person who requires the diet, formula or nutritional supplement\r\n* [Observation](observation.html): The subject that the observation is about (if patient)\r\n* [Procedure](procedure.html): Search by subject - a patient\r\n* [RiskAssessment](riskassessment.html): Who/what does assessment apply to?\r\n* [ServiceRequest](servicerequest.html): Search by subject - a patient\r\n* [SupplyDelivery](supplydelivery.html): Patient for whom the item is supplied\r\n* [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for\r\n", type="reference", providesMembershipIn={ @ca.uhn.fhir.model.api.annotation.Compartment(name="Base FHIR compartment definition for Patient") }, target={Group.class, Patient.class } ) public static final String SP_PATIENT = "patient"; /** * Fluent Client search parameter constant for patient @@ -2654,7 +2654,7 @@ public class VisionPrescription extends DomainResource { * [VisionPrescription](visionprescription.html): The identity of a patient to list dispenses for
* Type: reference
- * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.patient | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
+ * Path: AllergyIntolerance.patient | CarePlan.subject.where(resolve() is Patient) | CareTeam.subject.where(resolve() is Patient) | ClinicalImpression.subject.where(resolve() is Patient) | Composition.subject.where(resolve() is Patient) | Condition.subject.where(resolve() is Patient) | Consent.subject.where(resolve() is Patient) | DetectedIssue.patient | DeviceRequest.subject.where(resolve() is Patient) | DeviceUseStatement.subject | DiagnosticReport.subject.where(resolve() is Patient) | DocumentManifest.subject.where(resolve() is Patient) | DocumentReference.subject.where(resolve() is Patient) | Encounter.subject.where(resolve() is Patient) | EpisodeOfCare.patient | FamilyMemberHistory.patient | Flag.subject.where(resolve() is Patient) | Goal.subject.where(resolve() is Patient) | ImagingStudy.subject.where(resolve() is Patient) | Immunization.patient | List.subject.where(resolve() is Patient) | MedicationAdministration.subject.where(resolve() is Patient) | MedicationDispense.subject.where(resolve() is Patient) | MedicationRequest.subject.where(resolve() is Patient) | MedicationUsage.subject.where(resolve() is Patient) | NutritionOrder.patient | Observation.subject.where(resolve() is Patient) | Procedure.subject.where(resolve() is Patient) | RiskAssessment.subject.where(resolve() is Patient) | ServiceRequest.subject.where(resolve() is Patient) | SupplyDelivery.patient | VisionPrescription.patient
*

*/ public static final ca.uhn.fhir.rest.gclient.ReferenceClientParam PATIENT = new ca.uhn.fhir.rest.gclient.ReferenceClientParam(SP_PATIENT); diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/renderers/TerminologyRenderer.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/renderers/TerminologyRenderer.java index 4391f956e..83f225f95 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/renderers/TerminologyRenderer.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/renderers/TerminologyRenderer.java @@ -161,8 +161,8 @@ public abstract class TerminologyRenderer extends ResourceRenderer { return ""; switch (mapping.getRelationship()) { case EQUIVALENT : return "~"; - case SOURCENARROWERTARGET : return "<"; - case SOURCEBROADERTARGET : return ">"; + case SOURCEISNARROWERTHANTARGET : return "<"; + case SOURCEISBROADERTHANTARGET : return ">"; case NOTRELATEDTO : return "!="; default: return "?"; } diff --git a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/StructureMapUtilities.java b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/StructureMapUtilities.java index 4acad7fdc..68cddf108 100644 --- a/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/StructureMapUtilities.java +++ b/org.hl7.fhir.r5/src/main/java/org/hl7/fhir/r5/utils/StructureMapUtilities.java @@ -358,8 +358,8 @@ public class StructureMapUtilities { case RELATEDTO: return "-"; case EQUIVALENT: return "=="; case NOTRELATEDTO: return "!="; - case SOURCENARROWERTARGET: return "<="; - case SOURCEBROADERTARGET: return ">="; + case SOURCEISNARROWERTHANTARGET: return "<="; + case SOURCEISBROADERTHANTARGET: return ">="; default: return "??"; } } @@ -826,9 +826,9 @@ public class StructureMapUtilities { if (token.equals("!=")) return ConceptMapRelationship.NOTRELATEDTO; if (token.equals("<=")) - return ConceptMapRelationship.SOURCENARROWERTARGET; + return ConceptMapRelationship.SOURCEISNARROWERTHANTARGET; if (token.equals(">=")) - return ConceptMapRelationship.SOURCEBROADERTARGET; + return ConceptMapRelationship.SOURCEISBROADERTHANTARGET; throw lexer.error("Unknown relationship token '"+token+"'"); } @@ -2121,7 +2121,7 @@ public class StructureMapUtilities { message = "Concept map "+su+" found no translation for "+src.getCode(); else { for (TargetElementComponent tgt : list.get(0).comp.getTarget()) { - if (tgt.getRelationship() == null || EnumSet.of( ConceptMapRelationship.RELATEDTO , ConceptMapRelationship.EQUIVALENT, ConceptMapRelationship.SOURCENARROWERTARGET).contains(tgt.getRelationship())) { + if (tgt.getRelationship() == null || EnumSet.of( ConceptMapRelationship.RELATEDTO , ConceptMapRelationship.EQUIVALENT, ConceptMapRelationship.SOURCEISNARROWERTHANTARGET).contains(tgt.getRelationship())) { if (done) { message = "Concept map "+su+" found multiple matches for "+src.getCode(); done = false; diff --git a/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/InstanceValidator.java b/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/InstanceValidator.java index f336dda04..389c5dfa0 100644 --- a/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/InstanceValidator.java +++ b/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/InstanceValidator.java @@ -4560,7 +4560,7 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat return; for (ElementDefinitionConstraintComponent inv : ed.getConstraint()) { - if (inv.hasExpression() && (!onlyNonInherited || !inv.hasSource() || !isInheritedProfile(profile, inv.getSource()))) { + if (inv.hasExpression() && (!onlyNonInherited || !inv.hasSource() || (!isInheritedProfile(profile, inv.getSource()) && !isInheritedProfile(ed.getType(), inv.getSource())) )) { @SuppressWarnings("unchecked") Set invList = executionId.equals(element.getUserString(EXECUTION_ID)) ? (Set) element.getUserData(EXECUTED_CONSTRAINT_LIST) : null; if (invList == null) { @@ -4578,6 +4578,23 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat } } + private boolean isInheritedProfile(List types, String source) { + for (TypeRefComponent type : types) { + for (CanonicalType c : type.getProfile()) { + StructureDefinition sd = context.fetchResource(StructureDefinition.class, c.asStringValue()); + if (sd != null) { + if (sd.getUrl().equals(source)) { + return true; + } + if (isInheritedProfile(sd, source)) { + return true; + } + } + } + } + return false; + } + private boolean isInheritedProfile(StructureDefinition profile, String source) { if (source.equals(profile.getUrl())) { return false; @@ -4594,6 +4611,9 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat } public void checkInvariant(ValidatorHostContext hostContext, List errors, String path, StructureDefinition profile, Element resource, Element element, ElementDefinitionConstraintComponent inv) throws FHIRException { + if (debug) { + System.out.println("inv "+inv.getKey()+" on "+path+" in "+resource.fhirType()+" {{ "+inv.getExpression()+" }}"); + } ExpressionNode n = (ExpressionNode) inv.getUserData("validator.expression.cache"); if (n == null) { long t = System.nanoTime(); @@ -4620,6 +4640,9 @@ public class InstanceValidator extends BaseValidator implements IResourceValidat if (!ok) { if (!Utilities.noString(msg)) msg = " (" + msg + ")"; + if (debug) { + System.out.println(" failed! "+msg); + } if (inv.hasExtension("http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice") && ToolingExtensions.readBooleanExtension(inv, "http://hl7.org/fhir/StructureDefinition/elementdefinition-bestpractice")) { if (bpWarnings == BestPracticeWarningLevel.Hint) diff --git a/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/utils/NodeStack.java b/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/utils/NodeStack.java index 2671c8f6e..1d87c1dc8 100644 --- a/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/utils/NodeStack.java +++ b/org.hl7.fhir.validation/src/main/java/org/hl7/fhir/validation/instance/utils/NodeStack.java @@ -184,5 +184,10 @@ public class NodeStack { return resetPoint; } + @Override + public String toString() { + return literalPath; + } + } diff --git a/pom.xml b/pom.xml index 3957afdd8..d53ecfc85 100644 --- a/pom.xml +++ b/pom.xml @@ -17,7 +17,7 @@ 4.2.0 - 1.1.13-SNAPSHOT + 1.1.14-SNAPSHOT 5.6.2 3.0.0-M4 0.8.5