You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@xmlbeans.apache.org by Orville Pike <or...@openpathproducts.com> on 2006/10/17 19:20:35 UTC
XMLBeans and XHTML
Hi All,
I' working on some code to parse and generate XHTML. What I've done is used
scomp to generate the XMLBeans classes from xhtml1-strict.xsd. This all
works and I can at the moment generate valid xhtml however I cannot figure
out how to set content data ie, how do I set and get "Example URL" out of
the following
<a href="http://example.com>Example Url</a>
The setting code is like this:
ADocument.A a = null;
a = td.addNewA();
a.setHref("http://example.com");
a.setStyle("mystyle");
What I was expecting was some generic function such as
setStringValue()/getStringValue() but not of the xhtml classes I generated
have this. To test this I generated my own set of classes from my own xsd
and some items do have a setStringValue()/getStringValue() which is not
deprecated and when used returns me the data I expect.
I'm using XMLBeans 2.2.0 with JDK 1.5.0
My scomp command: scomp -noann -noupa -out xhtml1-strict.jar -compiler
\jdk1.5.0_07\bin\javac.exe xhtml1-strict.xsd
Any ideas
RE: XMLBeans and XHTML
Posted by Radu Preotiuc-Pietro <ra...@bea.com>.
The reason that you see setStringValue()/getStringValue() on some of the
generated classes but not on others is the difference between simple
content and mixed content.
Simple content means that an element can only have text as contents,
while mixed content means that it can have both text and elements. When
the type has simple content, then you get the get/setStringValue() and
you can manipulate the text as a whole, however when the type has mixed
content (which most of the types in xhtml have), then you can't get the
text as a whole, but you need to know where children element were
present relative to text children. Example: you need to extract all the
text from a <p> tag, independent of formatting. In this case you want to
get the text that is an immediate child of <p>, but if you find a <b>
tag as a child, you need to get its text too and you want this text to
show up in the right order.
This is why mixed content is accessed using XmlCursor, for an example of
how to do it, see http://xmlbeans.apache.org/samples/MixedContent.html
Radu
________________________________
From: Orville Pike [mailto:orville@openpathproducts.com]
Sent: Tuesday, October 17, 2006 10:21 AM
To: user@xmlbeans.apache.org
Subject: XMLBeans and XHTML
Hi All,
I' working on some code to parse and generate XHTML. What I've done is
used scomp to generate the XMLBeans classes from xhtml1-strict.xsd. This
all works and I can at the moment generate valid xhtml however I cannot
figure out how to set content data ie, how do I set and get "Example
URL" out of the following
<a href="http://example.com>Example Url</a>
The setting code is like this:
ADocument.A a = null;
a = td.addNewA();
a.setHref("http://example.com");
a.setStyle("mystyle");
What I was expecting was some generic function such as
setStringValue()/getStringValue() but not of the xhtml classes I
generated have this. To test this I generated my own set of classes
from my own xsd and some items do have a
setStringValue()/getStringValue() which is not deprecated and when used
returns me the data I expect.
I'm using XMLBeans 2.2.0 with JDK 1.5.0
My scomp command: scomp -noann -noupa -out xhtml1-strict.jar -compiler
\jdk1.5.0_07\bin\javac.exe xhtml1-strict.xsd
Any ideas
_______________________________________________________________________
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.