StructuredDataFlattener class
ETL family — class
Flattens structured JSON/XML into tabular rows (dictionaries) for ETL processing, and infers a tabular schema from flattened rows. Nested objects become dot-separated columns (address.city); arrays are preserved as JSON text so no data is lost; XML attributes become "@name" columns.
Members
| Member | Kind | Description |
|---|---|---|
List<Dictionary<string, object>> FlattenJson(string json, string rootPath = null, FlattenOptions options = null) | Method | Flattens a JSON document into rows. JSON text. Optional dot path to the array/object to flatten (e.g., "data.items"). Flattening options. |
List<Dictionary<string, object>> FlattenXml(string xml, string rowElement = null, FlattenOptions options = null) | Method | Flattens an XML document into rows. When is null, the most frequent child element of the root is used as the row element. |
List<ColumnDefinition> InferSchema(IEnumerable<IDictionary<string, object>> rows, string stringType = "VARCHAR") | Method | Infers a tabular schema from flattened rows. Numeric columns merge to FLOAT, mixed types fall back to STRING, and sparse/missing values mark the column nullable. |