Skip to content

Definiton of external references #465

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

Merged
merged 14 commits into from
Jun 22, 2021
Merged

Definiton of external references #465

merged 14 commits into from
Jun 22, 2021

Conversation

DerBaertige
Copy link
Contributor

@DerBaertige DerBaertige commented Jan 25, 2021

Description

OSI currently offers no options for an internal data management of the source of an object. Therefore an additional identifier is proposed to reference to external standards or external sources like models or physical sensors. For an exchange and a traceability, especially in the post processing of tests, it is important to identify the source of an object.

Currently, there is only a numeric identifier to describe the different object within OSI. As there should be an interoperability within other standards, especially the OpenX-Standards, but also third party simulations, an additional and more generic reference identifier is needed.

As the identification in different standards are more complex than only using a numeric id, a representation based on a list of strings is chosen. The background to this is the exemplary description of a Lane within other standards. OpenDRIVE 1.6 for example describes the outcome for an OSI-Lane bases on three different values and types:

  • RoadId is defined as String
  • S-Value of LaneSection is defined as Double
  • LaneId is defined as Integer

Check the checklist

  • My code and comments follow the style guidelines and contributors guidelines of this project.
  • I have performed a self-review of my own code.
  • I have made corresponding changes to the documentation.
  • My changes generate no new warnings.
  • I have added tests that prove my fix is effective or that my feature works.
  • New and existing unit tests / travis ci pass locally with my changes.

@DerBaertige DerBaertige added FeatureRequest Proposals which enhance the interface or add additional features. Harmonisation The Group in the ASAM development project working on harmonisation with other standards. labels Jan 25, 2021
@DerBaertige
Copy link
Contributor Author

The outcome of the Harmonisierungs Meeting (11.03.2021) was that an optional URI-reference to the origin source schould be added, as not alway the source (like the map_reference in GroundTruth) is known or defined within OSI.

In addition, the usage of the ExternalReference in the different messages has be defined as repeated value, as one object/segment can be derived from multible object and also multible sources.

@DerBaertige
Copy link
Contributor Author

Outcome from the Harmonisierungs-Meeting (25.03.2021):

  • The OpenDRIVE 1.6 Center-Lane reference can be dropped from the exemplary description, as it cannot become an OSI lane.
  • Follow-up discussion with @thempen: For OpenDRIVE 1.6 a reference to a potential junction is not necessary, as the OpenDRIVE road description itself stores its own junction. Storing this data leads to unnecessary and derivable redundancy, since the id of t_road must always be part of the reference description.

@kmeids
Copy link

kmeids commented Apr 15, 2021

@DerBaertige, @thempen are there still any changes to be done or could this be set to readyForCCB ?

@DerBaertige
Copy link
Contributor Author

@kmeids I am working on it and there are some changes the next days. After this and a final discussion in the Harmonization meeting, we can set it to ready for CCB.

@DerBaertige DerBaertige added the ReadyForCCBReview Indicates that this MR is ready for a final review and merge by the CCB. label Apr 22, 2021
@kmeids
Copy link

kmeids commented Apr 28, 2021

Output CCB 28.04.2021:

  1. Check review comments.

@kmeids kmeids removed the ReadyForCCBReview Indicates that this MR is ready for a final review and merge by the CCB. label Apr 28, 2021
osi_object.proto Outdated
@@ -359,6 +392,29 @@ message MovingObject
//
optional MovingObjectClassification moving_object_classification = 9;

// External Reference to the MovingObject Source
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ßWe should point out, that this is not mandatory, but optional. Also at the lother places, what do you think

// The URI should be follow the syntax according to
// \link https://tools.ietf.org/html/rfc3986 RFC 3986\endlink.
//
optional string reference = 1;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Include URI as a suggestion instead of a must, considering that it can also be a model-reference.
Take a look at the map, and model references.
Possibly to adapt this definition also to model and map references.

//
// Can be used to describe the original source, e.g. OpenDRIVE 1.6
//
optional string type = 2;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Insert list of predefined types (like those for OpenX) and general rules/guidance for user-defined standards or objects.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Output CCB 12.05.2021:

  1. Remove the version from the comment description, name should be enough (OpenDRIVE instead of OpenDrive 1.6)
  2. Use the domain name notation, e.g. net.asam.opendrive instead of OpenDRIVE.
  3. Indicate that the type field should be lower case.

