我正在尋求一種有效的方法來處理嵌入式設備上的xml數據,這些數據的性能因素非常有限(RAM和CPU)。 XML的優點是可以通過基於計算機的軟件工具輕鬆處理。一旦數據被建模並加載到嵌入式設備,它將保持靜態。嵌入式設備的二進制XML表示和處理
我認爲二進制XML表示法是最好的選擇。但是我應該遵循哪種轉換標準,還是我應該創造一些全新的東西?
要求:
- 清除編碼規則,從而確定性二進制格式作爲結果
- 有效隨機存取爲二進制數據(下一個元素)通過
- 容易獲得C-數據結構
示例數據:
<Employee>
<Name>
<GivenName>Gaston</GivenName>
<FamilyName>Lagaffe<FamilyName>
</Name>
<innovation>
<description>Cosmo-coucou : horloge murale imitant la cabine Apollo </description>
<drawing>604</drawing>
</innovation>
<innovation>
<description>Parapluie simulateur de beau temps </description>
<drawing>648</drawing>
</innovation>
最後輕鬆地與ç對待這個二進制數據,如提取數據到結構等的能力,以符合最重要的要求。
struct Employee {
name *name;
innovation *inovations;
};
struct name {
char *GivenName;
char *FamilyName;
};
struct innovation {
char *Description;
int drawing;
};
可以asn1c幫我這個嗎?
使用ASN.1編碼規則可以完成這項工作嗎?
您對嵌入式設備上的二進制XML數據有什麼經驗?
請參見:[在語言中序列化數據...](http://stackoverflow.com/questions/144435/whats-the-best-way-to-serialize-data-in-a-language-independent-二進制格式)的一些相關信息。還有[CodeSynthesis XSD/e](http://www.codesynthesis.com/products/xsde/)和[Wikipedia data binding](http://en.wikipedia.org/wiki/XML_data_binding)頁面。 – 2013-05-13 20:33:07