Sha256: ff22e7fa9b2e762f8eb71449b58f1243d7f9248b4f86336cbc7a5c1ae29dad6d

Contents?: true

Size: 651 Bytes

Versions: 6

Compression:

Stored size: 651 Bytes

Contents

class Label::SKOSXL::Properties::LiteralForm
  class_attribute :rdf_namespace, :rdf_predicate
  self.rdf_namespace = 'skosxl'
  self.rdf_predicate = 'literalForm'

  def self.build_from_rdf(rdf_subject, rdf_predicate, rdf_object)
    unless rdf_object =~ RDFAPI::LITERAL_REGEXP
      raise InvalidStringLiteralError,
        "#{self.name}#build_from_rdf: Object (#{rdf_object}) must be a string literal"
    end

    lang = $3
    value = begin
      JSON.parse(%Q{["#{$1}"]})[0].gsub('\\n', "\n") # Trick to decode \uHHHHH chars
    rescue JSON::ParserError
      $1
    end

    rdf_subject.update_attributes(value: value, language: lang)
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
iqvoc_skosxl-2.9.1 app/models/label/skosxl/properties/literal_form.rb
iqvoc_skosxl-2.9.0 app/models/label/skosxl/properties/literal_form.rb
iqvoc_skosxl-2.8.1 app/models/label/skosxl/properties/literal_form.rb
iqvoc_skosxl-2.8.0 app/models/label/skosxl/properties/literal_form.rb
iqvoc_skosxl-2.7.0 app/models/label/skosxl/properties/literal_form.rb
iqvoc_skosxl-2.6.0 app/models/label/skosxl/properties/literal_form.rb