这个编码到底那儿错了?

这个编码到底那儿错了?

我想要下面这个结果,但是我写出的编码为什么得不出来?到底那儿错了?
<?xml version="1.0" encoding="utf-8" ?>
<category xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="urn:yahoo:jp:auc:category" xsi:schemaLocation="urn:yahoo:jp:auc:category http://api.auctions.yahoo.co.jp/ ... V1/CategoryTree.xsd">
<categoryId>23568</categoryId>
<categoryName>ソフトウェア</categoryName>
<categoryPath>オークション > コンピュータ > ソフトウェア</categoryPath>
<parentCategoryPath>オークション > コンピュータ</parentCategoryPath>
<isLeaf>false</isLeaf>
<childCategoryNum>4</childCategoryNum>
<childCategory>
.
.
.
我的编码如下:
$KCODE = 's'
require 'open-uri'
require 'rexml/document'
require 'cgi'

BASE_URI = 'http://api.auctions.yahoo.co.jp/AuctionWebService/V1/CategoryTree'

def print_categoryId(term)
 term = CGI::escape(term)
 xml = open(BASE_URI + "?appid=saikeina&category=#{term}").read
 document = REXML:document.new(xml)
 
 REXML::XPath.each(document, '/category/categoryId/[]') do |categoryId|
  #begin
  f = File.open("003.txt" , "w+")
  f.write(document)
  f.close
  #end
 end
end

(puts "Usage: #{$0} [search term]"; exit) if ARGV.empty?
print_categoryId(ARGV.join(' '))

我的编码得出来的结果:
<?xml version='1.0' encoding='UTF-8'?>
<category xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='urn:yahoo:jp:auc:category [url]http://api.auctions.yahoo.co.jp/AuctionWebService/V1/CategoryTree.xsd'[/url] xmlns='urn:yahoo:jp:auc:category'>
   <categoryId>0</categoryId>
   <categoryName>オークション</categoryName>
   <categoryPath>オークション</categoryPath>
   <parentCategoryPath/>
   <isLeaf>false</isLeaf>
   <childCategoryNum>25</childCategoryNum>
   <childCategory>
   .
   .
   .

帮忙看看,我到底那儿错啦?问题有点儿麻烦,谢谢各位!

你上面的结果从哪来的

人家本身就是25个childCategory呀

除非你在xpath里面做过滤条件吧。。
什么版本的哦?