The Mashup Editor is used to visually build mashups by wiring
together parts and configuring their behaviors. The editor is suitable
for business/data analysts, or for power users with some basic
understanding of XML.
Parameterized Abstraction Layers
A collection of parts wired together is called an “assembly” in
MashableLogic. To help reduce the complexity of large mashups
requiring many parts wired together, the Mashup Editor supports the
nesting of assemblies, dubbed a “subassembly”. Subassemblies
can themselves be nested within other subassemblies.
Subassemblies provide a mechanism for developing abstraction layers.
Besides hiding complexity, they also form re-usable components to be used
Even better, “parameter” parts can be used to parameterize subassemblies. Parameters “roll-up” the chain to all
outer assemblies that use the subassembly, allowing the parameter value to be configured (overridden) at any nesting
level within the mashup.
MashableLogic’s ease-of-use is derived from multiple architectural layers that hide complexity, from the Webtop to the
Mashup Editor to the Part IDE. Subassemblies are a mechanism for managing the complexity of mashups, by
allowing re-usable, modular abstraction layers to be built.
The Mashup Editor includes a Web Service part that creates server-side REST-ful Web Services. Web Service
mashups are useful to distribute processing for visual browser-side mashups, by processing large amounts of data
and returning just the data needed for visualization in the browser. Web Service mashups can also be consumed by
external systems by invoking a URL.
Web Services can also be parameterized, with parameters passed into the mashup as URL query parameters.
The Mashup Editor provides a Pushed Data part that allows external systems to push data into mashups. Widgets
running in the webtop or on external web pages will automatically refresh their displays when new data is pushed
from the external systems. Pushed data makes it possible to turn the webtop into a real-time dashboard.
The Pushed Data part supports message broadcasting, where all widgets can listen for a specific message from
external systems, as well as allowing messages to be targeted to specific assemblies, allowing finer control over
message delivery.
The Mashup Editor includes a Batch Job part that defines a server-side batch job mashup that will be executed
according to the configured schedule (crontab).
Server-side batch job mashups are useful to process large volumes of data overnight, or to perform a certain task at
regular intervals. Another example of using batch job mashups is to check the integrity of data sources being
consumed by mashups in the system, alerting someone if a data source is no longer returning data or is returning
data in a modified, unexpected format.
Keeping mashups that consume data from 3rd-party systems operational can be a challenge with competing mashup
tools. MashableLogic’s batch job mashups provide a way to build automated health monitoring and alerts for the data
services being used to build mashups.
The Mashup Editor provides a Server Feed part that emits a RSS feed on the server. This allows mashups to be built
that generate RSS feeds from data in one or more systems. The mashup news feeds can then be read either with
MashableLogic’s own RSS news feed reader mashup, or with any 3rd-party RSS news feed reader.
Data Sources and Data Displays
Data Sources and Data Displays work together. In the webtop, data sources can be dragged and dropped onto data
displays for rendering the data. Depending on the capabilities of the data display, more than one data source may be
capable of being rendered. For example, a map widget can plot multiple sets of marker data, or a line graph can plot
multiple data series using different line colors.
The Mashup Editor provides parts for specifying data source and data display interfaces. End users can modify field
mappings from the webtop using drag-drop.