/// <summary> /// Serialize to a JSON object /// </summary> public new void SerializeJson(Utf8JsonWriter writer, JsonSerializerOptions options, bool includeStartObject = true) { if (includeStartObject) { writer.WriteStartObject(); } ((fhirCsR4.Models.BackboneElement) this).SerializeJson(writer, options, false); if ((Encounter != null) && (Encounter.Count != 0)) { writer.WritePropertyName("encounter"); writer.WriteStartArray(); foreach (Reference valEncounter in Encounter) { valEncounter.SerializeJson(writer, options, true); } writer.WriteEndArray(); } if ((Event != null) && (Event.Count != 0)) { writer.WritePropertyName("event"); writer.WriteStartArray(); foreach (CodeableConcept valEvent in Event) { valEvent.SerializeJson(writer, options, true); } writer.WriteEndArray(); } if (Period != null) { writer.WritePropertyName("period"); Period.SerializeJson(writer, options); } if (FacilityType != null) { writer.WritePropertyName("facilityType"); FacilityType.SerializeJson(writer, options); } if (PracticeSetting != null) { writer.WritePropertyName("practiceSetting"); PracticeSetting.SerializeJson(writer, options); } if (SourcePatientInfo != null) { writer.WritePropertyName("sourcePatientInfo"); SourcePatientInfo.SerializeJson(writer, options); } if ((Related != null) && (Related.Count != 0)) { writer.WritePropertyName("related"); writer.WriteStartArray(); foreach (Reference valRelated in Related) { valRelated.SerializeJson(writer, options, true); } writer.WriteEndArray(); } if (includeStartObject) { writer.WriteEndObject(); } }