// Custom marshaller to add the resourceType property, as required by the specification
187243
func (resource *ValueSet) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ValueSet"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ValueSet), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
687967
func (resource *Group) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Group"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Group), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
330244
func (resource *Composition) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Composition"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Composition), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
592843
func (resource *ProcedureRequest) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ProcedureRequest"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ProcedureRequest), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
602821
func (r Resource) MarshalJSON() ([]byte, error) {
	if !r.IsValid() {
		return nil, fmt.Errorf("invalid resource %v", r)
	}

	return json.Marshal(r.String())
}
588461
func (resource *Schedule) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Schedule"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Schedule), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
793570
func (resource *CommunicationRequest) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "CommunicationRequest"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to CommunicationRequest), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
436113
func (resource *ConceptMap) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ConceptMap"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ConceptMap), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
1141682
func (resource *OrderResponse) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "OrderResponse"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to OrderResponse), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
787771
func (resource *OperationOutcome) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "OperationOutcome"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to OperationOutcome), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
1050672
func (resource *OperationDefinition) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "OperationDefinition"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to OperationDefinition), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
252123
func (resource *AllergyIntolerance) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "AllergyIntolerance"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to AllergyIntolerance), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
316940
func (resource *Conformance) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Conformance"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Conformance), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
475171
func (resource *ImagingObjectSelection) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "ImagingObjectSelection"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to ImagingObjectSelection), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
1247316
func (resource *Encounter) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "Encounter"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to Encounter), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
344788
func (resource *MedicationAdministration) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "MedicationAdministration"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to MedicationAdministration), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}
58118
func (resource *MedicationDispense) MarshalJSON() ([]byte, error) {
	resource.ResourceType = "MedicationDispense"
	// Dereferencing the pointer to avoid infinite recursion.
	// Passing in plain old x (a pointer to MedicationDispense), would cause this same
	// MarshallJSON function to be called again
	return json.Marshal(*resource)
}