restful solutions for localization interoperability ......l&t web services a topic on its own....
TRANSCRIPT
RESTful Solutions For
Localization Interoperability Concerns
Jörg Schütz, bioloom group
FEISGILTT 2012, Seattle, Washington, U.S.A
L&T orders are unexpectedly modified by an MLV. L&T orders are split apart by the MLV due to
delivery bottlenecks resulting in new translator assignments.
L&T PMs complain about MLV’s L&T quality, invoices and service in general.
Incoming L&T deliveries are partial, or missing, and reminders are necessary.
L&T orders are unexpectedly modified by an MLV. L&T orders are split apart by the MLV due to
delivery bottlenecks resulting in new translator assignments.
L&T PMs complain about MLV’s L&T quality, invoices and service in general.
Incoming L&T deliveries are partial, or missing, and reminders are necessary.
When and how often are orders modified? How often and in which scenarios are
orders split? What were PMs complaining about? How many reminders were necessary until
the PMs accepted the delivered language product?
Integration Scenario
Existing SOA/WS-*
Stack
RESTFul Web
Services
Combined Ecosystem
Imperative contracts and static metadata
Convey application protocol information in declarative & just-in-time fashion
Today’s Agenda
L&T web services a topic on its own.
Data formats vs. functional concerns.
Importance of common services.
Diversity in a localization ecosystem.
Relative costs WS-* vs. REST. Contributions of standards. Vendor pull vs. buyer push, and general polling.
Q&A
L&T Web Services
Core
Business
Entities
Tools
Assets
BPM
WS-*
vs.
REST
Data Formats vs. Functional Concerns
• LT Standards
• Interpretation and Lock-in
Data Formats
• Semantic Markup
• Hypermedia Controls
Functions
Data Formats vs. Functional Concerns
• LT Standards
• Interpretation and Lock-in
Data Formats
• Semantic Markup
• Hypermedia Controls
Functions
TIPP
Excursion: TIPP
Automation Human
Consumption
Translation only
From Authoring to
Publishing
Inte
rop
era
bili
ty N
ow
! Lin
po
rt
Co
nta
iner
Met
aph
or
Excursion: TIPP \ cont.
Translation:
"Request"
or
"Response"
Task Type
Metadata:
- Creator
- Task
- Content Description
Manifest
- XLIFF:doc
- Terminology
- TMX
- References
- STS
Payload
<?xml version="1.0" encoding="UTF-8"?> <TIPManifest xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:noNamespaceSchemaLocation=http://interoperability-now.org/TIPP/schema/TIPManifest-1-4.xsd version="1.4">
<GlobalDescriptor> <UniquePackageId>urn:uuid:12345-abc-6789-aslkjd-19193la-as9911</UniquePackageId> <PackageCreator> <Name>Welocalize</Name> <ID>http://w01.welocalize.com/globalsight</ID> <Update>2011-05-09T22:45:00Z</Update> <Tool> <ToolName>GlobalSight 9.0</ToolName> <ToolID>http://www.globalsight.com</ToolID> <ToolVersion>9.0</ToolVersion> </Tool> </PackageCreator> <TaskRequest> <Task> <TaskType>http://interoperability-now.org/TIPP/schema/tasks/v1/translate-strict-bitext</TaskType> <SourceLanguage>en-US</SourceLanguage> <TargetLanguage>fr-FR</TargetLanguage> </Task> </TaskRequest> </GlobalDescriptor> <PackageObjects> … </PackageObjects> </TIPManifest>
TIPP Manifest: “Request”
<?xml version="1.0" encoding="UTF-8"?> <TIPManifest xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance xsi:noNamespaceSchemaLocation=http://interoperability-now.org/TIPP/schema/TIPManifest-1-4.xsd version="1.4">
<GlobalDescriptor> … <TaskResponse> <Task> <TaskType>http://interoperability-now.org/TIPP/schema/tasks/v1/translate-strict-bitext</TaskType> <SourceLanguage>en-US</SourceLanguage> <TargetLanguage>fr-FR</TargetLanguage> </Task> <InResponseTo> <UniquePackageId>urn:uuid:12345-abc-6789-aslkjd-19193la-as9911</UniquePackageId> <PackageCreator> … </PackageCreator> </InResponseTo> <ResponseMessage>Success</ResponseMessage> <ResponseComment> … </ResponseComment> </TaskResponse> </GobalDescriptor> <PackageObjects> … </PackageObjects> … </TIPManifest>
TIPP Manifest: “Response”
Projection of Application Protocol
Links build Domain APs
Dynamic Business
Workflows
Annotated Meaning
State of L&T order Translator assignment Quality ranking …
Embedded in Representations Guiding Rules for Consumers
Hypermedia Formats
Pure XML Approach
System Integration
No guiding rules
No context
No loose coupling
Out-of-band information needed to progress
Service Implementation
Documentation
Static Contracts
URI Templates
How it Works
Build on already existing XML schemas Add hypermedia controls by defining Links Semantic markup
General Downside: Closed Ecosystem
HTTP Content-Type header + HTTP Verbs
Summary: DAP
DAB
Media Types
Link Relations HTTP Idioms
Representation Format: Schemas Processing Models Linking
Manipulate Resources Roles of linked Resources
Summary: Business Process
Initial Request to Entry Point
of Service
Resource Representation
with Links
Link Selection to Transition to
next Step
Service Consumer
Service Provider
Service Consumer
Exchange of Representations of Resource State.
Links advertise legitimate Application State Transition
Benefits of RESTful L&T Services
Fully employs the concept of (language) resources.
Integrates with already existing modeling practice in enterprise environments.
Fosters dynamic evolution, ensures co-existence, and even allows for the full integration of two ecosystems.
Allows for the discovery of new cross-fertilization challenges.
Common Services
Widely accepted implementation strategy to account for a common understanding of available services and their Web contracts.
Employment of already existing standards for certain representations of language resources and supporting descriptions.
Based on Web standards in multiple dimensions from distribution to semantic annotation.
Diversity in L&T Ecosystem
“Health” of Ecosystem
RESTful Services
WS-* Services
Language Assets
LT Tools
Key Performance Indicators
Relative Costs
Standards
Push/Pull Model
Key Performance Indicators
Relative Costs
Standards
Push/Pull Model
Hypermedia based services are straightforward to design, implement, and test using familiar tools and libraries. Management backing is mandatory as well as are skilled developers, sufficient time and money.
Key Performance Indicators
Relative Costs
Standards
Push/Pull Model
General modeling and documentation support, different description formats for language resources, formal frameworks for semantic annotations and provenance information, and service bindings.
Key Performance Indicators
Relative Costs
Standards
Push/Pull Model MLV pull instead of the traditional buyer push as well as possible long polling, a variant of classic polling to emulate an information push between service participants; various Atom/AtomPub binding scenarios.
Conclusions
L&T web services a topic on its own.
Data formats vs. functional concerns.
Importance of common services.
Diversity in a localization ecosystem.
Relative costs WS-* vs. REST. Contributions of standards. Vendor pull vs. buyer push, and general polling.
The End…
L&T web services a topic on its own.
Data formats vs. functional concerns.
Importance of common services.
Diversity in a localization ecosystem.
Relative costs WS-* vs. REST. Contributions of standards. Vendor pull vs. buyer push, and general polling.
Q&A
The End…
L&T web services a topic on its own.
Data formats vs. functional concerns.
Importance of common services.
Diversity in a localization ecosystem.
Relative costs WS-* vs. REST. Contributions of standards. Vendor pull vs. buyer push, and general polling.
Q&A