0
我發現,引入nokogiri :: XML有兩種方法來獲取命名空間的列表:#namespaces
和collect_namespaces
:使用Nokogiri :: XML#collect_namespaces或#namespaces?
doc.namespaces
{
"xmlns:iso4217" => "http://www.xbrl.org/2003/iso4217",
"xmlns:link" => "http://www.xbrl.org/2003/linkbase",
"xmlns:tdnet-qcedjpsm-99970" => "http://www.xbrl.tdnet.info/jp/br/tdnet/qc/edjp/sm/99970/2013-08-02399970",
"xmlns:tse-t-ed" => "http://www.xbrl.tdnet.info/jp/br/tdnet/t/ed/2007-06-30",
"xmlns:tse-t-hi" => "http://www.xbrl.tdnet.info/jp/br/tdnet/t/hi/2007-06-30",
"xmlns:xlink" => "http://www.w3.org/1999/xlink",
"xmlns:xsd" => "http://www.w3.org/2001/XMLSchema",
"xmlns:xsi" => "http://www.w3.org/2001/XMLSchema-instance",
"xmlns:xbrli" => "http://www.xbrl.org/2003/instance"
}
doc.collect_namespaces
{
"xmlns:xbrli" => "http://www.xbrl.org/2003/instance",
"xmlns:xsi" => "http://www.w3.org/2001/XMLSchema-instance",
"xmlns:xsd" => "http://www.w3.org/2001/XMLSchema",
"xmlns:xlink" => "http://www.w3.org/1999/xlink",
"xmlns:tse-t-hi" => "http://www.xbrl.tdnet.info/jp/br/tdnet/t/hi/2007-06-30",
"xmlns:tse-t-ed" => "http://www.xbrl.tdnet.info/jp/br/tdnet/t/ed/2007-06-30",
"xmlns:tdnet-qcedjpsm-99970" => "http://www.xbrl.tdnet.info/jp/br/tdnet/qc/edjp/sm/99970/2013-08-02399970",
"xmlns:link" => "http://www.xbrl.org/2003/linkbase",
"xmlns:iso4217" => "http://www.xbrl.org/2003/iso4217"
這兩種方法的工作原理幾乎相同,除了一個返回哈希相反的順序。是否有一個原因?
我無法獲取信息應該使用哪種方法。
如果除了訂單沒有區別,我會使用namespaces
,因爲它更短。