RDF::RDFXML reader/writer

RDF/XML reader/writer for RDF.rb.


RDF::RDFXML is an RDF/XML reader/writer for Ruby using the RDF.rb library suite.


RDF::RDFXML parses RDF/XML into statements or triples and serializes triples, statements or graphs. It also serializes graphs to RDF/XML.

Fully compliant RDF/XML parser and serializer.

Install with gem install rdf-rdfxml

  • 100% free and unencumbered public domain software.

  • Implements a complete parser for RDF/XML.

  • Compatible with Ruby >= 3.0.


Instantiate a parser and parse source, specifying type and base-URL

RDF::RDFXML::Reader.open("./etc/doap.xml") do |reader|
  reader.each_statement do |statement|
    puts statement.inspect

Define xml:base and xmlns definitions, and use for serialization using :base_uri an :prefixes options.

Canonicalize and validate using :canonicalize and :validate options.

Write a graph to a file:

RDF::RDFXML::Writer.open("etc/test.ttl") do |writer|
   writer << graph



Full documentation available on Rubydoc.info)

Principle Classes





This repository uses Git Flow to mange development and release activity. All submissions must be on a feature branch based on the develop branch to ease staging and integration.

  • Do your best to adhere to the existing coding conventions and idioms.

  • Don’t use hard tabs, and don’t leave trailing whitespace on any line.

  • Do document every method you add using YARD annotations. Read the tutorial or just look at the existing code for examples.

  • Don’t touch the .gemspec, VERSION or AUTHORS files. If you need to change them, do so on your private branch only.

  • Do feel free to add yourself to the CREDITS file and the corresponding list in the the README. Alphabetical order applies.

  • Do note that in order for us to merge any non-trivial changes (as a rule of thumb, additions larger than about 15 lines of code), we need an explicit public domain dedication on record from you, which you will be asked to agree to on the first commit to a repo within the organization. Note that the agreement applies to all repos in the Ruby RDF organization.


This is free and unencumbered public domain software. For more information, see unlicense.org/ or the accompanying UNLICENSE file.