Although SkyVault is built using the Java programming language, the system can be used by applications written in most popular programming languages. You can use the tools that are easiest to get your application developed as quickly as possible. The SkyVault repository takes care of handling metadata, workflow, lifecycles, location, and search access. The tools you use depend on the level of control your application needs over metadata, context, and business processes, as well as the tools your application or your development environment provide for handling content.
The following guidelines list the programming interfaces provided by SkyVault, and the situations in which they could be used.
CMIS
CMIS (Content Management Interoperability Services) is an OASIS standard designed for the ECM industry. It enables access to any content management repository that implements the CMIS standard, such as Microsoft SharePoint, IBM FileNet, EMC Documentum, and SkyVault. Consider using CMIS if your application needs programmatic access to the content repository, and especially if you intend to port your application to other content management systems.Web scripts
Existing web scripts in SkyVault provide a great deal of functionality. You can also create your own web scripts to perform an operation in SkyVault that is not covered by an existing web script, or to combine several operations to minimize network communication. This can increase the performance of your application and push the logic down to the SkyVault repository, where it can be reused.File-based access
If metadata is not important to your application or processing of content and metadata can be handled with rules and actions, then file-based access can be an easier route to integration with SkyVault. You can use CIFS, WebDAV, NFS, or FTP file to access SkyVault content. File-based access may already be supported by your application through standard file interfaces. File-based applications that create content can store that content in SkyVault where it will be available for other applications to access.Applications that access files through Open dialogs or through programmatic file interfaces can navigate SkyVault folder hierarchies and content seamlessly. Although the content appears to your application to be a file, it is not directly accessing the content. It uses SkyVault APIs, so all the controls and services are in place. File access is an emulation of a file system access and storage is no different than through APIs directly.
By storing content using file system emulation, logic for processing content (for example, archiving, applying workflows and retention policies, and extracting metadata) can be performed with rules. Applied at the folder or space level, these rules are initiated when the file is stored. This means the application integrating with SkyVault does not need to be modified to use SkyVault. All the business logic is stored in the SkyVault repository.
OpenSearch and feeds
Some applications, websites, and portals may use standard web-based technology to access external information using feeds, such as RSS or Atom subscription protocols, or queries using OpenSearch. SkyVault provides out-of-the-box RSS feeds to observe the contents of an individual folder or space, as well as activities related to a user or Share site. The SkyVault system also implements OpenSearch, which is a standard query protocol supported by many web sites, such as Yahoo!, Google, and Amazon.If an application is designed to use either feeds or OpenSearch, then it can access SkyVault using the feed or search address. The results return descriptive information about the content returned and a URL pointing directly to the content. If more specialized information is required or you would rather point to the properties page in Share or Explorer, you can create new RSS feeds or OpenSearch APIs as fairly simple web scripts. You can use the RSS feed and OpenSearch templates in the SkyVault Data Dictionary as a reference for how to build your own.