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
*GUIKit
*DatabaseLink
*Ask about this page
*Print this page
*Email this page
*Give us feedback
*
Sign up for our newsletter:

Q&A for Web Services Package Application

General Questions Technology Questions




General Questions

Q: What is web services technology?
  Web services technology provides programmatic interfaces that are used for application-to-application communication on the network. The technology is similar to other technologies such as RMI and RPC. However, web services technology standardizes on widely used technologies such as XML and HTTP and works by sending XML messages over HTTP to interfaces located on the network. These interfaces are XML based, generally making them platform and language independent. Therefore, it is quite practical to integrate two applications whose language and platform are completely different.
   
Q: What is Web Services Package?
  Web Services Package is a Mathematica application that allows users to interact with web services in Mathematica.
   
Q: What does Web Services Package do?
  Web Services Package allows users to interact on the network with applications that provide some additional functionality or data to a Mathematica user. The package maps web service operations into Mathematica functions that may be called by Mathematica users, allowing them to access new data--e.g., stock data, weather data, Wolfram Research data, or other custom data provided via web services. With the package Mathematica users can also access new functionality such as language translation, file conversion, or other remote functionality.
   
Q: How does Web Services Package work?
  Web Services Package generally builds functions using a WSDL file that describes a web service. The functions can also be built by hand using special convenience functions provided in the package. Once these functions are built, a user may call the functions in a manner similar to calling any other Mathematica function. When a function is called, the input is serialized into a SOAP message that is then sent to the web service using J/Link. J/Link uses Java's HTTP functionality to perform a service request. The service then processes the request and returns a SOAP response message. This response is then transformed into a Mathematica expression that can be conveniently used in Mathematica.
   
Q: How is Web Services Package distributed?
  Web Services Package is distributed in Mathematica 5.1.
   
Q: What platforms support Web Services Package?
  Web Services Package is supported on all platforms that J/Link supports.
   
Q: Who should use Web Services Package?
  Web Services Package is targeted for all Mathematica users. Users of Web Services Package need only to know about Mathematica. However, developers will probably use and interact with Web Services Package the most because the interface to web services is generic, and generally developers use a customized interface that is implemented on top of the generic interface provided by Web Services Package.
   
Q: Can I use Web Services Package to host my web service?
  No, Web Services Package is only used to consume web services. It may not be used to provide a web service. Look for this feature in upcoming versions of webMathematica.
   
Q: Whom should I contact if I have a question or a comment?
  If you have a question or a comment, you should send email to webservices@wolfram.com.
   

Technology Questions

Q: What is XML?
  XML (Extensible Markup Language) is a flexible and widely supported language for describing data. XML is useful to web services because it is very extensible, allowing users to represent different kinds of data uniformly in a language supported across many languages and platforms.
   
Q: How does Web Services Package use XML?
  Web Services Package builds XML messages to send to a web service. The response is an XML message that Web Services Package deserializes into a Mathematica expression.
   
Q: Is knowledge of XML required to use Web Services Package?
  XML knowledge could prove useful to users of Web Service Package, but it is not required. Data required to use Web Services Package can be a bit more complex and defined than users of Mathematica are normally required to use. Certain web services can use complex data types that do not always map into Mathematica expressions with the automatic conversions that Web Services Package provides. In these cases, a knowledge of XML would be useful to arrange a custom mapping.
   
Q: What is XML Schema?
  XML Schema is used to describe a data type in XML. XML data may be validated against the XML Schema defining its structure.
   
Q: How does Web Services Package use XML Schema?
  Web Services Package uses XML Schema to define data types that are used as parameters and to return types to web service operations.
   
Q: Does the package have full XML Schema support?
  No, Web Services Package does not completely support the XML Schema specification. There are some more-advanced data types that do not work correctly with higher-level functions of Web Services Package. However, there are lower-level functions that allow users to build messages and functions to their specification. Additional XML Schema support will be added to future versions.
   
Q: Does Web Services Package provide XML Schema validation on the client?
  No, it doesn't. Validation is done only if the server provides it but may be a feature in the future.
   
Q: What is HTTP?
  HTTP (Hypertext Transfer Protocol) is a common protocol used by applications communicating with distributed and collaborative information systems. HTTP is best known for its scalability and is the protocol of choice on the web.
   
Q: How does Web Services Package use HTTP?
  Web Services Package uses HTTP to transfer messages to and from web services on the network.
   
Q: Does the package support any other protocols besides HTTP?
  No, it doesn't, and there are no plans to add additional protocols at this point.
   
Q: What is SOAP?
  SOAP (Simple Object Access Protocol) is a web services-specific API that governs the format of the request and response messages. SOAP also governs how these messages are processed.
   
Q: How does Web Services Package use SOAP?
  Web Services Package builds the SOAP messages that are sent to web services as well as deserializes SOAP messages when they are returned.
   
Q: What version of the SOAP specification does Web Services Package support?
  Web Services Package supports the SOAP 1.1 specification.
   
Q: Is knowledge of SOAP required to use Web Services Package?
  A user generally does not need to know anything about SOAP to use Web Services Package because the package takes care of serializing input into a SOAP message as well as deserializing output into Mathematica expressions. To use the lower-level functions of Web Services Package, SOAP knowledge may be useful.
   
Q: Does Web Services Package support other message formats besides SOAP?
  No, it doesn't, and there are no plans to add additional formats at this point.
   
Q: What is WSDL?
  WSDL (Web Services Description Language) is a web services-specific API that is used to describe what a web service looks like. Using a WSDL file, an application can discover how an operation works, bind to it, and use it dynamically
   
Q: How does Web Services Package use WSDL?
  Web Services Package uses WSDL files to generate code dynamically for calling web service operations in Mathematica. Using a WSDL file, a user can bind to an operation and use it seamlessly in Mathematica. The user calls an operation just as it calls any other operation in Mathematica.
   
Q: What version of the WSDL specification does Web Services Package support?
  Web Services Package supports the WSDL 1.1 specification.
   
Q: Is knowledge of WSDL required to use Web Services Package?
  No, it isn't. Knowledge of neither the WSDL file format nor the way to process a WSDL file is required.
   
Q: What is J/Link?
  J/Link is a toolkit that integrates Mathematica and Java. It lets you call Java from Mathematica in a completely transparent way.
   
Q: How does Web Services Package use J/Link?
  J/Link is used to invoke calls that send requests to web service operations via HTTP.
   
Q: Is knowledge of Java required to use Web Services Package?
  No, knowledge of Java is not required. The Web Services Package interface is completely Java independent. The user may see Java-related messages that are generally system errors rather than user errors.
   
Q: What is WS-I Profiles?
  WS-I Profiles is a web services specification that defines stricter rules for using SOAP and WSDL web services, thus providing easier integration and better interoperability.
   
Q: How does Web Services Package use WS-I Profiles?
  Web Services Package uses WS-I Profiles as a guideline to promote higher interoperability with web services available on the network.
   
Q: Does Web Services Package have full WS-I Profile support?
  No, Web Services Package does not completely support the WS-I Profile. There are some guidelines that limit the amount of web services supported. However, this limitation should not prevent web services that implement the WS-I Profile from interacting with this client.
   
Any questions about topics on this page? Click here to get an individual response.


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