Overview
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
Architecture
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?
Prerequists
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
API
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.
Caution
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.