class Spread2RDF::Schema::Sheet

Public Class Methods

new(parent, attr = {}, &block) click to toggle source
Calls superclass method Spread2RDF::Schema::Element::new
# File lib/spread2rdf/schema/sheet.rb, line 12
def initialize(parent, attr = {}, &block)
  super
  @column = {}
  @column_index = {}
end

Public Instance Methods

column(name = nil)
Alias for: column_by_name
column_by_coord(coord) click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 26
def column_by_coord(coord)
  coord = Roo::Base.number_to_letter(coord) if coord.is_a? Integer
  @column_index[coord]
end
column_by_name(name = nil) click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 31
def column_by_name(name = nil)
  return @column if name.nil?
  name = name.to_sym
  @column[name] or ( parent.is_a?(Sheet) and parent.column(name) ) or nil
end
Also aliased as: column
column_range() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 42
def column_range
  first = columns.first.coord
  first = first.begin if first.is_a? Range
  last = columns.last.coord
  last = last.end if last.is_a? Range
  first .. last
end
columns() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 38
def columns
  @column.values
end
each_column() { |column| ... } click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 50
def each_column(&block)
  columns.each do |column|
    if column.is_a? ColumnBlock
      column.each_column(&block)
    else
      yield column
    end
  end
end
fix_row_count_per_resource() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 68
def fix_row_count_per_resource
  row_count_per_resource or ( !subject_column && 1 ) or nil
end
resource_creation_attributes() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 18
def resource_creation_attributes
  subject
end
start_coord() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 22
def start_coord
  Coord[start]
end
subject_column() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 60
def subject_column
  column_name =
      ((subject = self.subject) &&
          ( ( subject[:uri].is_a?(Hash) && subject[:uri][:column] ) ||
        subject[:column])) || :uri
  @column[column_name]
end
subject_resource_type() click to toggle source
# File lib/spread2rdf/schema/sheet.rb, line 72
def subject_resource_type
  subject.try(:fetch, :type, nil) or
      (subject.try(:fetch, :sub_class_of, nil) && RDF::RDFS.Class) or
      nil
end