public static void SerializePrescriptionMedicineComponent(Prescription.PrescriptionMedicineComponent value, IFhirWriter writer) { writer.WriteStartComplexContent(); // Serialize element's localId attribute if (value.InternalId != null && !String.IsNullOrEmpty(value.InternalId.Contents)) { writer.WriteRefIdContents(value.InternalId.Contents); } // Serialize element extension if (value.Extension != null && value.Extension.Count > 0) { writer.WriteStartArrayElement("extension"); foreach (var item in value.Extension) { writer.WriteStartArrayMember("extension"); ExtensionSerializer.SerializeExtension(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element identification if (value.Identification != null) { writer.WriteStartElement("identification"); CodeableConceptSerializer.SerializeCodeableConcept(value.Identification, writer); writer.WriteEndElement(); } // Serialize element activeIngredient if (value.ActiveIngredient != null && value.ActiveIngredient.Count > 0) { writer.WriteStartArrayElement("activeIngredient"); foreach (var item in value.ActiveIngredient) { writer.WriteStartArrayMember("activeIngredient"); PrescriptionSerializer.SerializePrescriptionMedicineActiveIngredientComponent(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element inactiveIngredient if (value.InactiveIngredient != null && value.InactiveIngredient.Count > 0) { writer.WriteStartArrayElement("inactiveIngredient"); foreach (var item in value.InactiveIngredient) { writer.WriteStartArrayMember("inactiveIngredient"); PrescriptionSerializer.SerializePrescriptionMedicineInactiveIngredientComponent(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } writer.WriteEndComplexContent(); }
public static void SerializePrescription(Prescription value, IFhirWriter writer) { writer.WriteStartRootObject("Prescription"); writer.WriteStartComplexContent(); // Serialize element's localId attribute if (value.InternalId != null && !String.IsNullOrEmpty(value.InternalId.Contents)) { writer.WriteRefIdContents(value.InternalId.Contents); } // Serialize element extension if (value.Extension != null && value.Extension.Count > 0) { writer.WriteStartArrayElement("extension"); foreach (var item in value.Extension) { writer.WriteStartArrayMember("extension"); ExtensionSerializer.SerializeExtension(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element language if (value.Language != null) { writer.WriteStartElement("language"); CodeSerializer.SerializeCode(value.Language, writer); writer.WriteEndElement(); } // Serialize element text if (value.Text != null) { writer.WriteStartElement("text"); NarrativeSerializer.SerializeNarrative(value.Text, writer); writer.WriteEndElement(); } // Serialize element contained if (value.Contained != null && value.Contained.Count > 0) { writer.WriteStartArrayElement("contained"); foreach (var item in value.Contained) { writer.WriteStartArrayMember("contained"); FhirSerializer.SerializeResource(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element identifier if (value.Identifier != null && value.Identifier.Count > 0) { writer.WriteStartArrayElement("identifier"); foreach (var item in value.Identifier) { writer.WriteStartArrayMember("identifier"); IdentifierSerializer.SerializeIdentifier(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element status if (value.Status != null) { writer.WriteStartElement("status"); CodeSerializer.SerializeCode <Prescription.PrescriptionStatus>(value.Status, writer); writer.WriteEndElement(); } // Serialize element patient if (value.Patient != null) { writer.WriteStartElement("patient"); ResourceReferenceSerializer.SerializeResourceReference(value.Patient, writer); writer.WriteEndElement(); } // Serialize element prescriber if (value.Prescriber != null) { writer.WriteStartElement("prescriber"); ResourceReferenceSerializer.SerializeResourceReference(value.Prescriber, writer); writer.WriteEndElement(); } // Serialize element prescribed if (value.Prescribed != null) { writer.WriteStartElement("prescribed"); FhirDateTimeSerializer.SerializeFhirDateTime(value.Prescribed, writer); writer.WriteEndElement(); } // Serialize element dispense if (value.Dispense != null) { writer.WriteStartElement("dispense"); PrescriptionSerializer.SerializePrescriptionDispenseComponent(value.Dispense, writer); writer.WriteEndElement(); } // Serialize element medicine if (value.Medicine != null) { writer.WriteStartElement("medicine"); PrescriptionSerializer.SerializePrescriptionMedicineComponent(value.Medicine, writer); writer.WriteEndElement(); } // Serialize element administrationRequest if (value.AdministrationRequest != null) { writer.WriteStartElement("administrationRequest"); PrescriptionSerializer.SerializePrescriptionAdministrationRequestComponent(value.AdministrationRequest, writer); writer.WriteEndElement(); } // Serialize element reason if (value.Reason != null) { writer.WriteStartElement("reason"); CodeableConceptSerializer.SerializeCodeableConcept(value.Reason, writer); writer.WriteEndElement(); } writer.WriteEndComplexContent(); writer.WriteEndRootObject(); }
public static void SerializePrescriptionAdministrationRequestComponent(Prescription.PrescriptionAdministrationRequestComponent value, IFhirWriter writer) { writer.WriteStartComplexContent(); // Serialize element's localId attribute if (value.InternalId != null && !String.IsNullOrEmpty(value.InternalId.Contents)) { writer.WriteRefIdContents(value.InternalId.Contents); } // Serialize element extension if (value.Extension != null && value.Extension.Count > 0) { writer.WriteStartArrayElement("extension"); foreach (var item in value.Extension) { writer.WriteStartArrayMember("extension"); ExtensionSerializer.SerializeExtension(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element description if (value.Description != null) { writer.WriteStartElement("description"); FhirStringSerializer.SerializeFhirString(value.Description, writer); writer.WriteEndElement(); } // Serialize element totalPeriodicDose if (value.TotalPeriodicDose != null) { writer.WriteStartElement("totalPeriodicDose"); RatioSerializer.SerializeRatio(value.TotalPeriodicDose, writer); writer.WriteEndElement(); } // Serialize element start if (value.Start != null) { writer.WriteStartElement("start"); FhirDateTimeSerializer.SerializeFhirDateTime(value.Start, writer); writer.WriteEndElement(); } // Serialize element end if (value.End != null) { writer.WriteStartElement("end"); FhirDateTimeSerializer.SerializeFhirDateTime(value.End, writer); writer.WriteEndElement(); } // Serialize element duration if (value.Duration != null) { writer.WriteStartElement("duration"); QuantitySerializer.SerializeQuantity(value.Duration, writer); writer.WriteEndElement(); } // Serialize element numberOfAdministrations if (value.NumberOfAdministrations != null) { writer.WriteStartElement("numberOfAdministrations"); IntegerSerializer.SerializeInteger(value.NumberOfAdministrations, writer); writer.WriteEndElement(); } // Serialize element dosageInstruction if (value.DosageInstruction != null && value.DosageInstruction.Count > 0) { writer.WriteStartArrayElement("dosageInstruction"); foreach (var item in value.DosageInstruction) { writer.WriteStartArrayMember("dosageInstruction"); PrescriptionSerializer.SerializePrescriptionAdministrationRequestDosageInstructionComponent(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } writer.WriteEndComplexContent(); }