public DynamicValidationSchema(ShapedDatasetExecutionContext context) { var schema = (context.DatasetQuery as DynamicDatasetQuery).Schema; var fields = schema.Fields.Select(f => f.ToSchemaField()); Shape = Shape.Dynamic; Fields = fields.ToArray(); }
public static ValidationSchema For(ShapedDatasetExecutionContext context) { switch (context.Shape) { case Shape.Concept: return(ConceptValidationSchema.Schema); case Shape.Dynamic: return(new DynamicValidationSchema(context)); case Shape.Observation: return(ObservationValidationSchema.Schema); case Shape.Encounter: return(EncounterValidationSchema.Schema); case Shape.Demographic: return(DemographicValidationSchema.Schema); case Shape.Condition: return(ConditionValidationSchema.Schema); case Shape.Procedure: return(ProcedureValidationSchema.Schema); case Shape.Immunization: return(ImmunizationValidationSchema.Schema); case Shape.Allergy: return(AllergyValidationSchema.Schema); case Shape.MedicationRequest: return(MedicationRequestValidationSchema.Schema); case Shape.MedicationAdministration: return(MedicationAdministrationValidationSchema.Schema); default: throw new ArgumentException($"{context.Shape} is not implemented in ValidationSchema.For"); } }