The UDP supports context datasets from any SIS, LMS, or Learning tool.
There are three major components to a complete context dataset with the UDP.
First, the context dataset's contents conform to the requirements of a particular loading schema.
Second, the context dataset's contents support the UDP keymap.
Third, all context datasets are accompanied by a manifest file to ensure dataset completeness and integrity.
At present, the UDP will expect that a dataset must include all historical data in the CSV files that it pushes into a UDP instance. The UDP cannot accept datasets that represent only the records that have been created, changed, or deleted in the interval since a prior dataset.
1. Loading schema
A UDP Loading schema is a specification that defines the data contents and data format of a context dataset.
UDP Loading schemas are maintained by Unizin.
There exists one LMS loading schema and one SIS loading schema. These loading schemas define the context data requirements for all LMS and SIS implementations (no matter what the underlying LMS/SIS product may be).
By contrast, Learning tool loading schemas tend to be bespoke to the tool. In some cases, there exist loading schemas for classes of learning tools, such as eReaders. Vendors work with Unizin to develop a UDP loading schema for their learning tool.
2. Keymap support
The UDP Keymap is an essential concept of the UDP.
Context datasets populate the UDP keymap with identifiers from its own system. However, context datasets may also provide "external" identifiers, or keys, that enables its data to be joined with that of another system.
For example, the SIS Loading schema's external keys are identifiers that enable its data to be joined with LMS data. Typically, the SIS "external keys" are identical to those it provides the LMS's own import process and that are used to provision the LMS with SIS-sourced data. The LMS "external keys" follow a similar rule: they are the identifiers that it typically passes on to Learning tools (usually in the context of an LTI launch).
All UDP Loading schema will require the inclusion of "external" keys.
3. Manifest file
A manifest file describes the complete contents of a context dataset. Its purpose is to ensure that a context dataset is complete and valid before importing in the UDP.
The manifest file is a YAML file that must contain a set of attributes. These attributes effectively describe which UDP Loading schema is supported and the full contents of the context dataset. The UDP's batch-ingest application will read a manifest file when staging an import to validate that a dataset is complete.