users@jaxb.java.net

Re: Accessing mixed mode text

From: Joe Fialli <Joseph.Fialli_at_Sun.COM>
Date: Fri, 27 Aug 2004 15:44:44 -0400

Paul Michael Reilly wrote:

> Joe Fialli wrote:
>
>> Paul Michael Reilly wrote:
>>
>>> In XML-RPC there is a nasty problem in the <value> element. It can
>>> have
>>> defaulted string data, i.e. both
>>>
>>> <value>This is the default string value</value>
>>>
>>> and
>>>
>>> <value><string>This is non-defaulted string value.</string></value>
>>>
>>> can be valid input.
>>>
>>> I have successfully modeled this (no validation errors) using the
>>> schema:
>>>
>>> <xsd:complexType name="ValueType" mixed="true">
>>> <xsd:choice>
>>> ...
>>> <xsd:element name="int" type="xsd:int" nillable="true"
>>> minOccurs="0" maxOccurs="1"/>
>>> <xsd:element name="string" type="ASCIIString" minOccurs="0"
>>> maxOccurs="1"/>
>>> ....
>>> </xsd:choice>
>>> </xsd:choice>
>>>
>>> but I have not figured out how to access the default text using JAXB.
>>
>>
>>
>> Could you illustrate how one defaults text? The above schema does
>> not contain the defaulted text in it.
>
>
> Normally one expects an input stream of the form:
>
> ...<value><string>Text text text</string></value>...
>
> but it is also valid to receive:
>
> ...<value>Text text text</value>...
>
> That clear?

Your previous usage of defaulted text mislead me. I believe you are
just asking how JAXB binds mixed content and provides a user
access the text information of the mixed content.

JAXB 1.0 Specification describes the binding for mixed mode in Section 5.9.4
"Bind mixed content". You can download the specification from
http://java.sun.com/xml/downloads/jaxb.html.

It has an example that illustrates that mixed content is bound to a
Collection property
represented by a method called getContent that returns a List.
The list is composed of elements and java.lang.String instances. The
text information from XML document is represented by the
java.lang.String instances.
By mapping to a list, the binding is able to preserve the order relationship
between the text and elements of the content model. You can download
the specification
from http://java.sun.com/xml/downloads/jaxb.html.

-Joe

>
> Mixed mode also allows input of the form:
>
> ...<value>some preliminary text<string> well formed text</string>more
> text</value>...
>
> but I can safely ignore this as it is not part of the XML-RPC spec.
>
> -pmr
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_jaxb.dev.java.net
> For additional commands, e-mail: users-help_at_jaxb.dev.java.net
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_jaxb.dev.java.net
For additional commands, e-mail: users-help_at_jaxb.dev.java.net