voyager_api 0.3.7 → 0.3.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/VERSION +1 -1
 - data/lib/holdings/collection.rb +36 -24
 - data/lib/holdings/record.rb +13 -9
 - data/lib/voyager_connection.rb +6 -6
 - data/test/fixtures/holdings_2120018.xml +2 -0
 - data/test/fixtures/holdings_8891001_3.xml +2 -0
 - data/test/holdings/test_record.rb +8 -0
 - data/test/test_voyager_api.rb +24 -0
 - data/test/test_voyager_connection.rb +16 -1
 - metadata +29 -27
 
    
        data/VERSION
    CHANGED
    
    | 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            0.3. 
     | 
| 
      
 1 
     | 
    
         
            +
            0.3.8
         
     | 
    
        data/lib/holdings/collection.rb
    CHANGED
    
    | 
         @@ -3,7 +3,7 @@ module Voyager 
     | 
|
| 
       3 
3 
     | 
    
         
             
                class Collection
         
     | 
| 
       4 
4 
     | 
    
         
             
                  attr_reader :records, :xml
         
     | 
| 
       5 
5 
     | 
    
         | 
| 
       6 
     | 
    
         
            -
                  DEFAULT_OPAC_URL = "http:// 
     | 
| 
      
 6 
     | 
    
         
            +
                  DEFAULT_OPAC_URL = "http://vetiver.cc.columbia.edu:7014/vxws/GetHoldingsService"
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
8 
     | 
    
         
             
                  # Invoke GetHoldingsService
         
     | 
| 
       9 
9 
     | 
    
         
             
                  def self.new_from_opac(bibid, conn = nil, url = DEFAULT_OPAC_URL)
         
     | 
| 
         @@ -13,10 +13,17 @@ module Voyager 
     | 
|
| 
       13 
13 
     | 
    
         | 
| 
       14 
14 
     | 
    
         
             
                  # Convert raw xml from GetHoldingsService to xml record object
         
     | 
| 
       15 
15 
     | 
    
         
             
                  def initialize(raw_xml)
         
     | 
| 
       16 
     | 
    
         
            -
                     
     | 
| 
      
 16 
     | 
    
         
            +
                    raise "Voyager::Holdings::Collection got nil/empty raw_xml" unless raw_xml
         
     | 
| 
      
 17 
     | 
    
         
            +
             
     | 
| 
      
 18 
     | 
    
         
            +
                    # transform raw_xml String into Nokogiri XML Document
         
     | 
| 
      
 19 
     | 
    
         
            +
                    xml = Nokogiri::XML(raw_xml)
         
     | 
| 
      
 20 
     | 
    
         
            +
                    raise "Voyager::Holdings::Collection retrieved nil/invalid XML" unless xml and xml.root
         
     | 
| 
      
 21 
     | 
    
         
            +
             
     | 
| 
      
 22 
     | 
    
         
            +
                    # transform raw_xml String into Nokogiri XML Document
         
     | 
| 
      
 23 
     | 
    
         
            +
                    @xml = add_xml_namespaces(xml)
         
     | 
| 
       17 
24 
     | 
    
         
             
                    parse_xml
         
     | 
| 
       18 
25 
     | 
    
         
             
                  end
         
     | 
| 
       19 
     | 
    
         
            -
             
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
       20 
27 
     | 
    
         
             
                  # Generate output hash from Record class instances
         
     | 
| 
       21 
28 
     | 
    
         
             
                  def to_hash(options = {})
         
     | 
| 
       22 
29 
     | 
    
         
             
                    options.reverse_merge!(:output_type => :raw, :content_type => :full, :message_type => :long_message)
         
     | 
| 
         @@ -30,11 +37,11 @@ module Voyager 
     | 
|
| 
       30 
37 
     | 
    
         
             
                    #   if :content_type == :full
         
     | 
| 
       31 
38 
     | 
    
         
             
                    #     :message_type --> :short_message | :long_message (default)
         
     | 
| 
       32 
39 
     | 
    
         
             
                    #   
         
     | 
| 
       33 
     | 
    
         
            -
             
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
       34 
41 
     | 
    
         
             
                    raise ":output_type not defined" unless options[:output_type] == :raw || options[:output_type] == :condensed
         
     | 
| 
       35 
42 
     | 
    
         
             
                    raise ":content_type not defined" unless options[:content_type] == :full || options[:content_type] == :brief
         
     | 
| 
       36 
43 
     | 
    
         
             
                    raise ":message_type not defined" unless options[:message_type] == :long_message || options[:message_type] == :short_message
         
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
      
 44 
     | 
    
         
            +
             
     | 
| 
       38 
45 
     | 
    
         
             
                    output = {}
         
     | 
| 
       39 
46 
     | 
    
         | 
| 
       40 
47 
     | 
    
         
             
                    case options[:output_type]
         
     | 
| 
         @@ -50,16 +57,15 @@ module Voyager 
     | 
|
| 
       50 
57 
     | 
    
         
             
                        output[:condensed_holdings_brief] = condense_holdings(holdings,options)
         
     | 
| 
       51 
58 
     | 
    
         
             
                      end
         
     | 
| 
       52 
59 
     | 
    
         
             
                    end
         
     | 
| 
       53 
     | 
    
         
            -
             
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
       54 
61 
     | 
    
         
             
                    output
         
     | 
| 
       55 
62 
     | 
    
         | 
| 
       56 
63 
     | 
    
         
             
                  end
         
     | 
| 
       57 
64 
     | 
    
         | 
| 
       58 
65 
     | 
    
         
             
                  private
         
     | 
| 
       59 
66 
     | 
    
         | 
| 
       60 
     | 
    
         
            -
                  #  
     | 
| 
       61 
     | 
    
         
            -
                  def  
     | 
| 
       62 
     | 
    
         
            -
                    xml = Nokogiri::XML(raw_xml)
         
     | 
| 
      
 67 
     | 
    
         
            +
                  # Add searchable namespaces to xml object
         
     | 
| 
      
 68 
     | 
    
         
            +
                  def add_xml_namespaces(xml)
         
     | 
| 
       63 
69 
     | 
    
         
             
                    xml.root.add_namespace_definition("hol", "http://www.endinfosys.com/Voyager/holdings")
         
     | 
| 
       64 
70 
     | 
    
         
             
                    xml.root.add_namespace_definition("mfhd", "http://www.endinfosys.com/Voyager/mfhd")
         
     | 
| 
       65 
71 
     | 
    
         
             
                    xml.root.add_namespace_definition("item", "http://www.endinfosys.com/Voyager/item")
         
     | 
| 
         @@ -69,6 +75,12 @@ module Voyager 
     | 
|
| 
       69 
75 
     | 
    
         | 
| 
       70 
76 
     | 
    
         
             
                  # Collect Record class instances for each mfhd:mfhdRecord node in xml record objext
         
     | 
| 
       71 
77 
     | 
    
         
             
                  def parse_xml
         
     | 
| 
      
 78 
     | 
    
         
            +
                    # First, look for any service messages - raise them as an error
         
     | 
| 
      
 79 
     | 
    
         
            +
                    if first_ser_message = @xml.at_xpath('//ser:messages/ser:message')
         
     | 
| 
      
 80 
     | 
    
         
            +
                      # just throw as Rails default StandardError, with details in the message
         
     | 
| 
      
 81 
     | 
    
         
            +
                      raise "#{first_ser_message.attr('errorCode')} #{first_ser_message.content}"
         
     | 
| 
      
 82 
     | 
    
         
            +
                    end
         
     | 
| 
      
 83 
     | 
    
         
            +
             
     | 
| 
       72 
84 
     | 
    
         
             
                    leader = @xml.at_css("hol|bibRecord>hol|marcRecord>slim|leader").content
         
     | 
| 
       73 
85 
     | 
    
         
             
                    @records = @xml.css("hol|mfhdCollection>mfhd|mfhdRecord").collect do |record_node|
         
     | 
| 
       74 
86 
     | 
    
         
             
                      Record.new(record_node,leader)
         
     | 
| 
         @@ -80,13 +92,13 @@ module Voyager 
     | 
|
| 
       80 
