/// <summary> /// Parse AnimalComponent /// </summary> public static Hl7.Fhir.Model.Patient.AnimalComponent ParseAnimalComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Patient.AnimalComponent existingInstance = null) { Hl7.Fhir.Model.Patient.AnimalComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Patient.AnimalComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element species else if (atName == "species") { result.Species = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element breed else if (atName == "breed") { result.Breed = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element genderStatus else if (atName == "genderStatus") { result.GenderStatus = CodeableConceptParser.ParseCodeableConcept(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse GroupCharacteristicComponent /// </summary> public static Hl7.Fhir.Model.Group.GroupCharacteristicComponent ParseGroupCharacteristicComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Group.GroupCharacteristicComponent existingInstance = null) { Hl7.Fhir.Model.Group.GroupCharacteristicComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Group.GroupCharacteristicComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element type else if (atName == "type") { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element value else if (atName.StartsWith("value")) { result.Value = FhirParser.ParseElement(reader, errors); } // Parse element exclude else if (atName == "exclude") { result.ExcludeElement = FhirBooleanParser.ParseFhirBoolean(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse PractitionerQualificationComponent /// </summary> public static Hl7.Fhir.Model.Practitioner.PractitionerQualificationComponent ParsePractitionerQualificationComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Practitioner.PractitionerQualificationComponent existingInstance = null) { Hl7.Fhir.Model.Practitioner.PractitionerQualificationComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Practitioner.PractitionerQualificationComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element code else if (atName == "code") { result.Code = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element period else if (atName == "period") { result.Period = PeriodParser.ParsePeriod(reader, errors); } // Parse element issuer else if (atName == "issuer") { result.Issuer = ResourceReferenceParser.ParseResourceReference(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse PrescriptionMedicineInactiveIngredientComponent /// </summary> public static Prescription.PrescriptionMedicineInactiveIngredientComponent ParsePrescriptionMedicineInactiveIngredientComponent(IFhirReader reader, ErrorList errors, Prescription.PrescriptionMedicineInactiveIngredientComponent existingInstance = null) { Prescription.PrescriptionMedicineInactiveIngredientComponent result = existingInstance != null ? existingInstance : new Prescription.PrescriptionMedicineInactiveIngredientComponent(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { // Parse element extension if (ParserUtils.IsAtFhirElement(reader, "extension")) { result.Extension = new List <Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element internalId else if (reader.IsAtRefIdElement()) { result.InternalId = Id.Parse(reader.ReadRefIdContents()); } // Parse element identification else if (ParserUtils.IsAtFhirElement(reader, "identification")) { result.Identification = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element quantity else if (ParserUtils.IsAtFhirElement(reader, "quantity", true)) { result.Quantity = FhirParser.ParseElement(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse ProtocolStepPreconditionConditionComponent /// </summary> public static Hl7.Fhir.Model.Protocol.ProtocolStepPreconditionConditionComponent ParseProtocolStepPreconditionConditionComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Protocol.ProtocolStepPreconditionConditionComponent existingInstance = null) { Hl7.Fhir.Model.Protocol.ProtocolStepPreconditionConditionComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Protocol.ProtocolStepPreconditionConditionComponent(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { // Parse element extension if (ParserUtils.IsAtFhirElement(reader, "extension")) { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (ParserUtils.IsAtFhirElement(reader, "_id")) { result.LocalId = Id.Parse(reader.ReadPrimitiveContents("id")); } // Parse element type else if (ParserUtils.IsAtFhirElement(reader, "type")) { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element value else if (ParserUtils.IsAtFhirElement(reader, "value", true)) { result.Value = FhirParser.ParseElement(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse ImmunizationProfileRecommendationDateCriterionComponent /// </summary> public static Hl7.Fhir.Model.ImmunizationProfile.ImmunizationProfileRecommendationDateCriterionComponent ParseImmunizationProfileRecommendationDateCriterionComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.ImmunizationProfile.ImmunizationProfileRecommendationDateCriterionComponent existingInstance = null) { Hl7.Fhir.Model.ImmunizationProfile.ImmunizationProfileRecommendationDateCriterionComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.ImmunizationProfile.ImmunizationProfileRecommendationDateCriterionComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element code else if (atName == "code") { result.Code = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element value else if (atName == "value") { result.ValueElement = FhirDateTimeParser.ParseFhirDateTime(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse ImmunizationVaccinationProtocolComponent /// </summary> public static Hl7.Fhir.Model.Immunization.ImmunizationVaccinationProtocolComponent ParseImmunizationVaccinationProtocolComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Immunization.ImmunizationVaccinationProtocolComponent existingInstance = null) { Hl7.Fhir.Model.Immunization.ImmunizationVaccinationProtocolComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Immunization.ImmunizationVaccinationProtocolComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element doseSequence else if (atName == "doseSequence") { result.DoseSequenceElement = IntegerParser.ParseInteger(reader, errors); } // Parse element description else if (atName == "description") { result.DescriptionElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element authority else if (atName == "authority") { result.Authority = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element series else if (atName == "series") { result.SeriesElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element seriesDoses else if (atName == "seriesDoses") { result.SeriesDosesElement = IntegerParser.ParseInteger(reader, errors); } // Parse element doseTarget else if (atName == "doseTarget") { result.DoseTarget = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element doseStatus else if (atName == "doseStatus") { result.DoseStatus = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element doseStatusReason else if (atName == "doseStatusReason") { result.DoseStatusReason = CodeableConceptParser.ParseCodeableConcept(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse ActivityDefinition /// </summary> public static Hl7.Fhir.Model.ActivityDefinition ParseActivityDefinition(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.ActivityDefinition existingInstance = null) { Hl7.Fhir.Model.ActivityDefinition result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.ActivityDefinition(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { // Parse element extension if (ParserUtils.IsAtFhirElement(reader, "extension")) { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (ParserUtils.IsAtFhirElement(reader, "_id")) { result.LocalId = Id.Parse(reader.ReadPrimitiveContents("id")); } // Parse element category else if (ParserUtils.IsAtFhirElement(reader, "category")) { result.Category = CodeParser.ParseCode <Hl7.Fhir.Model.ActivityDefinition.ActivityDefinitionCategory>(reader, errors); } // Parse element code else if (ParserUtils.IsAtFhirElement(reader, "code")) { result.Code = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element timing else if (ParserUtils.IsAtFhirElement(reader, "timing", true)) { result.Timing = FhirParser.ParseElement(reader, errors); } // Parse element location else if (ParserUtils.IsAtFhirElement(reader, "location")) { result.Location = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element performer else if (ParserUtils.IsAtFhirElement(reader, "performer")) { result.Performer = new List <Hl7.Fhir.Model.ResourceReference>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "performer")) { result.Performer.Add(ResourceReferenceParser.ParseResourceReference(reader, errors)); } reader.LeaveArray(); } // Parse element product else if (ParserUtils.IsAtFhirElement(reader, "product")) { result.Product = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element quantity else if (ParserUtils.IsAtFhirElement(reader, "quantity")) { result.Quantity = QuantityParser.ParseQuantity(reader, errors); } // Parse element details else if (ParserUtils.IsAtFhirElement(reader, "details")) { result.Details = FhirStringParser.ParseFhirString(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse ConformanceRestSecurityComponent /// </summary> public static Hl7.Fhir.Model.Conformance.ConformanceRestSecurityComponent ParseConformanceRestSecurityComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Conformance.ConformanceRestSecurityComponent existingInstance = null) { Hl7.Fhir.Model.Conformance.ConformanceRestSecurityComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Conformance.ConformanceRestSecurityComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element service else if (atName == "service") { result.Service = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "service")) { result.Service.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element description else if (atName == "description") { result.DescriptionElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element certificate else if (atName == "certificate") { result.Certificate = new List <Hl7.Fhir.Model.Conformance.ConformanceRestSecurityCertificateComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "certificate")) { result.Certificate.Add(ConformanceParser.ParseConformanceRestSecurityCertificateComponent(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Device /// </summary> public static Hl7.Fhir.Model.Device ParseDevice(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Device existingInstance = null) { Hl7.Fhir.Model.Device result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Device(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element type else if (atName == "type") { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element manufacturer else if (atName == "manufacturer") { result.ManufacturerElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element model else if (atName == "model") { result.ModelElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element version else if (atName == "version") { result.VersionElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element expiry else if (atName == "expiry") { result.ExpiryElement = DateParser.ParseDate(reader, errors); } // Parse element identity else if (atName == "identity") { result.Identity = DeviceParser.ParseDeviceIdentityComponent(reader, errors); } // Parse element owner else if (atName == "owner") { result.Owner = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element assignedId else if (atName == "assignedId") { result.AssignedId = new List <Hl7.Fhir.Model.Identifier>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "assignedId")) { result.AssignedId.Add(IdentifierParser.ParseIdentifier(reader, errors)); } reader.LeaveArray(); } // Parse element location else if (atName == "location") { result.Location = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element patient else if (atName == "patient") { result.Patient = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element contact else if (atName == "contact") { result.Contact = new List <Hl7.Fhir.Model.Contact>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contact")) { result.Contact.Add(ContactParser.ParseContact(reader, errors)); } reader.LeaveArray(); } // Parse element url else if (atName == "url") { result.UrlElement = FhirUriParser.ParseFhirUri(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse MedicationDispenseSubstitutionComponent /// </summary> public static Hl7.Fhir.Model.MedicationDispense.MedicationDispenseSubstitutionComponent ParseMedicationDispenseSubstitutionComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.MedicationDispense.MedicationDispenseSubstitutionComponent existingInstance = null) { Hl7.Fhir.Model.MedicationDispense.MedicationDispenseSubstitutionComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.MedicationDispense.MedicationDispenseSubstitutionComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element type else if (atName == "type") { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element reason else if (atName == "reason") { result.Reason = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "reason")) { result.Reason.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element responsibleParty else if (atName == "responsibleParty") { result.ResponsibleParty = new List <Hl7.Fhir.Model.ResourceReference>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "responsibleParty")) { result.ResponsibleParty.Add(ResourceReferenceParser.ParseResourceReference(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse DiagnosticReport /// </summary> public static Hl7.Fhir.Model.DiagnosticReport ParseDiagnosticReport(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.DiagnosticReport existingInstance = null) { Hl7.Fhir.Model.DiagnosticReport result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.DiagnosticReport(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element status else if (atName == "status") { result.StatusElement = CodeParser.ParseCode <Hl7.Fhir.Model.ObservationStatus>(reader, errors); } // Parse element issued else if (atName == "issued") { result.IssuedElement = FhirDateTimeParser.ParseFhirDateTime(reader, errors); } // Parse element subject else if (atName == "subject") { result.Subject = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element performer else if (atName == "performer") { result.Performer = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element reportId else if (atName == "reportId") { result.ReportId = IdentifierParser.ParseIdentifier(reader, errors); } // Parse element requestDetail else if (atName == "requestDetail") { result.RequestDetail = new List <Hl7.Fhir.Model.DiagnosticReport.DiagnosticReportRequestDetailComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "requestDetail")) { result.RequestDetail.Add(DiagnosticReportParser.ParseDiagnosticReportRequestDetailComponent(reader, errors)); } reader.LeaveArray(); } // Parse element serviceCategory else if (atName == "serviceCategory") { result.ServiceCategory = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element diagnosticTime else if (atName == "diagnosticTime") { result.DiagnosticTimeElement = FhirDateTimeParser.ParseFhirDateTime(reader, errors); } // Parse element results else if (atName == "results") { result.Results = DiagnosticReportParser.ParseResultGroupComponent(reader, errors); } // Parse element image else if (atName == "image") { result.Image = new List <Hl7.Fhir.Model.ResourceReference>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "image")) { result.Image.Add(ResourceReferenceParser.ParseResourceReference(reader, errors)); } reader.LeaveArray(); } // Parse element conclusion else if (atName == "conclusion") { result.ConclusionElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element codedDiagnosis else if (atName == "codedDiagnosis") { result.CodedDiagnosis = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "codedDiagnosis")) { result.CodedDiagnosis.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element representation else if (atName == "representation") { result.Representation = new List <Hl7.Fhir.Model.Attachment>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "representation")) { result.Representation.Add(AttachmentParser.ParseAttachment(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Organization /// </summary> public static Hl7.Fhir.Model.Organization ParseOrganization(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Organization existingInstance = null) { Hl7.Fhir.Model.Organization result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Organization(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.Identifier = new List <Hl7.Fhir.Model.Identifier>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "identifier")) { result.Identifier.Add(IdentifierParser.ParseIdentifier(reader, errors)); } reader.LeaveArray(); } // Parse element name else if (atName == "name") { result.NameElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element type else if (atName == "type") { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element telecom else if (atName == "telecom") { result.Telecom = new List <Hl7.Fhir.Model.Contact>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "telecom")) { result.Telecom.Add(ContactParser.ParseContact(reader, errors)); } reader.LeaveArray(); } // Parse element address else if (atName == "address") { result.Address = new List <Hl7.Fhir.Model.Address>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "address")) { result.Address.Add(AddressParser.ParseAddress(reader, errors)); } reader.LeaveArray(); } // Parse element partOf else if (atName == "partOf") { result.PartOf = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element contact else if (atName == "contact") { result.Contact = new List <Hl7.Fhir.Model.Organization.OrganizationContactComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contact")) { result.Contact.Add(OrganizationParser.ParseOrganizationContactComponent(reader, errors)); } reader.LeaveArray(); } // Parse element active else if (atName == "active") { result.ActiveElement = FhirBooleanParser.ParseFhirBoolean(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse DiagnosticReportRequestDetailComponent /// </summary> public static Hl7.Fhir.Model.DiagnosticReport.DiagnosticReportRequestDetailComponent ParseDiagnosticReportRequestDetailComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.DiagnosticReport.DiagnosticReportRequestDetailComponent existingInstance = null) { Hl7.Fhir.Model.DiagnosticReport.DiagnosticReportRequestDetailComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.DiagnosticReport.DiagnosticReportRequestDetailComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element encounter else if (atName == "encounter") { result.Encounter = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element requestOrderId else if (atName == "requestOrderId") { result.RequestOrderId = IdentifierParser.ParseIdentifier(reader, errors); } // Parse element receiverOrderId else if (atName == "receiverOrderId") { result.ReceiverOrderId = IdentifierParser.ParseIdentifier(reader, errors); } // Parse element requestTest else if (atName == "requestTest") { result.RequestTest = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "requestTest")) { result.RequestTest.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element bodySite else if (atName == "bodySite") { result.BodySite = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element requester else if (atName == "requester") { result.Requester = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element clinicalInfo else if (atName == "clinicalInfo") { result.ClinicalInfoElement = FhirStringParser.ParseFhirString(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Observation /// </summary> public static Hl7.Fhir.Model.Observation ParseObservation(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Observation existingInstance = null) { Hl7.Fhir.Model.Observation result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Observation(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element name else if (atName == "name") { result.Name = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element value else if (atName.StartsWith("value")) { result.Value = FhirParser.ParseElement(reader, errors); } // Parse element interpretation else if (atName == "interpretation") { result.Interpretation = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element comments else if (atName == "comments") { result.CommentsElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element applies else if (atName.StartsWith("applies")) { result.Applies = FhirParser.ParseElement(reader, errors); } // Parse element issued else if (atName == "issued") { result.IssuedElement = InstantParser.ParseInstant(reader, errors); } // Parse element status else if (atName == "status") { result.StatusElement = CodeParser.ParseCode <Hl7.Fhir.Model.ObservationStatus>(reader, errors); } // Parse element reliability else if (atName == "reliability") { result.ReliabilityElement = CodeParser.ParseCode <Hl7.Fhir.Model.Observation.ObservationReliability>(reader, errors); } // Parse element bodySite else if (atName == "bodySite") { result.BodySite = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element method else if (atName == "method") { result.Method = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element identifier else if (atName == "identifier") { result.Identifier = IdentifierParser.ParseIdentifier(reader, errors); } // Parse element subject else if (atName == "subject") { result.Subject = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element performer else if (atName == "performer") { result.Performer = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element referenceRange else if (atName == "referenceRange") { result.ReferenceRange = new List <Hl7.Fhir.Model.Observation.ObservationReferenceRangeComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "referenceRange")) { result.ReferenceRange.Add(ObservationParser.ParseObservationReferenceRangeComponent(reader, errors)); } reader.LeaveArray(); } // Parse element component else if (atName == "component") { result.Component = new List <Hl7.Fhir.Model.Observation.ObservationComponentComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "component")) { result.Component.Add(ObservationParser.ParseObservationComponentComponent(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Visit /// </summary> public static Hl7.Fhir.Model.Visit ParseVisit(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Visit existingInstance = null) { Hl7.Fhir.Model.Visit result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Visit(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.Language = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalId = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.Identifier = new List <Hl7.Fhir.Model.Identifier>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "identifier")) { result.Identifier.Add(IdentifierParser.ParseIdentifier(reader, errors)); } reader.LeaveArray(); } // Parse element status else if (atName == "status") { result.Status = CodeParser.ParseCode <Hl7.Fhir.Model.Visit.EncounterState>(reader, errors); } // Parse element class else if (atName == "class") { result.Class = CodeParser.ParseCode <Hl7.Fhir.Model.Visit.EncounterClass>(reader, errors); } // Parse element type else if (atName == "type") { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element subject else if (atName == "subject") { result.Subject = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element participant else if (atName == "participant") { result.Participant = new List <Hl7.Fhir.Model.Visit.VisitParticipantComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "participant")) { result.Participant.Add(VisitParser.ParseVisitParticipantComponent(reader, errors)); } reader.LeaveArray(); } // Parse element fulfills else if (atName == "fulfills") { result.Fulfills = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element length else if (atName == "length") { result.Length = DurationParser.ParseDuration(reader, errors); } // Parse element reason else if (atName.StartsWith("reason")) { result.Reason = FhirParser.ParseElement(reader, errors); } // Parse element indication else if (atName == "indication") { result.Indication = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element priority else if (atName == "priority") { result.Priority = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element hospitalization else if (atName == "hospitalization") { result.Hospitalization = VisitParser.ParseVisitHospitalizationComponent(reader, errors); } // Parse element location else if (atName == "location") { result.Location = new List <Hl7.Fhir.Model.Visit.VisitLocationComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "location")) { result.Location.Add(VisitParser.ParseVisitLocationComponent(reader, errors)); } reader.LeaveArray(); } // Parse element serviceProvider else if (atName == "serviceProvider") { result.ServiceProvider = ResourceReferenceParser.ParseResourceReference(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse VisitHospitalizationComponent /// </summary> public static Hl7.Fhir.Model.Visit.VisitHospitalizationComponent ParseVisitHospitalizationComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Visit.VisitHospitalizationComponent existingInstance = null) { Hl7.Fhir.Model.Visit.VisitHospitalizationComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Visit.VisitHospitalizationComponent(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalId = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element preAdmissionIdentifier else if (atName == "preAdmissionIdentifier") { result.PreAdmissionIdentifier = IdentifierParser.ParseIdentifier(reader, errors); } // Parse element preAdmissionTest else if (atName == "preAdmissionTest") { result.PreAdmissionTest = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element origin else if (atName == "origin") { result.Origin = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element admitSource else if (atName == "admitSource") { result.AdmitSource = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element period else if (atName == "period") { result.Period = PeriodParser.ParsePeriod(reader, errors); } // Parse element accomodation else if (atName == "accomodation") { result.Accomodation = new List <Hl7.Fhir.Model.Visit.VisitHospitalizationAccomodationComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "accomodation")) { result.Accomodation.Add(VisitParser.ParseVisitHospitalizationAccomodationComponent(reader, errors)); } reader.LeaveArray(); } // Parse element diet else if (atName == "diet") { result.Diet = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element specialCourtesy else if (atName == "specialCourtesy") { result.SpecialCourtesy = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "specialCourtesy")) { result.SpecialCourtesy.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element specialArrangement else if (atName == "specialArrangement") { result.SpecialArrangement = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "specialArrangement")) { result.SpecialArrangement.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element destination else if (atName == "destination") { result.Destination = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element dischargeDisposition else if (atName == "dischargeDisposition") { result.DischargeDisposition = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element reAdmission else if (atName == "reAdmission") { result.ReAdmission = FhirBooleanParser.ParseFhirBoolean(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse VisitParticipantComponent /// </summary> public static Hl7.Fhir.Model.Visit.VisitParticipantComponent ParseVisitParticipantComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Visit.VisitParticipantComponent existingInstance = null) { Hl7.Fhir.Model.Visit.VisitParticipantComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Visit.VisitParticipantComponent(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalId = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element type else if (atName == "type") { result.Type = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "type")) { result.Type.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element practitioner else if (atName == "practitioner") { result.Practitioner = ResourceReferenceParser.ParseResourceReference(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse Practitioner /// </summary> public static Hl7.Fhir.Model.Practitioner ParsePractitioner(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Practitioner existingInstance = null) { Hl7.Fhir.Model.Practitioner result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Practitioner(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.Identifier = new List <Hl7.Fhir.Model.Identifier>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "identifier")) { result.Identifier.Add(IdentifierParser.ParseIdentifier(reader, errors)); } reader.LeaveArray(); } // Parse element name else if (atName == "name") { result.Name = HumanNameParser.ParseHumanName(reader, errors); } // Parse element telecom else if (atName == "telecom") { result.Telecom = new List <Hl7.Fhir.Model.Contact>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "telecom")) { result.Telecom.Add(ContactParser.ParseContact(reader, errors)); } reader.LeaveArray(); } // Parse element address else if (atName == "address") { result.Address = AddressParser.ParseAddress(reader, errors); } // Parse element gender else if (atName == "gender") { result.Gender = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element birthDate else if (atName == "birthDate") { result.BirthDateElement = FhirDateTimeParser.ParseFhirDateTime(reader, errors); } // Parse element photo else if (atName == "photo") { result.Photo = new List <Hl7.Fhir.Model.Attachment>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "photo")) { result.Photo.Add(AttachmentParser.ParseAttachment(reader, errors)); } reader.LeaveArray(); } // Parse element organization else if (atName == "organization") { result.Organization = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element role else if (atName == "role") { result.Role = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "role")) { result.Role.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element specialty else if (atName == "specialty") { result.Specialty = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "specialty")) { result.Specialty.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element period else if (atName == "period") { result.Period = PeriodParser.ParsePeriod(reader, errors); } // Parse element qualification else if (atName == "qualification") { result.Qualification = new List <Hl7.Fhir.Model.Practitioner.PractitionerQualificationComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "qualification")) { result.Qualification.Add(PractitionerParser.ParsePractitionerQualificationComponent(reader, errors)); } reader.LeaveArray(); } // Parse element communication else if (atName == "communication") { result.Communication = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "communication")) { result.Communication.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Immunization /// </summary> public static Hl7.Fhir.Model.Immunization ParseImmunization(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Immunization existingInstance = null) { Hl7.Fhir.Model.Immunization result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Immunization(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element date else if (atName == "date") { result.DateElement = FhirDateTimeParser.ParseFhirDateTime(reader, errors); } // Parse element vaccineType else if (atName == "vaccineType") { result.VaccineType = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element subject else if (atName == "subject") { result.Subject = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element refusedIndicator else if (atName == "refusedIndicator") { result.RefusedIndicatorElement = FhirBooleanParser.ParseFhirBoolean(reader, errors); } // Parse element reported else if (atName == "reported") { result.ReportedElement = FhirBooleanParser.ParseFhirBoolean(reader, errors); } // Parse element performer else if (atName == "performer") { result.Performer = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element requester else if (atName == "requester") { result.Requester = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element manufacturer else if (atName == "manufacturer") { result.Manufacturer = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element location else if (atName == "location") { result.Location = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element lotNumber else if (atName == "lotNumber") { result.LotNumberElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element expirationDate else if (atName == "expirationDate") { result.ExpirationDateElement = DateParser.ParseDate(reader, errors); } // Parse element site else if (atName == "site") { result.Site = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element route else if (atName == "route") { result.Route = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element doseQuantity else if (atName == "doseQuantity") { result.DoseQuantity = QuantityParser.ParseQuantity(reader, errors); } // Parse element explanation else if (atName == "explanation") { result.Explanation = ImmunizationParser.ParseImmunizationExplanationComponent(reader, errors); } // Parse element reaction else if (atName == "reaction") { result.Reaction = new List <Hl7.Fhir.Model.Immunization.ImmunizationReactionComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "reaction")) { result.Reaction.Add(ImmunizationParser.ParseImmunizationReactionComponent(reader, errors)); } reader.LeaveArray(); } // Parse element vaccinationProtocol else if (atName == "vaccinationProtocol") { result.VaccinationProtocol = ImmunizationParser.ParseImmunizationVaccinationProtocolComponent(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse ResultGroupComponent /// </summary> public static Hl7.Fhir.Model.DiagnosticReport.ResultGroupComponent ParseResultGroupComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.DiagnosticReport.ResultGroupComponent existingInstance = null) { Hl7.Fhir.Model.DiagnosticReport.ResultGroupComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.DiagnosticReport.ResultGroupComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element name else if (atName == "name") { result.Name = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element specimen else if (atName == "specimen") { result.Specimen = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element group else if (atName == "group") { result.Group = new List <Hl7.Fhir.Model.DiagnosticReport.ResultGroupComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "group")) { result.Group.Add(DiagnosticReportParser.ParseResultGroupComponent(reader, errors)); } reader.LeaveArray(); } // Parse element result else if (atName == "result") { result.Result = new List <Hl7.Fhir.Model.ResourceReference>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "result")) { result.Result.Add(ResourceReferenceParser.ParseResourceReference(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse FamilyHistoryRelationComponent /// </summary> public static Hl7.Fhir.Model.FamilyHistory.FamilyHistoryRelationComponent ParseFamilyHistoryRelationComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.FamilyHistory.FamilyHistoryRelationComponent existingInstance = null) { Hl7.Fhir.Model.FamilyHistory.FamilyHistoryRelationComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.FamilyHistory.FamilyHistoryRelationComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element name else if (atName == "name") { result.NameElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element relationship else if (atName == "relationship") { result.Relationship = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element deceased else if (atName.StartsWith("deceased")) { result.Deceased = FhirParser.ParseElement(reader, errors); } // Parse element note else if (atName == "note") { result.NoteElement = FhirStringParser.ParseFhirString(reader, errors); } // Parse element condition else if (atName == "condition") { result.Condition = new List <Hl7.Fhir.Model.FamilyHistory.FamilyHistoryRelationConditionComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "condition")) { result.Condition.Add(FamilyHistoryParser.ParseFamilyHistoryRelationConditionComponent(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse OrganizationContactComponent /// </summary> public static Hl7.Fhir.Model.Organization.OrganizationContactComponent ParseOrganizationContactComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Organization.OrganizationContactComponent existingInstance = null) { Hl7.Fhir.Model.Organization.OrganizationContactComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Organization.OrganizationContactComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element purpose else if (atName == "purpose") { result.Purpose = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element name else if (atName == "name") { result.Name = HumanNameParser.ParseHumanName(reader, errors); } // Parse element telecom else if (atName == "telecom") { result.Telecom = new List <Hl7.Fhir.Model.Contact>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "telecom")) { result.Telecom.Add(ContactParser.ParseContact(reader, errors)); } reader.LeaveArray(); } // Parse element address else if (atName == "address") { result.Address = AddressParser.ParseAddress(reader, errors); } // Parse element gender else if (atName == "gender") { result.Gender = CodeableConceptParser.ParseCodeableConcept(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Condition /// </summary> public static Hl7.Fhir.Model.Condition ParseCondition(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Condition existingInstance = null) { Hl7.Fhir.Model.Condition result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Condition(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element subject else if (atName == "subject") { result.Subject = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element encounter else if (atName == "encounter") { result.Encounter = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element asserter else if (atName == "asserter") { result.Asserter = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element dateAsserted else if (atName == "dateAsserted") { result.DateAssertedElement = DateParser.ParseDate(reader, errors); } // Parse element code else if (atName == "code") { result.Code = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element category else if (atName == "category") { result.Category = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element status else if (atName == "status") { result.StatusElement = CodeParser.ParseCode <Hl7.Fhir.Model.Condition.ConditionStatus>(reader, errors); } // Parse element certainty else if (atName == "certainty") { result.Certainty = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element severity else if (atName == "severity") { result.Severity = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element onset else if (atName.StartsWith("onset")) { result.Onset = FhirParser.ParseElement(reader, errors); } // Parse element abatement else if (atName.StartsWith("abatement")) { result.Abatement = FhirParser.ParseElement(reader, errors); } // Parse element stage else if (atName == "stage") { result.Stage = ConditionParser.ParseConditionStageComponent(reader, errors); } // Parse element evidence else if (atName == "evidence") { result.Evidence = new List <Hl7.Fhir.Model.Condition.ConditionEvidenceComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "evidence")) { result.Evidence.Add(ConditionParser.ParseConditionEvidenceComponent(reader, errors)); } reader.LeaveArray(); } // Parse element location else if (atName == "location") { result.Location = new List <Hl7.Fhir.Model.Condition.ConditionLocationComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "location")) { result.Location.Add(ConditionParser.ParseConditionLocationComponent(reader, errors)); } reader.LeaveArray(); } // Parse element relatedItem else if (atName == "relatedItem") { result.RelatedItem = new List <Hl7.Fhir.Model.Condition.ConditionRelatedItemComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "relatedItem")) { result.RelatedItem.Add(ConditionParser.ParseConditionRelatedItemComponent(reader, errors)); } reader.LeaveArray(); } // Parse element notes else if (atName == "notes") { result.NotesElement = FhirStringParser.ParseFhirString(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse RelatedPerson /// </summary> public static Hl7.Fhir.Model.RelatedPerson ParseRelatedPerson(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.RelatedPerson existingInstance = null) { Hl7.Fhir.Model.RelatedPerson result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.RelatedPerson(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.Identifier = new List <Hl7.Fhir.Model.Identifier>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "identifier")) { result.Identifier.Add(IdentifierParser.ParseIdentifier(reader, errors)); } reader.LeaveArray(); } // Parse element patient else if (atName == "patient") { result.Patient = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element relationship else if (atName == "relationship") { result.Relationship = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element name else if (atName == "name") { result.Name = HumanNameParser.ParseHumanName(reader, errors); } // Parse element telecom else if (atName == "telecom") { result.Telecom = new List <Hl7.Fhir.Model.Contact>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "telecom")) { result.Telecom.Add(ContactParser.ParseContact(reader, errors)); } reader.LeaveArray(); } // Parse element gender else if (atName == "gender") { result.Gender = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element address else if (atName == "address") { result.Address = AddressParser.ParseAddress(reader, errors); } // Parse element photo else if (atName == "photo") { result.Photo = new List <Hl7.Fhir.Model.Attachment>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "photo")) { result.Photo.Add(AttachmentParser.ParseAttachment(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse DemographicsLanguageComponent /// </summary> public static Hl7.Fhir.Model.Demographics.DemographicsLanguageComponent ParseDemographicsLanguageComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Demographics.DemographicsLanguageComponent existingInstance = null) { Hl7.Fhir.Model.Demographics.DemographicsLanguageComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Demographics.DemographicsLanguageComponent(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalId = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element language else if (atName == "language") { result.Language = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element mode else if (atName == "mode") { result.Mode = new List <Hl7.Fhir.Model.CodeableConcept>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "mode")) { result.Mode.Add(CodeableConceptParser.ParseCodeableConcept(reader, errors)); } reader.LeaveArray(); } // Parse element proficiencyLevel else if (atName == "proficiencyLevel") { result.ProficiencyLevel = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element preference else if (atName == "preference") { result.Preference = FhirBooleanParser.ParseFhirBoolean(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse MedicationDispenseDispenseDosageComponent /// </summary> public static Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseDosageComponent ParseMedicationDispenseDispenseDosageComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseDosageComponent existingInstance = null) { Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseDosageComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseDosageComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element additionalInstructions else if (atName.StartsWith("additionalInstructions")) { result.AdditionalInstructions = FhirParser.ParseElement(reader, errors); } // Parse element timing else if (atName.StartsWith("timing")) { result.Timing = FhirParser.ParseElement(reader, errors); } // Parse element site else if (atName == "site") { result.Site = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element route else if (atName == "route") { result.Route = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element method else if (atName == "method") { result.Method = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element quantity else if (atName == "quantity") { result.Quantity = QuantityParser.ParseQuantity(reader, errors); } // Parse element rate else if (atName == "rate") { result.Rate = RatioParser.ParseRatio(reader, errors); } // Parse element maxDosePerPeriod else if (atName == "maxDosePerPeriod") { result.MaxDosePerPeriod = RatioParser.ParseRatio(reader, errors); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Demographics /// </summary> public static Hl7.Fhir.Model.Demographics ParseDemographics(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Demographics existingInstance = null) { Hl7.Fhir.Model.Demographics result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Demographics(); try { string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalId = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.Identifier = new List <Hl7.Fhir.Model.Identifier>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "identifier")) { result.Identifier.Add(IdentifierParser.ParseIdentifier(reader, errors)); } reader.LeaveArray(); } // Parse element name else if (atName == "name") { result.Name = new List <Hl7.Fhir.Model.HumanName>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "name")) { result.Name.Add(HumanNameParser.ParseHumanName(reader, errors)); } reader.LeaveArray(); } // Parse element telecom else if (atName == "telecom") { result.Telecom = new List <Hl7.Fhir.Model.Contact>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "telecom")) { result.Telecom.Add(ContactParser.ParseContact(reader, errors)); } reader.LeaveArray(); } // Parse element gender else if (atName == "gender") { result.Gender = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element birthDate else if (atName == "birthDate") { result.BirthDate = FhirDateTimeParser.ParseFhirDateTime(reader, errors); } // Parse element deceased else if (atName == "deceased") { result.Deceased = FhirBooleanParser.ParseFhirBoolean(reader, errors); } // Parse element address else if (atName == "address") { result.Address = new List <Hl7.Fhir.Model.Address>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "address")) { result.Address.Add(AddressParser.ParseAddress(reader, errors)); } reader.LeaveArray(); } // Parse element photo else if (atName == "photo") { result.Photo = new List <Hl7.Fhir.Model.Attachment>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "photo")) { result.Photo.Add(AttachmentParser.ParseAttachment(reader, errors)); } reader.LeaveArray(); } // Parse element maritalStatus else if (atName == "maritalStatus") { result.MaritalStatus = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element language else if (atName == "language") { result.Language = new List <Hl7.Fhir.Model.Demographics.DemographicsLanguageComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "language")) { result.Language.Add(DemographicsParser.ParseDemographicsLanguageComponent(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); } catch (Exception ex) { errors.Add(ex.Message, reader); } return(result); }
/// <summary> /// Parse MedicationDispenseDispenseComponent /// </summary> public static Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseComponent ParseMedicationDispenseDispenseComponent(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseComponent existingInstance = null) { Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseComponent result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseComponent(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.Identifier = IdentifierParser.ParseIdentifier(reader, errors); } // Parse element status else if (atName == "status") { result.StatusElement = CodeParser.ParseCode <Hl7.Fhir.Model.MedicationDispense.MedicationDispenseStatus>(reader, errors); } // Parse element type else if (atName == "type") { result.Type = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element quantity else if (atName == "quantity") { result.Quantity = QuantityParser.ParseQuantity(reader, errors); } // Parse element medication else if (atName == "medication") { result.Medication = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element whenPrepared else if (atName == "whenPrepared") { result.WhenPrepared = PeriodParser.ParsePeriod(reader, errors); } // Parse element whenHandedOver else if (atName == "whenHandedOver") { result.WhenHandedOver = PeriodParser.ParsePeriod(reader, errors); } // Parse element destination else if (atName == "destination") { result.Destination = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element receiver else if (atName == "receiver") { result.Receiver = new List <Hl7.Fhir.Model.ResourceReference>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "receiver")) { result.Receiver.Add(ResourceReferenceParser.ParseResourceReference(reader, errors)); } reader.LeaveArray(); } // Parse element dosage else if (atName == "dosage") { result.Dosage = new List <Hl7.Fhir.Model.MedicationDispense.MedicationDispenseDispenseDosageComponent>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "dosage")) { result.Dosage.Add(MedicationDispenseParser.ParseMedicationDispenseDispenseDosageComponent(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }
/// <summary> /// Parse Message /// </summary> public static Hl7.Fhir.Model.Message ParseMessage(IFhirReader reader, ErrorList errors, Hl7.Fhir.Model.Message existingInstance = null) { Hl7.Fhir.Model.Message result = existingInstance != null ? existingInstance : new Hl7.Fhir.Model.Message(); string currentElementName = reader.CurrentElementName; reader.EnterElement(); while (reader.HasMoreElements()) { var atName = reader.CurrentElementName; // Parse element extension if (atName == "extension") { result.Extension = new List <Hl7.Fhir.Model.Extension>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "extension")) { result.Extension.Add(ExtensionParser.ParseExtension(reader, errors)); } reader.LeaveArray(); } // Parse element language else if (atName == "language") { result.LanguageElement = CodeParser.ParseCode(reader, errors); } // Parse element text else if (atName == "text") { result.Text = NarrativeParser.ParseNarrative(reader, errors); } // Parse element contained else if (atName == "contained") { result.Contained = new List <Hl7.Fhir.Model.Resource>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "contained")) { result.Contained.Add(ParserUtils.ParseContainedResource(reader, errors)); } reader.LeaveArray(); } // Parse element _id else if (atName == "_id") { result.LocalIdElement = Id.Parse(reader.ReadPrimitiveContents(typeof(Id))); } // Parse element identifier else if (atName == "identifier") { result.IdentifierElement = IdParser.ParseId(reader, errors); } // Parse element timestamp else if (atName == "timestamp") { result.TimestampElement = InstantParser.ParseInstant(reader, errors); } // Parse element event else if (atName == "event") { result.EventElement = CodeParser.ParseCode(reader, errors); } // Parse element response else if (atName == "response") { result.Response = MessageParser.ParseMessageResponseComponent(reader, errors); } // Parse element source else if (atName == "source") { result.Source = MessageParser.ParseMessageSourceComponent(reader, errors); } // Parse element destination else if (atName == "destination") { result.Destination = MessageParser.ParseMessageDestinationComponent(reader, errors); } // Parse element enterer else if (atName == "enterer") { result.Enterer = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element author else if (atName == "author") { result.Author = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element receiver else if (atName == "receiver") { result.Receiver = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element responsible else if (atName == "responsible") { result.Responsible = ResourceReferenceParser.ParseResourceReference(reader, errors); } // Parse element effective else if (atName == "effective") { result.Effective = PeriodParser.ParsePeriod(reader, errors); } // Parse element reason else if (atName == "reason") { result.Reason = CodeableConceptParser.ParseCodeableConcept(reader, errors); } // Parse element data else if (atName == "data") { result.Data = new List <Hl7.Fhir.Model.ResourceReference>(); reader.EnterArray(); while (ParserUtils.IsAtArrayElement(reader, "data")) { result.Data.Add(ResourceReferenceParser.ParseResourceReference(reader, errors)); } reader.LeaveArray(); } else { errors.Add(String.Format("Encountered unknown element {0} while parsing {1}", reader.CurrentElementName, currentElementName), reader); reader.SkipSubElementsFor(currentElementName); result = null; } } reader.LeaveElement(); return(result); }