[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: text nodes of document in XDM
Thanks very much for this explanation. Do you (or anyone) know why with XQuery and XSLT 2 .0 and XPath 2.0 using XDM as the data model instead of INFOSET, why a simple sequence isn't used for this purpose ? That is why create a document node with <xsl:variable> when a sequence seems the more obvious choice (to me). Similar for serializing external parsed entities. To *me* a "document" is NOT "exactly what you want" ... rather a simple sequence. Is this for backwards compatible to the INFOSET based XSLT1.0 and XPath 1.0 ? Or is there a reason, within the XDM model itself, why documents should be allowed to have mixed content ... e.g. why is this allowed or "exactly what you want" document { "1" , 2.5 , <foo/> , text { " text " } , <bar/> } If this is purely for generation of external parsed entities, and the following sequence produces the same result, why allow anything but a single root element in documents ( "1" , 2.5 , <foo/> , text { " text " } , <bar/> ) Thanks for any insight. ---------------------------------------- David A. Lee dlee@calldei.com http://www.xmlsh.org -----Original Message----- From: David Carlisle [mailto:davidc@nag.co.uk] Sent: Tuesday, January 11, 2011 4:31 AM To: xml-dev@lists.xml.org Subject: Re: text nodes of document in XDM On 11/01/2011 03:17, David Lee wrote: > Q) Why does XDM allow text() children of document nodes, and in fact > allow multiple element children of document nodes (If I read it right .) > > For example in XQuery this is allowed > > document { text { "text" } , <elem1/> , text { "text2" } , <elem2/> } > > I'm wondering what is the use-case that led to this ? > > My best "clue" is a recent question/response on xslt-list which made it > clear to me that <xsl:variable> produced a document node, but it could > contain parentless text nodes > > I certainly understand the desire for XDM to allow parentless text, > element, and attribute nodes . > > but I don't understand the use case for document nodes containing text > and multiple element nodes . > > Am I correct in presuming this is to support XSLT 1.0 (and perhaps by > inference XQuery 1.0 ) which allowed this ? > Is it a chicken&egg problem ? > in both xslt 1 and 2 the common construct <xsl:variable name="x"> foo <bar/> baz </xsl:variable> creates a document node with three children, two text nodes and an element. However XDM supports this not just for xsl:variable, xslt/xquery are designed to produce not only xml documents but what the xml rec calls external parsed entities, and a document node that can take text or multiple element children is exactly what you want for an external parsed entity. > What is the rationale for allowing document nodes to contain children > which are not parseable from Text XML ? > > Is this a critical feature to maintain in a round-trip XDM serialization > specification ? ( Yes I realize I'm asking for an opinion not an > objective fact). > > Thanks for any advice, opinions, or historical anecdotes. > > -David > > David ________________________________________________________________________ The Numerical Algorithms Group Ltd is a company registered in England and Wales with company number 1249803. The registered office is: Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom. This e-mail has been scanned for all viruses by Star. The service is powered by MessageLabs. ________________________________________________________________________ _______________________________________________________________________ XML-DEV is a publicly archived, unmoderated list hosted by OASIS to support XML implementation and development. To minimize spam in the archives, you must subscribe before posting. [Un]Subscribe/change address: http://www.oasis-open.org/mlmanage/ Or unsubscribe: xml-dev-unsubscribe@lists.xml.org subscribe: xml-dev-subscribe@lists.xml.org List archive: http://lists.xml.org/archives/xml-dev/ List Guidelines: http://www.oasis-open.org/maillists/guidelines.php
[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! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|