Skip to content

Make SubmodelDescriptor/id optional #316

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
1 task done
BirgitBoss opened this issue Sep 11, 2024 · 3 comments
Open
1 task done

Make SubmodelDescriptor/id optional #316

BirgitBoss opened this issue Sep 11, 2024 · 3 comments

Comments

@BirgitBoss
Copy link
Collaborator

What?

There are two valid ways to implement AAS registries:

  • AAS Registry including SubmodelDescriptors
  • AAS Registry containing AAS endpoint but no SubmodelDescriptors + separate Submodel Registry

In the first case the ID of the Submodel is not needed because it is implicitly contained in the endpoint. Many operators probably would also prefer to hide this (internal) Submodel/id.

How?

Make SubmodelDescriptors/id optional

  • add constraint for SubmodelRegistry that it is mandatory for it

Or

Make two SubmodelDescriptors classes, one for AAS registry and one for Submodel Registry

This change is backward compatible

  • I have signed the required Developer Certificate of Origin (DCO) already.
@sebbader-sap
Copy link
Contributor

sebbader-sap commented Jan 17, 2025

Many operators probably would also prefer to hide this (internal) Submodel/id.

Are you saying that there are use cases where the Submodel provider wants to expose the existence of a certain Submodel to the public / certain audience but hide its identifier? What would be the benefit of it?

@sebbader-sap
Copy link
Contributor

I think I understand the motivation now. In case only an AAS Registry is provided, and the
GetSubmodelDescriptorByIdThroughSuperpath API Operation is not exposed, the SubmodelDescriptors/id field would indeed not be necessary.

@sebbader-sap
Copy link
Contributor

This would however require that at least one new profile for the AAS Registry is created, with at max. a POST and GET on /shell-descriptors/{aasIdentifier}/submodel-descriptors. PUT or DELETE on individual SubmodelDescriptors would not be possible anymore.
In addition, we definitely need a corresponding constraint that regulates when SubmodelDescriptors/id is needed and when not, and an own "SubmodelDescriptors-with-optional-id" OpenAPI class...
It will add a lot of additional complexity, not sure yet if the added value is worth it.

@sebbader-sap sebbader-sap added this to the 3.x milestone Feb 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants