Metadata projections¶
A metadata projection is a bidirectional XSLT transformation, meant to simplify integration of the Vidispine system with several third party systems.
A projection consists of an incoming and an outgoing XSLT transformation.
- The incoming projection transforms information in some format to a format supported by Vidispine.
- The outgoing projection transforms information from Vidispine to a some other format.
When you use projections to transform item metadata then the outgoing projection will transform a MetadataListDocument and the incoming projection must produce a MetadataDocument.
Get information about projections¶
List all projections¶
-
GET
/projection
¶ Returns a list of all defined projections.
Query Parameters: - url (boolean) –
true
- Return list of URLs.false
(default) - Return list of ids.
Produces: - application/xml, application/json – URIListDocument
- text/plain – CRLF-delimited list of ids or URLs
Role: _projection_read
- url (boolean) –
Retrieve an outgoing projection¶
-
GET
/projection/
(projection-id)/outgoing
¶ Returns the projection use to transform information from the Vidispine API,
GET metadata
.Status Codes: - 404 Not found – Could not find the projection identified by
projection-id
.
Produces: - application/xml – XML, XSLT stylesheet
Role: _projection_read
- 404 Not found – Could not find the projection identified by
Retrieve an incoming projection¶
-
GET
/projection/
(projection-id)/incoming
¶ Returns the projection use to transform information to the Vidispine API,
PUT metadata
.Status Codes: - 404 Not found – Could not find the projection identified by
projection-id
.
Produces: - application/xml – XML, XSLT stylesheet
Role: _projection_read
- 404 Not found – Could not find the projection identified by
Create/modify/delete projections¶
Note
Please note that the projection result must be an valid XML document.
Update or create an outgoing projection¶
-
PUT
/projection/
(projection-id)/outgoing
¶ Creates a new projection if not defined earlier, and sets the outgoing projection to the specified stylesheet. If a new projection is created, the incoming transformation is set to be the identity transform.
Accepts: - application/xml – XML, XSLT stylesheet
Produces: - application/xml – XML, XSLT stylesheet
Role: _projection_write
Update or create an incoming projection¶
-
PUT
/projection/
(projection-id)/incoming
¶ Creates a new projection if not defined earlier, and sets the incoming projection to the specified stylesheet. If a new projection is created, the outgoing transformation is set to be the identity transform.
Accepts: - application/xml – XML, XSLT stylesheet
Produces: - application/xml – XML, XSLT stylesheet
Role: _projection_write
Delete a projection¶
-
DELETE
/projection/
(projection-id)¶ Removes the projection.
Status Codes: - 200 OK – The projection was deleted successfully.
- 404 Not found – Could not find the projection identified by
projection-id
.
Role: _projection_write