IP Library Patent Application 11712351
Patent Application
App. No. 11/712,351

System and method of web service description language transformation

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/712,351
Abstract

A web service description language (WSDL) transformation system and method of transforming WSDL specifications into extensible markup language (XML) specifications are provided. The WSDL transformation system comprises a WSDL parser module for parsing a WSDL of a web service, a WSDL query module for querying the parsed WSDL, and a specification builder module for building a unified XML specification for the WSDL. The method comprises the steps of parsing a WSDL of a web service, querying the parsed WSDL and building a unified XML specification for the WSDL.

Claims (85)

1 . A web service description language (WSDL) transformation system for mapping web service parameters into primitive or derived data types, the WSDL transformation system comprising:

a WSDL parser module for parsing a WSDL of a web service;

a WSDL query module for querying the parsed WSDL; and

a specification builder module for building a unified XML specification for the WSDL.

2 . The WSDL transformation system as claimed in claim 1 , wherein the WSDL parser module ensures that the WSDL is complete and valid.

3 . The WSDL transformation system as claimed in claim 1 , wherein the WSDL parser module creates a list of XML schema data types described in the WSDL.

4 . The WSDL transformation system as claimed in claim 3 , wherein the XML schema data types comprise at least one of simple types or complex types.

5 . The WSDL transformation system as claimed in claim 1 , wherein the WSDL query module provides a query interface to interrogate what services, bindings, ports, operations, and messages are available from the parsed WSDL, and what data types make up those messages.

6 . The WSDL transformation system as claimed in claim 1 , wherein the specification builder module uses the WSDL query module to interrogate the structure of a web service request described in the WSDL.

7 . The WSDL transformation system as claimed in claim 1 , wherein the specification builder module builds a well-formed XML document specification for that WSDL.

8 . The WSDL transformation system as claimed in claim 1 , further comprising a hypertext markup language (HTML) builder module for converting the XML specification into an HTML “tree” control comprising HTML input elements for leaf data type nodes in the XML specification.

9 . The WSDL transformation system as claimed in claim 8 , wherein the data type nodes comprise at least one of:

primitive data types;

derived data types;

extension—enumeration elements;

extension—choice elements;

simple data types;

complex data types;

restrictions for validating entered data;

abstract parameters; and

recursive parameters.

10 . A method of mapping web service parameters into primitive or derived data types, the method comprising the steps of:

parsing a WSDL of a web service;

querying the parsed WSDL; and

building a unified XML specification for the WSDL.

11 . The method as claimed in claim 10 , wherein the step of building unified XML specification for the WSDL comprises the steps of:

retrieving web service schema types of the WSDL;

writing out a root node of the XML specification for the WSDL; and

retrieving services of the WSDL, for each service found:

writing out a service element to the XML specification;

retrieving bindings for the service, for each binding found:

retrieving port types for the service, for each port type found:

writing out a port type element to the XML specification with a binding attribute; and

retrieving operations of the WSDL, for each operation found:

 writing out an operation element to the XML specification; and

 retrieving input message schema type parts, for each part found:

 writing out a parameter of the input message to the XML specification; and

 processing a schema type of the input message.

12 . The method as claimed in claim 11 , wherein the step of processing a schema type of the input message comprises the steps of:

writing out schema type to the XML specification as a “datatype” element;

if the datatype is not a primitive or derived type:

creating an empty list of child elements of the schema type;

inserting children element of the schema type are inserted into the empty list;

if the schema type is an array:

adding an array attribute is added to the XML specification;

if the schema type is a simpleType:

if the schema type is an array:

adding an array attribute is added to the XML specification; and

processing the schema type of the data type of the array; and

if the schema type is not an array:

adding array restrictions to the XML specification if the schema type is not an array; and

if the schema type is a complexType:

adding an abstract attribute to the XML specification if the schema type is an abstract type;

retrieving simpleContent elements;

adding simpleContent restrictions to the XML specification;

adding simpleContent extension elements to the children list;

retrieving complexContent elements;

adding complexContent restrictions to the XML specification;

adding complexContent extension elements to the children list;

adding other restrictions and attributes to the XML specification; and

adding other child elements to the children list; and

processing a child schema type for each child in the children list.

13 . The method as claimed in claim 12 , wherein the step of writing out the schema type to the XML specification comprises the steps of filling in at least one of a name, type, is Array and simpleJavaType attributes of the schema type.

14 . The method as claimed in claim 13 , wherein the step of writing out the schema type to the XML specification further comprises the steps of filling at least one of a namespace, an arrayMax, an abstract attribute and a min attribute.

15 . The as claimed in claim 12 , wherein the other child elements added to the children list includes at least one of group, choice, sequence or simpleContent elements that make up the complexContent element.

16 . The method as claimed in claim 10 , further comprising the step of:

converting the XML specification into an HTML “tree” control comprising HTML input elements for leaf data type nodes in the specification.

17 . The method as claimed in claim 16 , wherein the data type nodes comprise at least one of:

primitive data types;

derived data types;

extension—enumeration elements;

extension—choice elements;

simple data types;

complex data types;

restrictions for validating entered data;

abstract parameters; and

recursive parameters.

18 . A memory containing computer executable instructions that can be read and executed by a computer for carrying out a method of mapping web service parameters into primitive data types, the method comprising the steps of:

parsing a WSDL of a web service;

querying the parsed WSDL; and

building unified XML specification for the WSDL.

19 . A carrier carrying a propagated signal containing computer executable instructions that can be read and executed by a computer, the computer executable instructions being used to execute a method of mapping web service parameters into primitive data types, the method comprising the steps of:

parsing a WSDL of a web service;

querying the parsed WSDL; and

building a unified XML specification for the WSDL.

Assignments (4)
CERTIFICATE OF AMALGAMATION Recorded Aug 15, 2008
From: COGNOS INCORPORATED
To: COGNOS ULC
Reel/Frame 021387/0813 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2008
From: COGNOS ULC
To: IBM INTERNATIONAL GROUP BV
Reel/Frame 021387/0837 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2008
From: IBM INTERNATIONAL GROUP BV
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 021398/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2007
From: DIPPEL, ROB
To: COGNOS INCORPORATED
Reel/Frame 019226/0176 →