Extensibility for web based diagram visualization
First Claim
Patent Images
1. A method to be executed at least in part in a computing device for extensible web based diagram visualization services, the method comprising:
- in response to receiving a request for a diagram including references to external data sources, providing the request to an update engine for determination of supported data sources and custom data modules for retrieval from non-supported data sources implementing a predefined abstract class;
receiving a custom data module identifier from the update engine;
invoking the custom data module indicated by the identifier through the predefined abstract class;
receiving one of data and exception from the custom data module;
if data is received, forwarding the data to the update engine;
if an exception is received from the custom data module, providing an exception message to the client application; and
mediating presentation of the requested diagram at a client application by a rendering the diagram with updated attributes of elements received from supported and non-supported data sources that are polled at render time based on the forwarded data from the update engine.
2 Assignments
0 Petitions
Accused Products
Abstract
Extensible architecture and data flow in a web based diagram visualization service is accomplished by enabling a diagram update engine to launch custom data modules. Data modules for data sources that are not inherently supported are created by third parties through a specially defined interface (e.g. .NET® assemblies) and made visible for the web based diagram services and callable from a diagram update engine. Thus, a number of data sources from which diagram data can be retrieved and the way incoming data is manipulated and aggregated is extensible through code.
-
Citations
19 Claims
-
1. A method to be executed at least in part in a computing device for extensible web based diagram visualization services, the method comprising:
-
in response to receiving a request for a diagram including references to external data sources, providing the request to an update engine for determination of supported data sources and custom data modules for retrieval from non-supported data sources implementing a predefined abstract class; receiving a custom data module identifier from the update engine; invoking the custom data module indicated by the identifier through the predefined abstract class; receiving one of data and exception from the custom data module; if data is received, forwarding the data to the update engine; if an exception is received from the custom data module, providing an exception message to the client application; and mediating presentation of the requested diagram at a client application by a rendering the diagram with updated attributes of elements received from supported and non-supported data sources that are polled at render time based on the forwarded data from the update engine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer system for executing a diagram service for extensible web based diagram visualization, the computer system comprising:
-
a web front end (WFE) server that includes a memory and a processor coupled to the memory, the processor configured to; in response to receiving a request for a diagram from a browser including a reference to an external data source implementing a predefined abstract class, forward the request to an update engine; receive a connection string referring to a custom data module from the update engine; invoke the custom data module for retrieval, generation, and aggregation of data through the predefined abstract class from the external data source; receive data in a predefined format from the custom data module; forward the received data to the update engine; receive rendered diagram from the update engine with updated attributes of elements received from supported and non-supported data sources that are polled at render time; and provide the rendered diagram to the browser; and a backend server that includes a memory and a processor coupled to the memory, the processor configured to execute the update engine, wherein the backend engine is arranged to; for each diagram element with a reference to a supported external data source, return a connection string for the supported data source to the WFE; for each diagram element with a reference to a non-supported external data source determine a connection string for a custom data module; and if a custom data module is found, return the connection string for the custom data module to the WFE;
elsereturn an error code to the WFE. - View Dependent Claims (11, 12, 13, 14, 15)
-
-
16. A non-signal computer-readable storage medium with instructions stored thereon for extensible web based diagram visualization services, the instructions comprising:
-
receiving a request for a diagram including references to external data sources; for references to supported data sources; determining the referenced data source; connecting to the referenced data source; retrieving data by executing a query; and validating the retrieved data; for references to non-supported data sources; determining custom data modules for data from referenced non-supported data sources implementing a predefined abstract class; invoking the determined custom data modules by passing a network context of a requesting client application and connection/query information to the custom data modules through the predefined abstract class; and receiving data from the custom data modules; parsing and extracting visual definitions for data-connected diagram elements with updated attributes of the diagram elements received from supported and non-supported data sources that are polled at render time, wherein dynamic relationships between the diagrams elements of the diagram determine attributes of individual shapes and connectors; computing publish-time formulas for the diagram elements; rendering the requested diagram based on the updated publish-time formulas in one of a vector and raster format depending on a type of request from the client application; and providing the rendered diagram to the requesting client application. - View Dependent Claims (17, 18, 19)
-
Specification