|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] GenX and attribute QNames
Hi, I've been looking at Tim Bray's GenX library in order to generate canonicalized SOAP messages, and i can't see how to handle attributes whose value is a QName, e.g. i need to generate this element <p1 xsi:type='xsd:int' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema'>1</p1> I used genxDelcareNamespace to declare the xsd namespace, but it looks like GenX doesn't write it to the stream unless it see's it being used, so i end up with <p1 xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:type='xsd:int'>1</p1> Tim said > On the face of it, the obvious thing seems to be to add a call > > genxAddQname(genxWriter w, genxNamespace n, utf8 value); > >Got a better idea? > >Oops, this has the potential of breaking Canonical XML. > >I *HATE* qnames in content, bah. On a related note, I'd like to serialize out a number of namespace declarations in my root element in order to reduce the number of times a particular namespace needs declaring (in soap you tend to get a number of sibling elements all using the same namespace, but no parent elements using it, so it ends up being declared on every sibling, massively increasing the message size). Othen than pointing out how evil QNames in content are, anyone have any suggestions on how these things might be incorporated into the API without breaking the canonicalization ? Thanks Simon www.pocketsoap.com
|
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
|
|||||||||

Cart