92 
     | 
    
         
             
                  # -- remove document delivery options if there is an available offsite copy
         
     | 
| 
       81 
93 
     | 
    
         
             
                  # -- remove borrowdirect and ill options if there is an available non-reserve, circulating copy
         
     | 
| 
       82 
94 
     | 
    
         
             
                  def adjust_services(records)
         
     | 
| 
       83 
     | 
    
         
            -
             
     | 
| 
      
 95 
     | 
    
         
            +
             
     | 
| 
       84 
96 
     | 
    
         
             
                    # set flags
         
     | 
| 
       85 
97 
     | 
    
         
             
                    offsite_copy = "N"
         
     | 
| 
       86 
98 
     | 
    
         
             
                    available_copy = "N"
         
     | 
| 
       87 
     | 
    
         
            -
                    records.each do |record| 
     | 
| 
      
 99 
     | 
    
         
            +
                    records.each do |record|
         
     | 
| 
       88 
100 
     | 
    
         
             
                      offsite_copy = "Y" if record.services.include?('offsite')
         
     | 
| 
       89 
     | 
    
         
            -
                      if record.item_status[:status] == 'available' 
     | 
| 
      
 101 
     | 
    
         
            +
                      if record.item_status[:status] == 'available'
         
     | 
| 
       90 
102 
     | 
    
         
             
                        available_copy = "Y" unless record.location_name.match(/Reserve|Non\-Circ/)
         
     | 
| 
       91 
103 
     | 
    
         
             
                      end
         
     | 
| 
       92 
104 
     | 
    
         
             
                    end
         
     | 
| 
         @@ -97,11 +109,11 @@ module Voyager 
     | 
|
| 
       97 
109 
     | 
    
         
             
                      record.services.delete('borrow_direct') if available_copy == "Y"
         
     | 
| 
       98 
110 
     | 
    
         
             
                      record.services.delete('ill') if available_copy == "Y"
         
     | 
| 
       99 
111 
     | 
    
         
             
                    end
         
     | 
| 
       100 
     | 
    
         
            -
             
     | 
| 
      
 112 
     | 
    
         
            +
             
     | 
| 
       101 
113 
     | 
    
         
             
                  end
         
     | 
| 
       102 
114 
     | 
    
         | 
| 
       103 
115 
     | 
    
         
             
                  def condense_holdings(holdings,options)
         
     | 
| 
       104 
     | 
    
         
            -
             
     | 
| 
      
 116 
     | 
    
         
            +
             
     | 
| 
       105 
117 
     | 
    
         
             
                    # processing varies depending on complexity
         
     | 
| 
       106 
118 
     | 
    
         
             
                    complexity = determine_complexity(holdings)
         
     | 
| 
       107 
119 
     | 
    
         
             
                    process_holdings(holdings,complexity,options)
         
     | 
| 
         @@ -128,10 +140,10 @@ module Voyager 
     | 
|
| 
       128 
140 
     | 
    
         | 
| 
       129 
141 
     | 
    
         
             
                  def process_holdings(holdings,complexity,options)
         
     | 
| 
       130 
142 
     | 
    
         | 
| 
       131 
     | 
    
         
            -
                    entries = [] 
     | 
| 
      
 143 
     | 
    
         
            +
                    entries = []
         
     | 
| 
       132 
144 
     | 
    
         
             
                    holdings.each do |holding|
         
     | 
| 
       133 
145 
     | 
    
         
             
                      # test for location and call number
         
     | 
| 
       134 
     | 
    
         
            -
                      entry = entries.find { |entry| entry[:location_name] == holding[:location_name] && 
     | 
| 
      
 146 
     | 
    
         
            +
                      entry = entries.find { |entry| entry[:location_name] == holding[:location_name] &&
         
     | 
| 
       135 
147 
     | 
    
         
             
                        entry[:call_number] == holding[:call_number] }
         
     | 
| 
       136 
148 
     | 
    
         | 
| 
       137 
149 
     | 
    
         
             
                      unless entry
         
     | 
| 
         @@ -188,13 +200,13 @@ module Voyager 
     | 
|
| 
       188 
200 
     | 
    
         
             
                          :summary_holdings, :temp_locations].each { |type| add_holdings_elements(out,holding,type,options[:message_type]) }
         
     | 
| 
       189 
201 
     | 
    
         | 
| 
       190 
202 
     | 
    
         
             
                        entry[:copies] << out
         
     | 
| 
       191 
     | 
    
         
            -
             
     | 
| 
      
 203 
     | 
    
         
            +
             
     | 
| 
       192 
204 
     | 
    
         
             
                      end
         
     | 
| 
       193 
205 
     | 
    
         | 
| 
       194 
206 
     | 
    
         
             
                      entry[:services] << holding[:services]
         
     | 
| 
       195 
207 
     | 
    
         | 
| 
       196 
208 
     | 
    
         
             
                    end
         
     | 
| 
       197 
     | 
    
         
            -
             
     | 
| 
      
 209 
     | 
    
         
            +
             
     | 
| 
       198 
210 
     | 
    
         
             
                    # get overall status of each location entry
         
     | 
| 
       199 
211 
     | 
    
         
             
                    entries.each { |entry| determine_overall_status(entry) }
         
     | 
| 
       200 
212 
     | 
    
         | 
| 
         @@ -206,7 +218,7 @@ module Voyager 
     | 
|
| 
       206 
218 
     | 
    
         
             
                  end
         
     | 
| 
       207 
219 
     | 
    
         | 
| 
       208 
220 
     | 
    
         
             
                  def add_holdings_elements(out,holding,type,message_type)
         
     | 
| 
       209 
     | 
    
         
            -
             
     | 
| 
      
 221 
     | 
    
         
            +
             
     | 
| 
       210 
222 
     | 
    
         
             
                    case type
         
     | 
| 
       211 
223 
     | 
    
         
             
                    when :current_issues
         
     | 
| 
       212 
224 
     | 
    
         
             
                      out[type] = "Current Issues: " + holding[type].join('; ') unless holding[type].empty?
         
     | 
| 
         @@ -215,7 +227,7 @@ module Voyager 
     | 
|
| 
       215 
227 
     | 
    
         
             
                        messages = holding[type].each.collect { |info| info[:message] }
         
     | 
| 
       216 
228 
     | 
    
         
             
                        out[type] = "Donor: " + messages.join('; ')
         
     | 
| 
       217 
229 
     | 
    
         
             
                        codes = holding[type].each.collect { |info| info[:code] }
         
     | 
| 
       218 
     | 
    
         
            -
                        out[:donor_info_code] = codes.join(' - ') 
     | 
| 
      
 230 
     | 
    
         
            +
                        out[:donor_info_code] = codes.join(' - ')
         
     | 
| 
       219 
231 
     | 
    
         
             
                      end
         
     | 
| 
       220 
232 
     | 
    
         
             
                    when :indexes
         
     | 
| 
       221 
233 
     | 
    
         
             
                      out[type] = "Indexes: " + holding[type].join(' ') unless holding[type].empty?
         
     | 
| 
         @@ -236,11 +248,11 @@ module Voyager 
     | 
|
| 
       236 
248 
     | 
    
         
             
                      out[type] = holding[type] unless holding[type].empty?
         
     | 
| 
       237 
249 
     | 
    
         
             
                    else
         
     | 
| 
       238 
250 
     | 
    
         
             
                    end
         
     | 
| 
       239 
     | 
    
         
            -
             
     | 
| 
      
 251 
     | 
    
         
            +
             
     | 
| 
       240 
252 
     | 
    
         
             
                  end
         
     | 
| 
       241 
253 
     | 
    
         | 
| 
       242 
254 
     | 
    
         
             
                  def determine_overall_status(entry)
         
     | 
| 
       243 
     | 
    
         
            -
             
     | 
| 
      
 255 
     | 
    
         
            +
             
     | 
| 
       244 
256 
     | 
    
         
             
                    a = 0   # available
         
     | 
| 
       245 
257 
     | 
    
         
             
                    s = 0   # some available
         
     | 
| 
       246 
258 
     | 
    
         
             
                    n = 0   # not available
         
     | 
| 
         @@ -292,7 +304,7 @@ module Voyager 
     | 
|
| 
       292 
