CA2376038A1 - System and method for graphically creating data flows and control flows for xml web services - Google Patents

System and method for graphically creating data flows and control flows for xml web services Download PDF

Info

Publication number
CA2376038A1
CA2376038A1 CA002376038A CA2376038A CA2376038A1 CA 2376038 A1 CA2376038 A1 CA 2376038A1 CA 002376038 A CA002376038 A CA 002376038A CA 2376038 A CA2376038 A CA 2376038A CA 2376038 A1 CA2376038 A1 CA 2376038A1
Authority
CA
Canada
Prior art keywords
data
objects
web service
nodes
control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
CA002376038A
Other languages
French (fr)
Inventor
Ajay Sidda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CA002376038A priority Critical patent/CA2376038A1/en
Publication of CA2376038A1 publication Critical patent/CA2376038A1/en
Abandoned legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/34Graphical or visual programming

Abstract

System and method as shown in the Figure 1, are provided for graphically developing a data flow and control-flow composition for XML Web Services, without the nee d for a user to write any code. The composition includes graphical representation of XML Web services using data nodes and control nodes. Simple data types and complex data types are represented in the form of custom components. The composition facilitates data flows by connecting the data nodes of a plurality of objects. The composition facilitates control flows by connecting the control nodes of a plurality of objects. The data flow and control flow is directed by means of if and Loop constructs. T he objects are queued according to their position and hierarchy in the data flow.</SDOA B>

Description

