Thank you for reply. I looking on errors and when they are reported I found the same. Now I am trying to ammend the source code to provide more verbose SAXException. Regards Jan -----Original Message----- From: Phil Weighill-Smith [mailto:[EMAIL PROTECTED] Sent: Sunday, January 11, 2004 11:12 PM To: [EMAIL PROTECTED] Subject: RE: XS Validation handling
You could track XPath via the SAX events and look (using regular expressions based on the XML schema messages obtained from XERCES's resource bundle) for schema validation errors that apply to elements and/or attributes and determine the XPath to a failure that way. It can be done (we've done this) - at least for the types of errors we need to cover. Commonly, errors for attributes are reported immediately prior to the startElement event to which they apply (at least in the version of XERCES we use) while errors in element content are reported after the startElement event and before the endElement event. However, it's a simple task to determine this for yourself. Hope that helps, Phil :n) -----Original Message----- From: Michael Glavassevich [mailto:[EMAIL PROTECTED] Sent: Sat 10/01/2004 17:45 To: [EMAIL PROTECTED] Cc: Subject: Re: XS Validation handling For the record we don't support SAX's dom-node property. There is no DOM tree backing the SAX event stream. It's generated from XNI. You'd have to keep your own stack to track the context (and something else to keep track of siblings) to generate an XPath expression. The tricky part is figuring out the context of the error. None is provided so you need to make some assumptions (this also applies to the DOM while it's being built as well) about event order and where an error is reported in the stream. This topic came up last year [1]. I still feel that generating an XPath given the current APIs cannot be done reliably, though you can probably get a good approximation for some errors (like with simple types). [1] HYPERLINK "http://marc.theaimsgroup.com/?l=xerces-j-user&m=106182672730969&w=2"http:// marc.theaimsgroup.com/?l=xerces-j-user&m=106182672730969&w=2 On Sat, 10 Jan 2004, Phil Weighill-Smith wrote: > I think the XERCES SAX and DOM parsers (you could perhaps use the latter > for your DOM validation from your other query?) have some properties > that could be of use: > > HYPERLINK "http://xml.org/sax/properties/dom-node"http://xml.org/sax/properties/dom-no de (SAX parser) and > HYPERLINK "http://apache.org/xml/properties/dom/current-element-node"http://apache.org /xml/properties/dom/current-element-node (DOM parser). > > See HYPERLINK "http://xml.apache.org/xerces-j/properties.html"http://xml.apache.org/xerces -j/properties.html. Once you've got the > node you should be able to determine an XPath for it. You may also need > to determine if the error relates to an attribute of that node by > interpreting the actual error you get from the parser... > > Phil :n) > > On Sat, 2004-01-10 at 00:50, Jan Pernica wrote: > > > Hi everybody > > > > I have XML and XS schema. Let's assume that the validated XML is valid XML > > (well formed). But there are XS validation errors like theese > > [Error] test.xml:10:25: cvc-pattern-valid: Value '6910018dd093' is not > > facet-valid with respect to pattern '[0-9]{9,10}' for type 'RCType'. > > [Error] test.xml:10:25: cvc-type.3.1.3: The value '6910018dd093' of element > > 'rc' is not valid. > > [Error] test2.xml:80:44: cvc-attribute.3: The value '9'0'1.01.2003' of > > attribute 'datVzniku' on element 'poistenie' is not valid with respect to > > its type, 'DatumType'. > > > > The question is: how do I get Xpath to element or attribute with an error? > > > > Thanks for any hints > > > > Regards > > > > Jan Pernica > > HYPERLINK "mailto:[EMAIL PROTECTED]"mailto:[EMAIL PROTECTED] > > HYPERLINK "http://www.pernica.org"http://www.pernica.org > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > -- --------------------------- Michael Glavassevich XML Parser Development IBM Toronto Lab E-mail: [EMAIL PROTECTED] E-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] -- Odchozí zpráva neobsahuje viry. Zkontrolováno Antivirovým systémem AVG (http://www.grisoft.cz). Verze: 7.0.209 / Virová báze: 261.6.1 - datum vydání: 8.1.2004
<<attachment: winmail.dat>>
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
