Skip to content

Commit

Permalink
Merge pull request #238 from rwth-iat/feature/http_api
Browse files Browse the repository at this point in the history
This implements the "Specification of the Asset 
Administration Shell Part 2 Application 
Programming Interfaces".
However, several features and routes are 
currently not supported:

1. Correlation ID: Not implemented because 
   it was deemed unnecessary for this server.
2. Extent Parameter 
   (`withBlobValue/withoutBlobValue`):
   Not implemented due to the lack of support 
   in JSON/XML serialization.
3. Route `/shells/{aasIdentifier}/asset-information/thumbnail`: 
   Not implemented because the specification 
   lacks clarity.
4. Serialization and Description Routes:
   - `/serialization`
   - `/description`
   These routes are not implemented at this time.
5. Value, Path, and PATCH Routes:
   All `/…/value$`, `/…/path$`, and 
   `PATCH` routes are currently not implemented.
6. Operation Invocation Routes: 
   The following routes are not implemented 
   because operation invocation is not yet 
   supported by the `basyx-python-sdk`:
   - `POST /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke`
   - `POST /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke/$value`
   - `POST /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async`
   - `POST /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/invoke-async/$value`
   - `GET /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-status/{handleId}`
   - `GET /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}`
   - `GET /submodels/{submodelIdentifier}/submodel-elements/{idShortPath}/operation-results/{handleId}/$value`
  • Loading branch information
s-heppner committed Aug 16, 2024
2 parents d31e4f8 + 4aa818c commit fef92d0
Show file tree
Hide file tree
Showing 8 changed files with 4,726 additions and 0 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
/.coverage
/htmlcov/
/docs/build/
/.hypothesis/

# customized config files
/test/test_config.ini
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ The BaSyx Python SDK requires the following Python packages to be installed for
* `python-dateutil` (BSD 3-clause License)
* `pyecma376-2` (Apache License v2.0)
* `urllib3` (MIT License)
* `Werkzeug` (BSD 3-clause License)

Optional production usage dependencies:
* For using the Compliance Tool to validate JSON files against the JSON Schema: `jsonschema` and its
Expand Down
1,151 changes: 1,151 additions & 0 deletions basyx/aas/adapter/http.py

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,7 @@ python-dateutil>=2.8,<3.0
types-python-dateutil
pyecma376-2>=0.2.4
urllib3>=1.26,<2.0
Werkzeug>=3.0.3,<4
schemathesis~=3.7
hypothesis~=6.13
lxml-stubs~=0.5.1
1 change: 1 addition & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,5 +44,6 @@
'lxml>=4.2,<5',
'urllib3>=1.26,<2.0',
'pyecma376-2>=0.2.4',
'Werkzeug>=3.0.3,<4'
]
)
Loading

0 comments on commit fef92d0

Please sign in to comment.