DESCRIPTION
Graphical programming for XML Web Services Contents A. TECHNICAL FIELD
B. BACKGROUND INFORMATION AND PRIOR ART
C. LIST OF FIGURES
D. DETAILED DESCRIPTION OF THE INVENTION
E. EXAMPLE OF INTENDED USE
Description A. TECHNICAL FIELD
The Internet is evolving. In its early stages providing static information to the Web was a challenge. Then we were able to overcome and provide not only interactive tools, but also integrate our systems with the Web. Now we are facing the challenge of integrating our systems with other systems across the Web, and respond quickly to changing needs. Web services permits existing software to interoperate, communicate and integrate across operating systems, networks, and software.
XML and SOAP
XML is eXtensible Markup Language and SOAP is Simple Object Access Protocol. XML and SOAP are the technologies that enable systems to communicate with each other, but as they're hidden in the background, you really don't have to worry about it. XML is the standard for data encoding just as ASCII is the standard for character encoding. XML is a method for describing data and allows data to be viewed without the program that produced it. Your software stays the same and is able to communicate with different software across the Internet. SOAP enables a program running one kind of operating system, such as Windows, to communicate with a program running on another kind of operating system, such as Linux, by using the World Wide Web's Hypertext Transfer Protocol (HTTP). SOAP describes how to encode an HTTP header and an XML file so that a program in one computer can call a program in another computer, and pass it information.
These two things are the basis for allowing the information on your electronic calendar to be viewed and accessed by outside sources. Your software is broken down into components and wrapped in XML, which permits it to communicate with other software.
Description XML Web Services A Web service is the reusable software component based on the above standard. It can be used like a building block to create complex applications and tools. Web services provide businesses with flexibility and speed to build applications by re-using components or purchasing new ones from Web service providers. It saves time in the development cycle because you don't have to build applications from scratch. It is the technology that not only permits your software to integrate across systems, but gives you the versatility to expand quickly as your needs change without having to spend long costly hours rewriting your systems to do it.
ObjectView ObjectView is a drag and drop development tool for accessing Web service components and simplifying the process of creating complex tools and applications. Further, its unique environment creates an object of the Web service, essentially a picture, and by graphically connecting the objects together, you can create complex applications without ever having to view one line of code. It is freedom from the annoyance of acronyms and the confusion of code.
Description 3 B. BACKGROUND INFORMATION AND PRIOR ART
The architecture of ObjectView attempts to combine the data flow and control flow logic of Computer Aided Software Engineering (CASE) with the complexities of the upcoming technologies such as XML, SOAP, WSDL, WSFL
and UDDI. The main aim is to hide the technology so that developers can concentrate on the solution they are developing.
ObjectView takes the CASE paradigm one step further by providing an infrastructure that tracks the development changes throughout the software development lifecycle. This enables the Development Managers and the Software Developers to work on the same scenario.
ObjectView functionality is unique and there are no alternatives available in the market. There are only a handful of companies developing tools for Web services; let alone provide a comprehensive graphical programming environment.
The ObjectView architecture is based on object-oriented methodologies such as:
Unified Modeling Language (UML), ~ Data flows, ~ Control flows, ~ Object Model, ~ Dynamic Model, and ~ Functional Model Description 4 The traditional approach to software development is to build the entire application from scratch. With the advent of reusable components and object-oriented development this process was further refined. Several Computer Aided Software Engineering (CASE) tools use these object-oriented methodologies to automate software development. However, most CASE tools fall short of supporting complete software lifecycles, since reverse engineering a component is virtually impossible. In other words, CASE tools are important earlier on during the requirements analysis.
However, as the development progresses, there is no way of maintaining correlation between the source code and the CASE scenario.
The introduction of Web services opens a new chapter in web-application development. Web services provide businesses with flexibility and speed to build applications by re-using components. Finding Web services will soon be as simple as looking up a number in a phone book. With the UDDI
(Universal Description, Discovery, and Integration) initiative rapidly on its way, businesses will be able to register their Web services and allow others to find them on the Internet. The registries contain WSDL (Web Services Description Language) files, which describe the Web service and what it does, so you can quickly find components that will suit your needs.
ObjectView in the Evolution: ObjectView extensively uses the above-mentioned technologies in its RAD environment. The success of ObjectView's architecture relies heavily on the Web service contract- WSDL. ObjectView uses WSDL to provide one-step synchronization. As a Web service changes, your scenario can be updated with a click of a button. There is no waiting for the programmers to update code to reflect the changes in the Web services.
We believe this functionality is revolutionary and we expect over the next few years, 70% of software programs to be developed using application frameworks such as ObjectView.
Descriprion 5 i c. DST~ of F=~uREs Figure 1: Screenshot of ObjectView.
Figure 2: Representation of a Web service in ObjectView.
Figure 3: Loop Construct.
Figure 4: get and set data for Complex data types.
Figure 5: Using get and set objects with Web service objects.
Figure 6: Using Loop construct to iterate through an array.
Figure 7: Using setArray<DataType>
Figure 8: Linking data nodes to control nodes Figure 9: Using If construct to set a condition on a link Figure 10: Auto generation of XML/XSL files.
Figure 11: Case Study 1: Stocks Portfolio Figure 12: Case Study 2: Data Synchronization between 2 Enterprises Descriprion 6 D. DETAILED DESCRIPTION OF THE INVENTION
CONTENTS
Introduction XML and SOAP
XML Web services ObjectView Importing Web Services Using a WSDL address to import a Web service into a new project Working with Web service components Adding Objects to the Project Window Representation of an Object Object name Output control node Input control node Input data node Output data node Run order Web service indicator Loop indicator Working wig Object Data Working with simple data types Working with complex data types Linking objects to create a flow Linking different data types to create a data flow Descriprion 7 Linking Objects Creating data flows Creating control flows Linking objects to create a flow Linking different data types to create a data flow Run Order Run order and data flow Viewing the run order of a project Positioning of objects and run order Running and Viewing Results Viewing the result of a single object Viewing results in XML
If Construct Creating an If construct Loop Construct Creating a Loop construct Generating XML and XSL files Creating an XSL file Description 8 Introduction XML Web services are reusable software components. ObjectViewT"' lets you integrate Web service components into its unique drag and drop environment. When a Web service is imported into ObjectView, the components are represented as graphical objects, which can be used as building blocks to create complex applications.
Complex applications are created by objects that have been linked together to pertorm a series of functions. When an individual object or project is executed, ObjectView generates a SOAP request, which is sent to the Web server. The Web server processes the SOAP request and sends a SOAP
response back to ObjectView. ObjectView parses the SOAP response and sets the correct value to object's output.
ObjectView is a fast, flexible and functional way to build customized applications and tools that can interoperate, communicate, and integrate across operating systems, networks, and software.
ObjectView provides the intelligence to simplify your solution:
1. Fast - import Web service components into the drag and drop environment
2. Flexible - graphically connect objects together to create a data flow scenario
3. Functional - run the scenario and view the result Description 9 .. .~__..~..-..__..~_~_~ ...__._...~.._..____.T_....

