All pastes #1917681 Raw Edit

Get currency rate

public text v1 · immutable
#1917681 ·published 2010-08-15 22:10 UTC
rendered paste body
import module namespace http = "http://expath.org/ns/http-client";

declare namespace html = "http://www.w3.org/HTML/1998/html4";

declare function local:rate($devise1 as xs:string, $devise2 as xs:string) as xs:decimal{
    let $dev1 := encode-for-uri($devise1)
    let $dev2 := encode-for-uri($devise2)
    let $response := http:send-request((),
      concat("http://www.google.com/search?q=", $dev1, "%20in%20", $dev2)
    )
    return if($response[1]/@message = "OK") then
        let $result := $response[2]//*:h2/*:b/text()
        return
          if(exists($result)) then
            xs:decimal(tokenize($result, "\s")[4])
          else error()
    else error()
};

local:rate("EUR", "CHF")