The new machine translation service in SharePoint 2013 is an attempt to finally make the variations feature useful.
The feature is intended to translate published content (documents, list items, entire sites) into other languages. It is an extension of variations, that either synchronously or asynchronously sends the content to a translation service in the cloud. By default it is configured to use a Microsoft cloud hosted translation service, but can be configured to use other third party services. The key to this is that it uses a cloud hosted service to take the load of your internal infrastructure.
Besides the cloud based translation, this service application offers a few other improvements to the variations feature:
- Variations now supports up to 209 variation labels for on prem deployments and 50 variation labels in the cloud
- No longer required to unpublish/publish documents to get changes to sync in related resources. List/Libraries now sync independently
- Localized sites now use XML Localization Interchange File Format (XLIFF). This is the standard and makes it easier to use third party translation services to translate your app
The architecture of this service is very similar to that of the Word Automation service; they both have similar components, for example: Timer Jobs and Document queues. If you are familiar with the Word Automation service object model you should have very little problems using the machine translation object model. Here is a great technet overview.
Asynchronous translation requests are handled through the document queue and a timer job. By default the timer job is set to run every 15 minutes, but this configurable.
Like all other service applications, it can be configured through either PowerShell or the SharePoint Central Admin…but seriously, who uses Central Admin?
The following pieces are required to use the Machine Translation Service:
- SharePoint 2013 Standard or Enterprise
- App Management Service is started
- Server – to – Server app authentication is configured
- User Profile Service Application Proxy in default group
- User Profile Service provision and configured
- Internet connection
The machine translation service provides the following APIs:
- Server Object Model
- Client Object Model
- REST Web Services
Through all three methods you are able to translate a single file or all items in a list, library or folder either synchronously or asynchronously. You are also able to translate a file stream (must be synchronous), for on the fly translation of uploaded content.
This new service application is a very powerful new feature for SharePoint, but like anything else comes with its own set of risks. The two main ones that jump out at me are: Security and Reliability. Both are fairly obvious. On the security front, you are now sending your content into the cloud. This puts your content at risk of being seen by people both inside and outside your organization that may not have permissions to the content. Generally this feature will be used for public sites which require multiple language support. This mitigates the risk somewhat as the content was always intended for public consumption. Of course this leads into the second risk, reliability. Remember this is a machine doing the translation, not a human. It is basically taking each work in the source document and turning it into the equivalent word in the destination language. This may not end up conveying the message you are looking for. Anyone who has traveled to non-English speaking countries have seen their fair share of engrish. You probably want someone to proof reading the translations to ensure your website doesn’t become popular for the wrong reasons.