Skip to content
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

[BUG] Reference/type is underspecified #389

Closed
arnoweiss opened this issue Mar 24, 2024 · 4 comments
Closed

[BUG] Reference/type is underspecified #389

arnoweiss opened this issue Mar 24, 2024 · 4 comments
Labels
accepted accepted in principle to be fixed documentation Improvements or additions to documentation
Milestone

Comments

@arnoweiss
Copy link

Describe the bug
It's unclear when the Reference/type should be set to "ModelReference". Options:

  • when the target is contained in the same Submodel (example: ReferenceElement/value pointing to a neighboring SubmodelElement)
  • when the target is contained in the same AAS (example: ReferenceElement/value pointing to a SubmodelElement in a Submodel that also belongs to the same AAS)
  • when the target is contained in the same Environment (example: Property/semanticId pointing to a local ConceptDescription)
  • when the target is contained in the same server (as defined in Part 2, i.e. AssetAdministrationShellRepository, SubmodelRepository)

Where
AAS Pt. 1, sec 5.3.10.2

Additional context
Ideally, this property would signify to a Client whether to resolve the first key of a Reference locally or look it up in a Registry (either a SubmodelRegistry or a semanic catalog).

@arnoweiss arnoweiss added the bug Something isn't working label Mar 24, 2024
@BirgitBoss
Copy link
Collaborator

For all attributes with type ModelReference<{element}> it is clearly defined that a ModelReference shall be used (see Annex D).

for semanticId there will be an even clearer recommendation to only use ExternalReference in V3.1 (see #376)
Similar for ValueId: #396

So your question is only open for SubmodelElement types ReferenceElement and RelationshipElement. Since there is no restriction in the specification all your examples are valid (and more, see below).

See also matching algorithms for SemanticId and References in chapter 4.4. There will be an update of these chapters in V3.1. See #347 and #350

The main question for dataspaces will be which kind of discovery services are available to find the referenced entities, whether via ExternalReference or ModelReference.

P.S. your list of possibilities is incomplete, the following is missing:

  • when the target is on any server (e.g. SubmodelRepository, Submodel, etc.)

P.P.S. There is exactly one „Environment“ class for all servers since it is not identifiable.

@BirgitBoss BirgitBoss added this to the V3.1 milestone Apr 20, 2024
@BirgitBoss BirgitBoss added the documentation Improvements or additions to documentation label Apr 20, 2024
@BirgitBoss
Copy link
Collaborator

I do not consider this to be a bug, remove tag „bug“

@BirgitBoss BirgitBoss added requires workstream approval strategic decision proposal needs to be prepared in TF spec team and removed bug Something isn't working labels Apr 20, 2024
@BirgitBoss
Copy link
Collaborator

BirgitBoss commented Oct 30, 2024

2024-10-30 TF Metamodel
Decision Proposal:

If there is enough best practices selected the requirements can be made more strict with R4.x

@BirgitBoss BirgitBoss added ready for approval TF proposes how to resolve the issue. Needs final approval my Workstream and removed requires workstream approval strategic decision proposal needs to be prepared in TF spec team labels Oct 30, 2024
@BirgitBoss BirgitBoss added accepted accepted in principle to be fixed and removed ready for approval TF proposes how to resolve the issue. Needs final approval my Workstream labels Nov 14, 2024
@BirgitBoss
Copy link
Collaborator

2024-11-14 Workstream AAS
Decision proposal accepted: #389 (comment)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
accepted accepted in principle to be fixed documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants