class RoadForest::TypeHandlers::RDFa

text/html;q=1;rdfa image/svg+xml;q=1;rdfa application/xhtml+xml;q=1;rdfa text/html image/svg+xml application/xhtml+xml

Attributes

haml_options[RW]
tilt_cache[W]
valise[W]

Public Instance Methods

local_to_network(base_uri, rdf) click to toggle source
# File lib/roadforest/type-handlers/rdfa.rb, line 29
def local_to_network(base_uri, rdf)
  raise "Invalid base uri: #{base_uri}" if base_uri.nil?

  debug = []

  templates = RDFaWriter::TemplateHandler.new
  templates.valise = valise
  templates.template_cache = tilt_cache
  templates.haml_options = haml_options

  engine = RDFaWriter::RenderEngine.new(rdf, debug) do |engine|
    #engine.graph_name = nil #was: rdf.context
    engine.base_uri = base_uri
    engine.standard_prefixes = true
    engine.template_handler = templates

    #engine.style_name = options[:haml]
    #engine.lang = options[:lang]

    engine.top_classes = [::RDF::RDFS.Class]
    engine.predicate_order = [::RDF.type, ::RDF::RDFS.label, ::RDF::DC.title]
    engine.heading_predicates = [::RDF::RDFS.label, ::RDF::DC.title]
  end

  prefixes = relevant_prefixes_for_graph(rdf)
  prefixes.keys.each do |prefix|
    prefixes[prefix.to_sym] = prefixes[prefix]
  end
  engine.prefixes.merge! prefixes
  engine.prefixes.keys.each do |key|
    if key.is_a? String
      engine.prefixes[key.to_sym] = engine.prefixes.delete(key)
    end
  end

  result = engine.render_document
  #puts "\n#{__FILE__}:#{__LINE__} => \n#{debug.join("\n")}"
  return result
end
network_to_local(base_uri, source) click to toggle source
# File lib/roadforest/type-handlers/rdfa.rb, line 69
def network_to_local(base_uri, source)
  raise "Invalid base uri: #{base_uri.inspect}" if base_uri.nil?
  graph = ::RDF::Graph.new
  reader = ::RDF::RDFa::Reader.new(source.to_s, :base_uri => base_uri.to_s)
  reader.each_statement do |statement|
    graph.insert(statement)
  end
  graph
end
tilt_cache() click to toggle source
# File lib/roadforest/type-handlers/rdfa.rb, line 25
def tilt_cache
  @tilt_cache ||= ::Tilt::Cache.new
end
valise() click to toggle source
# File lib/roadforest/type-handlers/rdfa.rb, line 19
def valise
  @valise ||= Valise.define do
    ro up_to("lib") + "roadforest"
  end
end