gazebosim / gazebosim/sdformat
Define sdf using XML Schema instead of custom schema
- 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/138)) by Shane Loretz (Bitbucket: [Shane Loretz](https://bitbucket.org/%7B656e3311-aad9-45a1-aaf7-b0ee0e84b287%7D/), GitHub: [sloretz](https://github.com/sloretz)).**
----------------------------------------
I'm a little confused on how the SDF is defined, so this issue is partly to help me understand.
It appears SDF is defined by a bunch of ".sdf" files. The content of these files appears to be custom, not used outside of the sdformat project, but having the same purpose as [XML Schema](https://www.w3.org/XML/Schema). `sdf` files are validated against these ".sdf" files using a custom parser.
There does seem to be a demand to use XML Schema indicated in #2 and [pull request #91](https://osrf-migration.github.io/sdformat-gh-pages/#!/osrf/sdformat/pull-requests/91). The result was a script that translated from the custom format to XML schema.
It seems that the ".sdf" files could be replaced by XML Schema, and the parser could be replaced with another [open source library](http://xerces.apache.org/xerces-c/).
* https://www.w3.org/XML/Schema
* http://xerces.apache.org/xerces-c/
* https://cmake.org/cmake/help/v3.1/module/FindXercesC.html
Contributor guide
Research direction
Start by reviewing the custom .sdf schema files, the custom parser, and the translation script described in the issue. Compare the current approach with XML Schema and Xerces-C; done would require an agreed migration plan and scope, which the issue does not yet provide.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100