X3D JSON Encoding

From Web3D.org
Revision as of 16:48, 27 August 2014 by Brutzman (Talk | contribs) (Contributors)

Jump to: navigation, search

Preliminary notes on the creation of an X3D JSON encoding.

  • This page is to understand the conversion process so that a high-quality encoding definition can be created
  • Don Brutzman started a thread on the X3D-Public list.
    • Initial message [1]
    • July's thread listing [2]

Conversion Issues

Design criterion: round-trippable lossless representation of X3D scene.

  1. How to convert attribute names to distinguish them from child elements
  2. Handling of container elements
  3. Creation of JSON elements with datatypes appropriate to content (e.g., integer, float, strings, etc.)
  4. Inclusion of XML namespaces
  5. Handing of comments in the source
    • {LD} I don't see an issue of dropping comments during conversion. This is not suppose to be a conversion of files to maintain an archive, but a conversion for use. JSON does provide comment mechanisms.
    • {DPB} Each X3D encoding needs an option for inclusion of comments in order to ensure 100% round-trip conversion capabilities.
  1. Support for singleton (self-closing) tags also needed

Contributors

  • LD - Leonard Daly
  • DPB - Don Brutzman

References

  • XML to JSON Converter (provides option to assign a prefix to JSON attributes, default is @ character) [3]
  • Apache Camel, XML JSON Data Format (camel-xmljson) [4]
  • JSON Markup Language (JsonML) [5]
  • XSLTJSON: Transforming XML to JSON using XSLT [6]
  • Converting Between XML and JSON [7]
  • XML/JSON Perl Converter [8]
  • IBM's PHP converter [9]
  • Java Converter [10]
  • Google Code Library [11]