class Jekyll::JekyllRdf::Drops::RdfResourceClass

Represents an RDF resource class to the Liquid template engine

Attributes

base[RW]
distance[R]
lock[RW]
path[RW]
template[RW]

Public Class Methods

new(term, base = false) click to toggle source

true if _config.yml assigned this class a template

# File lib/jekyll/drops/rdf_resource_class.rb, line 41
def initialize(term, base = false)
  super(term)
  @base = base
  @lock = -1
  @lockNumber = 0
  @distance = 0
end

Public Instance Methods

add?(lock_number) click to toggle source

Checks if this instance was already added to the breadth-first search in RdfClassExtraction.request_class_template.

# File lib/jekyll/drops/rdf_resource_class.rb, line 85
def add? lock_number
  if @lock_number != lock_number
    # used to recognize different searchpasses of request_class_template
    @lock_number = lock_number
    @lock = -1
    true
  else
    false
  end
end
find_direct_superclasses() click to toggle source

Returns all classes from which term directly inherited

# File lib/jekyll/drops/rdf_resource_class.rb, line 52
def find_direct_superclasses
  return @superclasses unless @superclasses.nil?
  query = "SELECT ?s WHERE{ #{@term.to_ntriples} <http://www.w3.org/2000/01/rdf-schema#subClassOf> ?s }"
  selection = Jekyll::JekyllRdf::Helper::RdfHelper::sparql.
    query(query).map{ |solution| solution.s.to_s}
  @superclasses = selection
  return selection
end
get_path_root() click to toggle source

Returns the beginning of the path leading to the found template

# File lib/jekyll/drops/rdf_resource_class.rb, line 76
def get_path_root
  return self if @path.nil?
  @path.get_path_root
end
propagate_template(distance) click to toggle source

Propagate the current template to the parent of the breadth-first search in RdfClassExtraction.request_class_template.

# File lib/jekyll/drops/rdf_resource_class.rb, line 65
def propagate_template(distance)
  @distance = distance
  return if @path.nil?
  return unless @path.template.nil?
  @path.template = @template
  @path.propagate_template(distance + 1)
end