server/app/interfaces/repository.py: Implement missing `/submodels` endpoints
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 three routes currently using self.not_implemented, then read the linked Submodel Repository Service OpenAPI operations and issue #439. Done means GET /submodels/$value and GET /submodels/$path return the specified representations, while PATCH /submodels/{submodelIdentifier} updates an existing submodel and returns the specified success response.
Written by the indexing model from the issue text.
Description
Current Situation
Currently, several server endpoints under /submodels are not implemented:
"/$value", methods=["GET"], endpoint=self.not_implemented
"/$path", methods=["GET"], endpoint=self.not_implemented
"/<base64url:submodel_id>", methods=["PATCH"], endpoint=self.not_implemented
According to the Submodel Repository Service OpenAPI Specification, the GET /submodels/$value endpoint should return all Submodels in value only representation.
[...]
responses:
'200':
description: Requested Submodels
content:
application/json:
schema:
$ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetSubmodelsValueResult'
[...]
The GET /submodels/$path endpoint should return all Submodels in their path notation.
[...]
responses:
'200':
description: Requested Submodels
content:
application/json:
schema:
$ref: 'https://api.swaggerhub.com/domains/Plattform_i40/Part2-API-Schemas/V3.0.1#/components/schemas/GetPathItemsResult'
[...]
The PATCH /submodels/{submodelIdentifier} endpoint should support the updating of existing submodels.
[...]
responses:
'204':
description: Submodel updated successfully
[...]
This issue specifies https://github.com/eclipse-basyx/basyx-python-sdk/issues/439.
Proposed Change
We should evaluate and, if feasible, implement the three missing GET /submodels/$value, GET /submodels/$path and PATCH /submodels/{submodelIdentifier} endpoints according to the specification.
- Dominant language
- Python
- Stars
- 102
- Forks
- 52
- Avg merge
- 20d 17h
- Merged PRs (30d)
- 1
Contributor 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
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
eclipse-basyx/basyx-python-sdk#634 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
All issues in eclipse-basyx/basyx-python-sdk
Similar issues
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
xinnan-tech/xiaozhi-fde-talk#263 ·
-
rules
Difficulty 1/5 Under an hour Newbie friendliness 90/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
huggingface/Repo2RLEnv#163 · 1 comment ·
-
Difficulty 1/5 Under an hour Newbie friendliness 95/100
huggingface/sentence-transformers#4074 ·
-
comp/dashboard invalid P3
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
NousResearch/hermes-agent#121143 ·