7.0 Meta-Customization

 

Author: Tom Snyder, 2/25/2007

 

Building and customizing solutions can be done two ways:

 

  1. Directly to the Server Software
    This involves installing, configuring, connecting, and potentially programming directly on the server(s). This is the most powerful mode of customization, but also the most expensive and time consuming.
  2. Through Meta-Customization Facilities Built Into the Software
    This is done by manipulating the settings, templates, and options available within a service's user interface, usually within a browser. The details and level of customization possible varies from system to system.
    SalesForce.com proved the viability of this method of customization by building meta-customization into virtually every aspect of their CRM services.

 

The technical advances in and increased support for SaaS/Web 2.0 solutions and their related components makes method 1. increasingly difficult and expensive, and method 2. more powerful and attractive. OpenSAM recommends that mashup building and customizing tasks be done through meta-customization.

Meta-Customized Links

Because the LAUNCH LINK is the beginning of an app-to-app connection within an OpenSAM mashup, Home Applications must support the definition of new, parameterized, links via their configuration GUI.

 

Every screen or component that displays a list of documents should have an associated "setup" page. The page will enable the creation and editing of meta-customized links that are displayed to a user near each document in a list or on a document's details page.

 

The links are relatively free-form and allow the user to enter any URL, along with any set of CGI Parameters, along with replaceable fields. So that adminstrators can conveniently and reliably create meta-customized links, we recommend that:

 

So that user's can easily recognize the purpose of a meta-customized link, we recomment that meta-customized links also have settings for:

With these attributes, a Home Application's User Interface designer has flexibility in designing the location and layout of meta-customized OpenSAM links within their application. For world-wide applications, the text attributes should accomodate different values for each language the app runs in.

 

 

Because WEBDAV READ/WRITE happens naturally as a result of the proper CGI Paremeters, creating meta-customized links in an Application is the only step required to fully connect two applications into an OpenSAM mashup.

 

 

Example Customized Link Dialog

 

 

Figure 7.1 Meta Customized Link Dialog

 

This dialog illustrates how the underlying details of a OpenSAM LAUNCH LINK can be hidden by the administrator who is adding an application to a mashup.

 

The fields at the top accept simple input to control what information is passed to the application.

 

By checking the (1) "Connect via OpenSAM" checkbox, all the OpenSAM Storage** CGI Parameters needed to connect the two applications are automatically filled in. Any OpenSAM application whatsoever can be filled into the "Application URL" field, even those created years after the Home Application. The user chooses from a list box to set the Default save-to folder. Their selection is automatically filled into the the URL in a newSaveAsFolder parameter. Similarly, StorageMeta_ parameters are filled in for the (2) "Attach Attributes" options.

 

At the bottom the resulting LAUNCH LINK Url is displayed. Notice that replacement fields such as {PROJNAME} are inserted by the dialog for the appropriate values in the various CGI Parameters. The Home Application must be programmed to replace those replacement fields with the correct values, depending on the precise state the user, the project, and the file, at the time link is displayed.

 

Advanced users can add other parameters in the Generated URL box. Some Applications may not display this information.

 

Your meta-customizing link dialog box will probably look much different. The meta-data attributes you offer and the folder, file name, and file type settings will work according to your application's design and purpose.

SalesForce.com Meta Customization

These same CGI Parameters can used in SalesForce.com custom links and buttons. The syntax is similar to that shown above. Use the SalesForce specific Storage*** parameters shown in table 4.2. Because SalesForce.com does not support WebDAV, OpenSAM applications launched from SalesForce will need to read/write to another Home Application or store documents themselves.

 

SalesForce does offer a very rich API to read/write documents and meta-data to their system, but it is proprietary to SalesForce and supported by no other systems.

 

Copyright © 2006-2008, the authors.