Handling of unqualified references in same namespace

View: New views
2 Messages — Rating Filter:   Alert me  

Handling of unqualified references in same namespace

by jibx-users :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello,

The QB schemas use a lot of unqualified references (i.e. they
do not define the includes for elements that are in the same
default namespace).  For example the qbxmlops70.xsd contains:

<xsd:element name="SubscriberID" type="GUIDTYPE"/>

This references the GUIDTYPE defined in qbxmltypes70.xsd as:

<xsd:element name="SubscriberID" type="GUIDTYPE"/>

Both xsd files are defined to be in the same default namespace,
xmlns:xsd="http://www.w3.org/2001/XMLSchema".

However, the original files from QB do NOT include any
xsd:include statements to make the above reference explicit.  
Unless I add the below <xsd:include> statements to explicitly
define all of these references, then the codegen operation
fails.  I needed to add:

<xsd:include schemaLocation="qbxmltypes70.xsd"/>
<xsd:include schemaLocation="qbxml70.xsd"/>
<xsd:include schemaLocation="qbxmlso70.xsd"/>

When I compile the same schemas with XMLBeans, I do not need to
add the <xsd:include> statements.  I understand that it
is 'clearer' with them added, but these are Intuit provided
schemas that I do not feel comfortable changing in any way.

Should this work (without the includes I manually added) in
codegen as all are in the same namespace? If not, why does this
work for other tools?

TIA!

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
jibx-users mailing list
jibx-users@...
https://lists.sourceforge.net/lists/listinfo/jibx-users

Re: Handling of unqualified references in same namespace

by DSosnoski :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

The schema recommendation is very loose on how things fit together, and
doesn't require that definitions be "visible" from the point of use. But
CodeGen was constructed based on the assumption that the definitions
would be available from <xsd:include> or <xsd:import>, which makes it
difficult to handle this type of case.

It should be possible to add a command line parameter for CodeGen that
tells it to effectively include every schema you tell it to generate in
every other schema, so that as long as you generate all these schemas at
the same time it'll find all the definitions. If you add a Jira
improvement request for this I'll try to add the feature, though
probably not in time for 1.2.2.

  - Dennis

Dennis M. Sosnoski
XML and Web Services in Java
Training and Consulting
http://www.sosnoski.com - http://www.sosnoski.co.nz
Seattle, WA +1-425-939-0576 - Wellington, NZ +64-4-298-6117



jibx-users@... wrote:

> Hello,
>
> The QB schemas use a lot of unqualified references (i.e. they
> do not define the includes for elements that are in the same
> default namespace).  For example the qbxmlops70.xsd contains:
>
> <xsd:element name="SubscriberID" type="GUIDTYPE"/>
>
> This references the GUIDTYPE defined in qbxmltypes70.xsd as:
>
> <xsd:element name="SubscriberID" type="GUIDTYPE"/>
>
> Both xsd files are defined to be in the same default namespace,
> xmlns:xsd="http://www.w3.org/2001/XMLSchema".
>
> However, the original files from QB do NOT include any
> xsd:include statements to make the above reference explicit.  
> Unless I add the below <xsd:include> statements to explicitly
> define all of these references, then the codegen operation
> fails.  I needed to add:
>
> <xsd:include schemaLocation="qbxmltypes70.xsd"/>
> <xsd:include schemaLocation="qbxml70.xsd"/>
> <xsd:include schemaLocation="qbxmlso70.xsd"/>
>
> When I compile the same schemas with XMLBeans, I do not need to
> add the <xsd:include> statements.  I understand that it
> is 'clearer' with them added, but these are Intuit provided
> schemas that I do not feel comfortable changing in any way.
>
> Should this work (without the includes I manually added) in
> codegen as all are in the same namespace? If not, why does this
> work for other tools?
>
> TIA!
>
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
> trial. Simplify your report design, integration and deployment - and focus on
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> jibx-users mailing list
> jibx-users@...
> https://lists.sourceforge.net/lists/listinfo/jibx-users
>
>  

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
jibx-users mailing list
jibx-users@...
https://lists.sourceforge.net/lists/listinfo/jibx-users