Skip to content

Generator for LinkML #560

Description

@kenwenzel

Summary
I propose adding a new generator to aas-core-codegen to output the Asset Administration Shell (AAS) meta-model as a LinkML schema (in YAML format). This new output target would significantly enhance the interoperability and semantic capabilities of the AAS meta-model by connecting it to the extensive LinkML ecosystem.

Motivation
The core philosophy of aas-core-codegen is to use a single, formalized meta-model (written in simplified Python) as the single source of truth to generate various artifacts (SDKs, JSON Schema, XSD). This ensures consistency across all implementations.

LinkML is a powerful, language-neutral framework for modeling data schemas and is widely used for integrating data across different formats, especially in contexts requiring robust semantic handling and code generation.

By generating a LinkML representation of the AAS meta-model, we can immediately leverage the existing, mature LinkML tooling to produce a wealth of additional artifacts without requiring new, complex generators to be written directly in aas-core-codegen.

Proposal
Implement a new generator target, e.g., linkml, within aas-core-codegen.

This generator will map the classes, properties, types, and constraints of the AAS meta model to the equivalent LinkML schema constructs (Classes, Slots, Types, Enums).

The output should be a single, validated LinkML YAML file representing the full AAS meta-model.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions