Class: RDF::Tabular::Row::Cell

Inherits:
Struct
  • Object
show all
Defined in:
lib/rdf/tabular/metadata.rb

Overview

Class for returning values

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#aboutUrlObject

Returns the value of attribute aboutUrl

Returns:

  • (Object)

    the current value of aboutUrl



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def aboutUrl
  @aboutUrl
end

#columnObject

Returns the value of attribute column

Returns:

  • (Object)

    the current value of column



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def column
  @column
end

#errorsObject

Returns the value of attribute errors

Returns:

  • (Object)

    the current value of errors



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def errors
  @errors
end

#propertyUrlObject

Returns the value of attribute propertyUrl

Returns:

  • (Object)

    the current value of propertyUrl



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def propertyUrl
  @propertyUrl
end

#rowObject

Returns the value of attribute row

Returns:

  • (Object)

    the current value of row



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def row
  @row
end

#stringValueObject

Returns the value of attribute stringValue

Returns:

  • (Object)

    the current value of stringValue



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def stringValue
  @stringValue
end

#tableObject

Returns the value of attribute table

Returns:

  • (Object)

    the current value of table



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def table
  @table
end

#valueObject

Returns the value of attribute value

Returns:

  • (Object)

    the current value of value



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def value
  @value
end

#valueUrlObject

Returns the value of attribute valueUrl

Returns:

  • (Object)

    the current value of valueUrl



1663
1664
1665
# File 'lib/rdf/tabular/metadata.rb', line 1663

def valueUrl
  @valueUrl
end

Instance Method Details

#idRDF::URI

Identifier for this Cell, as an RFC7111 fragment

Returns:

  • (RDF::URI)


1683
# File 'lib/rdf/tabular/metadata.rb', line 1683

def id; table.url + "#cell=#{self.row.sourceNumber},#{self.column.sourceNumber}"; end

#set_urls(mapped_values) ⇒ Object



1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
# File 'lib/rdf/tabular/metadata.rb', line 1664

def set_urls(mapped_values)
  %w(aboutUrl propertyUrl valueUrl).each do |prop|
    # If the cell value is nil, and it is not a virtual column
    next if prop == "valueUrl" && value.nil? && !column.virtual
    if v = column.send(prop.to_sym)
      t = Addressable::Template.new(v)
      mapped = t.expand(mapped_values).to_s
      # FIXME: don't expand here, do it in CSV2RDF
      url = row.context.expand_iri(mapped, documentRelative: true)
      self.send("#{prop}=".to_sym, url)
    end
  end
end

#to_atdObject

Return Annotated Cell representation



1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
# File 'lib/rdf/tabular/metadata.rb', line 1686

def to_atd
  {
    "@id" => id.to_s,
    "@type" => "Cell",
    "column" => column.id.to_s,
    "row" => row.id.to_s,
    "stringValue" => self.stringValue,
    "table" => (table.id.to_s if table.id),
    "value" => table.context.expand_value(nil, self.value),
    "errors" => self.errors
  }.delete_if {|k,v| Array(v).empty?}
end

#to_sObject



1679
# File 'lib/rdf/tabular/metadata.rb', line 1679

def to_s; value.to_s; end

#valid?Boolean

Returns:

  • (Boolean)


1678
# File 'lib/rdf/tabular/metadata.rb', line 1678

def valid?; Array(errors).empty?; end