Project

xommelier

0.01
No commit activity in last 3 years
No release in over 3 years
There's a lot of open issues
XML-Object Mapper with many built-in XML formats supported
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

~> 1.8.3
~> 1.2
 Project Readme

Xommelier is an XML Sommelier

Overview

Xommelier is an XML Object Mapper. You could describe some namespace (e.g. Atom) in ruby DSL and use it for parsing XML to Ruby objects or for building XML from Ruby objects.

Look into {Xommelier::Atom}, {Xommelier::Atom::Threading}, and {Xommelier::Atom::History} module for implementation of http://www.w3.org/2005/Atom namespace, Atom Threading, and Feed Paging and Archiving extensions

Project links

Examples

See examples dir for examples of:

  • reading an Atom feed;
  • building an Atom feed;
  • building an Atom feed from hash;

Built in XML namespaces:

  1. {Xommelier::Atom} - http://www.w3.org/2005/Atom
  2. {Xommelier::Atom::Threading} - http://purl.org/syndication/thread/1.0
  3. {Xommelier::Atom::History} - http://purl.org/syndication/history/1.0
  4. {Xommelier::OpenSearch} - http://a9.com/-/spec/opensearch/1.1/

TODO

  • Rebuild on top of ROM
  • Validating built XML against RelaxNG
  • Converting XML Schema, RelaxNG, RelaxNG Compact and DTD into Xommelier Ruby DSL
  • ActiveRecord-like automatic loading of XML Schema, RelaxNG, RelaxNG Compact and DTD without needing to write it down into ruby code

Contributors

© Alex Semyonov, 2011-2017. See LICENSE for details

Bitdeli Badge