Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) FLAVIUS.

Slides:



Advertisements
Similar presentations
LiNC Developer Meetup Welcome!. Our job is to make your life easier APIs Tools and workflow Documentation Stay in touch: developers.lithium.com Join the.
Advertisements

Hypertext Transfer PROTOCOL ----HTTP Sen Wang CSE5232 Network Programming.
CGI & HTML forms CGI Common Gateway Interface  A web server is only a pipe between user-agents  and content – it does not generate content.
SOAP.
SOAP SOAP is a protocol for accessing a Web Service. SOAP stands for Simple Object Access Protocol * SOAP is a communication protocol * SOAP is for communication.
MAE Training for User July 8, Agenda Wiki FishEye Crucible Stash.
Socket Layer Security. In this Presentation: need for web security SSL/TLS transport layer security protocols HTTPS secure shell (SSH)
Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) FLAVIUS.
Automating Bespoke Attack Ruei-Jiun Chapter 13. Outline Uses of bespoke automation ◦ Enumerating identifiers ◦ Harvesting data ◦ Web application fuzzing.
Presentation 7 part 2: SOAP & WSDL. Ingeniørhøjskolen i Århus Slide 2 Outline Building blocks in Web Services SOA SOAP WSDL (UDDI)
Browsers and Servers CGI Processing Model ( Common Gateway Interface ) © Norman White, 2013.
1 Web Search Interfaces. 2 Web Search Interface Web search engines of course need a web-based interface. Search page must accept a query string and submit.
HTTP Overview Vijayan Sugumaran School of Business Administration Oakland University.
Processing of structured documents Spring 2003, Part 6 Helena Ahonen-Myka.
Prof. Vishnuprasad Nagadevara Indian Institute of Management Bangalore
IDENTITY MANAGEMENT Hoang Huu Hanh (PhD), OST – Hue University hanh-at-hueuni.edu.vn.
1 ‘Dynamic’ Web Pages So far, we have developed ‘static’ web-pages, e.g., cv.html, repair.html and order.html. There is often a requirement to produce.
UFCEKG-20-2 Data, Schemas & Applications Lecture 4 Server Side Scripting & PHP.
PHP Tutorials 02 Olarik Surinta Management Information System Faculty of Informatics.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Simple Web Services. Internet Basics The Internet is based on a communication protocol named TCP (Transmission Control Protocol) TCP allows programs running.
Comp2513 Forms and CGI Server Applications Daniel L. Silver, Ph.D.
IT533 Lectures Session Management in ASP.NET. Session Tracking 2 Personalization Personalization makes it possible for e-businesses to communicate effectively.
SSC2: Web Services. Web Services Web Services offer interoperability using the web Web Services provide information on the operations they can perform.
FLAVIUS Technical presentation (Overblog, Qype, TVTrip) - WP2 Platform architecture.
WEB DESIGN USING DREAMWEAVER. The World Wide Web –A Web site is a group of related files organized around a common topic –A Web page is a single file.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
OOI CyberInfrastructure: Technology Overview - Hyrax January 2009 Claudiu Farcas OOI CI Architecture & Design Team UCSD/Calit2.
Behzad Akbari Spring 2012 (These slides are based on lecture slides by Lawrie Brown)
Peoplesoft XML Publisher Integration with PeopleTools -Jayalakshmi S.
Computer Security: Principles and Practice First Edition by William Stallings and Lawrie Brown Lecture slides by Lawrie Brown Chapter 22 – Internet Authentication.
MINT Working Group Jan 9-10 at Harris FBC Melbourne, FL.
.Net and Web Services Security CS795. Web Services A web application Does not have a user interface (as a traditional web application); instead, it exposes.
12/3/2012ISC329 Isabelle Bichindaritz1 PHP and MySQL Advanced Features.
Chapter 6 Server-side Programming: Java Servlets
ITCS373: Internet Technology Lecture 5: More HTML.
“This presentation is for informational purposes only and may not be incorporated into a contract or agreement.”
CS 4244: Internet Programming Security 1.0. Introduction Client identification and cookies Basic Authentication Digest Authentication Secure HTTP.
6 th Annual Focus Users’ Conference 6 th Annual Focus Users’ Conference Import Testing Data Presented by: Adrian Ruiz Presented by: Adrian Ruiz.
Xml:tm XML Text Memory Using XML technology to reduce the cost of translating XML documents.
FEISGILTT Dublin 2014 Yves Savourel ENLASO Corporation QuEst Integration in Okapi This presentation was made possible by This project is sponsored by the.
Appendix E: Overview of HTTP ©SoftMoore ConsultingSlide 1.
Web Technologies Lecture 3 Web forms. HTML5 forms A component of a webpage that has form controls – Text fields – Buttons – Checkboxes – Range controls.
Module: Software Engineering of Web Applications Chapter 2: Technologies 1.
ICM – API Server & Forms Gary Ratcliffe.
©SoftMooreSlide 1 Introduction to HTML: Forms ©SoftMooreSlide 2 Forms Forms provide a simple mechanism for collecting user data and submitting it to.
Internet Applications (Cont’d) Basic Internet Applications – World Wide Web (WWW) Browser Architecture Static Documents Dynamic Documents Active Documents.
RESTful Web Services What is RESTful?
Web Server Design Week 15 Old Dominion University Department of Computer Science CS 495/595 Spring 2010 Martin Klein 4/21/10.
Fundamentals of Web DevelopmentRandy Connolly and Ricardo HoarFundamentals of Web DevelopmentRandy Connolly and Ricardo Hoar Fundamentals of Web DevelopmentRandy.
1 State and Session Management HTTP is a stateless protocol – it has no memory of prior connections and cannot distinguish one request from another. The.
HTML Forms.
SharePoint Online Migration API and Improvements
Overview of Servlets and JSP
Simple Web Services. Internet Basics The Internet is based on a communication protocol named TCP (Transmission Control Protocol) TCP allows programs running.
1 A Look at the Application Authorized users can access Communicator! NXT from any Internet-capable computer via the Web.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
Lesson 11. CGI CGI is the interface between a Web page or browser and a Web server that is running a certain program/script. The CGI (Common Gateway Interface)
Data and tools on the Web have been exposed in a RESTful manner. Taverna provides a custom processor for accessing such services.
Training for developers of X-Road interfaces
Application program interface (API)
Training for developers of X-Road interfaces
Computing with C# and the .NET Framework
Networks Problem Set 1 Due Oct 3 Bonus Date Oct 2
Azure Machine Learning & ML Studio
IS333D: MULTI-TIER APPLICATION DEVELOPMENT
Testing REST IPA using POSTMAN
William Stallings Data and Computer Communications
REDCap Integration Reducing complexity for researchers using both REDCap and a complex treatment allocation algorithm Allan Walker (Edinburgh Clinical.
Presentation transcript:

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) FLAVIUS Meeting – WP4 June 8, 2010 Giurgiu Bogdan Wong William

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Agenda LW contributions Keys to successful integration Complete integration picture Translation REST API Trustscore™ and Reporting REST API Version 2 Customization through dictionaries Customization through training FLAVIUS Language Weaver Roadmap Questions & Answers

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Language Weaver’s Contribution

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Keys to a Successful Partner Integration 1.Ability to integrate with Language Weaver Machine Translation for development and testing 2.Ability to customize baseline engines with dictionaries 3.Ability to customize baseline engines with training of domain/customer specific vertical system

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Complete Picture REST API TOD ReportingTrustscore™ Dictionary Training

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Sample UI for the Translation Engine

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API Simple HTTP base communication protocol Leverage HTTP calls – POST, GET, DELETE Web 2.0 used by Amazon, Twitter, etc. Supported text formats: TXT, HTML, TMX, XLIFF Data is encrypted using SSL (via HTTPS) Authentication using a custom HTTP scheme – Two addition headers added to every request LW_Date – Contains a date/time string based on the request time Authorization – Contains a string made up of three strings (each separated by a colon): “LWA: : ” Unique signature generated using a keyed-HMAC (Hash Message Authentication Code) and a SHA1(Secure Hash Algorithm) digest