304 
     | 
    
         
             
                  end
         
     | 
| 
       293 
305 
     | 
    
         | 
| 
       294 
306 
     | 
    
         
             
                  def output_condensed_holdings(entries,type)
         
     | 
| 
       295 
     | 
    
         
            -
             
     | 
| 
      
 307 
     | 
    
         
            +
             
     | 
| 
       296 
308 
     | 
    
         
             
                    case type
         
     | 
| 
       297 
309 
     | 
    
         
             
                    when :full
         
     | 
| 
       298 
310 
     | 
    
         
             
                      entries
         
     | 
| 
         @@ -305,7 +317,7 @@ module Voyager 
     | 
|
| 
       305 
317 
     | 
    
         
             
                          :services => entry[:services] }
         
     | 
| 
       306 
318 
     | 
    
         
             
                      end
         
     | 
| 
       307 
319 
     | 
    
         
             
                    end
         
     | 
| 
       308 
     | 
    
         
            -
             
     | 
| 
      
 320 
     | 
    
         
            +
             
     | 
| 
       309 
321 
     | 
    
         
             
                  end
         
     | 
| 
       310 
322 
     | 
    
         | 
| 
       311 
323 
     | 
    
         
             
                end
         
     | 
    
        data/lib/holdings/record.rb
    CHANGED
    
    | 
         @@ -213,12 +213,14 @@ module Voyager 
     | 
|
| 
       213 
213 
     | 
    
         
             
                    tag867 = marc.css("slim|datafield[@tag='867']")
         
     | 
| 
       214 
214 
     | 
    
         | 
| 
       215 
215 
     | 
    
         
             
                    return [] unless tag867
         
     | 
| 
       216 
     | 
    
         
            -
             
     | 
| 
       217 
     | 
    
         
            -
                    supplements =  
     | 
| 
       218 
     | 
    
         
            -
             
     | 
| 
      
 216 
     | 
    
         
            +
             
     | 
| 
      
 217 
     | 
    
         
            +
                    supplements = []
         
     | 
| 
      
 218 
     | 
    
         
            +
                    tag867.each do |field|
         
     | 
| 
      
 219 
     | 
    
         
            +
                      subs = field.css("slim|subfield").collect { |subfield| subfield.content if subfield.attr("code").match(/[az]/)}
         
     | 
| 
      
 220 
     | 
    
         
            +
                        supplements << subs.join(" ").strip unless subs.empty?
         
     | 
| 
       219 
221 
     | 
    
         
             
                    end
         
     | 
| 
       220 
     | 
    
         
            -
             
     | 
| 
       221 
     | 
    
         
            -
                    supplements 
     | 
| 
      
 222 
     | 
    
         
            +
             
     | 
| 
      
 223 
     | 
    
         
            +
                    supplements
         
     | 
| 
       222 
224 
     | 
    
         | 
| 
       223 
225 
     | 
    
         
             
                  end
         
     | 
| 
       224 
226 
     | 
    
         | 
| 
         @@ -236,11 +238,13 @@ module Voyager 
     | 
|
| 
       236 
238 
     | 
    
         | 
| 
       237 
239 
     | 
    
         
             
                    return [] unless tag868
         
     | 
| 
       238 
240 
     | 
    
         | 
| 
       239 
     | 
    
         
            -
                    indexes =  
     | 
| 
       240 
     | 
    
         
            -
             
     | 
| 
      
 241 
     | 
    
         
            +
                    indexes = []
         
     | 
| 
      
 242 
     | 
    
         
            +
                    tag868.each do |field|
         
     | 
| 
      
 243 
     | 
    
         
            +
                      subs = field.css("slim|subfield").collect { |subfield| subfield.content if subfield.attr("code").match(/[az]/)}
         
     | 
| 
      
 244 
     | 
    
         
            +
                        indexes << subs.join(" ").strip unless subs.empty?
         
     | 
| 
       241 
245 
     | 
    
         
             
                    end
         
     | 
| 
       242 
     | 
    
         
            -
             
     | 
| 
       243 
     | 
    
         
            -
                    indexes 
     | 
| 
      
 246 
     | 
    
         
            +
             
     | 
| 
      
 247 
     | 
    
         
            +
                    indexes
         
     | 
| 
       244 
248 
     | 
    
         | 
| 
       245 
249 
     | 
    
         
             
                  end
         
     | 
| 
       246 
250 
     | 
    
         | 
    
        data/lib/voyager_connection.rb
    CHANGED
    
    | 
         @@ -8,7 +8,7 @@ module Voyager 
     | 
|
| 
       8 
8 
     | 
    
         
             
                  @cookie_path = options[:cookie_path]
         
     | 
| 
       9 
9 
     | 
    
         | 
| 
       10 
10 
     | 
    
         
             
                  set_cookie_path if @cookie_path
         
     | 
| 
       11 
     | 
    
         
            -
             
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
       12 
12 
     | 
    
         | 
| 
       13 
13 
     | 
    
         
             
                end
         
     | 
| 
       14 
14 
     | 
    
         | 
| 
         @@ -19,11 +19,11 @@ module Voyager 
     | 
|
| 
       19 
19 
     | 
    
         
             
                  return request
         
     | 
| 
       20 
20 
     | 
    
         
             
                end
         
     | 
| 
       21 
21 
     | 
    
         | 
