XMLのネストされたレイヤーを含むXMLペイロードを含むInputStream
があります。ペイロードは膨大なものになる可能性があるため、メモリをできるだけ少なくするために、すべてをストリームとして処理する必要があります。 Unfortunatly私が得ようとしているペイロードには、値がの別のxml文書という属性を持つタグを含む、深くネストされたXML文書が含まれています。あなたはanother_payload
が別の大規模なXMLを保持しているvalue
と呼ばれる属性を持っていることがわかりますAxiomを使用して属性の値をストリームすることは可能です
<another_payload value="<xml><xml/>"/>
細心の注意を払う:私はこのペイロードにドリルダウンすると
<xml>
<payload><xml><another_payload value="<xml><xml/>"/><xml/><payload/>
<xml/>
ことはあなたが私たちにこのようなものに気づくでしょう文書。
属性には、メモリにロードできない巨大なXMLドキュメントが含まれている可能性があります。私はそれをちょうど同じようにストリーミングする必要がありますElementHelper::getTextAsStream
誰かが尋ねる前に、ペイロードを原点で構造化して、私がそれをより良く扱うことができるように交渉しようとしましたが、理由はありません。
あなたの質問では、属性の値について話しますが、この例ではXMLがテキストノードとして埋め込まれています(つまり、属性の値ではなく要素の内容)。あなたは質問してください明確にすることはできますか? –
@AndreasVeithen私は、別のXML文書を保持する属性 'value'を持つタグを持つ別のXML文書を含むXML文書を表示するために私の例を拡張しました。 –