2011-02-01 15 views
2

xmerlのような既存のxmlパーサーを使わずに動作させることができるのかどうか疑問に思っていました。ビット構文のみを使用して実装するのはどれくらい実現可能でしょうか?また、xmlをこのように解析する方法を示すオンラインドキュメントがありますか?Erlang xmlでビット構文を解析しています

答えて

7

XMLパーサは理由のために利用可能です。実行可能であれば、専用パーサは存在しません。ビットシンタックスは、ビット/バイトの順序が固定されている場合にのみ有効です。 XMLは属性の順序を要求するものではなく、ほとんどの人はXML仕様が兄弟要素の順序を強制するものではないことに気づいていません。だから、ビット構文と何かをマッチさせようとすると、属性の順序付けられていない性質だけでなく、順序付けされていない兄弟要素がXMLのすべての可能な入力で機能しなくなります。ちょうどXMLパーサを使用してください。これはあなたが死ぬことを望む丘ではありません。

+1

@hyperboreean:上記すべてに同意します。たとえば、後に解析をトラバースするのに役立つerlangパターンマッチングを使用します。 xmerl_scan:file/2 ... –

+0

上記の答えは全然意味があります。私はどこにいたのか分かりません。予想されるプロトコルを非常に高速に解析するような非常に特殊化されたものを用意したいと思っています。 – hyperboreean

+0

@Peer Stritzinger:xmerl_scan:file/2のベンチマークはありますか?私は本当に速いものを探しています – hyperboreean

関連する問題