AW: Combination of SyncML, JAXB
Manfred Sturm <[email protected]> Mon, 3 Feb 2003 12:16:39 +0100
| Newsgroups | gmane.comp.java.sun.xml.general |
|---|---|
| Message-ID | <[email protected]> |
Maulik,
JAXB (1.0 Beta) needs a XML schema file to generate classes. Convert your
DTD into an XML schema first and JAXB will do a fine job (see attachement).
Manfred
| -----Ursprüngliche Nachricht-----
| Von: XML technologies in the Java Platform
| [mailto:[email protected]]Im Auftrag von Maulik Thakkar
| Gesendet: Friday, January 31, 2003 12:22 PM
| An: [email protected]
| Betreff: [XML-INTEREST] Combination of SyncML, JAXB
|
|
| Hi All,
|
| I m working with SyncML & JAXB.
|
| My Problem is, I m creating the set of java files to
| parse the XML file which is created according to DTD.
|
| But With the use of the JAXB generated file, i m not
| able to parse the file and getting error.
|
| My Code is as Follow....
|
| Input File for generating JAXB classes.
|
| 1) SyncmlRepresent.DTD (Given By SyncML.org. Define
| Protocol)
|
| 2) SyncmlRepresent.xjs (Define by me)
|
| Above both file are attached in mail.
|
| And My SyncApp.java taking XML file as Input, parse it
| and generate the new XML file just like input xml
| file.
|
| I m also attaching the SyncApp.java file and xml file
| that is to be used.
|
| Please help me out if any one got my problem and
| propar solution.
|
| Regards
| Maulik
|
|
|
| ______________________________________________________________
| __________
| Missed your favourite TV serial last night? Try the new, Yahoo! TV.
| visit http://in.tv.yahoo.com
SyncmlRepresent.xsd
(text/xml, 21.4 KB)
<?xml version="1.0" encoding="UTF-8"?>
<!--W3C Schema generated by XMLSPY v5 rel. 3 U (http://www.xmlspy.com)-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
<xs:element name="Add">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Alert">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Data" minOccurs="0"/>
<xs:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Atomic">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:choice maxOccurs="unbounded">
<xs:element ref="Add"/>
<xs:element ref="Replace"/>
<xs:element ref="Delete"/>
<xs:element ref="Copy"/>
<xs:element ref="Atomic"/>
<xs:element ref="Map"/>
<xs:element ref="Sequence"/>
<xs:element ref="Sync"/>
<xs:element ref="Get"/>
<xs:element ref="Exec"/>
<xs:element ref="Alert"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="CmdID" type="xs:string"/>
<xs:element name="CmdRef" type="xs:string"/>
<xs:element name="Copy">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Cred">
<xs:complexType>
<xs:sequence>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Data"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Data" type="xs:string"/>
<xs:element name="Delete">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element name="Archive" minOccurs="0">
<xs:complexType/>
</xs:element>
<xs:element name="SftDel" minOccurs="0">
<xs:complexType/>
</xs:element>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Exec">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Get">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Lang" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Item">
<xs:complexType>
<xs:sequence>
<xs:element ref="Target" minOccurs="0"/>
<xs:element ref="Source" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Data" minOccurs="0"/>
<xs:element name="MoreData" minOccurs="0">
<xs:complexType/>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Lang" type="xs:string"/>
<xs:element name="LocName" type="xs:string"/>
<xs:element name="LocURI" type="xs:string"/>
<xs:element name="Map">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="Target"/>
<xs:element ref="Source"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element name="MapItem" maxOccurs="unbounded">
<xs:complexType>
<xs:sequence>
<xs:element ref="Target"/>
<xs:element ref="Source"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Meta" type="xs:string"/>
<xs:element name="MsgRef" type="xs:string"/>
<xs:element name="NoResp">
<xs:complexType/>
</xs:element>
<xs:element name="Replace">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Sequence">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:choice maxOccurs="unbounded">
<xs:element ref="Add"/>
<xs:element ref="Replace"/>
<xs:element ref="Delete"/>
<xs:element ref="Copy"/>
<xs:element ref="Atomic"/>
<xs:element ref="Map"/>
<xs:element ref="Sync"/>
<xs:element ref="Get"/>
<xs:element ref="Alert"/>
<xs:element ref="Exec"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Source">
<xs:complexType>
<xs:sequence>
<xs:element ref="LocURI"/>
<xs:element ref="LocName" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SourceRef" type="xs:string"/>
<xs:element name="Sync">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Target" minOccurs="0"/>
<xs:element ref="Source" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element name="NumberOfChanges" type="xs:string" minOccurs="0"/>
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element ref="Add"/>
<xs:element ref="Atomic"/>
<xs:element ref="Copy"/>
<xs:element ref="Delete"/>
<xs:element ref="Replace"/>
<xs:element ref="Sequence"/>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SyncML">
<xs:complexType>
<xs:sequence>
<xs:element name="SyncHdr">
<xs:complexType>
<xs:sequence>
<xs:element name="VerDTD" type="xs:string"/>
<xs:element name="VerProto" type="xs:string"/>
<xs:element name="SessionID" type="xs:string"/>
<xs:element name="MsgID" type="xs:string"/>
<xs:element ref="Target"/>
<xs:element ref="Source"/>
<xs:element name="RespURI" type="xs:string" minOccurs="0"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="SyncBody">
<xs:complexType>
<xs:sequence>
<xs:choice maxOccurs="unbounded">
<xs:element ref="Alert"/>
<xs:element ref="Atomic"/>
<xs:element ref="Copy"/>
<xs:element ref="Exec"/>
<xs:element ref="Get"/>
<xs:element ref="Map"/>
<xs:element name="Put">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element ref="Lang" minOccurs="0"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Results">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="MsgRef" minOccurs="0"/>
<xs:element ref="CmdRef"/>
<xs:element ref="Meta" minOccurs="0"/>
<xs:element ref="TargetRef" minOccurs="0"/>
<xs:element ref="SourceRef" minOccurs="0"/>
<xs:element ref="Item" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Search">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="NoResp" minOccurs="0"/>
<xs:element name="NoResults" minOccurs="0">
<xs:complexType/>
</xs:element>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element ref="Target" minOccurs="0"/>
<xs:element ref="Source" maxOccurs="unbounded"/>
<xs:element ref="Lang" minOccurs="0"/>
<xs:element ref="Meta"/>
<xs:element ref="Data"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="Sequence"/>
<xs:element name="Status">
<xs:complexType>
<xs:sequence>
<xs:element ref="CmdID"/>
<xs:element ref="MsgRef"/>
<xs:element ref="CmdRef"/>
<xs:element name="Cmd" type="xs:string"/>
<xs:element ref="TargetRef" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="SourceRef" minOccurs="0" maxOccurs="unbounded"/>
<xs:element ref="Cred" minOccurs="0"/>
<xs:element name="Chal" minOccurs="0">
<xs:complexType>
<xs:sequence>
<xs:element ref="Meta"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="Data"/>
<xs:element ref="Item" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element ref="Sync"/>
<xs:element ref="Add"/>
<xs:element ref="Replace"/>
<xs:element ref="Delete"/>
</xs:choice>
<xs:element name="Final" minOccurs="0">
<xs:complexType/>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Target">
<xs:complexType>
<xs:sequence>
<xs:element ref="LocURI"/>
<xs:element ref="LocName" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TargetRef" type="xs:string"/>
</xs:schema>