Skip to content

Latest commit

 

History

History
65 lines (49 loc) · 2.23 KB

File metadata and controls

65 lines (49 loc) · 2.23 KB

Temporary WoT TD Tooling

The aim of this repository is to simplify the current WoT TD tooling for generating the specification. WoT TD Tooling is a python project to automate the generation of

  1. WoT resources: SHACL Shapes, JSON Schema, JSON-LD context, and RDF
  2. Documentation: TD specification and ontology specifications

Here is an overview of the process:

This project leverages LinkML for modelling the Web of Things Thing Description information model.

Prerequisites

Quick Start

  1. Clone the repository and navigate to the project directory:
git clone https://github.com/w3c/wot-thing-description-toolchain-tmp.git
cd wot-thing-description-toolchain-tmp
  1. Prepare a clean environment
python -m venv .venv
. .venv/bin/activate
  1. Install project dependencies with poetry:
poetry install
  1. View all supported commands: python main.py -h

Usage

The main.py script supports various options:

main.py [-h] [-l] [-s]

options:
  -h, --help            show this help message and exit
  -l, --local-docs      Boolean for local documentation generation.
  -s, --serve-docs      Boolean for serving the generated documentation.

Examples

Generate resources using the default schema and configuration:

python main.py

Generate documentation locally and serve it: python main.py -l -s

Default Paths

  • LinkML schema: resources/schemas/thing_description.yaml
  • Generated WoT resources: resources/gens
  • Generated full LinkML schema: resources/gens/linkml

Contribution Guidelines

We welcome contributions! Please fork the repository, create a branch, and submit a pull request. For major changes, please open an issue first to discuss what you would like to change.