Skip to content
Structured Data linter
HTML Ruby JavaScript CSS
Latest commit ceb441d Jan 21, 2016 @gkellogg gkellogg Finish 2.3.2
Failed to load latest commit information.
assets Do better job of displaying intelligable messages on internal errors.… Oct 5, 2015
config Heroku updates: shielded-river-1101. Dec 28, 2013
etc Update for schema.org 2.1 release. Aug 6, 2015
examples Version 2.1. Dec 13, 2014
good-relations Good Relations examples and snippets. Jul 28, 2011
google-rs Linter fixes to align with RDF and rdf-reasoner changes. Jun 15, 2014
lib/rdf Update dependencies and schema.org examples. Jan 21, 2016
public Progress on using Angularjs. Dec 9, 2014
schema.org Update dependencies and schema.org examples. Jan 22, 2016
script First parse with validation, and collection validation errors, if it … Jun 9, 2015
spec Update for new reader logging/debug behavior. Nov 25, 2015
.gitignore Update for new reader logging/debug behavior. Nov 25, 2015
.gitmodules Remove schema-org-rdf as a submodule. Oct 20, 2013
.travis.yml Update travis to use 2.3.0. Jan 21, 2016
.yardopts Documentation and version update Apr 21, 2012
Gemfile Update dependencies and schema.org examples. Jan 22, 2016
Gemfile.lock Update dependencies and schema.org examples. Jan 22, 2016
Procfile Heroku updates: shielded-river-1101. Dec 28, 2013
README.md Remove unused spec/test_data. Oct 5, 2015
Rakefile Update examples with sdo-gozer (2.0). May 16, 2015
UNLICENSE Add UNLICENCSE, note licensing terms, contributing and other updates … Aug 19, 2011
VERSION Update dependencies and schema.org examples. Jan 22, 2016
config.ru Progress on using Angularjs. Dec 10, 2014
linter.gemspec Update for new reader logging/debug behavior. Nov 25, 2015

README.md

Structured Data Linter

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

DESCRIPTION

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

The linter is part of the structured-data.org, and runs at linter.structured-data.org

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

Running locally

To run locally, do a bundle install to load required dependencies. Then run with foreman or rackup:

foreman start

or

rackup

Schema.org examples

To update the examples from schema.org, run rake schema:examples. Warnings for these examples can be generated into {file:etc/schema-warnings.txt} by running rake schema:warnings; remember to run bundle install first.

Code layout

This application is represented as a Sinatra application implemented in Ruby.

assets                -- Assets for web application
config.ru             -- [Rack][] configuration file, to start application
lib
  rdf
    linter
      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][]
      writer.rb         -- Sub-class of [RDFa][] writer for generating snippet output.
    linter.rb         -- Controller defining HTTP endpoints
spec                  -- Tests

Dependencies

AUTHORS

Setup notes

  • public/.htaccess
  • Bundle installed using:

    bundle install --path vendor/bundler

  • Start the server with:

    bundle exec shotgun -p 3000 config.ru

FEEDBACK

Contributing

  • 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.

License

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

Something went wrong with that request. Please try again.