The XenData XML interface is provided by the XenData Workflow API. This is an additional software module which is installed on a server running XenData6 Server software. It extends the archive server to include an XML interface in addition to the file system interface provided by the XenData6 Server software.
The XML interface is used to manage assets. An asset is a collection of one or more physical files which when combined make up a single entity from the archive’s perspective. The individual files may be located in different folders and they may contain video, audio tracks, subtitle information etc. and any other data or metadata that is part of the whole asset. An asset is considered to be a single entity which is normally transferred to or from the archive as a whole, in a single atomic operation. Assets are identified either by an asset name, or by a globally unique identifier (GUID) provided as part of the request. For assets that comprise a single file, the asset name may be the file name. An asset GUID can have any format; the only requirement is that GUIDs are indeed unique.
The XML instructions include the ability to pull assets from a source location and push them back to that location. This extends the capabilities of the archive server to move files across a network using either CIFS/SMB or FTP network protocols or to move files locally, perhaps between a SAN volume accessible to the archive and the local archive volume.This approach creates efficient data paths, avoiding file transfer via a client computer which would otherwise typically affect perfomance of the transfer, as well as the responsiveness of the client computer. A preferred implementation using the XML interface is shown below. This minimizes traffic through the client.
The XML interface supports the following types of commands:
◊ Operational commands – including Archive, Move, Restore , Delete – for managing the transfer of assets between the XenData archive server and a remote server
◊ Maintenance commands – including ListObjects, ObjectExists, ObjectLocation – for maintaining the system , including reconciling contents of the archive and a 3rd party application.
◊ Search command – for searching the archive. This uses SQL Server CE and may be extended to add additional metadata.
◊ GetStatus – gives the progress of a job.
XML instructions are sent and received from a network socket (port 3466).A full description of the XML interface is available from the Workflow API Programmers Description.
The Workflow API may be extended by adding a plugin from Marquis Broadcast to support Partial File Restore (PFR) based on timecode. This supports MXF and QuickTime files for a wide range of Codecs.