This is a technical introduction to integrate with Livewords Flow based on an XML Feed exchange. After reading this you should have a conceptual understanding of the data interchange procedure.
Basics
- Source Feed
-
The term used for the XML document you import into Livewords Flow. It contains content you want to put through the translation workflow, for example a product catalog from your content system. A source feed needs to be available through a url.
- Target Feed
-
The XML document produced by Livewords Flow that contains the translated text of the source document. The target feed can be accessed through a URL or downloaded from Livewords Flow.
- Monolingual
-
A source feed can have 1 source language. If the feed contains content in multiple languages, you’ll need to specify what language will be designated as the source language. All elements within the source that are marked to be in a different language than the designated source language will be ignored. The same holds for the target feed. As an example, translating from English to five foreign languages will need five target feeds, one for each target language.
- Input is Output
-
The structure of the target XML is the same as the the source feed XML. The configuration in Livewords Flow allows you to remove elements from the target feed if needed.
Process Flow
The process flow of the integration is summarized as follows.
UPLOAD |
Upload the source feed to a specific URL. |
IMPORT |
Trigger a change event manually in Livewords Flow to start importing immediately. Alternatively wait until the next scheduled import starts. Livewords will locally download the data that has been uploaded. |
EXTRACT |
The source feed is now scanned for new or changed text and the text is extracted and registered as “awaiting translation” if necessary. |
TRANSLATE |
Subscribed translators can start working on the extracted content. |
EXPORT |
At any point in time you can download a target feed. The target feed data contains the translated text that was published by translators. If content is not yet translated when downloaded you have a few options. Content can be left out, left in the original form, or can be substituted by a computer-generated translation. |
NOTE
|
The target feed can be imported in the original content system. |
Custom Integration Requirements
To integrate the translation workflow of your application with Livewords Flow you will need to
-
setup an import/export cycle
-
implement upload and download functionality over HTTP.
It is also possible to work with the import and export files manually and leave out the upload/download part. In that scenario, the resulting process will be driven by manual action.
The effort will require you to integrate without any manual interference and will consists of the following steps.
-
Export all content that you want to translate from your application. The export must result in an XML file that complies with the item definition (you need to change "type" to "XmlFeed" in the source settings).
-
Implement functionality to upload the exported XML file to a fixed location using an HTTP PUT request. No additional headers are required, unless you have additional security requirements.
-
Implement functionality to download the target feeds. You will download from a fixed location per feed, using an HTTP GET request.
-
Import all data present in the target feed files you downloaded in the previous step.
Example
This is only example. You can use any kind of XML which can be configured in source configuration.
Click "Sources" in left menu. If you can not see this menu item, ask your administrator to change your user type to "Account owner".
Click "Add Feed" button.
Use for Location url of your source feed xml (source xml example).
Copy source settings from item description (settings are in json format) and change "type" to "XmlFeed" in the json.
Add language for the translation (you can add several languages here).
Click "Import" button.
Go to To Do, translate and published the item.
Go back to Sources and click to the source.
Click "Download all" button for download all zip files with translated xmls (one translated xml per language). Example of zip file.
Also you can use link to translated xml in the source form (for automatization).
Security
Uploading and downloading can be configured to require additional security. This provides an industry-standard guarantee that the uploads and downloads can only be done by authenticated and authorized users.
Best practices
Your XML must always contains all content for translation. After re-import you will see only items which were included in last version of XML.
XML must be always accessible via URL. Otherwise Flow can not provide translated XML.
Usually it is enough to create scheduled import (in Flow) which will check source URL every day. Scheduled import should be configured to start after time you updating source XML. For example, if you update XML in 1 a.m. than scheduled import should be configured to start at 2 a.m.
Comments