LinkML Map Data Model
Datamodel for LinkML schema mappings and transformations.
A mapper generates instances of a target data model from instances of a source data model. This transformation process is guided by a TransformationSpecification.
The specification is independent of any one method for transforming data. It allows different approaches, including:
- direct implementation, transforming python or json objects
- translation of the specification into SQL commands, to operate on relations
- translation of the specification into SPARQL CONSTRUCTs, to operate on triples
- translation into another specification language, such as R2RML
URI: https://w3id.org/linkml/transformer
Name: linkml-map
Classes
| Class | Description |
|---|---|
| Agent | An entity that can create or contribute to a digital object, such as an autho... |
| Organization | An organization or institution that contributes to a mapping specification |
| Person | An individual person who contributes to a mapping specification |
| Software | A software tool or system used in creating mappings |
| AliasedClass | alias-class key value pairs for classes |
| Any | |
| CopyDirective | Instructs a Schema Mapper in how to map to a target schema |
| Inverse | Used for back references in mapping to relational model |
| KeyVal | |
| Offset | Configuration for calculating a value by applying an offset to a baseline val... |
| SchemaReference | A reference to a LinkML schema, with optional version and locator metadata |
| SpecificationComponent | |
| ElementDerivation | An abstract grouping for classes that provide a specification of how to deriv... |
| ClassDerivation | A specification of how to derive a target class from a source class |
| EnumDerivation | A specification of how to derive the value of a target enum from a source enu... |
| ObjectDerivation | Deprecated |
| PermissibleValueDerivation | A specification of how to derive the value of a PV from a source enum |
| PrefixDerivation | |
| SlotDerivation | A specification of how to derive the value of a target slot from a source slo... |
| TransformationSpecification | A collection of mappings between source and target classes |
| StringificationConfiguration | |
| TransformationOperation | |
| AggregationOperation | |
| GroupingOperation | |
| PivotOperation | |
| UnitConversionConfiguration |
Slots
| Slot | Description |
|---|---|
| add | |
| affiliation | Institutional affiliation of the person |
| aggregation_operation | |
| alias | name of the class to be aliased |
| author | A list of authors of this transformation specification |
| cast_collection_as | |
| class_derivations | Instructions on how to derive a set of classes in the target schema from clas... |
| class_name | |
| class_named | local alias for the class |
| comments | A list of comments about this component |
| content_url | Reference to the actual content of the mapping specification |
| copy_all | Copy all sub-elements of the Element being derived |
| copy_directives | |
| creator | A list of creators of this transformation specification |
| delimiter | |
| derived_from | Deprecated |
| description | description of the specification component |
| dictionary_key | |
| direction | |
| documentation | URL or reference to documentation for the mapping specification |
| element_name | |
| enum_derivations | Instructions on how to derive a set of enums in the target schema |
| exclude | Remove certain sub-elements from the list of sub-elements to be copied |
| exclude_all | Do not copy any of the sub-elements of the Element being derived |
| expr | An expression to be evaluated on the source object to derive the target slot |
| expression_mappings | A mapping table where the values are expressions evaluated against source bin... |
| expression_to_expression_mappings | A mapping table in which the keys and values are expressions |
| expression_to_value_mappings | A mapping table in which the keys are boolean expressions and the values are ... |
| hide | True if this is suppressed |
| id | Unique identifier for this transformation specification |
| id_slots | Slots that identify the entity (not pivoted) |
| implements | A reference to a specification that this component implements |
| include | Add certain sub-elements to the list of sub-elements to be copied |
| invalid_value_handling | |
| inverse_of | Used to specify a class-slot tuple that is the inverse of the derived/target ... |
| is_a | |
| join_on | shorthand for source_key and lookup_key when both share the same column name |
| joins | Additional classes to be joined to derive instances of the target class |
| key | |
| license | license under which this transformation specification is published |
| lookup_key | column in the secondary (joined) table used as the join key |
| mapping_method | The method used to create this mapping, e |
| mirror_source | |
| mixins | |
| name | The name or identifier of the schema |
| none_if_non_numeric | If true, return None when the source value cannot be coerced to a numeric typ... |
| null_handling | |
| object_derivations | Deprecated |
| offset | Configuration for calculating a value by applying an offset to a baseline val... |
| offset_field | Name of the field in the source object that contains the offset amount |
| offset_reverse | If true, subtract the offset from the baseline (baseline - offset) |
| offset_value | Multiplier applied to the offset field value |
| operator | |
| orcid | ORCID identifier for the person |
| over_slots | |
| overrides | overrides source schema slots |
| permissible_value_derivations | Instructions on how to derive a set of PVs in the target schema |
| pivot_operation | Configuration for pivot (unmelt) operations at class level |
| populated_from | Source class to derive this target class from |
| prefixes | maps prefixes to URL expansions |
| publication_date | date of publication of this transformation specification |
| range | |
| repository_url | URL to a code repository |
| reversed | |
| reviewer | A list of reviewers of this transformation specification |
| ror_id | ROR (Research Organization Registry) identifier |
| schema_uri | The URI/IRI identifier of the schema (matches the schema's id) |
| slot_derivations | Instructions on how to derive a set of top level slots in the target schema |
| slot_name | |
| slot_name_template | Template for generating target slot names |
| source_file | Optional file path or URL from which the schema can be loaded |
| source_key | column in the primary (populated_from) table used as the join key |
| source_magnitude_slot | |
| source_schema | Reference to the schema that describes the source (input) objects |
| source_schema_patches | Schema patches to apply to the source schema before transformation |
| source_slots | For MELT, the list of wide-format slots to melt |
| source_unit | |
| source_unit_scheme | |
| source_unit_slot | |
| sources | Deprecated |
| stringification | |
| syntax | |
| target_definition | LinkML class definition object for this slot |
| target_magnitude_slot | |
| target_schema | Reference to the schema that describes the target (output) objects |
| target_unit | |
| target_unit_scheme | |
| target_unit_slot | |
| title | human readable title for this transformation specification |
| type | Type of the agent |
| type_designator | |
| unit_conversion | |
| unit_slot | Optional slot containing unit information for {variable}_{unit} naming |
| unmelt_to_class | In an unmelt operation, attributes (which are values in the long/melted/EAV r... |
| unmelt_to_slots | |
| url | URL or web address of the organization |
| value | A constant value to assign to the target slot |
| value_mappings | A mapping table that is applied directly to mappings, in order of precedence |
| value_slot | Slot to use for the value column in the melted/long representation |
| variable_slot | Slot to use for the variable column in the melted/long representation |
| version | version of this transformation specification |
Enumerations
| Enumeration | Description |
|---|---|
| AggregationType | |
| CollectionType | |
| InvalidValueHandlingStrategy | |
| PivotDirectionType | |
| SerializationSyntaxType |
Types
| Type | Description |
|---|---|
| Boolean | A binary (true or false) value |
| ClassReference | |
| Curie | a compact URI |
| Date | a date (year, month and day) in an idealized calendar |
| DateOrDatetime | Either a date or a datetime |
| Datetime | The combination of a date and time |
| Decimal | A real number with arbitrary precision that conforms to the xsd:decimal speci... |
| Double | A real number that conforms to the xsd:double specification |
| EnumReference | |
| Float | A real number that conforms to the xsd:float specification |
| Integer | An integer |
| Jsonpath | A string encoding a JSON Path |
| Jsonpointer | A string encoding a JSON Pointer |
| Ncname | Prefix part of CURIE |
| Nodeidentifier | A URI, CURIE or BNODE that represents a node in a model |
| Objectidentifier | A URI or CURIE that represents an object in the model |
| SlotReference | |
| Sparqlpath | A string encoding a SPARQL Property Path |
| String | A character string |
| Time | A time object represents a (local) time of day, independent of any particular... |
| Uri | a complete URI |
| Uriorcurie | a URI or a CURIE |
Subsets
| Subset | Description |
|---|---|