Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ name: ci
on: [push, pull_request]

env:
X_PYTHON_MIN_VERSION: "3.9"
X_PYTHON_MIN_VERSION: "3.10"
X_PYTHON_MAX_VERSION: "3.12"

jobs:
Expand Down Expand Up @@ -45,7 +45,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.12"]
python-version: ["3.10", "3.12"]
env:
COUCHDB_ADMIN_PASSWORD: "yo0Quai3"
# (2024-10-11, s-heppner)
Expand Down Expand Up @@ -208,7 +208,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9", "3.12"]
python-version: ["3.10", "3.12"]
defaults:
run:
working-directory: ./compliance_tool
Expand Down
2 changes: 1 addition & 1 deletion compliance_tool/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ classifiers = [
"Operating System :: OS Independent",
"Development Status :: 5 - Production/Stable"
]
requires-python = ">=3.9"
requires-python = ">=3.10"
dependencies = [
"pyecma376-2>=0.2.4",
"jsonschema>=4.21.1",
Expand Down
2 changes: 1 addition & 1 deletion sdk/.readthedocs.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ version: 2
build:
os: ubuntu-20.04
tools:
python: "3.9"
python: "3.10"

sphinx:
configuration: docs/source/conf.py
Expand Down
6 changes: 3 additions & 3 deletions sdk/basyx/aas/model/base.py
Original file line number Diff line number Diff line change
Expand Up @@ -548,7 +548,7 @@ class HasExtension(Namespace, metaclass=abc.ABCMeta):

<<abstract>>

**Constraint AASd-077:** The name of an Extension within HasExtensions needs to be unique.
**Constraint AASd-077:** The name of an Extension within HasExtensions shall be unique.

:ivar namespace_element_sets: List of :class:`NamespaceSets <basyx.aas.model.base.NamespaceSet>`
:ivar extension: A :class:`~.NamespaceSet` of :class:`Extensions <.Extension>` of the element.
Expand Down Expand Up @@ -1607,8 +1607,8 @@ class Qualifier(HasSemantics):
"""
A qualifier is a type-value pair that makes additional statements w.r.t. the value of the element.

**Constraint AASd-006:** If both, the value and the valueId of a Qualifier are present, the value needs
to be identical to the value of the referenced coded value in Qualifier/valueId.
**Constraint AASd-006:** If both, the value and the valueId of a Qualifier are present, the value shall
be identical to the value of the referenced coded value in Qualifier/valueId.

**Constraint AASd-020:** The value of Qualifier/value shall be consistent with the
data type as defined in Qualifier/valueType.
Expand Down
2 changes: 1 addition & 1 deletion sdk/basyx/aas/model/submodel.py
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ class Property(DataElement):
A property is a :class:`DataElement` that has a single value.

**Constraint AASd-007:** If both, the value and the valueId of a Qualifier are present,
the value needs to be identical to the value of the referenced coded value in Qualifier/valueId.
the value shall be identical to the value of the referenced coded value in Qualifier/valueId.

:ivar id_short: Identifying string of the element within its name space. (inherited from
:class:`~basyx.aas.model.base.Referable`)
Expand Down
10 changes: 5 additions & 5 deletions sdk/docs/source/constraints.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,14 +16,14 @@ an :class:`~basyx.aas.model.base.AASConstraintViolation` will be raised

.. |aasd002| replace:: ``idShort`` of ``Referable`` s shall only feature letters, digits, underscore (``_``); starting mandatory with a letter, i.e. ``[a-zA-Z][a-zA-Z0-9_]*``.
.. |aasd005| replace:: If ``AdministrativeInformation/version`` is not specified, ``AdministrativeInformation/revision`` shall also be unspecified. This means that a revision requires a version. If there is no version, there is no revision. Revision is optional.
.. |aasd006| replace:: If both, the ``value`` and the ``valueId`` of a ``Qualifier`` are present, the value needs to be identical to the value of the referenced coded value in ``Qualifier/valueId``.
.. |aasd007| replace:: If both the ``Property/value`` and the ``Property/valueId`` are present, the value of ``Property/value`` needs to be identical to the value of the referenced coded value in ``Property/valueId``.
.. |aasd006| replace:: If both, the ``value`` and the ``valueId`` of a ``Qualifier`` are present, the value shall be identical to the value of the referenced coded value in ``Qualifier/valueId``.
.. |aasd007| replace:: If both the ``Property/value`` and the ``Property/valueId`` are present, the value of ``Property/value`` shall be identical to the value of the referenced coded value in ``Property/valueId``.
.. |aasd012| replace:: if both the ``MultiLanguageProperty/value`` and the ``MultiLanguageProperty/valueId`` are present, the meaning must be the same for each string in a specific language, as specified in ``MultiLanguageProperty/valueId``.
.. |aasd014| replace:: Either the attribute ``globalAssetId`` or ``specificAssetId`` of an ``Entity`` must be set if ``Entity/entityType`` is set to ``SelfManagedEntity``. Otherwise, they do not exist.
.. |aasd020| replace:: The value of ``Qualifier/value`` shall be consistent with the data type as defined in ``Qualifier/valueType``.
.. |aasd021| replace:: Every qualifiable can only have one qualifier with the same ``Qualifier/type``.
.. |aasd021| replace:: Every qualifiable shall only have one qualifier with the same ``Qualifier/type``.
.. |aasd022| replace:: ``idShort`` of non-identifiable referables within the same name space shall be unique (case-sensitive).
.. |aasd077| replace:: The name of an extension (``Extension/name``) within ``HasExtensions`` needs to be unique.
.. |aasd077| replace:: The name of an extension (``Extension/name``) within ``HasExtensions`` shall be unique.
.. |aasd080| replace:: In case ``Key/type`` == ``GlobalReference`` ``idType`` shall not be any LocalKeyType (``IdShort, FragmentId``).
.. |aasd081| replace:: In case ``Key/type`` == ``AssetAdministrationShell`` ``Key/idType`` shall not be any LocalKeyType (``IdShort``, ``FragmentId``).
.. |aasd090| replace:: for data elements, ``category`` (inherited by ``Referable``) shall be one of the following values: CONSTANT, PARAMETER or VARIABLE. Default: VARIABLE
Expand All @@ -32,7 +32,7 @@ an :class:`~basyx.aas.model.base.AASConstraintViolation` will be raised
.. |aasd109| replace:: If ``SubmodelElementList/typeValueListElement`` is equal to ``Property`` or ``Range,`` ``SubmodelElementList/valueTypeListElement`` shall be set and all first level child elements in the ``SubmodelElementList`` shall have the value type as specified in ``SubmodelElementList/valueTypeListElement``.
.. |aasd114| replace:: If two first level child elements in a ``SubmodelElementList`` have a ``semanticId``, they shall be identical.
.. |aasd115| replace:: If a first level child element in a ``SubmodelElementList`` does not specify a ``semanticId``, the value is assumed to be identical to ``SubmodelElementList/semanticIdListElement``.
.. |aasd116| replace:: ``globalAssetId`` (case-insensitive) is a reserved key. If used as value for ``SpecificAssetId/name,`` ``SpecificAssetId/value`` shall be identical to ``AssetInformation/globalAssetId``.
.. |aasd116| replace:: ``globalAssetId`` (case-insensitive) is a reserved key for ``SpecificAssetId/name`` with the semantics as defined in ``:attr:`basyx.aas.model.aas.AssetInformation.global_asset_id``.
.. |aasd117| replace:: ``idShort`` of non-identifiable ``Referables`` not being a direct child of a ``SubmodelElementList`` shall be specified.
.. |aasd118| replace:: If a supplemental semantic ID (``HasSemantics/supplementalSemanticId``) is defined, there shall also be a main semantic ID (``HasSemantics/semanticId``).
.. |aasd119| replace:: If any ``Qualifier/kind`` value of a ``Qualifiable/qualifier`` is equal to ``TemplateQualifier`` and the qualified element inherits from ``HasKind``, the qualified element shall be of kind ``Template`` (``HasKind/kind = Template``).
Expand Down
2 changes: 1 addition & 1 deletion sdk/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ classifiers = [
"Operating System :: OS Independent",
"Development Status :: 5 - Production/Stable"
]
requires-python = ">=3.9"
requires-python = ">=3.10"
dependencies = [
"lxml>=6.0.2",
"python-dateutil>=2.8,<3",
Expand Down
2 changes: 1 addition & 1 deletion server/app/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ classifiers = [
"Operating System :: OS Independent",
"Development Status :: 5 - Production/Stable"
]
requires-python = ">=3.9"
requires-python = ">=3.10"
dependencies = [
"urllib3>=1.26,<3",
"Werkzeug>=3.0.3,<4",
Expand Down