Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Tree: 4b4c40d766
Fetching contributors…

Cannot retrieve contributors at this time

114 lines (97 sloc) 5.01 KB

Structured Data Linter

Extract and validate embedded RDF markup in HTML and other formats.


The Structured Data Linter digests structured data, in the form of HTML marked-up with RDFa or Microdata, or other RDF technologies supported in [Linked Data][linkeddata].

The linter is part of the, and runs at

Output is expressed as HTML+RDFa in a Snippet format.

Code layout

This application is represented as a Sinatra application implemented in Ruby.             -- [Rack][] configuration file, to start application
      parser.rb         -- Parse and transform input to RDFa.
      rdfa_template.rb  -- RDFa output templates in [Haml][]
      snippets          -- Snippet templates
      views             -- Templates for view generation in [Erubis][]
      vocab_defs.rb     -- Vocabulary definitions
      writer.rb         -- Sub-class of [RDFa][] writer for generating snippet output.
    linter.rb         -- Controller defining HTTP endpoints
spec                  -- Tests
  test_data           -- Test Data



Setup notes

  • public/.htaccess
  • Bundle installed using:

    bundle install --path vendor/bundler

  • Start the server with:

    bundle exec shotgun -p 3000



  • 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][YARD-GS] 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][PDD] on record from you.


This is free and unencumbered public domain software. For more information, see or the accompanying {file:UNLICENSE} file.

Jump to Line
Something went wrong with that request. Please try again.