Skip to content

Add XML property compiler to AS2FM (2) - #157

Open
vivoeiva wants to merge 23 commits into
convince-project:mainfrom
vivoeiva:feat/property_compiler
Open

vivoeiva wants to merge 23 commits into
convince-project:mainfrom
vivoeiva:feat/property_compiler

Conversation

@vivoeiva

Copy link
Copy Markdown

This is a continuation work @KarimPedemonte has done so far (#148 #156 ) with fixes for time units and initial implementation of XML->JANI part (not all patterns covered). There are still some quirks and TODOs, feedback is very welcome.

KarimPedemonte and others added 22 commits March 2, 2026 16:56
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
…rties

Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Karim Pedemonte <karim.pedemonte@edu.unige.it>
Signed-off-by: Christian Henkel <christian.henkel2@de.bosch.com>
change make_global_timer_scxml() to use it
fix redundant get_gcd_of_timer_periods() call

Signed-off-by: Victor Voronin <vivo@eiva.com>
add test for a model without ROS timer

Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
Signed-off-by: Victor Voronin <vivo@eiva.com>
@EnricoGhiorzi

Copy link
Copy Markdown
Contributor

@vivoeiva thank you for the PR! Sorry to be late to reply, I didn't see this until the comment on issue #156. I will begin the review process but it might take a little bit. I will also ask @KarimPedemonte to give this a look.

@EnricoGhiorzi EnricoGhiorzi left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Aside from a couple of minor questions, this looks good to merge to me. I also tested the functionality and it seems to be working correctly.

assert var.tag in [
"state_var",
"event_var",
"goal_id",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Why are goal_id and code special cases?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

A good question, this is the 'inherited' part of #148 and I have not considered these in the JANI property converter part. I will look into it more closely.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

goal_id and code come up in ROS actions, and they are handled as special cases because the specification of RoAML properties does not require making their type explicit, as it is always the same.

@EnricoGhiorzi

Copy link
Copy Markdown
Contributor

@vivoeiva is anything blocking this PR from merging? Please let me know if there is anything you need on my part. I am really looking forward to having this feature released.

Signed-off-by: Victor Voronin <vivo@eiva.com>
@vivoeiva

Copy link
Copy Markdown
Author

@EnricoGhiorzi I believe it's fine to merge it as-is now, it lays down the base for jani property compiler although with very limited pattern support which is blocked by the smc_storm part (it's work-in-progress) rather than as2fm.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants