[Xml-compile] WS-Security

Mark Overmeer solutions at overmeer.net
Wed Jul 15 07:10:57 GMT 2009


* paul at phymatics.co.uk (paul at phymatics.co.uk) [090714 21:35]:
> One thing I did find was my code was actually pretty close to working but
> XML::Compile was confused by the <xsd:any> elements in the wsse xsd. It
> said 'any' was a valid element type but I couldn't put any elements
> defined in the xsd at that point. Since I'm fresh behind the ears
> regarding wsdl, xsd and XML::Compile is this a known limitation?

I am not really sure that I understand you.

Well, "any" elements are a wellknown limitation of schemas ;-) Where
schemas are used to explicitly describe what you expect to see in
a message, the "any" simply violates that. The "compile" stage of
XML::Compile cannot predict what will appear on the "any" spot, so you
have to add your implementors knowledge... which is ugly.

When you base your implementation on the XML::Compile::Cache extension
of XML::Compile::Schema, then you have an   any_elements => 'ATTEMPT'
option.  The reader will then try to decode "any" components, as long
as it recognizes the elements from schemas it has learnt.  But that
doesn't work for the writer :(  So it doesn't help you.

(The ::Cache extension also gives you a way to avoid using "pack_type()",
because it offers the use prefixes in stead of namespace URIs in your
types)
-- 
Regards,
               MarkOv

------------------------------------------------------------------------
       Mark Overmeer MSc                                MARKOV Solutions
       Mark at Overmeer.net                          solutions at overmeer.net
http://Mark.Overmeer.net                   http://solutions.overmeer.net




More information about the Xml-compile mailing list