Sha256: 584980affca51d0f9985ab27f908e4b14a38149f77596a714f57ca91c1512986

Contents?: true

Size: 646 Bytes

Versions: 2

Compression:

Stored size: 646 Bytes

Contents

module Wikidata
  module Property
    def self.build attribute
      return if attribute.mainsnak.snaktype == "somevalue"
      case attribute.mainsnak.datatype
      when 'string'
        Wikidata::Property::String.new attribute
      when 'time'
        Wikidata::Property::Time.new attribute
      when 'globe-coordinate'
        Wikidata::Property::GlobeCoordinate.new attribute
      when 'url'
        Wikidata::Property::Url.new attribute
      when 'wikibase-item'
        Wikidata::Item.find Wikidata::Entity.entity_id(attribute)
      else
        raise "Unkown property type #{attribute.mainsnak.datatype}"
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
wikidata-client-0.0.3 lib/wikidata/property.rb
wikidata-client-0.0.2 lib/wikidata/property.rb