Hans-Dieter,

thanks for your mail. But the output was wrong because of my wrong usage of 
XMLBeans.

Dave Harrison gave me the right hint to solve my issue.

Thanks,
Matthias

> -----Original Message-----
> From: Cordes, Hans-Dieter [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, June 08, 2005 5:23 PM
> To: [email protected]
> Subject: RE: problems on modifing XML files with XML_BEANS
> 
> 
> Hello,
> 
> I am not a real expert, but I think the file "content1.xml" 
> (after your modification) is not compliant with your schema 
> definition (e.g. the first / root element has to be a "page" 
> element). So you cannot use an XMLBeans object derived from 
> your schema file in this case. Perhaps, if you know the final 
> structure of your modified document, you can create a 
> corresponding schema, generate the corr. XMLBeans and use 
> that to do the parsing.
> 
> Regards,
>       Hans-Dieter Cordes
> 
> -----Original Message-----
> From: Matthias Wessendorf [mailto:[EMAIL PROTECTED]
> Sent: Mittwoch, 8. Juni 2005 17:10
> To: [email protected]
> Subject: problems on modifing XML files with XML_BEANS
> 
> 
> Hi,
> 
> I am using XmlBeans for reading content of xml files. That 
> works fine and all works like I expected.
> 
> But when I try to write modified content to the specific xml 
> file, something goes wrong. I guess I am missing
> something.
> 
> here are some steps of my process:
> 
> I have schema and I generate java files.
> I have content inside a xml file (depends on that schema)
> 
> Reading with "Factory.parse(xmlfile)" is not a problem (if I 
> DON'T change that stuff)
> 
> here is my small schema:
> --------------------------------------------------------
> <?xml version="1.0"?>
> <xs:schema
>   xmlns:xs="http://www.w3.org/2001/XMLSchema";
>   targetNamespace="http://foo.com";
>   xmlns:pb="http://foo.com";
>   elementFormDefault="qualified">
> 
> <xs:element name="page">
>  <xs:complexType>
>     <xs:sequence>
>        <xs:element name="modification" type="xs:dateTime"/>
>        <xs:element name="type" type="xs:string"/>
>        <xs:element name="header" type="xs:string" />
>          <xs:element name="container" type="pb:containerType" 
> maxOccurs="unbounded"/>
>    </xs:sequence>
>   <xs:attribute use="required" name="id" type="xs:string" />
>  </xs:complexType>
> </xs:element>
>  
> 
> <xs:complexType name="containerType">
>  <xs:sequence>
>     <xs:element name="modification" type="xs:dateTime"/>
>     <xs:element name="type" type="xs:string"/>
>     <xs:element name="contentblock"      
> type="pb:contentBlockType" maxOccurs="unbounded"/>
>     <xs:element name="container"      type="pb:containerType" 
> maxOccurs="unbounded"/>
>  </xs:sequence>
> <xs:attribute use="required" name="id" type="xs:string" />
> </xs:complexType>
> 
> <xs:complexType name="contentBlockType">
>  <xs:sequence>
>     <xs:element name="modification" type="xs:dateTime"/>
>     <xs:element name="text" type="xs:string"/>
>     <xs:element name="type" type="xs:string"/>
>     <xs:element name="headline" type="xs:string" 
> minOccurs="0" maxOccurs="1" />
>  </xs:sequence>
>  <xs:attribute use="required" name="id" type="xs:string" />
> </xs:complexType>
> </xs:schema>
> --------------------------------------------------------
> 
> and here is a very small XML file (based upon schema):
> --------------------------------------------------------
> <?xml version="1.0" encoding="utf-8"?>
> <page xmlns="http://FOO.com"; id="content1">
>     <type>press</type>
>     <header>HEADER</header>
>     <modification>2005-04-27T09:30:10</modification>
>     <container id="container1">
>         <type>textcontainer</type>
>         <modification>2005-04-19T09:30:10</modification>    
>         <contentblock id="contentblock1">
>             <type>textcontent</type>
>             <text>fooooooo bar  BAR FOO</text>
>             <modification>2005-05-30T09:30:10</modification>
>         </contentblock>
>     </container>
> </page
> 
> --------------------------------------------------------
> 
> 
> No I modify the stuff and after that I do:
> 
> XmlOptions xmlOptions = new XmlOptions();
>             xmlOptions.setSavePrettyPrint();
>             page.save(xmlFile, xmlOptions);
> 
> 
> When I now read a second time my xml (the modified stuff) I 
> got this message:
> org.apache.xmlbeans.XmlException: C:\content1.xml:0: error: 
> The document is not a [EMAIL PROTECTED]://foo.com: multiple document elements
> 
> I guess this is because of my (re-written) xml file has no 
> root element <page>
> 
> my content1.xml looks now like:
> 
> <?xml version="1.0" encoding="UTF-8"?>
> <xml-fragment id="content1">
>   <foo:type xmlns:foo="http://foo.com";>press</foo:type>
>   <foo:header xmlns:foo="http://foo.com";>hallo1</foo:header>
>   <foo:modification 
> xmlns:foo="http://foo.com";>2005-06-08T16:57:23.672+02:00</foo:
> modification>
>   <foo:container id="container1" xmlns:foo="http://foo.com";>
>     <foo:type>textcontainer</foo:type>
>     <foo:modification>2005-04-19T09:30:10</foo:modification>
>     <foo:contentblock id="contentblock1">
>       <foo:type>textcontent</foo:type>
>             <foo:text>hallo3</foo:text>
>       
> <foo:modification>2005-06-08T16:57:23.672+02:00</foo:modification>
>       <foo:headline>hallo2</foo:headline>
>     </foo:contentblock>
>   </foo:container>
> </xml-fragment>
> 
> 
> What am I doing wrong on using XmlBeans to *change* XML files?
> 
> Thanks for any advice.
> 
> -Matthias
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to