{"id":40151250,"url":"https://github.com/eclipse-esmf/esmf-sdk-py-aspect-model-loader","last_synced_at":"2026-01-20T17:15:23.703Z","repository":{"id":144585213,"uuid":"513982670","full_name":"eclipse-esmf/esmf-sdk-py-aspect-model-loader","owner":"eclipse-esmf","description":"Load Aspect Models in Python","archived":false,"fork":false,"pushed_at":"2025-12-05T10:38:50.000Z","size":630,"stargazers_count":0,"open_issues_count":1,"forks_count":6,"subscribers_count":5,"default_branch":"main","last_synced_at":"2026-01-19T19:39:51.891Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://pypi.org/project/esmf-aspect-model-loader/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eclipse-esmf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"AUTHORS.md","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":"NOTICE.md","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-07-14T17:00:36.000Z","updated_at":"2025-12-05T10:38:55.000Z","dependencies_parsed_at":null,"dependency_job_id":"187ea3f4-34d0-437b-8054-33ddd008ea35","html_url":"https://github.com/eclipse-esmf/esmf-sdk-py-aspect-model-loader","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/eclipse-esmf/esmf-sdk-py-aspect-model-loader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-esmf%2Fesmf-sdk-py-aspect-model-loader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-esmf%2Fesmf-sdk-py-aspect-model-loader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-esmf%2Fesmf-sdk-py-aspect-model-loader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-esmf%2Fesmf-sdk-py-aspect-model-loader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eclipse-esmf","download_url":"https://codeload.github.com/eclipse-esmf/esmf-sdk-py-aspect-model-loader/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-esmf%2Fesmf-sdk-py-aspect-model-loader/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28607625,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-20T16:10:39.856Z","status":"ssl_error","status_checked_at":"2026-01-20T16:10:39.493Z","response_time":117,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-01-19T15:07:45.053Z","updated_at":"2026-01-20T17:15:23.694Z","avatar_url":"https://github.com/eclipse-esmf.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ESMF SDK Python Aspect Model Loader\n\n## Table of Contents\n\n- [Introduction](#introduction)\n- [Getting help](#getting-help)\n- [Getting Started](#getting-started)\n- [SDK Structure](#sdk-structure)\n- [Python Core Components](#python-core-components)\n    - [esmf-aspect-meta-model-python](#esmf-aspect-meta-model-python)\n- [Version Handling](#version-handling)\n    - [SAMM Versioning](#samm-versioning)\n    - [API Versioning](#api-versioning)\n- [About](#about)\n    - [Building](#building)\n    - [Contributors](#contributors)\n    - [Contribution Guidelines](#contribution-guidelines)\n    - [3rd Party Licenses](#3rd-party-licenses)\n    - [Documentation](#documentation)\n    - [License](#license)\n\n## Introduction\n\nThe ESMF SDK Python Aspect Model Loader contains artifacts and resources for all parties that intent to use, extend or\nintegrate with the Semantic Aspect Meta Model, e.g., Solution Developers, Domain Experts or OEMs.\n\nAt its core are components which help to work with the Semantic Aspect Meta Model (SAMM).\n\nThis repository contains a detailed developer documentation written in AsciiDoc. The source files (AsciiDoc) are \n[python-sdk-guide](documentation/python-sdk-guide) and are built using [Antora](https://antora.org/) \nwhich generates the documentation as HTML files.\n\n## Getting help\n\nAre you having trouble with ESMF SDK Python Aspect Model Loader? We want to help!\n\n* Check the [developer documentation](https://eclipse-esmf.github.io)\n* Check the SAMM [specification](https://eclipse-esmf.github.io/samm-specification/snapshot/index.html)\n* Having issues with the ESMF SDK Python Aspect Model Loader? Open a [GitHub issue](https://github.com/eclipse-esmf/esmf-sdk-py-aspect-model-loader/issues).\n\n## Getting Started\n\nThis document provides an overall overview of the SDK and the concepts applied throughout it. Detailed documentation and\nconcepts for each component can be found in the respective subfolders or sub-repositories.\n\n## SDK Structure\n\nTo ease navigation through the SDK and its components, the following structure is employed:\n\n```\nesmf-sdk-py-aspect-model-loader\n │\n ├─── core                                      # e.g. meta model implementation etc.\n │     ├─── esmf-aspect-meta-model-python\n │     ├─── ...\n```\n\n## Python Core Components\n\nThe Python core components are those to be consumed by developers that aim to build applications or tools dealing with\nSAMM.\n\n### esmf-aspect-meta-model-python\n\nContains the Python implementation of the SAMM.\n\nAn aspect meta model can be primarily used dynamically instantiate an Aspect Model. This is done by tooling and\napplications that don't have any a-prior knowledge except for the aspect model file/URN and also don't or can't use\ngenerated source code artifacts. Any form of source code generator will use the meta model this way.\n\n## Version Handling\n\nThe aspect meta model loader work with the SAMM versions specified in the [download_samm_release.py](core/esmf-aspect-meta-model-python/esmf_aspect_meta_model_python//samm_aspect_meta_model/download_samm_release.py). \nThis version will be used for deployment.\n\nAs SAMM evolves over time, the Aspect Meta Model Loader should also adapt and evolve accordingly.\nDue to this fact it is important to understand the versioning concept that is applied to the SAMM,\nAPIs and SDK components that are derived from them.\n\nIn case of a prerelease there will be a postfix added and it will be released under Github.\nThe way to access the artifact is described\nin [Github-Installing a package](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-apache-maven-registry#installing-a-package)\n\n### SAMM Versioning\n\nFor the SAMM, semantic versioning (`major.minor.micro`) is applied with the following rules:\n\n* A breaking change increases the `major` part\n* Backwards compatible new features increase the `minor` part\n* Changes to existing features or bug fixes increase the `micro` part\n\nA new SAMM version always comprises new releases of the aspect meta model loader that depend on the SAMM, \nand new releases of aspect meta model loader may be crafted that are built on the existing SAMM version.\n\n## About\n\n### Building\n\nThe Python SDK is built using [python-poetry](https://python-poetry.org/). Each SDK component is a poetry package. In\norder to e.g. build a package or run the tests for a package navigate to the packages root directory.\n\n*install dependencies*\n\n`poetry install`\n\n*build package*\n\n`poetry build`\n\n*run all checks: tests and code style*\n\n`poetry run tox`\n\n*run tests*\n\n`poetry run tox -e py310`\n\n*run code style*\n\n`poetry run tox -e pep8`\n\n### Contributors\n\n... and you? Feel free to add [yourself](AUTHORS.md) to this list when issuing your PR!\n\n### Contribution Guidelines\n\nWe highly appreciate any [contributions](CONTRIBUTING.md)! Feel free to issue a PR at any time.\n\n### 3rd Party Licenses\n\nThe following 3rd party libraries are used within the SDK. Further dependencies should only be included when strictly\nnecessary. Especially for consumer facing components dependencies should be kept at an absolute minimum to avoid\nintroducing too many transitive dependencies downstream.\n\n| Name                  | License                              | Type                   |\n|-----------------------|--------------------------------------|------------------------|\n| python-poetry/poetry  | MIT License (MIT)                    | Dependency Management  |\n| rdflib                | [LICENSE AGREEMENT FOR RDFLIB](https://github.com/RDFLib/rdflib/blob/master/LICENSE)     | Dependency             |\n| requests              | Apache Software License (Apache 2.0) | Dependency             |\n| tox                   | MIT License (MIT)                    | Dependency             |\n| zipfile37             | Python Software Foundation License   | Dependency             |\n| psf/black             | MIT License (MIT)                    | Development dependency |\n| nedbat/coverage       | Apache Software License (Apache 2.0) | Development dependency |\n| isort                 | MIT License (MIT)                    | Development dependency |\n| python/mypy           | MIT License (MIT)                    | Development dependency |\n| pytest                | MIT License (MIT)                    | Development dependency |\n| pytest-dev/pytest-cov | MIT License (MIT)                    | Development dependency |\n| pytest-sugar          | BSD License (BSD)                    | Development dependency |\n| types-requests        | Apache Software License (Apache 2.0) | Development dependency |\n\n### Documentation\n\nFurther documentation and howto's are provided in the\nofficial [Python SDK User Documentation](https://eclipse-esmf.github.io/python-sdk-guide/index.html)\n\n### License\n\nSPDX-License-Identifier: MPL-2.0\n\nThis program and the accompanying materials are made available under the terms of the\n[Mozilla Public License, v. 2.0](LICENSE).\n\nThe [Notice file](NOTICE.md) details contained third party materials.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-esmf%2Fesmf-sdk-py-aspect-model-loader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feclipse-esmf%2Fesmf-sdk-py-aspect-model-loader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-esmf%2Fesmf-sdk-py-aspect-model-loader/lists"}