Importing Web Services Using a WSDL address to import a Web service into a new project In order to access and import a Web service you need to know the Web service WSDL (Web Service Description Language) address. A WSDL address is an URL that points to the location that describes the Web service and its components.
Once a Web service has been imported into ObjectView it is automatically added to the library for future use again.
Working with Web service components All the Web services imported to your project are displayed on the tabs in the component window at the bottom of your project window. Click the Web service name tab to view all of its components.
The right side of the component window lists the Web service component name, any inputs and outputs, the source, as well as any description. Once a Web service component is added to the project window it is represented as a graphical object.
Adding Objects to the Project Window Click the Web service name tab at the bottom of the project window. Select a Web service component and drag it into the project window. Once a Web service component is added to the project window it is represented as a graphical object.
Description 10 Working with objects Objects are representations of Web service components. Once a component has been added to the project window it is represented as a graphical object.
Each object has an object name, data input node, data output node, control input node, control output node, and Web service indicator, as shown in Figure 2.
Object name Object name is the name of the Web service component.
Output control node The top node on the right side of the object is the output control node and is used to set the control flow or order of execution of the objects. An object that is sending output to another object is executing first.
Input control node The top node on the left side of the object is the input control node. An object that is receiving input from another object is executing second.
Input data node An object may contain multiple input data nodes. The number of input data nodes depends on the definition of the component. By default the data type and name is shown, and contains the data to be executed by the object.
A data node that is shaded gray contains default values for the object.
Description 11 Output data node An object may contain multiple output data nodes. The number of output data nodes depends on the definition of the component. By default the data type and name is shown, and contains the results of the executed component.
A data node that is shaded green contains executed result values for the object.
Run order The run order number displays the order of execution for each of the objects in a project. The run order states which objects will execute in which order.
Each object functions on its own until linked to another object.
When two or more objects are linked together, the first object passes its result to the next object to execute.
The order of execution can also be changed by connecting the output control node of one object to the input control node of another object.
Web service indicator An object marked with an asterisk (*) is an actual Web service component.
Only these components send and receive SOAP requests and responses. An object marked with an exclamation point (d) is a local component. This means that the component is used to create SOAP requests from simple data types or to parse SOAP responses into simple data types. These components are executed locally on your machine.
Loop indicator An Object marked with a circle (O) in its header indicates that the object is contained within a Loop construct, as shown in Figure 3.
Description _ 12 Working with Object Data Once a Web service component is added to the project window it is represented as a graphical object. Generally, each object has a minimum of one input data node and one output data node.
An input data node contains the default value to be executed by the object.
An output data node contains the result of the executed object.
By linking the output node of one object to the input node of another object you are instructing the project to execute an object's data and then pass the result to the next object to execute. The runtime value overrides the default value during execution. This is the data flow.
Generally, only data that is of similar type can be linked, such as strings to strings (text to text) or floats to floats (numbers to numbers). You can force a link between different data types, but this may result in odd behavior and should only be done with caution.
Working with simple data types By default Object View supports the following simple data types:
string: A string is a data type that is sequence of characters or text, such as letters or numbers.
int (integer): The integer data type is a whole number that can be either positive or negative.
For example: -1, 0, 12678967543233, +100000 float: The float data type is a number that may have decimals and be positive or negative, but is limited to 108 or 32 bits.
For example: -1, 1267.43233, -12.78, 12 Descriprion 13 double: The double data type is a number that may have decimals and be positive or negative, but is limited to 1064 or 64 bits.
For example: -1, 1267.43233, -12.78, 12 decimal: The decimal data type is a number that may be positive or negative and represents a fraction by separating the number by a period as a decimal indicator.
For example: -1.23, 12678967.543233, +100000.00, 210 duration: The duration data type represents a duration of time and is ordered by year, month, day, hour, minute and second.
Format: PnYn MnDTnH nMnS
For example: To indicate a duration of 1 year, 2 months, 3 days, 10 hours, and 30 minutes, one would write: P1Y2M3DT10H30M
DateTime: The dateTime data type represents a specific instant of time.
Format: CCYY-MM-DDThh:mm:ss For example: 1999-05-31713:20:00-05:00 date: The date data type represents a calendar date.
Format: CCYY-MM-DD
For example: 1999-05-31 time: The time data type represents an instant of time that recurs every day.
Format: hh:mm:ss.sss For example: 13:20:00-05:00 Description 14 ._.._.-.__._ . _.__._ . ... _, Working with complex data types In addition to simple data types, ObjectView can generate components that support complex data types. Complex data types are user defined data types such as client records. For example, consider the following data type in a Web service:
public class Address public string Name;
public string Street;
public string City;
public string State;
public string Zip;
public string Country;
ObjectView automatically creates components that can get and set data for the above data types, as shown in Figure 4.
We can use these components to create a SOAP request or to parse a SOAP
response. The Figure 5 illustrates how you can use these components:
Note that the setAddress and the getAddress components are denoted by an exclamation (l) mark. This means that the component is acting as a parser for the SOAP messages. These components are executed locally on your machine. Components denoted by an asterisk (*) mark are actual Web service components. Only these components send and receive SOAP
requests and responses.
Description 15 Get array data types If a Web service component returns an array of strings as output, a getArrayOfstring component is added to the list of objects. You can use this component to parse the SOAP response of the Web service component.
Note that the getArrayOfstring component has an index as one of its inputs.
You can use this index to traverse the array. An index value of 0 returns the first element, 1 for the second element, 2 for the third element, and so on.
Please refer to Figure 6 for an illustration of how to iterate through an array of strings.
Set array data types If a Web service component requires an array of strings as input, a setArrayOfstring component is added to the list of objects. You can use this component to create a SOAP request to the Web service component.
Note that only setArray<DataType> accepts multiple inputs. In the Figure 7, three strings are appended to create an array of strings. The resulting data is then sent to DeleteAddress. The setstring and setArrayOfstring components are executed locally on your machine. DeleteAddress is an actual Web service and is denoted by an asterisk (*). Only DeleteAddress sends and receives a SOAP request and response. The other components are used to create data.
Descriprion 16 Linking Objects Creating data flows A single object can perform a function. By entering data into its input data nodes and running the object you can view a result. An object only executes its own values until linked to another object.
By linking the output data node of one object to the input data node of another object, you can execute a series of functions: data flow. When two or more objects are linked, the first object passes its result to the next object to execute.
Generally, only data that is of similar type can be linked, such as strings to strings (text to text) or floats to floats (numbers to numbers). You can force a link between different data types, but this may result in odd behavior and should only be done with caution.
Creating control flows The top node on the right side of the object is the output control node and is used to set the control flow or order of execution of the objects. When you link the output control node of one object to the input control node of another object you are setting first object to execute before the next.
Linking data nodes to control nodes and vice-versa The data nodes can be connected to a control node and vice-versa to create a control flow, as shown in Figure 8. Generally, you would use this to set an If condition on the link.
Description 17 Run Order Run order and data flow Run order is the order that objects get executed when a project is run.
Run order is first determined by the positioning of the objects: objects placed at the top of the project window execute first, from top to bottom, then left to right.
Data flow is the order that data gets executed when a project is run.
By linking the output node of one object to the input node of another object you are instructing the project to execute an object's data and then pass the result to the next object to execute. This is the data flow.
Positioning of objects and run order The vertical and horizontal position of the objects first determines the run order. Objects placed in the top most position in the project window execute first, from top to bottom, then left to right.
Description 18 Running and Viewing Rasults Running a Project To run a project: On the Project menu, click Run.
Viewing the result of a single object 1. Right-click the object and select Run Object from the shortcut menu.
The object turns green when it has finished executing.
2. Do one of the following:
~ Mouse-over the output data node to view the tool tip pop-up.
The value is the executed result of the object.
~ Double-click the output data node to view the results in the Result window.
Viewing results in XML
1. Run an object or project.
2. Right-click the output data node of the object that contains the final result of your project and select View Result... from the shortcut menu.
The Result window opens:
~ The XML/XSL tab displays the result in a table by applying an auto-generated XSL stylesheet to the XML data.
~ Click the Tree tab to view the XML data in the tree form.
~ Click the Text tab to view the actual XML text.
Descriprion 19 If Construct An If construct is a function that changes the state of a project, such as stopping a project, if a certain condition is reached. You can set an If construct on any data flow or control flow line, as shown in Figure 9.
Creating an If construct To create an If construct:
1. Click a data flow (solid) line or control flow (dotted) line linking two objects.
2. Right-click the dotted line and select Properties from the shortcut menu.
3. Select the Allow the data to pass only if the following condition is true check box.
4. In the Incoming data is box, select a condition from the drop down box:
~ valid ~ invalid (the operation failed) ~ equal to Compare Data ~ not equal to Compare Data ~ greater than Compare Data ~ greater than or equal to Compare Data ~ less than Compare Data ~ less than or equal to Compare Data
5. In the Compare Data box, type the If condition value.
6. Click OK.
Description 20 Loop Construct A loop is a sequence of functions or instructions that is continually repeated until a certain condition is reached. The EndLoop component sets the condition that is to be met. Please refer to Figure 6 for an illustration of Loop Construct.
A Loop construct is the same thing as adding a Loop component to a project.
Creating a Loop construct To add a Loop to a project:
1. Click the Main tab at the bottom left corner of the Components window.
2. Select Loop from the component list and do one of the following:
~ double-click the Loop component click the Loop component and drag it into the Project window.
3. Resize the Loop to surround the objects by clicking and dragging the Loop bounds.
All objects inside the Loop are denoted with a circle (O) in the object header.
4. Set the EndLoop condition by dragging an output node from an object to the input node on the EndLoop object. A dotted line is formed.
5. Select the dotted line and right-click the dotted line and select Properties from the shortcut menu.
6. Set the If condition.
7. Click OK.
Description 21 _._._._.._ .. , _ Generating XML and XSL Files Extensible Markup Language, XML is used to describe data. Extensible Stylesheet Language, XSL is used to transform XML documents into HTML
documents.
Creating an XSL File ObjectView automatically generates XSL files to display XML data in a readable user-friendly format. To create an XSL file:
1. Select object that contains the result you want outputted to an XML file.
2. Right-click and select Properties... from the shortcut menu.
3. Click the Outputs tab and select the data output node name from the Name list.
4. Check the Save the runtime value to XML file check box.
S. Enter an XSL label in the XS~ Label for the data box. This label appears as a heading on the XSL file.
6. Click OK.
7. Run your project. ObjectView opens and displays the XSL file in your browser.
You can view the XML~XSL output as shown in Figure 10, after running a project by right-clicking the output data node and then selecting View Result. The XML and XSL files are saved to your Projects folder.
Description 22 E. EXAMPLE OF INTENDED USE
Stocks Portfolio The example as shown in Figure 11, illustrates how to calculate the current worth of a stock portfolio by using a stocks database web service and an online stock quote Web service. It retrieves an array of holdings from the stocks database, and then uses the online stock quote Web service to calculate the current worth of the portfolio.
Data Synchronization between two Enterprises The example as shown in Figure 12, illustrates how two different companies running different operating systems and using different databases can use ObjectView to synchronize their business objects. Once this scenario is created, the companies can publish it as a Web service onto their servers, using ObjectView.
Description 23

