gazebosim / gazebosim/sdformat
Proposal: Make <joint>::<axis>::<limit>::<lower>/<upper> elements optional and default to unbounded
- Dominant language
- C++
- Stars
- 216
- Forks
- 125
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 14
Description
**Original report ([archived issue](https://osrf-migration.github.io/sdformat-gh-pages/#!/osrf/sdformat/issues/169)) by Michael Grey (Bitbucket: [mxgrey](https://bitbucket.org/%7Bc1cdfe52-2887-474c-ae99-72fdc53a59c9%7D/), GitHub: [mxgrey](https://github.com/mxgrey)).**
----------------------------------------
According to [the documentation](http://sdformat.org/spec?ver=1.6&elem=joint#limit_lower), if an `` element is specified, then a `` element is required, which then requires both `` and `` elements.
Many users might not realize that they can safely use `inf` or `-inf` in their sdf to express unbounded limits, and that may influence them to exercise questionable practices, like using `99999999999` to get the behavior they want.
We could make `` and `` optional elements whose values default to be unbounded (-/+inf). I think it's intuitive that if a user declines to specify a limit, then we should assume there is no limit.
I believe this change would also be backwards compatible with existing SDFs.
Contributor guide
Research direction
No implementation files, tests, or entry points are named. Begin by locating the parser and schema handling for ::::::/, then verify that omitted bounds default to -/+inf while existing SDFs remain compatible.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp, xml
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100