server/app/interfaces/repository.py: Implement missing `/submodels/{submodelIdentifier}` endpoints
Maintainers usually reply within 4 days
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 55/100
Research direction
Start in server/app/interfaces/repository.py at the four routes currently using self.not_implemented, and compare their behavior with the linked Submodel Repository Service OpenAPI operations and issue #439. Done means implementing the metadata and value PATCH operations plus the value and path GET operations with the specified responses.
Written by the indexing model from the issue text.
Description
Current Situation
Currently, several server endpoints under /submodels/{submodelIdentifier} are not implemented:
"/$metadata", methods=["PATCH"], endpoint=self.not_implemented
"/$value", methods=["GET"], endpoint=self.not_implemented
"/$value", methods=["PATCH"], endpoint=self.not_implemented
"/$path", methods=["GET"], endpoint=self.not_implemented
According to the Submodel Repository Service OpenAPI Specification, the PATCH /submodels/{submodelIdentifier}/$metadata endpoint should update the metadata attributes of an existing Submodel.
[...]
responses:
'204':
description: Submodel updated successfully
[...]
The GET /submodels/{submodelIdentifier}/$value endpoint should return the specific Submodel in its value only representation.
[...]
responses:
'200':
description: Requested Submodel
content:
application/json:
schema:
$ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/SubmodelValue'
[...]
The PATCH /submodels/{submodelIdentifier}/$value endpoint should support the updating of the values of an existing Submodel.
[...]
responses:
'204':
description: Submodel updated successfully
[...]
The GET /submodels/{submodelIdentifier}/$path endpoint should return a specific Submodel in path notation.
[...]
responses:
'200':
description: Requested Submodel
content:
application/json:
schema:
type: array
items:
$ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/PathItem'
[...]
This issue specifies https://github.com/eclipse-basyx/basyx-python-sdk/issues/439.
Proposed Change
We should evaluate and, if feasible, implement the four missing PATCH /submodels/{submodelIdentifier}/$metadata, GET /submodels/{submodelIdentifier}/$value, PATCH /submodels/{submodelIdentifier}/$value and GET /submodels/{submodelIdentifier}/$path endpoints according to the specification.
- Dominant language
- Python
- Stars
- 104
- Forks
- 56
- Avg merge
- 12d 13h
- Merged PRs (30d)
- 5
Getting set up
- No Dockerfile or Docker Compose file
- No pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from eclipse-basyx/basyx-python-sdk
-
README CI badge is brokenPossibly taken A pull request linked to this issue is open or already merged. Openbug documentation
Difficulty 1/5 Under an hour Newbie friendliness 85/100
eclipse-basyx/basyx-python-sdk#656 ·
Maintainers usually reply within 4 days
-
bug server Specification
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
eclipse-basyx/basyx-python-sdk#655 ·
Maintainers usually reply within 4 days
-
bug sdk
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
eclipse-basyx/basyx-python-sdk#634 · 3 comments ·
Maintainers usually reply within 4 days
-
enhancement server
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
eclipse-basyx/basyx-python-sdk#632 ·
Maintainers usually reply within 4 days
-
bug high priority
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
eclipse-basyx/basyx-python-sdk#631 ·
Maintainers usually reply within 4 days
All issues in eclipse-basyx/basyx-python-sdk
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 1/5 Under an hour Newbie friendliness 62/100
-
Difficulty 1/5 Under an hour Newbie friendliness 70/100
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
topoteretes/cognee#5773 ·
Maintainers usually reply within 1 day
-
MiKTeX: a failed build reports no errors because texify --quiet switches the log to file:line: styleOpen
Difficulty 2/5 1-3 hours Newbie friendliness 74/100
SublimeText/LaTeXTools#1718 ·