如何处理xml的命名空间

时间:2011-06-30 02:43:57

标签: xml actionscript-3

我是Actionscript的新手。 我正在使用wikipedia api开发一个flex移动项目,该项目返回一个带有这样名称空间的xml。

<SearchSuggestion version="2.0" xmlns="http://opensearch.org/searchsuggest2">
<Query xml:space="preserve">xml</Query>
<Section>
 <Item>
    <Text xml:space="preserve">XML</Text>
    <Description xml:space="preserve">Extensible Markup Language (XML) is a set of          rules for encoding documents in machine-readable form. </Description>
    <Url xml:space="preserve">http://en.wikipedia.org/wiki/XML</Url>
  </Item>
</Section>
</SearchSuggestion>

但是它无法被识别为xml。我已经尝试了几种方法来处理命名空间 喜欢

private function removeNamespace(xml:XML):XML
{
var rawXMLString:String=xml.toXMLString();
var xmlnsPattern:RegExp=new RegExp("xmlns=[^\"]*\"[^\"]*\"","gi");
    var clean:String=rawXMLString.replace(xmlnsPattern,"");
    return new XML(clean);
}
protected function request_resultHandler(event:ResultEvent):void
{

trace(event.result.toString());
responseXML=removeNamespace(new XML(event.result));
resultlist=responseXML.Section;
trace(responseXML.toString());
}
<s:List includeIn="normal" left="0" right="0" top="0" bottom="0" dataProvider="    {resultlist.Item}" labelField="Text"></s:List>

有没有办法处理这个问题,只需将其转换为有效的xml并成功显示在列表中。

1 个答案:

答案 0 :(得分:0)

您是否看过如何deal with namespaces