Anyone have a WSDL for SPML?

SAP Portal is generating a matching query, for substrings of logonname,
which is of course, madness.

Particularly if you use naming like geoffc, and geoffc2 and geoffc3.
only the first one will ever work, all the rest will return, an already
associated object was found as a match.

Need to understand the SPML query, well enough to convert this query:

<nds dtdversion="4.0" ndsversion="8.x">
<source>
<product edition="Advanced" version="4.0.2.2">DirXML</product>
<contact>Novell, Inc.</contact>
</source>
<input>
<spml:searchRequest derefAliases="neverDerefAliases"
requestID="search-1388069979303" xmlns:spml="urnasis:names:tc:SPML:1:0">
<searchBase type="urnasis:names:tc:SPML:1:0#GenericString">
<spml:identifier type="urnasis:names:tc:SPML:1:0#GenericString">
<spml:id>kingm</spml:id>
</spml:identifier>
</searchBase>
<filter>
<and>
<equalityMatch name="objectclass">
<dsml:value
xmlns:dsml="urnasis:names:tcSML:2:0:core">sapuser</dsml:value>
</equalityMatch>
<substrings name="logonname">
<initial>*</initial>
</substrings>
<substrings name="logonname">
<initial>geoffc</initial>
</substrings>
</and>
</filter>
<spml:attributes>
<attribute name="logonname"/>
</spml:attributes>
<operation-data parent-node-1="searchResponse"
timestamp="1388069979303">
<return-to-me class-name="sapuser" command="query"
dest-dn="kingm" event-id="0" scope="entry"/>
</operation-data>
</spml:searchRequest>
</input>
</nds>

To an exact match, instead of <substrings>