Hi!
First of all, WSDL is defined using XML, so there is a XML schema that defines the format of a valid WSDL document, including PortType names.
The XML schema defining WSDL 1.2 can be found at:
http://schemas.xmlsoap.org/wsdl/
If we look at the schema, we can see that the name attribute in a PortType element is of the type xs:NCName.
The NCName type is defined as a name that is not specified with a namespace prefix.
http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/#NCName
The definition of NCName looks like this:
http://books.xmlschemata.org/relaxng/ch19-77215.html
Etc etc.
Using the above reasoning, you can examine what the allowed values are in the different parts of a WSDL.
HOWEVER:
I strongly suspect that this is not a problem with the WSDL, but rather a problem with the web service stack you are using not being able to support a name that may be allowed by the WSDL definition.
Best wishes!