forked from schmurfy/libwbxml
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME
More file actions
151 lines (124 loc) · 5.99 KB
/
README
File metadata and controls
151 lines (124 loc) · 5.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
WBXML Library
-------------
The WBXML Library (aka libwbxml) contains a library and its associated tools to Parse,
Encode and Handle WBXML documents.
The WBXML format is a binary representation of XML, defined by the Wap Forum, and used
to reduce bandwidth in mobile communications.
Dependency:
-----------
The WBXML Library needs Expat to enable XML Parsing feature (and so XML to WBXML conversion).
High Level API:
---------------
-------------------------
(1) | |
[ WBXML ] ---------> | | ----------> [ XML ]
| WBXML Library |
[ WBXML ] <--------- | | <---------- [ XML ]
| | (2)
-------------------------
The high level API permits to:
- (1) Convert a WBXML Document to an XML Document
- (2) Convert an XML Document to a WBXML Document
Inside the WBXML Library:
-------------------------
[ WBXML ] [ XML ]
| |
| ------------------------- ----------------------- |
| | WBXML Parser (1) | | Expat XML Parser | |
| | | | | |
| ------------------------- ----------------------- |
| |WBXML Callbacks (3)| |XML Callbacks (4)| |
\ /
\ /
-------------------------> [ WBXML Tree (2) ] <------------------------
||
||
\/
-----------------------
| WBXML Encoder (5) |
| |
-----------------------
| |
| |
/ \
[ WBXML ] <----------------------- ------------------------> [ XML ]
The WBXML Library contains:
- (1) A WBXML Parser, with a SAX like interface (ie: this is a kind of Expat, but for WBXML)
- (2) A WBXML Tree structure (an internal representation of a WBXML/XML Document)
- (3) Libwbxml Callbacks to convert a WBXML Document to a WBXML Tree
- (4) Expat Callbacks to convert an XML Document to a WBXML Tree
- (5) A WBXML Encoder, that encodes a WBXML Tree to a WBXML Document or to an XML Document
If you find bugs, or simply use this library, feel free to contact me.
Supported Languages:
--------------------
- WML 1.0, 1.1, 1.2, 1.3
- WTA 1.0
- WTA-WML 1.2
- CHANNEL 1.1, 1.2
- SI 1.0 (tested)
- SL 1.0 (tested)
- CO 1.0
- PROV 1.0 (tested)
- EMN 1.0 (tested)
- DRMREL 1.0 (tested)
- Ericsson / Nokia OTA Settings v7.0 (tested)
- SYNCML 1.0, 1.1, 1.2
- WV CSP 1.1, 1.2 (partially tested)
TOOLS:
------
Two tools are provided:
- wbxml2xml: (WBXML => XML)
wbxml2xml -i -o output.xml input.wbxml
wbxml2xml -i 4 -l CSP12 -o output.xml input.wbxml
Options:
-o output.xml : output file
-m X (Generation mode - Default: 1) with:
0: Compact Generation
1: Indent Generation
2: Canonical Generation
-i X (Indent delta when using mode '1' - Default: 1)
-k (Keep Ignorable Whitespaces - Default: FALSE)
-l X (Force Language Type of document to parse)
WML10 : WML 1.0
WML11 : WML 1.1
WML12 : WML 1.2
WML13 : WML 1.3
WTA10 : WTA 1.0
WTAWML12 : WTAWML 1.2
CHANNEL11 : CHANNEL 1.1
CHANNEL12 : CHANNEL 1.2
SI10 : SL 1.0
SL10 : SI 1.0
CO10 : CO 1.0
PROV10 : PROV 1.0
EMN10 : EMN 1.0
DRMREL10 : DRMREL 1.0
OTA : OTA Settings
SYNCML10 : SYNCML 1.0
DEVINF10 : DEVINF 1.0
SYNCML11 : SYNCML 1.1
DEVINF11 : DEVINF 1.1
METINF11 : METINF 1.1
SYNCML12 : SYNCML 1.2
DEVINF12 : DEVINF 1.2
METINF12 : METINF 1.2
CSP11 : WV CSP 1.1
CSP12 : WV CSP 1.2
Note: '-' can be used to mean stdin on input or stdout on output
- xml2wbxml: (XML => WBXML)
xml2wbxml -o output.wbxml input.xml
xml2wbxml -k -n -v 1.1 -o output.wbxml input.xml
Options:
-o output.wbxml : output file
-k : keep ignorable whitespaces (Default: ignore)
-n : do NOT generate String Table (Default: generate)
-v X (WBXML Version of output document)
1.0 : WBXML 1.0
1.1 : WBXML 1.1
1.2 : WBXML 1.2
1.3 : WBXML 1.3
Note: '-' can be used to mean stdin on input or stdout on output
CONTACT:
--------
OpenSync mailing list <opensync-users@lists.sf.net>
http://libwbxml.opensync.org