Aha - excellent! I've updated my test program locally and confirmed that it does indeed work. I don't think I would have discovered that option myself, so thank you very much for the pointer!
Ceej aka Chris Hillery On Fri, Aug 27, 2010 at 4:34 PM, Michael Glavassevich <[email protected]>wrote: > > Chris, > > The non-schema attributes would be attached to an XSAnnotation component. > Though you would normally need to have an <xs:annotation> in your schema > (underneath the <xs:attribute>, <xs:element>, etc...) you should be able to > coerce Xerces to synthesize annotation components by turning on this [1] > feature. > > Thanks. > > [1] > > http://xerces.apache.org/xerces-c/program-sax2-3.html#GenerateSyntheticAnnotations > > Michael Glavassevich > XML Parser Development > IBM Toronto Lab > E-mail: [email protected] > E-mail: [email protected] > > Chris Hillery <[email protected]> wrote on 08/27/2010 06:35:17 PM: > > > I've spent some time going through the documented APIs and could not find > an > > answer to this question. > > > > The XML Schema Part 1 spec, specifically section 3.2.2, says that an > > <xs:attribute> declaration in an .xsd file may contain "{any attributes > with > > non-schema namespace . . }". Thus, the following is valid: > > > > <xs:attribute name="attr" type="xs:integer" foo:bar="1"/> > > > > assuming that the <xs:schema> element had xmlns:foo="something". The same > is > > true for <xs:element> declarations. > > > > Xerces does happily load an .xsd file with such a declaration in it. > > However, I cannot find any way to retrieve the information from these > > non-schema attributes from the XSModel. It seems as though they would > have > > to be associated with XSAttributeDeclaration / XSElementDeclaration, but > > there are no APIs for it there or on XSObject. > > > > Is this a hole in the Xerces schema APIs, or am I missing something? > > > > Thanks for any help, > > Ceej > > aka Chris Hillery >
