The UDP Keymap is an essential concept of the Unizin Data Platform (UDP).
The UDP Keymap enables the UDP to associate learning data from learning tools into a single representation of teaching and learning. The UDP Keymap achieves this by associating the identities of the same phenomena across different tools (e.g., a course section or person) with a single, surrogate identifier called a UDP ID.
Why a keymap?
Students' learning experiences unfold over many learning tools. Each learning tool used in a course may deliver a part of a student's learning experience. From a student's perspective, however, learning tools are just part of an overall, singular set of learning experiences in a single course. As digital education increasingly relies on learning tools, data about learning becomes increasingly distributed across those learning tools. A key challenge, therefore, is to reconstruct learning experiences and learning environments from data sourced from a variety of learning tools.
In any given learning tool, data is identified by identifiers (or "keys") that are native to the tool. For example, a user or course section in a learning tool is identified by a User ID and Course section ID. These identifiers are not universal; they are meaningful only within the learning tool itself. The UDP calls such identifiers “native keys,” since they are native to a particular learning tool and not universal in nature. When learning tools push context and behavior data into the UDP, they use their native keys to identify the data.
When the UDP receives learning tool data and its native keys, it attempts to correlate that learning tool’s data with the data from other learning tools. For example, the UDP will attempt to pair SIS Course section data with their corresponding LMS Course section data. To pair the SIS and LMS data (in this example) means to have identified that the data from both systems are, in practice, “about” the same Course section.
If the UDP is successful in associating data from different learning tools that are about the same thing (e.g., a particular learner), then the UDP associates the native keys of those learning tools together. It manages those associations through the UDP’s keymap. More specifically, the UDP creates a new, surrogate key for a real phenomenon (e.g., a particular Course section) that the UDP calls a “UDP key.” A UDP key's relationship with learning tool native keys will be expressed in the keymap.
The purpose of the UDP keymap is to maintain the relationships between the surrogate keys generated by the UDP and their corresponding native keys. In practice, for example, a single surrogate key for a learner may be correlated to a dozen native keys from learning tools that represent the same learner.
Keymap and context data
The UDP keymap is generated and maintained during the context data ingestion process. Consequently, the UDP's keymap is instantiated in its context data stores.
In practice, the UDP is able to correlate native keys from different systems together because learning tools maintain the native keys they are given from other systems, typically as part of a data provisioning process. For example, it is standard for student, term, and course data in the LMS to be provisioned through a data feed from the SIS. An SIS data feed to the LMS will contain the native SIS keys for records (e.g., a course record) that the LMS holds on to. When the LMS reports its context data to the UDP it will include the native SIS identifiers that it was given, thereby enabling the UDP’s context data ingestion process to associate LMS and SIS data.
The UDP keymap is available to all institutions in the UDP Context store service.
Keymap and behavior data
While the UDP’s behavior data ingestion pipeline does not play a role in creating or maintaining the UDP keymap, it does use the UDP keymap as part of its “data enrichment” process.
When behavioral data is generated and emitted by learning tools, it almost always contains that tool’s native keys. For example, a behavioral event like “Susan submitted an assignment” will contain the learning tool’s native keys for the student (Susan), the object in relation to which an action is performed (the assignment), and perhaps something about the context (the Course in which the behavior took place). If a learning tool is launched from the LMS via the IMS Global LTI standard, the tool's behavior events may also have its corresponding LTI launch parameters.
Behavior data enrichment is an important UDP feature that is related to the UDP keymap. When the UDP ingests behavioral data in Caliper format, it extracts the native keys provided by the learning tool from the Caliper event. Using those native keys, the UDP will query the UDP keymap to find the corresponding UDP keys (if available) and include the UDP keys in the event data and as part of the Event store record. This enables any downstream consumer of the UDP Event store data to join behavioral data and context data using a single set of identifiers (UDP keys).