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

Re: Question for updating existing XML file

  • To: Jeff Greif <jgreif@a...>
  • Subject: Re: Question for updating existing XML file
  • From: Brian Candler <B.Candler@p...>
  • Date: Tue, 3 Aug 2004 11:41:38 +0100
  • Cc: xml-dev@l...
  • In-reply-to: <01e601c474c6$0ae54240$0402a8c0@DBDELL130G>
  • References: <945A2CFE6C33D611A49D0002A59305DB044B4750@SWEC9901> <20040728110416.GA1553@u...> <01e601c474c6$0ae54240$0402a8c0@DBDELL130G>
  • User-agent: Mutt/1.4.1i

updating xml file using dom
On Wed, Jul 28, 2004 at 10:12:20AM -0700, Jeff Greif wrote:
> Unfortunately, the 'minimum set of checks' depends upon what you're
> validating against.

Precisely - I'm trying to establish what would be a good thing to validate
against for this purpose :-)

> If it's XML Schema, the locality of the constraints of
> that language means it usually** suffices to validate the Entry element
> against its type.  But this requires that you know, without parsing the
> entire document, the type of the Entry element.  If the language supports
> cooccurrence constraints, there could be one that said no Entry element was
> supposed to have more than one <name> child if some other element somewhere
> else in the tree had a certain property.  Much more of the document would
> need to be validated in that case.

Indeed.

> A feasible conceptual mechanism (leaving aside performance problems on large
> files) would be to update a PSVI-decorated DOM, and revalidate (using DOM
> Level 3 APIs) the nodes rooting the altered subtrees.

I had not come across DOM validation until now. The spec mentions W3C Schema
and DTD almost in passing; is it intended to work with any validation
mechanism, or just these two? For example, with Schematron, it seems quite
difficult to determine what are the valid children you could add at this
point in the tree.

> **: I believe that a non-local constraint involving keys and references in
> XML Schema, such as requiring each name child of an Entry to be a reference
> to an existing key elsewhere in the document, would create additional
> validation requirements.

Sure, but in the case of inserting a new subtree into an existing document,
all you'd have to check would be that any references within the new subtree
pointed to existing nodes in the existing document. Clearly, no nodes within
the existing document will point to nodes within the new subtree, as it
hasn't been inserted yet.

Aside: perhaps some of the "XML fragment" stuff may be relevant here, but it
seems that that is an abandoned project.

Regards,

Brian.

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.