#!/usr/bin/env ruby

# SOAP RDFQ, to talk to remote service
# note:
# algae/perl service currently broken (perllib changed)
# rdfweb/axis service: needs upgrading (char encoding prob). needs Java 1.4 :(

require 'soap/driver'
#require 'soap'

servicetype= 'http://rdfweb.org/RDF/RDFWeb/SOAPDemo'
server = 'http://iggy.w3.org/danbri/CGI/soap'
	

 query =    'SELECT ?x, ?url, ?c, ?b
		WHERE
		  (an::annotates ?x ?url)
		  (an::created ?x ?c)
		  (an::body ?x ?b)
		USING 	
		  an for http://www.w3.org/2000/10/annotation-ns# 
		  dc for http://purl.org/dc/elements/1.1/'


def getWireDumpLogFile
  logFilename = File.basename( $0 ) + '.log'
   f = File.open( logFilename, 'w' )
   f << "File: #{ logFilename } - Wiredumps for SOAP4R client.\n"
   f << "Date: #{ Time.now }\n\n"
end

action=servicetype+'#squish'
rdfweb = SOAP::Driver.new( nil, 'squish', servicetype, server, nil )
rdfweb.setWireDumpDev( getWireDumpLogFile )
rdfweb.addMethodWithSOAPAction('squish', action, 'query','conf','donut' )
results = rdfweb.squish(query, "", "")
puts results.inspect 






