Try OpenEdge Now
skip to main content
Web Services
Creating ABL Clients to Consume OpenEdge SOAP Web Services : Creating an ABL Client from WSDL : Mapping XML Schema data types to ABL data types : Simple data types : Interacting with XML Schema data formats
 
Interacting with XML Schema data formats
You might need to work directly with an XML Schema value whose format is not represented among the supported formats for the suggested ABL data type mapping; for example, a 51-digit decimal value. To handle this requirement, you can pass an XML Schema-formatted string version of the value into or out of the Web service invocation. OpenEdge automatically passes the XML Schema-formatted value when you map either a CHARACTER or LONGCHAR data type to any XML Schema data type that has a suggested mapping (see Table 29) other than CHARACTER or LONGCHAR.
When you pass the XML Schema-formatted value as an INPUT parameter, the Web service invocation incorporates it directly into the generated SOAP message. For an OUTPUT parameter, the invocation copies the XML Schema-formatted value directly from the SOAP message into the CHARACTER or LONGCHAR parameter.
When you pass an XML Schema-formatted value to a Web service, the invocation also validates the format of the value to ensure that it conforms to XML Schema formatting rules for the data type. Note that the invocation does not validate any facets declared in the <schema> element to constrain the value. It ensures that the format of the value you provide is valid according to its base XML Schema data type representation, but not, for example, if the value falls within a given range.
For example, if you pass an ABL CHARACTER as an INPUT parameter for an XML Schema int, the invocation checks to ensure that it contains a properly formatted 32-bit integer value. If you pass an ABL CHARACTER as an OUTPUT parameter for an XML Schema int, the invocation copies the Schema-formatted value directly from the SOAP message into the ABL CHARACTER parameter.