Claims (20)

THE EMBODIMENTS OF THE INVENTION IN WHICH AN EXCLUSIVE
PROPERTY OR PRIVILEGE IS CLAIMED ARE DEFINED AS FOLLOWS:
1. A method for graphically developing data flow and control flow compositions for interaction with XML web services. The composition includes graphical representation of XML Web services called objects, using data nodes and control nodes. There can be zero or more data nodes on each object depending on the source XML web service. There are two control nodes for each object. One on the incoming side and the other on the outgoing side.
2. The method as claimed in claim 1, wherein the data nodes of one object can be connected to the data nodes of another object to create a dataflow. The control nodes of one object can be connected to the control flow of another object to create a control flow. The data nodes and control node can be inter-connected. Each connection between objects can define an If condition on the outgoing data of the first object. The objects can be arranged in a Loop construct to accommodate repetitive compositions. The said compositions when executed change the objects visibly to show the incoming and outgoing data.
3. The method as claimed in claim 1 wherein the object is symbolized by the name of the Web service it represents.
4. The method as claimed in claim 1 wherein the number of input data nodes of an object is determined by the number of inputs of the Web service it represents.
5. The method as claimed in claim 1 wherein the number of out data nodes of an object is determined by the number of outs of the Web service it represents.
6. The method as claimed in claim 1 wherein the object data nodes are represented as a name and data type pair or any combination thereof.
7. The method as claimed in claim 1, wherein the object data nodes can be visible or invisible according to user settings.
8. The method as claimed in claim 1 wherein the object data nodes can represent the result of a Web service execution.
9. The method as claimed in claim 1 wherein the object control nodes are represented at the top corners across the title.
10. The method as claimed in claim 2 wherein the placement of objects in the composition can create a hierarchy in the execution of objects according to the position of the object within the composition. The top objects execute before the bottom objects, moving left to right.
11. The method as claimed in claim 2 wherein the links between objects can create a hierarchy in the execution of objects. The objects that provide data inputs get executed before the objects that receive the data inputs.
12. The method as claimed in claim 2 wherein the links between objects can have If conditions set, by setting the properties of the link.
13. The method as claimed in claim 2 wherein multiple objects can be enclosed in a Loop construct to accommodate repetitive compositions.
14. The method as claimed in claim 1 wherein the object representing a Web service data type can have a "get" custom type automatically generated for extracting data from the aforesaid Web service data type.
15. The method as claimed in claim 1 wherein the object representing a Web service data type can have a "set" custom type automatically generated for creating instances of the aforesaid Web service data type.
16. The method as claimed in claim 1 wherein the object representing an array of a Web service data type can have a "getArrayOf" custom type automatically generated for extracting data from the aforesaid array of Web service data type.
17. The method as claimed in claim 1 wherein the object representing an array of a Web service data type can have a "setArrayOf" custom type automatically generated for creating instances of the aforesaid array of Web service data type.
18. The method as claimed in claim 2 wherein the composition when executed change the objects visibly to show the incoming and outgoing data by setting the results in the input data nodes and the output data nodes.
19. The method as claimed in claim 2 wherein the composition when executed shows the direction of the data flow and control flow by animating the execution from one object to another.
20. The method as claimed in claim 2 wherein the composition when executed automatically generates XSL templates to aid the display of the resulting XML data.
CA002376038A 2002-03-07 2002-03-07 System and method for graphically creating data flows and control flows for xml web services Abandoned CA2376038A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CA002376038A CA2376038A1 (en) 2002-03-07 2002-03-07 System and method for graphically creating data flows and control flows for xml web services

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CA002376038A CA2376038A1 (en) 2002-03-07 2002-03-07 System and method for graphically creating data flows and control flows for xml web services

Publications (1)

Publication Number Publication Date
CA2376038A1 true CA2376038A1 (en) 2003-09-07

Family

ID=27810555

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002376038A Abandoned CA2376038A1 (en) 2002-03-07 2002-03-07 System and method for graphically creating data flows and control flows for xml web services

Country Status (1)

Country Link
CA (1) CA2376038A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7543299B2 (en) * 2003-04-02 2009-06-02 International Business Machines Corporation Creating web services programs from other web services programs
US7606832B2 (en) 2004-11-12 2009-10-20 International Business Machines Corporation System and method for orchestrating composite web services in constrained data flow environments
US20140109038A1 (en) * 2003-11-25 2014-04-17 Nextaxiom Technology, Inc. Semantic-based, service-oriented system and method of developing, programming and managing software modules and software solutions

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7543299B2 (en) * 2003-04-02 2009-06-02 International Business Machines Corporation Creating web services programs from other web services programs
US20140109038A1 (en) * 2003-11-25 2014-04-17 Nextaxiom Technology, Inc. Semantic-based, service-oriented system and method of developing, programming and managing software modules and software solutions
US9588743B2 (en) * 2003-11-25 2017-03-07 Nextaxiom Technology, Inc. Semantic-based, service-oriented system and method of developing, programming and managing software modules and software solutions
US7606832B2 (en) 2004-11-12 2009-10-20 International Business Machines Corporation System and method for orchestrating composite web services in constrained data flow environments

