Skip to main content


Specifies the namespace at the binding operation level in the WSDL. Applies only in a class that is defined as a web service or web client.


To override the default namespace at the binding operation level (when the query is used as a web method), use the following syntax:

Query name(formal_spec) As classname [ SoapNameSpace = "soapnamespace", WebMethod ]

Where soapnamespace is a namespace URI. Note that if the URI includes a colon (:), the string must be quoted. That is, you can use the following:

Query MyQuery() [ SoapNameSpace = "", WebMethod ] 

Or the following:

Query MyQuery() [ SoapNameSpace = othervalue, WebMethod ] 

But not the following:

Query MyQuery() [ SoapNameSpace =, WebMethod ] 

For a web service that you create manually, the default value of this keyword is usually suitable. When you generate a web client or service from a WSDL with the SOAP Wizard, Caché sets this keyword as appropriate for that WSDL; if you modify the value, your web client or service may no longer work.


This keyword lets you specify the XML namespace used by this query when it is invoked as a web method.


This keyword has an effect only if the query uses RPC-style binding. That is, the query (or the class that contains it) must be marked with SoapBindingStyle equal to rpc. (If you specify this keyword for a query that uses document-style binding, the WSDL will not be self-consistent.)

For details, see Creating Web Services and Web Clients in Caché


If you omit this keyword, the web method is in the namespace specified by the NAMESPACE parameter of the web service or client class.

Relationship to WSDL and Effect on SOAP Messages

For information, see the entry for the SoapNameSpace method keyword.

See Also

FeedbackOpens in a new tab