- From: Eric Prud'hommeaux <eric@w3.org>
- Date: Fri, 7 Jul 2006 03:01:38 +0200
- To: Jacek Kopecky <jacek.kopecky@deri.org>
- Cc: SAWSDL public list <public-ws-semann@w3.org>
On Mon, Jul 03, 2006 at 06:26:37PM +0200, Jacek Kopecky wrote: > 2006-05-23: EricP to review last call of WSDL RDF mapping > http://www.w3.org/TR/wsdl20-rdf/ by beginning of July > - ongoing, status? I can't say that it's missing anything. In fact, it looks very well thought out. I did, however, work out an opportunity we'd have in RDFland (new theme park, very geeky). The spec [WSDF] calls for extension elements to be mapped to XMLLiterals (chunks of XML in the RDF graph) [[ Extension elements are represented as XML literals containing the whole extension XML elements (and should also include all the in-scope namespaces and the XML base); ... ]] and extenion attributes to be turned into a little graph construct: [[ extension attributes are represented as instances of the class ExtensionAttribute, which in turn have a name (property attributeName pointing to a QName) and a value (property rdf:value pointing to a literal containing the attribute value). ]] This object is linked to the parent component (as represented in RDF) by a wsdl:extensionElement or wsdl:extensionAttribute arc. This is cool; it means we can take the mapping produced by a naive WSDL2.0 to RDF mapping tool (one that does not know specifically of SAWSDL) and implement SAWSDL entirely by examining the RDF model. This suites SAWSDL well because its attributes do not rely on any namespaces inherited from the document. SPDL (some crazy thing i'm working on), however, has constructs like: [[ <wsdl:Operation spat:SPAT='?req myservice:functionName myservice:JPEG2Gif'/> ]] which require knowing the in-scope namespaces. SPDL is, perhaps, an excentric, but there are lots of XML constructs with qnames in XML attributes. A way around this is to canonicalize the attribute in an element called (arbitrarily) wsdf:extensionElement, ala [[ <foo> rdf:type wsdf:InterfaceOperation . <foo> wsdl:extensionAttribute "<wsdf:extensionElement xmlns:myservice="..." spat:SPAT='?req myservice:functionName myservice:JPEG2Gif'/>"^^rdf:XMLLiteral ]] This allows latent namespace processing, and therefor, all your work can be done after the XML document is unavailable. Thoughts? [WSDF] http://www.w3.org/TR/2006/WD-wsdl20-rdf-20060518/#genericext -- -eric home-office: +1.617.395.1213 (usually 900-2300 CET) +33.1.45.35.62.14 cell: +33.6.73.84.87.26 (eric@w3.org) Feel free to forward this message to any list for any purpose other than email address distribution.
Received on Friday, 7 July 2006 01:00:22 UTC