// E.g. referencing a unique lane in OpenDRIVE
// (RoadId --> String, S-Value of LaneSection --> Double, LaneId --> Int)
//
repeated string identifier = 3;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add a note maybe:
More details on how identifiers are set to be used for referencing external objects are given in places where the ExternalIdentifier message is used.

@HendrikAmelunxen HendrikAmelunxen added the ReadyForCCBReview Indicates that this MR is ready for a final review and merge by the CCB. label May 11, 2021
@kmeids kmeids added Documentation Everything which impacts the quality of the documentation and guidelines. and removed ReadyForCCBReview Indicates that this MR is ready for a final review and merge by the CCB. labels May 12, 2021
@kmeids
Copy link

kmeids commented May 12, 2021

Output CCB 12.05.2021:

  1. @max-rosin, documentation review to be done and please set the tag to "ReadyToMerge" when done.
  2. @pmai to merge after Max is done.

@max-rosin
Copy link
Contributor

@DerBaertige: The changes during doc review turned out quite big. Can you please review my changes in fc20c92 to make sure that I did not inadvertently change your intended meaning. If everything is alright, please add the "ReadyToMerge" tag. Thank you!

@DerBaertige
Copy link
Contributor Author

@max-rosin: In general, everything is in my intended meaning. However, I noticed that for the description of the references to OpenX different phrases are used, is this intentional. Else, we should drop line 222 in osi_common.proto, looks like an older merge error. Can you check it? Thanks a lot.

  1. For example, to reference (...) defined in (...) the items should be set as following:
  • osi_trafficsign.proto (165)
  • osi_trafficlight.proto (50)
  • osi_lane.proto (58)
  1. For (...) the items should be set as following:
  • osi_roadmarking.proto (64)
  1. For (...), references to (...) should be set as following:
  • osi_object.proto (48, 56, 400)

max-rosin added a commit that referenced this pull request May 26, 2021
Signed-off-by: Maximilian Rosin <maximilian.rosin@parson-europe.com>
max-rosin added a commit that referenced this pull request May 26, 2021
Signed-off-by: Maximilian Rosin <maximilian.rosin@parson-europe.com>
@max-rosin
Copy link
Contributor

@DerBaertige: I removed the stray line and aligned the wording across files.
In my opinion, the branch is ready to be merged.

@max-rosin max-rosin added the ReadyToMerge This PR has been approved to merge and will be merged by a member of the CCB. label May 26, 2021
@HendrikAmelunxen
Copy link
Contributor

Output from Harmonization meeting (01.06.21):
@pmai Since Review by Max is done could you pleas merge (as aggreed with Kmeid in CCB)

DerBaertige and others added 14 commits June 22, 2021 22:38
Signed-off-by: Georg Seifert <Georg.Seifert@carissma.eu>
…ine a URI to the origin source.

Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
…Object

Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
…ference Example, as the center lane is not driving lane

Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
…dary.

Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
…_environment

Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
Signed-off-by: Georg Seifert <Georg.Seifert@carissma.eu>

Co-authored-by: Kmeid <kmeid.saad@ansys.com>
Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
…o rDNS. Point out to use lower case field.

Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
Signed-off-by: Georg Seifert <georg.seifert@carissma.eu>
Signed-off-by: Maximilian Rosin <maximilian.rosin@parson-europe.com>
Signed-off-by: Maximilian Rosin <maximilian.rosin@parson-europe.com>
Signed-off-by: Maximilian Rosin <maximilian.rosin@parson-europe.com>
@pmai pmai force-pushed the feature/ha/ExternalIdentifier branch from 5078a91 to 3f28734 Compare June 22, 2021 20:40
@pmai pmai merged commit 6b8d46d into master Jun 22, 2021
@pmai pmai added this to the V3.4.0 milestone Jun 23, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Documentation Everything which impacts the quality of the documentation and guidelines. FeatureRequest Proposals which enhance the interface or add additional features. Harmonisation The Group in the ASAM development project working on harmonisation with other standards. ReadyToMerge This PR has been approved to merge and will be merged by a member of the CCB.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants