Upload
ariel-bond
View
216
Download
2
Embed Size (px)
Citation preview
VxOware Progress Report
August 2007
How to create a new section?
• Configure section– Create metadata structure (template) – Create elements map for web forms and
external search service (schema) – Create subsection tree– Metadata record view (XSL transformer)
• Register section in the VO description file• Add section-specific plugins if required
(loading, saving, ordering)
Using section-specific plugins
• A plugin can be used for visualizing meta-records (for example, Wiki), and data objects in user’s basket
• Whenever a file is uploaded together with its meta-record, you must use a plugin for linking VO with the section’s file storage. The plugin must provide the following functionality:– Upload files to storage– Retrieve files from storage– Manage files in storage (delete, etc.) – Perform special queries (like searching inside a file)
• Plugins are used for each data service to perform queries – Transfer (reformat) users’ queries to the service – Retrieve results (data files) and save them in user basket
WikiParser (plugin)
1. Add meta-record with WikiMedia formatting2. Transforming WikiMedia formatting to HTML
Plugin for working with files inside a section (upload/get)
VO
Section Storage pluginObject Store
Putobject
Getobject
Search&
results
Data uploads are supported by plugins, which provide access to data storage. A plugin is specified in the section configuration. The plugin is also configured separately.
The uploaded data are transferred through the plugin to the storage.
The storage can be a third-party application or database (THREDDS, SQL, etc.)
Depending on the storage functionality, you can request sub-products, obtained by additional data processing (selections, preview, index, other format, etc.)
Plugin for data service (data request using OE)
Data Access &
Processing
DataQueryAction(class)
OE(XML record)
Query form(web-page)
User basket
Query object
Storage
Data object
Service plugin(class)
Data service
Request creation
Request restrictions
Redirectrequest Store
request result
Link by identifier
Save request details
Visualization, Converting, ets.
Data services are accessed via Ordering Extention meta-record format and plugins
A user makes a request via a request form (constructed from OE)
The request is passed through the plugin to the service. The result is saved for the user in a special storage
The user can always access his data objects and work with them using the existing VO functionality
Adding a data service in the services section
• Create a plugin for the service (you may use one plugin for multiple services with identical signature)
• Configure the plugin• Create an OE meta-record referencing the
plugin
Plugin requirementsA plugin must have a standard processing method, which takes an object id, a request string and a request parameters table (map-request).public void process(Map params, String paramsString, String basketObjectId){…}
A plugin must be inlcuded in vo_store.conf with a unique name############ plugins ############## for "spidrIndicesPlugin"spidrIndicesPlugin.pluginClass=vobs.plugins.SpidrPlugin
A plugin must be properly referenced from ОЕ record. It should be included in additional request parameters, as «voPlugin», and assigned its unique name as a value. <QueryFormAdditions> <Addition> <AdditionName>voPlugin</AdditionName> <AdditionValue>spidrIndicesPlugin</AdditionValue> </Addition></QueryFormAdditions>
SPASE metadata challenge• Existing SPASE records (spaseDD) do not comply with XSD
– Mandatory attributes are missing– Element names do not comply with the schema
• “Spase” != “SPASE”• “ResourceHeader” != “RESOURCE_HEADER”• … etc.
• Existing XSLs are application-specific. The displayed information is not complete for different resources. Need to extend (rewrite) existing XSLs.
• The current version of VxOWare does not support heterogeneous resources (Person, Catalog, ets.). Different resources must reside in different sections (each must be configured separately). Work in progress.
• Can not run SpaseEditor, because of incompatible components (Editor, Parser, Bean etc.)
SPASE section and record view
VO simple edit form and advanced SPASE Editor