コロン /ネームスペースを含む要素を含むXMLを解析します
-
28-09-2019 - |
質問
XMLを使用して、Google AppsスクリプトでXMLドキュメントを解析します。http://code.google.com/googleapps/appsscript/articles/xml_tutorial.html#howitworks
ただし、要素名にコロンがある場合、これは機能しません(解析は失敗します)。名前空間かもしれませんが、XMLドキュメント全体の単一の名前空間です。
<aws:elementname>...</aws:elementname>
これはGoogleのXMLの問題ですか、それともジェネリックですか?
解決
議論を真実として送らないでください。
var oXML = Xml.parse(sXML, false);
var root = oXML.getElement();
var topElement = root.getElements("http://namespace-uri","topElement");
var childElement = topElement[0].getElements("http://namespace-uri","childElement");
他のヒント
それは間違いなく一般的な問題ではありません。確かに、名前空間を処理するXMLパーサーがあります。
チュートリアルコードの制限であり、Googleライブラリが実際に名前空間を処理できると思われますが、APIドキュメントを見ることでは多少推測されています。
チュートリアルコードは、次のような呼び出しを使用しています
var movies = doc.html.head.getElements("movie");
これは、namespaceに適用されていないバージョンのようです。
このメソッドの過負荷もあり、名前空間URLを使用しており、名前空間が関係している場合は使用する必要がある場合があります。
名前空間を使用する場合は、最初に宣言する必要があります。例えば:
<root xmlns:aws="some-uri">
<aws:elementname />
</root>
所属していません StackOverflow