[xsde-users] RE: Why xml_schema::schema exception is thrown when
the xml document is not well formed
Jiang, Bin (Bin)
binjiang at alcatel-lucent.com
Mon Oct 29 12:59:19 EDT 2007
Thank you for the explanation!
Please see my other two questions below.
Jiang Bin (Bin)
> -----Original Message-----
> From: Boris Kolpackov [mailto:boris at codesynthesis.com]
> Sent: 2007年10月29日 18:06
> To: Jiang, Bin (Bin)
> Cc: xsde-users at codesynthesis.com
> Subject: Re: Why xml_schema::schema exception is thrown when the xml
> document is not well formed
> Hi Bin,
> Jiang, Bin (Bin) <binjiang at alcatel-lucent.com> writes:
> > I found in some cases, xml_schema::schema will be thrown when the
> > xml document is not well-formed. Take the example library in the
> > xsde release 1.1.0 as an example:
> > <lib:catalog xmlns:lib="http://www.codesynthesis.com/library"
> > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
> > xsi:schemaLocation="http://www.codesynthesis.com/library
> > book id="MM" available="false" >
> > <isbn>0679760806</isbn>
> > <title>The Master and Margarita</title>
> > <genre>fiction1</genre>
> > ...
> > </lib:catalog>
> Actually, this XML is perfectly well-formed. By removing '<' from
> the book tag, you made it to appear as just a text fragment. Note
> that you don't have to escape '>' in the element content.
> > If I remove the "<" of book, the parser would say:
> > schema error: line column unexpected characters encountered
> Which is correct. The catalog type specifies that its content should
> be a sequence of book elements. As a result, when parser encounters
> text, it reports it as a validation error.
[Jiang, Bin (Bin)]
In this case, why the column number is not the beginning of the line, but is 34, the end of the line?
When the characters would be ignored by the parser?
I add a type like below to the xsd:
<xsd:element name="one" type="xsd:string"/>
<xsd:element name="two" type="xsd:string" minOccurs="0"/>
And find characters inside "identityType" element would be ignored, is this because the "identityType" type is derived from "xsd:anyType"?
> I guess this example shows how far a well-formed XML can be from what
> an application expects and why it is generally a good idea to validate
> the documents against the vocabulary schema :-).
More information about the xsde-users