SDMSDM Documentation
PluginsTransform Plugins

Transform Plugins

Modify and enhance your data before publishing

Transform Plugins

Transform plugins modify data as it flows through your pipeline. They allow you to consolidate classes, make corrections, and prepare data for Apple School Manager.

Available Transforms

TransformPurpose
Class ConsolidationMerge multiple classes into consolidated groups
Field MapperExtract and remap values between fields with regex and prefix/suffix
Manual EditsMake corrections to individual records

Data Format

All transform plugins work with OneRoster format internally:

  • Input: OneRoster data from source or previous transform
  • Output: Modified OneRoster data passed to next step
  • Final conversion: Only the Publish node converts to output format (ASM CSV or OneRoster CSV)

This means transforms are format-agnostic - they work the same regardless of your original data source (OneRoster API, CSV, MS SDS). The source plugin handles conversion to OneRoster format before transforms are applied.

How Transforms Work

Data Flow

Source Data → Transform → Modified Data → Next Step

Transforms:

  1. Receive data from the previous step (in OneRoster format)
  2. Apply modifications
  3. Pass modified OneRoster data forward

Chaining Transforms

In Advanced Mode, you can chain multiple transforms:

Source → Consolidation → Manual Edits → Publish

Each transform receives output from the previous step.

Non-Destructive

Transforms don't modify source data:

  • Original data remains unchanged
  • Modifications are applied in memory
  • You can regenerate from source anytime

When to Use Transforms

Use Consolidation When:

  • SIS creates separate class sections that should be combined
  • You want to group classes by subject or grade
  • ASM's 15-instructor limit requires overflow handling

Use Field Mapper When:

  • You need to add prefixes or suffixes to IDs (e.g., school codes)
  • Values need to be extracted from metadata into standard fields
  • Regex extraction is needed to pull substrings from field values
  • Bulk field transformations are required across many records

Use Manual Edits When:

  • Individual records need correction
  • Data quality issues can't be fixed at source
  • Quick fixes are needed before publishing

Skip Transforms When:

  • Data is already in correct format
  • No modifications needed
  • Source data is clean and accurate

Transform Configuration

Each transform has its own configuration:

Consolidation

  • Extraction method (metadata, field regex)
  • Target field for grouping
  • Naming rules for consolidated classes

Field Mapper

  • One or more field mappings per transform
  • Source type (entity field or metadata path)
  • Optional regex pattern and prefix/suffix
  • Live preview with extraction results

Manual Edits

  • Changeset of operations (add, update, delete)
  • Applied to preview data
  • Saved with flow for reuse

Best Practices

  1. Preview after each transform - Verify results before adding more
  2. Document your rules - Note why consolidation patterns were chosen
  3. Test with subset - Try transforms on small data first
  4. Keep it simple - Only transform what's necessary

On this page