Hi,

Ernie wrote:
>>>require 'soap/wsdlDriver'
>>>weather = SOAP::WSDLDriverFactory.new(
>>>   "http://www.nws.noaa.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl"
>>>).create_driver
>>>
>>>This works ok and weather is created.
>>>
>>>My problem is how do I enter the parameters for the function call
>>>the parameters are:
>>><part name="latitude" type="xsd:decimal" />
>>>  <part name="longitude" type="xsd:decimal" />
>>>  <part name="product" type="typens:productType" />
>>>  <part name="startTime" type="xsd:dateTime" />
>>>  <part name="endTime" type="xsd:dateTime" />
>>>   <part name="weatherParameters" type="typens:weatherParametersType" />
>>>
>>>   The weatherParameters variable is an array of booleans eg. maxt,

Try wsdl2ruby.rb which is included in soap4r/1.5.2.

0% wsdl2ruby.rb --wsdl ndfdXML.wsdl --classdef --force
I, [2004-07-14T21:02:19.761942 #224]  INFO -- app: Creating class 
definition.
I, [2004-07-14T21:02:19.762942 #224]  INFO -- app: Creates file 
'default.rb'.
I, [2004-07-14T21:02:19.767942 #224]  INFO -- app: End of app. (status: 0)
0% cat default.rb
# http://www.nws.noaa.gov/forecasts/xml/DWMLgen/schema/ndfdXML.xsd
class WeatherParametersType
   @@schema_type = "weatherParametersType"
   @@schema_ns = 
"http://www.nws.noaa.gov/forecasts/xml/DWMLgen/schema/ndfdXML.xsd"

   attr_accessor :maxt
   [snip]
   attr_accessor :icons

   def initialize(maxt = nil, mint = nil, temp = nil, dew = nil, pop12 = 
nil, qpf = nil, sky = nil, snow = nil, wspd = nil, wdir = nil, wx = nil, 
waveh = nil, icons = nil)
     @maxt = maxt
     [snip]
     @icons = icons
   end
end

# http://www.nws.noaa.gov/forecasts/xml/DWMLgen/schema/ndfdXML.xsd
module ProductType
   Glance = "glance"
   TimeSeries = "time-series"
end
0%

"moduel ProductType" might not be dumped under soap4r/1.5.2.  Once you 
install ruby's current CVS (or snapshot for 1.8.2), it will be dumped. 
So, it should work.

0% ruby -rsoap/wsdlDriver -rdefault -e '
now = Time.now
drv = 
SOAP::WSDLDriverFactory.new("http://www.nws.noaa.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl").create_driver
drv.NDFDgen(123, 456, ProductType::Glance, now - 60, now, 
WeatherParametersType.new)
'

...though I don't know what is the meaning of each parameter.

Just ignore "simpleType" warning untill 1.8.2 to be released.  Sorry for 
the inconvenience.

Regards,
// NaHi