Wolfram ResearchProductsPurchasingServices & ResourcesAbout UsOur Sites
Connection Technologies Products
-----
 /
Connection Technologies
*Prebuilt Connections
*MathLink
*Java Toolkit: J/Link
*.NET/Link
*Web Services Package
*Q&A
*Resources
<Release Notes
*Screenshots
*Training
*Wolfram Workbench
*Download Developer Kit
*MathLink License Agreement
*References and Support
*User Interfaces
*GUIKit
*DatabaseLink
*Ask about this page
*Print this page
*Email this page
*Give us feedback
*
Sign up for our newsletter:

Web Services Package Version 1.0 Release Notes

Welcome to Web Services Package Version 1.0.

The emerging web services technology provides programmatic interfaces for application-to-application communication on the network. This technology allows users to integrate code from most platforms or languages with an application.

Web Services Package is an integrational Mathematica package that allows users to call web services from Mathematica in a completely transparent way. Mathematica users can dynamically access new data and functionality located on the network. Web Services Package makes the whole universe of existing and future web services an automatic extension to the Mathematica environment.

Web Services Package runs on Windows, Macintosh, Linux, and Unix.

Please direct comments and questions to webservices@wolfram.com.


Revision History

1.0.011/04Final 1.0.0 release
1.0.0b33/04Minor bug fixes for ExpressionML and MathML support, updated Amazon examples to Version 3
1.0.0b211/03Major upgrade with several internal fixes and some useful features
1.0.0b15/03First release


Changes in Version 1.0.0

The following changes were made in this release.

  • Reorganized the package
    This affects where some of the files are located and how the code loads. This fixes some problems with symbols clashing with other symbols.
  • Updated the TerraService example
    The TerraService example now uses GUIKit.
  • Added Web Services Navigator example


Changes in Version 1.0.0b3

The following changes were made in this release.

  • Fixed the semantics for using MathML with web services
    The client will support sending MathML when a type is specified as math.type, rather than just supporting a math element defined in the MathML schema.
  • Fixed the semantics for using expressions with web services
    The client will support sending Mathematica expressions when an expression type from the ExpressionML schema is specified, rather than just supporting an expression element from the ExpressionML schema.
  • Updated Amazon examples to Version 3
    Version 1 is going offline.


Changes in Version 1.0.0b2

The following changes were made in this release.

  • Added support for ExpressionML
    If a web service returns ExpressionML, the client will automatically transform the data into an expression for the user.
  • Added the function InsecureExprQ
    This function helps to ensure that ExpressionML, which is converted by the client, is safe. A user uses SetSecurity to specify allowed and disallowed symbols and contexts. This function returns True if a symbol is disallowed.
  • Added the function SetSecurity
    This function is used to specify which symbols and contexts are allowed and disallowed by the function InsecureExprQ.
  • Added the option ExpressionWrapperFunction
    This option allows the user to specify a function that will wrap each expression created with ExpressionML, which is returned from a web service operation. One use of this option is to provide users with a way to use the function Hold on an expression before it is evaluated.
  • Added support for MathML
    If a web service returns MathML, the client will transform the data into SymbolicXML automatically for the user.
  • Removed support for the option HeaderEncodingStyleURI
    Headers will use the encoding style used by the body. The option HeaderEncodingStyleURI did not scale properly because there could be multiple headers, each with a different encoding style, and only the one option. Since WS-I profiles specify that only literal encoding should be used, it really should be the standard, and there should be no need to specify the header's encoding style URI. However, encoding may still be used for the client, but only if the encoding matches the body's encoding.
  • Added the option DeencodeParameters
    This option is mostly an internal one. Parameters are encoded with their type and arrayType in order to identify the type and arrayType of parameters at run time. This is useful for a SOAP-encoded message because these encodings are required within the message. However, a literal message does not require these encodings in the message, and they should not be sent to the service as they may cause interoperability problems. Therefore, the encodings must be removed after the type and arrayType of parameters are identified by the code building the message.

    By setting this new option to True, the encodings are removed. By setting the option to False, the encodings remain for messages that are SOAP encoded. This option is exposed to the user as it may be useful while building a function using InstallServiceOperation.
  • Added support for the attribute elementFormDefault in XML Schema definitions
    The previous version of Web Services Package was ignoring this attribute and not building messages correctly. If a service was document style, it used qualified elements, but if it was RPC style, it used unqualified elements.
  • Fixed support for importing schema
    The previous version was not importing schema defined in the types section correctly. This should now be fixed.


Changes in Version 1.0.0b1

This is the initial release.


Known Issues in the Version 1.0.0b3 Release

XML Schema

The entire XML Schema specification is not supported. There are complex schema type definitions that will not work properly. This problem can be overcome by using the function ToServiceRequest to build the requests by hand. Additional schema support will be added in the next version.

HTTP Requests

Time-outs may occur only after a lengthy wait because the Java libraries that are used to make the HTTP requests allow for only the server to determine when the time-out occurs. Thus, waiting for the server to time out, the client may wait for a longer period than intended. It is hoped that this problem will be addressed in future releases.

Any questions about topics on this page? Click here to get an individual response.


 © 2008 Wolfram Research, Inc.  Terms of Use  Privacy Policy