| 
       22 
     | 
    
         
            -
                def clean_session!(server = "http:// 
     | 
| 
      
 22 
     | 
    
         
            +
                def clean_session!(server = "http://vetiver.cc.columbia.edu:7014")
         
     | 
| 
       23 
23 
     | 
    
         
             
                  @http_client.get_content(server + "/vxws/SessionCleanupService")
         
     | 
| 
       24 
     | 
    
         
            -
             
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
       25 
25 
     | 
    
         
             
                end
         
     | 
| 
       26 
     | 
    
         
            -
             
     | 
| 
      
 26 
     | 
    
         
            +
             
     | 
| 
       27 
27 
     | 
    
         
             
                private
         
     | 
| 
       28 
28 
     | 
    
         | 
| 
       29 
29 
     | 
    
         | 
| 
         @@ -33,8 +33,8 @@ module Voyager 
     | 
|
| 
       33 
33 
     | 
    
         
             
                  FileUtils.mkdir_p(cookie_directory) unless File.exists?(cookie_directory)
         
     | 
| 
       34 
34 
     | 
    
         | 
| 
       35 
35 
     | 
    
         
             
                  @http_client.set_cookie_store(@cookie_path)
         
     | 
| 
       36 
     | 
    
         
            -
             
     | 
| 
       37 
     | 
    
         
            -
             
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
             
     | 
| 
       38 
38 
     | 
    
         
             
                end
         
     | 
| 
       39 
39 
     | 
    
         
             
              end
         
     | 
| 
       40 
40 
     | 
    
         
             
            end
         
     | 
| 
         @@ -0,0 +1,2 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0" encoding="UTF-8"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <ser:voyagerServiceData xmlns:ser="http://www.endinfosys.com/Voyager/serviceParameters"><ser:serviceData xsi:type="hol:holdingsCollectionType" xmlns:hol="http://www.endinfosys.com/Voyager/holdings" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><hol:holdingsRecord><hol:bibRecord bibId="2120018" dpsFlag="N"><hol:marcRecord><slim:leader xmlns:slim="http://www.loc.gov/MARC21/slim">00891mas a22003011  4500</slim:leader><slim:controlfield tag="001" xmlns:slim="http://www.loc.gov/MARC21/slim">2120018</slim:controlfield><slim:controlfield tag="005" xmlns:slim="http://www.loc.gov/MARC21/slim">20100219074209.0</slim:controlfield><slim:controlfield tag="008" xmlns:slim="http://www.loc.gov/MARC21/slim">900328u1879uuuufr ar    c    0    0fre d</slim:controlfield><slim:datafield ind2=" " ind1=" " tag="035" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">(OCoLC)504235520</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="035" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">(OCoLC)ocn504235520</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="035" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="9">ANF8070CU</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="035" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">(NNC)2120018</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="040" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">NNC</slim:subfield><slim:subfield code="c">NNC</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1="2" tag="111" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Salon (Exhibition : Paris, France)</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="1" tag="245" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Catalogue illustré ...</slim:subfield><slim:subfield code="b">[sections de peinture et de sculpture]</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="250" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">"Nouvelle édition"</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="260" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Paris,</slim:subfield><slim:subfield code="c">1882-</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="300" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">v.</slim:subfield><slim:subfield code="b">illus., plates.</slim:subfield><slim:subfield code="c">23 cm.</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="310" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Annual</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1="0" tag="362" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">année 1-    1879-</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="500" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Title varies slightly.</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="500" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">1901 -   under the Société des artistes français.</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="500" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">1879 is "nouvelle édition"</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1=" " tag="650" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Art</slim:subfield><slim:subfield code="v">Exhibitions.</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1=" " tag="650" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Painting</slim:subfield><slim:subfield code="v">Exhibitions.</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1=" " tag="650" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Sculpture</slim:subfield><slim:subfield code="v">Exhibitions.</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="900" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">AUTH</slim:subfield></slim:datafield><slim:datafield ind2=" " ind1=" " tag="965" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">RECON</slim:subfield></slim:datafield></hol:marcRecord><hol:bibData name="databaseCode">LOCAL</hol:bibData><hol:bibData name="databaseName">Local Database</hol:bibData><hol:bibData name="createDate">2003-05-05 00:00:00</hol:bibData><hol:bibData name="updateDate">2010-02-19 07:42:09</hol:bibData><hol:bibData name="suppressInOpac">N</hol:bibData><hol:bibData name="exportOK">N</hol:bibData><hol:bibData name="exportOKDate" xsi:nil="true"/><hol:bibData name="exportOperatorId" xsi:nil="true"/><hol:bibData name="createLocation" xsi:nil="true"/><hol:bibData name="updateLocation" xsi:nil="true"/><hol:bibData name="exportOKLocation" xsi:nil="true"/><hol:bibData name="owningLibrary" id="1">COLUMBIA</hol:bibData></hol:bibRecord><hol:mfhdCollection><mfhd:mfhdRecord bibId="2120018" mfhdId="2580600" xmlns:mfhd="http://www.endinfosys.com/Voyager/mfhd"><mfhd:marcRecord><slim:leader xmlns:slim="http://www.loc.gov/MARC21/slim">00411cy  a22001214  4500</slim:leader><slim:controlfield tag="001" xmlns:slim="http://www.loc.gov/MARC21/slim">2580600</slim:controlfield><slim:controlfield tag="004" xmlns:slim="http://www.loc.gov/MARC21/slim">2120018</slim:controlfield><slim:controlfield tag="005" xmlns:slim="http://www.loc.gov/MARC21/slim">20130716143304.0</slim:controlfield><slim:controlfield tag="008" xmlns:slim="http://www.loc.gov/MARC21/slim">980417||    |   |   |||||       </slim:controlfield><slim:datafield ind2=" " ind1="1" tag="014" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">ANF8070CU001</slim:subfield></slim:datafield><slim:datafield ind2="1" ind1="8" tag="852" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="b">far</slim:subfield><slim:subfield code="h">N5069</slim:subfield><slim:subfield code="i">P211</slim:subfield></slim:datafield><slim:datafield ind2="1" ind1="4" tag="866" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="8">0</slim:subfield><slim:subfield code="a">année 1 (1879)-année 11 (1889), année 14 (1892)-année 15 (1893), année 18 (1896)-année 19 (1897), année 23 (1901)-année 36 (1914)</slim:subfield></slim:datafield><slim:datafield ind2="1" ind1="4" tag="867" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="8">0</slim:subfield><slim:subfield code="a">1880-1881</slim:subfield><slim:subfield code="z">bound in 1 v.</slim:subfield></slim:datafield></mfhd:marcRecord><mfhd:mfhdData name="databaseCode">LOCAL</mfhd:mfhdData><mfhd:mfhdData name="databaseName">Local Database</mfhd:mfhdData><mfhd:mfhdData name="mfhdStubFlag">0</mfhd:mfhdData><mfhd:mfhdData name="createOperatorId">load</mfhd:mfhdData><mfhd:mfhdData name="updateOperatorId">bb2316</mfhd:mfhdData><mfhd:mfhdData name="createDate">2003-05-06 00:00:00</mfhd:mfhdData><mfhd:mfhdData name="updateDate">2013-07-16 14:33:04</mfhd:mfhdData><mfhd:mfhdData name="createLocation" xsi:nil="true"/><mfhd:mfhdData name="updateLocation">CATCUL</mfhd:mfhdData><mfhd:mfhdData name="suppressInOpac">N</mfhd:mfhdData><mfhd:mfhdData name="exportOK" xsi:nil="true"/><mfhd:mfhdData name="sourceModule">C</mfhd:mfhdData><mfhd:mfhdData name="callNumber">N5069 P211</mfhd:mfhdData><mfhd:mfhdData name="locationCode" id="131">far</mfhd:mfhdData><mfhd:mfhdData name="locationName" xsi:nil="true"/><mfhd:mfhdData name="locationDisplayName">Avery Classics (Non-Circulating)</mfhd:mfhdData><mfhd:mfhdData name="locationSpineLabel">far</mfhd:mfhdData><mfhd:mfhdData name="owningLibrary" id="1">COLUMBIA</mfhd:mfhdData><mfhd:itemCollection><item:itemCount xmlns:item="http://www.endinfosys.com/Voyager/item">30</item:itemCount><item:itemRecord xmlns:item="http://www.endinfosys.com/Voyager/item"><item:itemData name="statusCode">1</item:itemData><item:itemData name="statusDate" xsi:nil="true"/><item:itemData name="holdLocation" xsi:nil="true"/><item:itemData name="requestCount">0</item:itemData><item:itemData name="patronGroupCode" xsi:nil="true"/><item:itemData name="lastName" xsi:nil="true"/><item:itemData name="firstName" xsi:nil="true"/><item:itemData name="todaysDate">2013-07-31 11:41:35</item:itemData><item:itemData name="enumeration" xsi:nil="true"/><item:itemData name="chronology" xsi:nil="true"/><item:itemData name="year" xsi:nil="true"/><item:itemData name="caption" xsi:nil="true"/><item:itemData name="text" xsi:nil="true"/><item:itemData name="copyNumber" xsi:nil="true"/><item:itemData name="callNumber"/></item:itemRecord><item:itemLocation xmlns:item="http://www.endinfosys.com/Voyager/item"><item:itemLocationData name="tmpLoc" xsi:nil="true"/><item:itemLocationData name="tempLocation">Avery Classics (Non-Circulating)</item:itemLocationData><item:itemLocationData name="itemEnum" xsi:nil="true"/><item:itemLocationData name="itemChron" xsi:nil="true"/><item:itemLocationData name="itemYear" xsi:nil="true"/><item:itemLocationData name="itemCaption" xsi:nil="true"/><item:itemLocationData name="itemFreeText" xsi:nil="true"/><item:itemLocationData name="itemCopyNumber" xsi:nil="true"/></item:itemLocation></mfhd:itemCollection></mfhd:mfhdRecord><mfhd:mfhdRecord bibId="2120018" mfhdId="13450046" xmlns:mfhd="http://www.endinfosys.com/Voyager/mfhd"><mfhd:marcRecord><slim:leader xmlns:slim="http://www.loc.gov/MARC21/slim">00210cy  a22000974  4500</slim:leader><slim:controlfield tag="001" xmlns:slim="http://www.loc.gov/MARC21/slim">13450046</slim:controlfield><slim:controlfield tag="004" xmlns:slim="http://www.loc.gov/MARC21/slim">2120018</slim:controlfield><slim:controlfield tag="005" xmlns:slim="http://www.loc.gov/MARC21/slim">20130716143024.0</slim:controlfield><slim:controlfield tag="008" xmlns:slim="http://www.loc.gov/MARC21/slim">1307162p    8   2001aa   0901128</slim:controlfield><slim:datafield ind2="1" ind1="8" tag="852" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="b">far</slim:subfield><slim:subfield code="h">N5069</slim:subfield><slim:subfield code="i">P211</slim:subfield></slim:datafield><slim:datafield ind2="1" ind1="4" tag="866" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="8">0</slim:subfield><slim:subfield code="a">année 2 (1880)</slim:subfield></slim:datafield></mfhd:marcRecord><mfhd:mfhdData name="databaseCode">LOCAL</mfhd:mfhdData><mfhd:mfhdData name="databaseName">Local Database</mfhd:mfhdData><mfhd:mfhdData name="mfhdStubFlag">0</mfhd:mfhdData><mfhd:mfhdData name="createOperatorId">bb2316</mfhd:mfhdData><mfhd:mfhdData name="updateOperatorId">bb2316</mfhd:mfhdData><mfhd:mfhdData name="createDate">2013-07-16 14:05:00</mfhd:mfhdData><mfhd:mfhdData name="updateDate">2013-07-16 14:30:24</mfhd:mfhdData><mfhd:mfhdData name="createLocation">CATCUL</mfhd:mfhdData><mfhd:mfhdData name="updateLocation">CATCUL</mfhd:mfhdData><mfhd:mfhdData name="suppressInOpac">N</mfhd:mfhdData><mfhd:mfhdData name="exportOK">N</mfhd:mfhdData><mfhd:mfhdData name="sourceModule">C</mfhd:mfhdData><mfhd:mfhdData name="callNumber">N5069 P211</mfhd:mfhdData><mfhd:mfhdData name="locationCode" id="131">far</mfhd:mfhdData><mfhd:mfhdData name="locationName" xsi:nil="true"/><mfhd:mfhdData name="locationDisplayName">Avery Classics (Non-Circulating)</mfhd:mfhdData><mfhd:mfhdData name="locationSpineLabel">far</mfhd:mfhdData><mfhd:mfhdData name="owningLibrary" id="1">COLUMBIA</mfhd:mfhdData><mfhd:itemCollection><item:itemCount xmlns:item="http://www.endinfosys.com/Voyager/item">1</item:itemCount><item:itemRecord xmlns:item="http://www.endinfosys.com/Voyager/item"><item:itemData name="statusCode">1</item:itemData><item:itemData name="statusDate" xsi:nil="true"/><item:itemData name="holdLocation" xsi:nil="true"/><item:itemData name="requestCount">0</item:itemData><item:itemData name="patronGroupCode" xsi:nil="true"/><item:itemData name="lastName" xsi:nil="true"/><item:itemData name="firstName" xsi:nil="true"/><item:itemData name="todaysDate">2013-07-31 11:41:35</item:itemData><item:itemData name="enumeration" xsi:nil="true"/><item:itemData name="chronology" xsi:nil="true"/><item:itemData name="year" xsi:nil="true"/><item:itemData name="caption" xsi:nil="true"/><item:itemData name="text" xsi:nil="true"/><item:itemData name="copyNumber" xsi:nil="true"/><item:itemData name="callNumber"/></item:itemRecord><item:itemLocation xmlns:item="http://www.endinfosys.com/Voyager/item"><item:itemLocationData name="tmpLoc" xsi:nil="true"/><item:itemLocationData name="tempLocation">Avery Classics (Non-Circulating)</item:itemLocationData><item:itemLocationData name="itemEnum" xsi:nil="true"/><item:itemLocationData name="itemChron" xsi:nil="true"/><item:itemLocationData name="itemYear" xsi:nil="true"/><item:itemLocationData name="itemCaption" xsi:nil="true"/><item:itemLocationData name="itemFreeText" xsi:nil="true"/><item:itemLocationData name="itemCopyNumber" xsi:nil="true"/></item:itemLocation></mfhd:itemCollection></mfhd:mfhdRecord></hol:mfhdCollection></hol:holdingsRecord></ser:serviceData></ser:voyagerServiceData>
         
     | 
| 
         @@ -0,0 +1,2 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            <?xml version="1.0" encoding="UTF-8"?>
         
     | 
| 
      
 2 
     | 
    
         
            +
            <ser:voyagerServiceData xmlns:ser="http://www.endinfosys.com/Voyager/serviceParameters"><ser:serviceData xsi:type="hol:holdingsCollectionType" xmlns:hol="http://www.endinfosys.com/Voyager/holdings" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><hol:holdingsRecord><hol:bibRecord bibId="8891001" dpsFlag="N"><hol:marcRecord><slim:leader xmlns:slim="http://www.loc.gov/MARC21/slim">00161cam a2200073 i 4500</slim:leader><slim:controlfield tag="001" xmlns:slim="http://www.loc.gov/MARC21/slim">8891001</slim:controlfield><slim:controlfield tag="005" xmlns:slim="http://www.loc.gov/MARC21/slim">20130731130319.0</slim:controlfield><slim:controlfield tag="008" xmlns:slim="http://www.loc.gov/MARC21/slim">110801b        ilua          000 0 eng  </slim:controlfield><slim:datafield ind2="0" ind1="0" tag="245" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">GJBtest record 5</slim:subfield></slim:datafield></hol:marcRecord><hol:bibData name="databaseCode">LOCAL</hol:bibData><hol:bibData name="databaseName">Local Database</hol:bibData><hol:bibData name="createDate">2011-08-01 15:51:13</hol:bibData><hol:bibData name="updateDate">2013-07-31 13:03:19</hol:bibData><hol:bibData name="suppressInOpac">N</hol:bibData><hol:bibData name="exportOK">N</hol:bibData><hol:bibData name="exportOKDate" xsi:nil="true"/><hol:bibData name="exportOperatorId" xsi:nil="true"/><hol:bibData name="createLocation">CATCUL</hol:bibData><hol:bibData name="updateLocation">CATCUL</hol:bibData><hol:bibData name="exportOKLocation" xsi:nil="true"/><hol:bibData name="owningLibrary" id="1">COLUMBIA</hol:bibData></hol:bibRecord><hol:mfhdCollection><mfhd:mfhdRecord bibId="8891001" mfhdId="11964457" xmlns:mfhd="http://www.endinfosys.com/Voyager/mfhd"><mfhd:marcRecord><slim:leader xmlns:slim="http://www.loc.gov/MARC21/slim">00431cx  a22001334  4500</slim:leader><slim:controlfield tag="001" xmlns:slim="http://www.loc.gov/MARC21/slim">11964457</slim:controlfield><slim:controlfield tag="004" xmlns:slim="http://www.loc.gov/MARC21/slim">8891001</slim:controlfield><slim:controlfield tag="005" xmlns:slim="http://www.loc.gov/MARC21/slim">20130731130138.0</slim:controlfield><slim:controlfield tag="008" xmlns:slim="http://www.loc.gov/MARC21/slim">1108014u    8   1001uu   0901128</slim:controlfield><slim:datafield ind2=" " ind1=" " tag="843" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Microfilm.</slim:subfield><slim:subfield code="m">1950-1963.</slim:subfield><slim:subfield code="b">Webster, N.Y. :</slim:subfield><slim:subfield code="c">Photographic Sciences Corp.,</slim:subfield><slim:subfield code="d">1974-</slim:subfield><slim:subfield code="e">2 microfilm reels ; 35 mm.</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="1" tag="852" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="b">bus</slim:subfield><slim:subfield code="h">GB500</slim:subfield><slim:subfield code="i">.G65</slim:subfield><slim:subfield code="l">Shelving title</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="4" tag="856" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="3">Part 1</slim:subfield><slim:subfield code="u">http://www.columbia.edu</slim:subfield><slim:subfield code="z">Full text</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="4" tag="867" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Supplement</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="4" tag="868" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="a">Index</slim:subfield><slim:subfield code="z">with note.</slim:subfield></slim:datafield></mfhd:marcRecord><mfhd:mfhdData name="databaseCode">LOCAL</mfhd:mfhdData><mfhd:mfhdData name="databaseName">Local Database</mfhd:mfhdData><mfhd:mfhdData name="mfhdStubFlag">0</mfhd:mfhdData><mfhd:mfhdData name="createOperatorId">bertchume</mfhd:mfhdData><mfhd:mfhdData name="updateOperatorId">bertchume</mfhd:mfhdData><mfhd:mfhdData name="createDate">2011-08-01 15:53:08</mfhd:mfhdData><mfhd:mfhdData name="updateDate">2013-07-31 13:01:38</mfhd:mfhdData><mfhd:mfhdData name="createLocation">CATCUL</mfhd:mfhdData><mfhd:mfhdData name="updateLocation">CATCUL</mfhd:mfhdData><mfhd:mfhdData name="suppressInOpac">N</mfhd:mfhdData><mfhd:mfhdData name="exportOK">N</mfhd:mfhdData><mfhd:mfhdData name="sourceModule">C</mfhd:mfhdData><mfhd:mfhdData name="callNumber">GB500 .G65</mfhd:mfhdData><mfhd:mfhdData name="locationCode" id="48">bus</mfhd:mfhdData><mfhd:mfhdData name="locationName" xsi:nil="true"/><mfhd:mfhdData name="locationDisplayName">Business</mfhd:mfhdData><mfhd:mfhdData name="locationSpineLabel">BUSINESS</mfhd:mfhdData><mfhd:mfhdData name="owningLibrary" id="1">COLUMBIA</mfhd:mfhdData><mfhd:itemCollection><item:itemCount xmlns:item="http://www.endinfosys.com/Voyager/item">0</item:itemCount><item:itemLocation xmlns:item="http://www.endinfosys.com/Voyager/item"><item:itemLocationData name="tmpLoc" xsi:nil="true"/><item:itemLocationData name="tempLocation">Business</item:itemLocationData><item:itemLocationData name="itemEnum" xsi:nil="true"/><item:itemLocationData name="itemChron" xsi:nil="true"/><item:itemLocationData name="itemYear" xsi:nil="true"/><item:itemLocationData name="itemCaption" xsi:nil="true"/><item:itemLocationData name="itemFreeText" xsi:nil="true"/><item:itemLocationData name="itemCopyNumber" xsi:nil="true"/></item:itemLocation></mfhd:itemCollection></mfhd:mfhdRecord><mfhd:mfhdRecord bibId="8891001" mfhdId="11970625" xmlns:mfhd="http://www.endinfosys.com/Voyager/mfhd"><mfhd:marcRecord><slim:leader xmlns:slim="http://www.loc.gov/MARC21/slim">00350nx  a22001334  4500</slim:leader><slim:controlfield tag="001" xmlns:slim="http://www.loc.gov/MARC21/slim">11970625</slim:controlfield><slim:controlfield tag="004" xmlns:slim="http://www.loc.gov/MARC21/slim">8891001</slim:controlfield><slim:controlfield tag="005" xmlns:slim="http://www.loc.gov/MARC21/slim">20110802122150.0</slim:controlfield><slim:controlfield tag="008" xmlns:slim="http://www.loc.gov/MARC21/slim">1108024u    8   1001uu   0901128</slim:controlfield><slim:datafield ind2=" " ind1=" " tag="852" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="b">lweb</slim:subfield><slim:subfield code="h">EBOOK</slim:subfield></slim:datafield><slim:datafield ind2="1" ind1="4" tag="856" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="h">ttp://www.google.com</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="4" tag="856" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="u">http://www.columbia.edu</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="4" tag="856" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="u">http://libraries.columbia.edu</slim:subfield><slim:subfield code="z">Library Website</slim:subfield></slim:datafield><slim:datafield ind2="0" ind1="4" tag="856" xmlns:slim="http://www.loc.gov/MARC21/slim"><slim:subfield code="3">Part 1</slim:subfield><slim:subfield code="u">http://website 1</slim:subfield></slim:datafield></mfhd:marcRecord><mfhd:mfhdData name="databaseCode">LOCAL</mfhd:mfhdData><mfhd:mfhdData name="databaseName">Local Database</mfhd:mfhdData><mfhd:mfhdData name="mfhdStubFlag">0</mfhd:mfhdData><mfhd:mfhdData name="createOperatorId">bertchume</mfhd:mfhdData><mfhd:mfhdData name="updateOperatorId" xsi:nil="true"/><mfhd:mfhdData name="createDate">2011-08-02 12:21:50</mfhd:mfhdData><mfhd:mfhdData name="updateDate" xsi:nil="true"/><mfhd:mfhdData name="createLocation">CATCUL</mfhd:mfhdData><mfhd:mfhdData name="updateLocation" xsi:nil="true"/><mfhd:mfhdData name="suppressInOpac">N</mfhd:mfhdData><mfhd:mfhdData name="exportOK">N</mfhd:mfhdData><mfhd:mfhdData name="sourceModule">C</mfhd:mfhdData><mfhd:mfhdData name="callNumber">EBOOK</mfhd:mfhdData><mfhd:mfhdData name="locationCode" id="238">lweb</mfhd:mfhdData><mfhd:mfhdData name="locationName" xsi:nil="true"/><mfhd:mfhdData name="locationDisplayName">Online</mfhd:mfhdData><mfhd:mfhdData name="locationSpineLabel">lweb</mfhd:mfhdData><mfhd:mfhdData name="owningLibrary" id="1">COLUMBIA</mfhd:mfhdData><mfhd:itemCollection><item:itemCount xmlns:item="http://www.endinfosys.com/Voyager/item">0</item:itemCount><item:itemLocation xmlns:item="http://www.endinfosys.com/Voyager/item"><item:itemLocationData name="tmpLoc" xsi:nil="true"/><item:itemLocationData name="tempLocation">Online</item:itemLocationData><item:itemLocationData name="itemEnum" xsi:nil="true"/><item:itemLocationData name="itemChron" xsi:nil="true"/><item:itemLocationData name="itemYear" xsi:nil="true"/><item:itemLocationData name="itemCaption" xsi:nil="true"/><item:itemLocationData name="itemFreeText" xsi:nil="true"/><item:itemLocationData name="itemCopyNumber" xsi:nil="true"/></item:itemLocation></mfhd:itemCollection></mfhd:mfhdRecord></hol:mfhdCollection></hol:holdingsRecord></ser:serviceData></ser:voyagerServiceData>
         
     | 
| 
         @@ -93,12 +93,20 @@ class TestHoldings < HoldingsTestCase 
     | 
|
| 
       93 
93 
     | 
    
         
             
                record = load_fixture("holdings_8891001.xml").records.first
         
     | 
| 
       94 
94 
     | 
    
         
             
                assert_kind_of Array, record.supplements
         
     | 
| 
       95 
95 
     | 
    
         
             
                assert_equal 'Supplement', record.supplements[0], '867 fields'
         
     | 
| 
      
 96 
     | 
    
         
            +
             
     | 
| 
      
 97 
     | 
    
         
            +
                record = load_fixture("holdings_2120018.xml").records.first
         
     | 
| 
      
 98 
     | 
    
         
            +
                assert_kind_of Array, record.supplements
         
     | 
| 
      
 99 
     | 
    
         
            +
                assert_equal '1880-1881 bound in 1 v.', record.supplements[0], '867 fields'
         
     | 
| 
       96 
100 
     | 
    
         
             
              end
         
     | 
| 
       97 
101 
     | 
    
         | 
| 
       98 
102 
     | 
    
         
             
              def test_indexes
         
     | 
| 
       99 
103 
     | 
    
         
             
                record = load_fixture("holdings_8891001.xml").records.first
         
     | 
| 
       100 
104 
     | 
    
         
             
                assert_kind_of Array, record.indexes
         
     | 
| 
       101 
105 
     | 
    
         
             
                assert_equal 'Index', record.indexes[0], '868 fields'
         
     | 
| 
      
 106 
     | 
    
         
            +
             
     | 
| 
      
 107 
     | 
    
         
            +
                record = load_fixture("holdings_8891001_3.xml").records.first
         
     | 
| 
      
 108 
     | 
    
         
            +
                assert_kind_of Array, record.indexes
         
     | 
| 
      
 109 
     | 
    
         
            +
                assert_equal 'Index with note.', record.indexes[0], '868 fields'
         
     | 
| 
       102 
110 
     | 
    
         
             
              end
         
     | 
| 
       103 
111 
     | 
    
         | 
| 
       104 
112 
     | 
    
         
             
              def test_reproduction_note
         
     | 
    
        data/test/test_voyager_api.rb
    CHANGED
    
    | 
         @@ -1,4 +1,28 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            require 'helper'
         
     | 
| 
       2 
2 
     | 
    
         | 
| 
       3 
3 
     | 
    
         
             
            class TestVoyagerApi < MiniTest::Unit::TestCase
         
     | 
| 
      
 4 
     | 
    
         
            +
             
     | 
| 
      
 5 
     | 
    
         
            +
              def setup
         
     | 
| 
      
 6 
     | 
    
         
            +
                @conn = Voyager::Connection.new()
         
     | 
| 
      
 7 
     | 
    
         
            +
                @bad_bib = 1
         
     | 
| 
      
 8 
     | 
    
         
            +
                @good_bib = 123
         
     | 
| 
      
 9 
     | 
    
         
            +
              end
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
      
 11 
     | 
    
         
            +
              def teardown
         
     | 
| 
      
 12 
     | 
    
         
            +
                @conn.clean_session!
         
     | 
| 
      
 13 
     | 
    
         
            +
              end
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
              def test_bad_bib
         
     | 
| 
      
 16 
     | 
    
         
            +
                e = assert_raises(RuntimeError) {
         
     | 
| 
      
 17 
     | 
    
         
            +
                  Voyager::Holdings::Collection.new_from_opac(@bad_bib, @conn)
         
     | 
| 
      
 18 
     | 
    
         
            +
                }
         
     | 
| 
      
 19 
     | 
    
         
            +
                assert_match e.message,
         
     | 
| 
      
 20 
     | 
    
         
            +
                    /com.endinfosys.voyager.holdingsinfo.HoldingsInfo.HoldingsInfoException/
         
     | 
| 
      
 21 
     | 
    
         
            +
              end
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
              def good_bad_bib
         
     | 
| 
      
 24 
     | 
    
         
            +
                result = Voyager::Holdings::Collection.new_from_opac(@good_bib, @conn)
         
     | 
| 
      
 25 
     | 
    
         
            +
                refute_nil result
         
     | 
| 
      
 26 
     | 
    
         
            +
              end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
       4 
28 
     | 
    
         
             
            end
         
     | 
| 
         @@ -19,10 +19,25 @@ class TestVoyagerConnection < MiniTest::Unit::TestCase 
     | 
|
| 
       19 
19 
     | 
    
         
             
                vc = Voyager::Connection.new(:http_client => hc, :cookie_path => cookie_file)
         
     | 
| 
       20 
20 
     | 
    
         | 
| 
       21 
21 
     | 
    
         
             
                vc.request("http://www.google.com")
         
     | 
| 
       22 
     | 
    
         
            -
             
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
       23 
23 
     | 
    
         
             
                assert File.exists?(cookie_dir)
         
     | 
| 
       24 
24 
     | 
    
         
             
                FileUtils.rm_rf(File.dirname(cookie_dir))
         
     | 
| 
       25 
25 
     | 
    
         | 
| 
       26 
26 
     | 
    
         
             
              end
         
     | 
| 
       27 
27 
     | 
    
         | 
| 
      
 28 
     | 
    
         
            +
              def test_new_voyager_connection
         
     | 
| 
      
 29 
     | 
    
         
            +
                  conn = Voyager::Connection.new()
         
     | 
| 
      
 30 
     | 
    
         
            +
                  refute_nil conn
         
     | 
| 
      
 31 
     | 
    
         
            +
                  assert_kind_of Voyager::Connection, conn
         
     | 
| 
      
 32 
     | 
    
         
            +
              end
         
     | 
| 
      
 33 
     | 
    
         
            +
             
     | 
| 
      
 34 
     | 
    
         
            +
              # http://example.com will return a valid HTML document
         
     | 
| 
      
 35 
     | 
    
         
            +
              def test_bad_xml_in_voyager_connection
         
     | 
| 
      
 36 
     | 
    
         
            +
                e = assert_raises(RuntimeError) {
         
     | 
| 
      
 37 
     | 
    
         
            +
                  Voyager::Holdings::Collection.new_from_opac(1, nil, "http://example.com")
         
     | 
| 
      
 38 
     | 
    
         
            +
                }
         
     | 
| 
      
 39 
     | 
    
         
            +
                assert_match e.message, /invalid xml/i
         
     | 
| 
      
 40 
     | 
    
         
            +
              end
         
     | 
| 
      
 41 
     | 
    
         
            +
             
     | 
| 
      
 42 
     | 
    
         
            +
             
     | 
| 
       28 
43 
     | 
    
         
             
            end
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: voyager_api
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.3. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.3.8
         
     | 
| 
       5 
5 
     | 
    
         
             
              prerelease: 
         
     | 
| 
       6 
6 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       7 
7 
     | 
    
         
             
            authors:
         
     | 
| 
         @@ -10,11 +10,11 @@ authors: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       11 
11 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       12 
12 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       13 
     | 
    
         
            -
            date: 2013-07- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2013-07-31 00:00:00.000000000Z
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: activesupport
         
     | 
| 
       17 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 17 
     | 
    
         
            +
              requirement: &2153298640 !ruby/object:Gem::Requirement
         
     | 
| 
       18 
18 
     | 
    
         
             
                none: false
         
     | 
| 
       19 
19 
     | 
    
         
             
                requirements:
         
     | 
| 
       20 
20 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -22,10 +22,10 @@ dependencies: 
     | 
|
| 
       22 
22 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       23 
23 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       24 
24 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       25 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 25 
     | 
    
         
            +
              version_requirements: *2153298640
         
     | 
| 
       26 
26 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       27 
27 
     | 
    
         
             
              name: i18n
         
     | 
| 
       28 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 28 
     | 
    
         
            +
              requirement: &2153298120 !ruby/object:Gem::Requirement
         
     | 
| 
       29 
29 
     | 
    
         
             
                none: false
         
     | 
| 
       30 
30 
     | 
    
         
             
                requirements:
         
     | 
| 
       31 
31 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -33,10 +33,10 @@ dependencies: 
     | 
|
| 
       33 
33 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       34 
34 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       35 
35 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       36 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 36 
     | 
    
         
            +
              version_requirements: *2153298120
         
     | 
| 
       37 
37 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       38 
38 
     | 
    
         
             
              name: httpclient
         
     | 
| 
       39 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 39 
     | 
    
         
            +
              requirement: &2153297480 !ruby/object:Gem::Requirement
         
     | 
| 
       40 
40 
     | 
    
         
             
                none: false
         
     | 
| 
       41 
41 
     | 
    
         
             
                requirements:
         
     | 
| 
       42 
42 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -44,10 +44,10 @@ dependencies: 
     | 
|
| 
       44 
44 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       45 
45 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       46 
46 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       47 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 47 
     | 
    
         
            +
              version_requirements: *2153297480
         
     | 
| 
       48 
48 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       49 
49 
     | 
    
         
             
              name: nokogiri
         
     | 
| 
       50 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 50 
     | 
    
         
            +
              requirement: &2153296640 !ruby/object:Gem::Requirement
         
     | 
| 
       51 
51 
     | 
    
         
             
                none: false
         
     | 
| 
       52 
52 
     | 
    
         
             
                requirements:
         
     | 
| 
       53 
53 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -55,10 +55,10 @@ dependencies: 
     | 
|
| 
       55 
55 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       56 
56 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       57 
57 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       58 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 58 
     | 
    
         
            +
              version_requirements: *2153296640
         
     | 
| 
       59 
59 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       60 
60 
     | 
    
         
             
              name: minitest
         
     | 
| 
       61 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 61 
     | 
    
         
            +
              requirement: &2153296060 !ruby/object:Gem::Requirement
         
     | 
| 
       62 
62 
     | 
    
         
             
                none: false
         
     | 
| 
       63 
63 
     | 
    
         
             
                requirements:
         
     | 
| 
       64 
64 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -66,10 +66,10 @@ dependencies: 
     | 
|
| 
       66 
66 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       67 
67 
     | 
    
         
             
              type: :development
         
     | 
| 
       68 
68 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       69 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 69 
     | 
    
         
            +
              version_requirements: *2153296060
         
     | 
| 
       70 
70 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       71 
71 
     | 
    
         
             
              name: bundler
         
     | 
| 
       72 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 72 
     | 
    
         
            +
              requirement: &2153203400 !ruby/object:Gem::Requirement
         
     | 
| 
       73 
73 
     | 
    
         
             
                none: false
         
     | 
| 
       74 
74 
     | 
    
         
             
                requirements:
         
     | 
| 
       75 
75 
     | 
    
         
             
                - - ~>
         
     | 
| 
         @@ -77,10 +77,10 @@ dependencies: 
     | 
|
| 
       77 
77 
     | 
    
         
             
                    version: 1.0.0
         
     | 
| 
       78 
78 
     | 
    
         
             
              type: :development
         
     | 
| 
       79 
79 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       80 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 80 
     | 
    
         
            +
              version_requirements: *2153203400
         
     | 
| 
       81 
81 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       82 
82 
     | 
    
         
             
              name: jeweler
         
     | 
| 
       83 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 83 
     | 
    
         
            +
              requirement: &2153202720 !ruby/object:Gem::Requirement
         
     | 
| 
       84 
84 
     | 
    
         
             
                none: false
         
     | 
| 
       85 
85 
     | 
    
         
             
                requirements:
         
     | 
| 
       86 
86 
     | 
    
         
             
                - - ~>
         
     | 
| 
         @@ -88,10 +88,10 @@ dependencies: 
     | 
|
| 
       88 
88 
     | 
    
         
             
                    version: 1.6.4
         
     | 
| 
       89 
89 
     | 
    
         
             
              type: :development
         
     | 
| 
       90 
90 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       91 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 91 
     | 
    
         
            +
              version_requirements: *2153202720
         
     | 
| 
       92 
92 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       93 
93 
     | 
    
         
             
              name: rcov
         
     | 
| 
       94 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 94 
     | 
    
         
            +
              requirement: &2153201860 !ruby/object:Gem::Requirement
         
     | 
| 
       95 
95 
     | 
    
         
             
                none: false
         
     | 
| 
       96 
96 
     | 
    
         
             
                requirements:
         
     | 
| 
       97 
97 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -99,10 +99,10 @@ dependencies: 
     | 
|
| 
       99 
99 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       100 
100 
     | 
    
         
             
              type: :development
         
     | 
| 
       101 
101 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       102 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 102 
     | 
    
         
            +
              version_requirements: *2153201860
         
     | 
| 
       103 
103 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       104 
104 
     | 
    
         
             
              name: guard-minitest
         
     | 
| 
       105 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 105 
     | 
    
         
            +
              requirement: &2153201120 !ruby/object:Gem::Requirement
         
     | 
| 
       106 
106 
     | 
    
         
             
                none: false
         
     | 
| 
       107 
107 
     | 
    
         
             
                requirements:
         
     | 
| 
       108 
108 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -110,10 +110,10 @@ dependencies: 
     | 
|
| 
       110 
110 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       111 
111 
     | 
    
         
             
              type: :development
         
     | 
| 
       112 
112 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       113 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 113 
     | 
    
         
            +
              version_requirements: *2153201120
         
     | 
| 
       114 
114 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       115 
115 
     | 
    
         
             
              name: rb-fsevent
         
     | 
| 
       116 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 116 
     | 
    
         
            +
              requirement: &2153199980 !ruby/object:Gem::Requirement
         
     | 
| 
       117 
117 
     | 
    
         
             
                none: false
         
     | 
| 
       118 
118 
     | 
    
         
             
                requirements:
         
     | 
| 
       119 
119 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -121,10 +121,10 @@ dependencies: 
     | 
|
| 
       121 
121 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       122 
122 
     | 
    
         
             
              type: :development
         
     | 
| 
       123 
123 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       124 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 124 
     | 
    
         
            +
              version_requirements: *2153199980
         
     | 
| 
       125 
125 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       126 
126 
     | 
    
         
             
              name: mocha
         
     | 
| 
       127 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 127 
     | 
    
         
            +
              requirement: &2153199120 !ruby/object:Gem::Requirement
         
     | 
| 
       128 
128 
     | 
    
         
             
                none: false
         
     | 
| 
       129 
129 
     | 
    
         
             
                requirements:
         
     | 
| 
       130 
130 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -132,10 +132,10 @@ dependencies: 
     | 
|
| 
       132 
132 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       133 
133 
     | 
    
         
             
              type: :development
         
     | 
| 
       134 
134 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       135 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 135 
     | 
    
         
            +
              version_requirements: *2153199120
         
     | 
| 
       136 
136 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       137 
137 
     | 
    
         
             
              name: growl
         
     | 
| 
       138 
     | 
    
         
            -
              requirement: & 
     | 
| 
      
 138 
     | 
    
         
            +
              requirement: &2153198400 !ruby/object:Gem::Requirement
         
     | 
| 
       139 
139 
     | 
    
         
             
                none: false
         
     | 
| 
       140 
140 
     | 
    
         
             
                requirements:
         
     | 
| 
       141 
141 
     | 
    
         
             
                - - ! '>='
         
     | 
| 
         @@ -143,7 +143,7 @@ dependencies: 
     | 
|
| 
       143 
143 
     | 
    
         
             
                    version: '0'
         
     | 
| 
       144 
144 
     | 
    
         
             
              type: :development
         
     | 
| 
       145 
145 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       146 
     | 
    
         
            -
              version_requirements: * 
     | 
| 
      
 146 
     | 
    
         
            +
              version_requirements: *2153198400
         
     | 
| 
       147 
147 
     | 
    
         
             
            description: ! 'Middleware gem for Voyager 7 API calls, specificially holdings information '
         
     | 
| 
       148 
148 
     | 
    
         
             
            email: github@jamesstuart.org
         
     | 
| 
       149 
149 
     | 
    
         
             
            executables: []
         
     | 
| 
         @@ -177,6 +177,7 @@ files: 
     | 
|
| 
       177 
177 
     | 
    
         
             
            - test/fixtures/holdings_1052500.xml
         
     | 
| 
       178 
178 
     | 
    
         
             
            - test/fixtures/holdings_1558940.xml
         
     | 
| 
       179 
179 
     | 
    
         
             
            - test/fixtures/holdings_1717646.xml
         
     | 
| 
      
 180 
     | 
    
         
            +
            - test/fixtures/holdings_2120018.xml
         
     | 
| 
       180 
181 
     | 
    
         
             
            - test/fixtures/holdings_2606957.xml
         
     | 
| 
       181 
182 
     | 
    
         
             
            - test/fixtures/holdings_289196.xml
         
     | 
| 
       182 
183 
     | 
    
         
             
            - test/fixtures/holdings_299492.xml
         
     | 
| 
         @@ -208,6 +209,7 @@ files: 
     | 
|
| 
       208 
209 
     | 
    
         
             
            - test/fixtures/holdings_8889994.xml
         
     | 
| 
       209 
210 
     | 
    
         
             
            - test/fixtures/holdings_8891001.xml
         
     | 
| 
       210 
211 
     | 
    
         
             
            - test/fixtures/holdings_8891001_2.xml
         
     | 
| 
      
 212 
     | 
    
         
            +
            - test/fixtures/holdings_8891001_3.xml
         
     | 
| 
       211 
213 
     | 
    
         
             
            - test/fixtures/holdings_8918502.xml
         
     | 
| 
       212 
214 
     | 
    
         
             
            - test/fixtures/holdings_9420109.xml
         
     | 
| 
       213 
215 
     | 
    
         
             
            - test/fixtures/holdings_9421045.xml
         
     | 
| 
         @@ -238,7 +240,7 @@ required_ruby_version: !ruby/object:Gem::Requirement 
     | 
|
| 
       238 
240 
     | 
    
         
             
                  version: '0'
         
     | 
| 
       239 
241 
     | 
    
         
             
                  segments:
         
     | 
| 
       240 
242 
     | 
    
         
             
                  - 0
         
     | 
| 
       241 
     | 
    
         
            -
                  hash:  
     | 
| 
      
 243 
     | 
    
         
            +
                  hash: 3233840626635347838
         
     | 
| 
       242 
244 
     | 
    
         
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         
     | 
| 
       243 
245 
     | 
    
         
             
              none: false
         
     | 
| 
       244 
246 
     | 
    
         
             
              requirements:
         
     |