# File lib/fog/aws/requests/dns/change_resource_record_sets.rb, line 33
        def change_resource_record_sets(zone_id, change_batch, options = {})

          # AWS methods return zone_ids that looks like '/hostedzone/id'.  Let the caller either use
          # that form or just the actual id (which is what this request needs)
          zone_id = zone_id.sub('/hostedzone/', '')

          optional_tags = ''
          options.each do |option, value|
            case option
            when :comment
              optional_tags += "<Comment>#{value}</Comment>"
            end
          end

          #build XML
          if change_batch.count > 0

            changes = "<ChangeBatch>#{optional_tags}<Changes>"

            change_batch.each do |change_item|
              action_tag = %Q{<Action>#{change_item[:action]}</Action>}
              name_tag   = %Q{<Name>#{change_item[:name]}</Name>}
              type_tag   = %Q{<Type>#{change_item[:type]}</Type>}

              # TTL must be omitted if using an alias record
              ttl_tag = ''
              ttl_tag += %Q{<TTL>#{change_item[:ttl]}</TTL>} unless change_item[:alias_target]

              resource_records = change_item[:resource_records] || []
              resource_record_tags = ''
              resource_records.each do |record|
                resource_record_tags += %Q{<ResourceRecord><Value>#{record}</Value></ResourceRecord>}
              end

              # ResourceRecords must be omitted if using an alias record
              resource_tag = ''
              resource_tag += %Q{<ResourceRecords>#{resource_record_tags}</ResourceRecords>} if resource_records.any?

              alias_target_tag = ''
              if change_item[:alias_target]
                alias_target_tag += %Q{<AliasTarget><HostedZoneId>#{change_item[:alias_target][:hosted_zone_id]}</HostedZoneId><DNSName>#{change_item[:alias_target][:dns_name]}</DNSName></AliasTarget>}
              end

              change_tags = %Q{<Change>#{action_tag}<ResourceRecordSet>#{name_tag}#{type_tag}#{ttl_tag}#{resource_tag}#{alias_target_tag}</ResourceRecordSet></Change>}
              changes += change_tags
            end

            changes += '</Changes></ChangeBatch>'
          end

          body = %Q{<?xml version="1.0" encoding="UTF-8"?><ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2011-05-05/">#{changes}</ChangeResourceRecordSetsRequest>}
          request({
            :body       => body,
            :parser     => Fog::Parsers::DNS::AWS::ChangeResourceRecordSets.new,
            :expects    => 200,
            :method     => 'POST',
            :path       => "hostedzone/#{zone_id}/rrset"
          })

        end