Similar Documents

Publication Publication Date Title
US10019239B2 (en) Systems and methods for enhancing software products through integrated development environment running on host computer
Meliá et al. A model-driven development for GWT-based rich internet applications with OOH4RIA
US7269792B2 (en) System and method for generating high-function browser widgets with full addressability
AU2014202725B2 (en) Methods and apparatus for translating forms to native mobile applications
US20050065951A1 (en) Visualization of commonalities in data from different sources
EP2369480A2 (en) Mashup infrastructure with learning mechanism
US8224853B2 (en) Methods and apparatus for updating a plurality of data fields in an electronic form
RU2461058C2 (en) Definable application assistant
CN113076096A (en) Desktop application program development method, device, equipment and storage medium
Obrenović et al. End-user service computing: Spreadsheets as a service composition tool
Muslim et al. A modular and extensible framework for open learning analytics
US7996758B2 (en) Methods and apparatus for storing data associated with an electronic form
US10289388B2 (en) Process visualization toolkit
WO2020004156A1 (en) Display control device, display control method, and display control program
EP1955201A2 (en) Methods and apparatus for processing business objects, electronic forms, and workflows
US20070143305A1 (en) Methods and apparatus for storing functions associated with an electronic form
CN117389562A (en) Front-end code visual configuration and intelligent generation method and system based on Vue
CA2376038A1 (en) System and method for graphically creating data flows and control flows for xml web services
US20100269089A1 (en) Method and system for generation of reusable design patterns
Fuhrmann et al. Automatic layout and structure-based editing of UML diagrams
Liu et al. MUIT: a middleware for adaptive mobile web-based user interfaces in WS-BPEL
Celms et al. Towards dsl for dl lifecycle data management
Lay Developing A Web Application With Reactjs
Hauan Supporting Agile Processes within the Norwegian Infrastructure Industry-Integrating BIM-software with task and process management tools
EP1569095A1 (en) System and method for presentation of wireless application data using repetitive UI layouts

Legal Events

Date Code Title Description
FZDE Dead