Sha256: 1e9540451e50e035d20f2839aae6a8c477b404111456cc3dfdf1da771f8d4c9e

Contents?: true

Size: 1.08 KB

Versions: 3

Compression:

Stored size: 1.08 KB

Contents

# XML mapping classes for OA queries
# relating to debates

require 'xml/mapping'
require 'openaustralia/search_info'

module OpenAustralia

  # a record returned by a debate search
  #
  # represents a debate in parliament
  class DebateSearchResult
    include XML::Mapping

    text_node :gid, 'gid'
    text_node :hdate, 'hdate'
    numeric_node :htype, 'htype'
    numeric_node :subsection_id, 'subsection_id'
    numeric_node :relevance, 'relevance'
    numeric_node :speaker_id, 'speaker_id'
    numeric_node :hpos, 'hpos'
    text_node :body, 'body'
    text_node :listurl, 'listurl'

    # FIXME: incomplete 
  end

  # wrapper for debate search results 
  class DebateSearch
    include XML::Mapping

    # general information about the
    # search results
    object_node :info, 'info', :class => SearchInfo, :default_value => nil

    # a human-readable description
    # of the search
    text_node :search_description, 'searchdescription', :default_value => nil

    # search result records
    array_node :results, 'rows', 'match', :class => DebateSearchResult, :default_value=>[]
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
openaustralia-1.0.2 lib/openaustralia/debates.rb
openaustralia-1.0.1 lib/openaustralia/debates.rb
openaustralia-1.0.0 lib/openaustralia/debates.rb