Derived models#
Asserted vs Derived Models/Schemas#
LinkML distinguishes between the asserted data model and the derived data model
For example, if a class inherits a slot from a parent class, the schema author does not need to redundantly assert this, as this can be inferred.
Examples of things that can be derived:
new slot definitions by composing:
slot_usage
information from parent/ancestor slots
information from parent/ancestor classes
deriving patterns from structured patterns
Materializing a derived model#
Use gen-linkml to create a derived schema saved as YAML
This can be useful for feeding to basic tools that do not need to implement logic for inheritance
Programmatically inferring models#
Python developers can use SchemaView, see developers guide
Javascript developers can use the javascript equivalent in linkml-runtime.js
Specification#
Part 4 of LinkML specification