Translation Rest API /v1/lpinfo + HTTP GET /v1/lpinfo + HTTP GET Language Pair Non-Blocking Translations /v1/translation/src.tgt/lpid= + HTTP POST /v1/translation/src.tgt/lpid= + HTTP POST /v1/user + HTTP POST /v1/user + HTTP POST User Blocking Translations /v1/translation/src.tgt/lpid= + HTTP POST /v1/translation/src.tgt/lpid= / + HTTP GET/DELETE /v1/translation/src.tgt/lpid= + HTTP POST /v1/translation/src.tgt/lpid= / + HTTP GET/DELETE

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API Blocking Translation Request – HTTP POST to [tgt]/lpid=[lpid]/[optional-params]/ [tgt]/lpid=[lpid]/[optional-params]/ Appropriate small chunks of data (less than 640 bytes) Mandatory Input Parameters: – [src] – three letter code for the source language (e.g. “eng” for English) – [tgt] – three letter code for the target language – [lpid] – integer denoting the specific language pair system to be used – “source_text=” – [string] - URL escaped version of the input source (POST DATA) Optional Input Parameters: – input_format=[value] – string declaring the input format. Choose from “html”, “plain”, “xliff”. – input_encoding=[value] – string defining the input format. Only “utf8” supported Sample Calls: – Create Blocking Translation Job for Text, Get Language Pair details

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API Non-Blocking Translation Request – HTTP POST to async/[src].[tgt]/lpid=[lpid]/[optional-params]/ async/[src].[tgt]/lpid=[lpid]/[optional-params]/ Appropriate for large size files Mandatory /Optional Input Parameters are similar with the Blocking Translation Sample calls: – Create Non-Blocking Translation Job for Text/ URL/ File – Get Language Pair details, Get User Info – Followed by HTTP GET’s to async/[src].[tgt]/[jobID]/lpid=[lpid]/[optional-params]/ async/[src].[tgt]/[jobID]/lpid=[lpid]/[optional-params]/ [jobID] – integer denoting the specific translation submitted with the POST Sample calls: – GET Non-Blocking Translation Job for Text/ URL/ File

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API Sample code – C# Example // Step 1: Construct the path. Check to see if the LPID and/or input_format is submitted string szPath = "/v1/translation/" + szSrcLang + "." + szTgtLang + "/"; if (0 != szLPID.Length) szPath = szPath + "lpid=" + szLPID + "/"; if (0 != szInputFormat.Length) szPath = szPath + "input_format=" + szInputFormat + "/"; // Step 2: Construct the URL string szURI = m_szHostName + szPath; System.Console.WriteLine(szURI); // Step 3: Prepare the POST request HttpWebRequest request = (HttpWebRequest)WebRequest.Create(szURI); PrepareHttpRequestHeader("POST", szPath, ref request);

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API // Step 4: Attach the POST data szSourceText = "source_text=" + szSourceText; byte[] postDataBytes = Encoding.UTF8.GetBytes(szSourceText); request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.ContentLength = postDataBytes.Length; Stream requestStream = request.GetRequestStream(); requestStream.Write(postDataBytes, 0, postDataBytes.Length); requestStream.Close(); // Step 5: Read the response HttpWebResponse response = (HttpWebResponse)request.GetResponse(); StreamReader responseReader = new StreamReader(response.GetResponseStream(), Encoding.UTF8); string lpInfoResponse = responseReader.ReadToEnd(); // Step 6: Parse the XML document for the translated text XmlDocument xmlDoc = new XmlDocument(); xmlDoc.LoadXml(lpInfoResponse); System.Console.WriteLine(lpInfoResponse); XmlNodeList nodeList = xmlDoc.GetElementsByTagName("translated_text"); szTargetText = nodeList[0].InnerText.Trim();

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API – Header Generation Sample code – C# Example – Generate Header // Step 1: Get the current HTTP date string szHttpDate = GetHttpDate(); // Step 2: Generate the signature szRequestType = szRequestType.ToUpper(); string szSignature = GenerateSignature(szRequestType, szHttpDate, szURI); // Step 3: Add the two new headers to the request object request.Headers.Add("LW_Date", szHttpDate); request.Headers.Add("Authorization", "LWA:" + m_szUserID + ":" + szSignature); System.Console.WriteLine(szSignature);

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API – Header Generation – Generate Signature Encoding u8Encoding = new UTF8Encoding(); HMACSHA1 hmacsha1 = new HMACSHA1(u8Encoding.GetBytes(m_szAPIKey)); string szMessage = szRequestType.Trim() + "\n" + szHttpDate.Trim() + "\n" + szURI.Trim(); string szSignature = Convert.ToBase64String(hmacsha1.ComputeHash(u8Encoding.GetBytes(szMess age.ToCharArray()))); return szSignature;

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Translation REST API Sample request – response for Create Non-Blocking Translation Job for Text e.g. HTTP POST request to v1 /v1/translation-async/eng.fra/lpid=74/ POST Wed Mar 3 14:55: eng fra async/eng.fra/ bccc5e58d50ce7dcaf950f562ec2303/lpid= bccc5e58d50ce7dcaf950f562ec2303 eng fra 74 text/plain release ENGFRAU20_5.1.x.0

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Trustscore™ and Reporting Internal LW milestone – Migration to version 2 of REST API Reporting: – Words per minute – Number of documents translated – Average document length – Details about the TrustScore™ – Other metrics to be defined Trustscore™: – Scored from 1-5 – Document level scoring – Segment level scoring not supported

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) REST API Version 2 New format – Sample of Create Non-Blocking Translation Job for Text pair/[lpid]/translation-async/[optional-params]/ Mandatory and Optional parameters same as v1 Additional calls/ functionality related to: – Trustscure – Reporting – Dictionary

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Customization through Dictionaries Structure – One entry per term, one translation per entry – Search & Replace mechanism that applies unconditionally Size – Up to entries Best practice to build one – Using CSV files Limitations – No limitations on the content – Recommend use of dictionaries is via phrase replacement instead of word replacement – Gender is not automatically generated – UTF-8 Impact on performance – No significant impact

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Customization through Training d d Parallel Aligned Text Optional: Regression Text Optional: Test Text Evaluation Data: Fix noisy text Fix noisy text More text More text Text alignment Text alignment Text segmentation Text segmentation Product Delivery via TOD LW Training Compute Cloud

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Customization through Training Structure: – Train on any language pair specified in the FLAVIUS agreement – Inputs: TMX parallel segments, optional regression text files, optional test sets for evaluation – Outputs: Trained engine Results of BLEU scored test set Translated output of regression text files Metrics from input training corpus – Evaluate customized engine via TOD deployment

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) FLAVIUS Language Weaver Roadmap

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Questions & Answers

Accent Colors Accent 1 (RGB: 141,178,24) Accent 2 (RGB: 63,63,63) Accent 3 (RGB: 127,127,127) Accent 4 (RGB: 195,214,155) Accent 5 (RGB: 222,222,222) Thank you! Accelerating the way the world communicates