Subject: [xsl] mixing it up: REST+XML Namespaces + XLST From: James Fuller <jim.fuller@xxxxxxxxxxxxxx> Date: Tue, 19 Apr 2005 01:25:26 +0200 |
let me preface the following that I have no burning desire to *put* something that means something within an XML namespace URI...though was wondering of any variations on the following theme exist out there in the wild. for this simple illustration, I will just talk about HTTP GET and none of the other CRUD operations that map to REST take for example take a simple REST interface to a database with a few tables; http://www.example.org/app/tables/company http://www.example.org/app/tables/user http://www.example.org/app/tables/products performing a GET on top level URL http://www.example.org/app/tables returns <tables> <user xmlns="http://www.example.org/app/tables/user"/> <company xmlns="http://www.example.org/app/tables/company"/> <products xmlns="http://www.example.org/app/tables/products"/> </tables> note, I have bastardized REST by eschewing with xlink:href (was just transforming them into other things in any event) and defining namespaces. performing GET on these URL's will return XML with a list of records, <records> <company xmlns="http://www.example.org/app/tables/company">1</company> </records> sending a GET for http://www.example.org/app/tables/company/1/ would in turn return XML data about the com <row xmlns="http://www.example.org/app/tables/company" xml:ID="1"> <uid>1</uid> <name>My Company</name> <phone>wou 55</phone> <email>jim.fuller@xxxxxxxxxxxxxx</email> </row> note: I have used xml:ID to identify because I have written a bit of code to handle such things. so I now find myself doing things like defining namespaces for use in XSLT (though we dont have to explicitly define them, necc); xmlns:company="http://www.example.org/app/tables/company" xmlns:products="http://www.example.org/app/tables/products" xmlns:user="http://www.example.org/app/tables/user" then with the various fn:namespace functions e.g. fn:namespace-uri,fn:namespace-uri-for-prefix,fn:namespace-uri-from-QName I can now infer access these resources with document() calls. <xsl:variable name="company" select="document(fn:namespace-uri(.))"/> by being able to consume the record lists its easy to create detail level document() calls...also if your data has regular id sequences...its now easy with ranges and such to just append the id number to document() call. With every document() call I recieve xml with relevent namespaces which point to their REST implementation...it feels very state like to me, being passed a namespace which contains its REST URI implementation....would like to hear if anyone else is using XML namespace to their own ends ? cheers, Jim Fuller
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] can't find error..., Gabriel K | Thread | Re: [xsl] mixing it up: REST+XML Na, M. David Peterson |
Re: [xsl] XSL-FO & Images, craig webber | Date | Re: [xsl] mixing it up: REST+XML Na, M. David Peterson |
Month |