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