Skip to content

linkml/linkml-tutorial-2024

Repository files navigation

linkml-tutorial-2024

This repository contains the source code for the LinkML tutorial for the 2024 Intelligent Systems for Molecular Biology Conference (ISMB 2024)

In this tutorial, we discuss best practices for data modeling; introduce LinkML as a modeling framework and tool suite; work together to set up a LinkML project from scratch; develop a model and validate it with test data; and auto-generate model documentation.

The slides that accompany this repository can be viewed at [https://linkml.io/linkml-tutorial-2024/LinkML_tutorial_for_ISMB 2024_ slides.pdf](https://linkml.io/linkml-tutorial-2024/LinkML_tutorial_for_ISMB 2024_ slides.pdf).

To follow along, please use the slides and the tags in this repo to see how we build up a linkml project from scratch using the LinkML Project Cookiecutter (https://gituhub.com/linkml/linkml-project-cookiecutter).

Step 0: Executing the LinkML Project Cookiecutter

At the end of Step 0, you will have a new LinkML project that is ready to be developed. Check out the tag step_0_basic_project_creation to see the project at this stage.

This step begins at slide 29.

Step 1: Explore some LinkML modeling elements.

The example schema generated here follows the use case introduced in the slides.

At the end of Step 1, you will have a LinkML schema that models the use case introduced in the slides. Check out the tag step_1_modeling to see the project at this stage.

This step begins at slide 48.

Step 2: Lint the schema

Understand how the LinkML linter works, how to customize it to ignore or enforce linting rules and fix the sample schema appropriately.

At the end of Step 2, you will have a LinkML schema that passes linting. Check out the tag step_2_linting to see the project at this stage.

This step begins at slide 70.

Step 3: Generate Documentation from the schema and deploy it to GitHub Pages.

At the end of Step 3, you will have a LinkML schema that has been documented and deployed to GitHub Pages.
Check out the tag step_3_documentation to see the project at this stage.

This step begins at slide 92.

Step 4: Generate a Python data model from the schema

At the end of Step 4, you will have a Python data model that has been tested. Check out the tag step_4_code_generation to see the project at this stage.

This step begins at slide 105.

Step 5: Validate example data

At the end of Step 5, you will have validated example data with the LinkML Validator. Check out the tag step_5_validation to see the project at this stage.

This step begins at slide 115.

The resulting datamodel, tutorial schema documentation, and schema diagrams can be viewed at: https://linkml.github.io/linkml-tutorial-2024

Credits

This project was made with linkml-project-cookiecutter.