Thanks radu,

could you give a a hint on the parameters/usage of that method please?

Thanks again

On 11/23/06, Radu Preotiuc-Pietro <[EMAIL PROTECTED]> wrote:
No, you don't have to iterate through your global elements with a cursor. The 
return type of .globalElements() is SchemaGlobalElement[] and so you simply 
iterate through the array and query each object for name and other things. 
Maybe I didn't understand the question.

True, if you call .compileXsd() you wont' get the Java-style classes. But there 
is also a .compileXmlBeans() which in addition to doing what .compileXsd() 
does, will also generate the source Java files, but then it would be up to you 
to compile them and put them into an appropriate classloader to use. So it's 
possible.

Radu

-----Original Message-----
From: javier [mailto:[EMAIL PROTECTED]
Sent: Wednesday, November 22, 2006 2:43 PM
To: user@xmlbeans.apache.org
Subject: RE: dynamic generation of xml files from an xsd


Hi Radu,

Thanks for your answer. I got there after playing the whole evening with the 
api. I still have one question, If I use the compileXsd() method, then I would 
have to iterate through my globalelements with a cursor right? There's no way 
to dinamically get the Java-style classes representing the schema types on 
runtime (i.e. classes like TryDocument with getElement/getElementArray() for 
elements/attributes)?

thanks

El mié, 22-11-2006 a las 13:36 -0800, Radu Preotiuc-Pietro escribió:
> Javier,
>
> If you are creating an xml editor, then you are correct that you can't
> expect to compile the Java classes for every Schema that your users
> have.
>
> I think however that the approach of using .loadXsd() is not the best
> in your circumstances. (I know that the JavaDoc says "returns a
> unioned typeloader that is suitable for creating instances") Instead,
> I would use XmlBeans.compileXsd() which returns a SchemaTypeSystem
> instead of a SchemaTypeLoader. The difference is that SchemaTypeSystem
> has methods like .globalElements() which returns a list of all the
> declared global elements in that (set of) Schema(s).
>
> Radu
>
> -----Original Message-----
> From: Jacob Danner
> Sent: Wednesday, November 22, 2006 9:17 AM
> To: user@xmlbeans.apache.org
> Subject: RE: dynamic generation of xml files from an xsd
>
> There is a utility to generate sample xml instances from XSD via a
> command line tool.
> Check out xmlbeans_trunk\bin\xsd2inst
> The main class is located in
> org.apache.xmlbeans.impl.xsd2inst.SchemaInstanceGenerator
>
> I'm not sure this will help you terribly as it sounds like you want to
> know about all the global elements in an XSD programmatically. If this
> is the case, I might suggest using the XmlCursor APIs to find all
> elements that are children of to the schema element. E.g
> /schema/element
>
> Best of luck,
> -Jacobd
>
> -----Original Message-----
> From: Javier [mailto:[EMAIL PROTECTED]
> Sent: Wednesday, November 22, 2006 2:29 AM
> To: user@xmlbeans.apache.org
> Subject: dynamic generation of xml files from an xsd
>
> Hi
>
> I'm using Xmlbeans to create an xml editor. In this application you
> normally have an xsd to create xml files that conform to that schema.
> If I use xmlbeans at compile time there's no problem, I can generate
> the xmlbeans clases and interfaces and begin using them, but I now
> need to generate all this stuff at runtime, here's my initial code:
>         ...
>         // the schema
>         XmlObject xmlobj = XmlObject.Factory.parse(new
> File(xsdFileName));
>         XmlObject foo[] = { xmlobj };
>         // the schema types:
>         SchemaTypeLoader stl = XmlBeans.loadXsd(foo);
>
> Now, my problem is that I don't know how to find the propiate root
> document type to generate a new XML that conforms to the schema. I've
> tried:
>
>         SchemaType sType =
> stl.typeForClassname("com.name.try.TryDocument");
>         XmlOptions options = new XmlOptions();
>         XmlObject mydoc = stl.newInstance(sType, options);
>
> with no success. The sType object is allways null and I don't know how
> to get my schema root element to generate an xml file. My schema looks
> something like this:
>
> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema";
>       xmlns="http://name.com/try";
>       targetNamespace="http://name.com/try";
>       elementFormDefault="qualified"
> attributeFormDefault="unqualified">
>
>       <xs:element name="Try" type="TemplateType"/>
>
>       <xs:complexType name="TemplateType">
>               <xs:sequence>
>                       <xs:element name="First" type="FirstType"/>
>
> ...
> </xs:schema>
>
> My understanding is that if I use static generation of xmlbeans i
> would have to search for a TryDocument interface and start from there.
>
> Any help would be greatly appreciated.
>
> Thanks
>
> --
> Javier
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
> ______________________________________________________________________
> _
> Notice:  This email message, together with any attachments, may
> contain information  of  BEA Systems,  Inc.,  its subsidiaries  and
> affiliated entities,  that may be confidential,  proprietary,
> copyrighted  and/or legally privileged, and is intended solely for the
> use of the individual or entity named in this message. If you are not
> the intended recipient, and have received this message in error,
> please immediately return this by email and then delete it.
>
> ---------------------------------------------------------------------
> 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]

_______________________________________________________________________
Notice:  This email message, together with any attachments, may contain
information  of  BEA Systems,  Inc.,  its subsidiaries  and  affiliated
entities,  that may be confidential,  proprietary,  copyrighted  and/or
legally privileged, and is intended solely for the use of the individual
or entity named in this message. If you are not the intended recipient,
and have received this message in error, please immediately return this
by email and then delete it.



--
Javier

Reply via email to