[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: parser error : Premature end of data

  • From: "G. Ken Holman" <gkholman@CraneSoftwrights.com>
  • To: xml-dev@lists.xml.org
  • Date: Sun, 07 Nov 2010 07:50:22 -0500

Re:  parser error : Premature end of data
At 2010-11-06 21:23 -0700, Thufir wrote:
>I want to break the xmlns declarations into multiple lines, two elements.
>I've seen it in text books, but when I try to replicate it, http://www.shell-
>tools.net/ barfs with:
>
>/var/tmp/FOO3ih2Lb:14: parser error : Premature end of data in tag book line 3
>
>but line 3, of the second example below, seems fine to me.

But the end of the file is not acceptable.  You have two starts to an 
element named book, thus two book elements, but you only end one, 
thus the end of the file is premature.

>How do I change this:
>
><?xml version="1.0"?>
><!-- initially, the default namespace is "books" -->
><book xmlns="urn:loc.gov:books" xmlns:isbn="urn:ISBN:0-395-36341-6">
>  <title>Cheaper by the Dozen</title>
>  <isbn:number>1568491379</isbn:number>
>  <notes>
>    <!-- make HTML the default namespace for some commentary -->
>    <p xmlns="http://www.w3.org/1999/xhtml">
>          This is a <i>funny</i> book!
>      </p>
>  </notes>
></book>
>
>to this:
>
><?xml version="1.0"?>
><!-- initially, the default namespace is "books" -->
><book xmlns="urn:loc.gov:books">
><book xmlns:isbn="urn:ISBN:0-395-36341-6">
>  <title>Cheaper by the Dozen</title>
>  <isbn:number>1568491379</isbn:number>
>  <notes>
>    <!-- make HTML the default namespace for some commentary -->
>    <p xmlns="http://www.w3.org/1999/xhtml">
>          This is a <i>funny</i> book!
>      </p>
>  </notes>
></book>
>
>
>(above is trom http://www.w3.org/TR/REC-xml-names/#scoping)

Actually, you've transcribed it incorrectly.  The example that you 
cite starts off as follows on that web page:

<book xmlns='urn:loc.gov:books'
       xmlns:isbn='urn:ISBN:0-395-36341-6'>
     <title>Cheaper by the Dozen</title>

.... not as you have it in your excerpt above.

If you start two elements, you have to end two elements.  But in 
doing so you are changing the structure of your information.

I understand wanting to break the start tag into two lines to line up 
the attributes (Saxon does a nice job of this in its 
serialization).  Why do you want two elements?  That would break any 
document-element-based XPath expressions written for an instance with 
only one <book> element.

I hope this helps.

. . . . . . . . . . Ken





--
Contact us for world-wide XML consulting & instructor-led training
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/x/
G. Ken Holman                 mailto:gkholman@CraneSoftwrights.com
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index]


PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
 

Stylus Studio has published XML-DEV in RSS and ATOM formats, enabling users to easily subcribe to the list from their preferred news reader application.


Stylus Studio Sponsored Links are added links designed to provide related and additional information to the visitors of this website. they were not included by the author in the initial post. To view the content without the Sponsor Links please click here.

Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.