public static void SerializeDocumentInformation(DocumentInformation 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 id if (value.Id != null) { writer.WriteStartElement("id"); IdentifierSerializer.SerializeIdentifier(value.Id, writer); writer.WriteEndElement(); } // Serialize element versionId if (value.VersionId != null) { writer.WriteStartElement("versionId"); IdentifierSerializer.SerializeIdentifier(value.VersionId, writer); writer.WriteEndElement(); } // Serialize element created if (value.Created != null) { writer.WriteStartElement("created"); InstantSerializer.SerializeInstant(value.Created, writer); writer.WriteEndElement(); } // Serialize element class if (value.Class != null) { writer.WriteStartElement("class"); CodingSerializer.SerializeCoding(value.Class, writer); writer.WriteEndElement(); } // Serialize element type if (value.Type != null) { writer.WriteStartElement("type"); CodeableConceptSerializer.SerializeCodeableConcept(value.Type, writer); writer.WriteEndElement(); } // Serialize element title if (value.Title != null) { writer.WriteStartElement("title"); FhirStringSerializer.SerializeFhirString(value.Title, writer); writer.WriteEndElement(); } // Serialize element confidentiality if (value.Confidentiality != null) { writer.WriteStartElement("confidentiality"); CodingSerializer.SerializeCoding(value.Confidentiality, writer); writer.WriteEndElement(); } // Serialize element subject if (value.Subject != null) { writer.WriteStartElement("subject"); ResourceReferenceSerializer.SerializeResourceReference(value.Subject, writer); writer.WriteEndElement(); } // Serialize element author if (value.Author != null && value.Author.Count > 0) { writer.WriteStartArrayElement("author"); foreach (var item in value.Author) { writer.WriteStartArrayMember("author"); ResourceReferenceSerializer.SerializeResourceReference(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element attester if (value.Attester != null && value.Attester.Count > 0) { writer.WriteStartArrayElement("attester"); foreach (var item in value.Attester) { writer.WriteStartArrayMember("attester"); DocumentInformationSerializer.SerializeDocumentInformationAttesterComponent(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element custodian if (value.Custodian != null) { writer.WriteStartElement("custodian"); ResourceReferenceSerializer.SerializeResourceReference(value.Custodian, writer); writer.WriteEndElement(); } // Serialize element event if (value.Event != null) { writer.WriteStartElement("event"); DocumentInformationSerializer.SerializeDocumentInformationEventComponent(value.Event, writer); writer.WriteEndElement(); } // Serialize element encounter if (value.Encounter != null) { writer.WriteStartElement("encounter"); ResourceReferenceSerializer.SerializeResourceReference(value.Encounter, writer); writer.WriteEndElement(); } // Serialize element facilityType if (value.FacilityType != null) { writer.WriteStartElement("facilityType"); CodeableConceptSerializer.SerializeCodeableConcept(value.FacilityType, writer); writer.WriteEndElement(); } // Serialize element practiceSetting if (value.PracticeSetting != null) { writer.WriteStartElement("practiceSetting"); CodeableConceptSerializer.SerializeCodeableConcept(value.PracticeSetting, writer); writer.WriteEndElement(); } writer.WriteEndComplexContent(); }
public static void SerializeXdsEntry2(XdsEntry2 value, IFhirWriter writer) { writer.WriteStartRootObject("XdsEntry2"); 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 id if (value.Id != null) { writer.WriteStartElement("id"); IdentifierSerializer.SerializeIdentifier(value.Id, writer); writer.WriteEndElement(); } // Serialize element information if (value.Information != null) { writer.WriteStartElement("information"); DocumentInformationSerializer.SerializeDocumentInformation(value.Information, writer); writer.WriteEndElement(); } // Serialize element format if (value.Format != null) { writer.WriteStartElement("format"); CodingSerializer.SerializeCoding(value.Format, writer); writer.WriteEndElement(); } // Serialize element availability if (value.Availability != null) { writer.WriteStartElement("availability"); CodeSerializer.SerializeCode(value.Availability, writer); writer.WriteEndElement(); } // Serialize element folder if (value.Folder != null && value.Folder.Count > 0) { writer.WriteStartArrayElement("folder"); foreach (var item in value.Folder) { writer.WriteStartArrayMember("folder"); ResourceReferenceSerializer.SerializeResourceReference(item, writer); writer.WriteEndArrayMember(); } writer.WriteEndArrayElement(); } // Serialize element subject if (value.Subject != null) { writer.WriteStartElement("subject"); ResourceReferenceSerializer.SerializeResourceReference(value.Subject, writer); writer.WriteEndElement(); } // Serialize element content if (value.Content != null) { writer.WriteStartElement("content"); AttachmentSerializer.SerializeAttachment(value.Content, writer); writer.WriteEndElement(); } writer.WriteEndComplexContent(); writer.WriteEndRootObject(); }