[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Draft Specification
Peter Reynolds, Software Development
Manager
Bowne
Global Solutions
3, West Pier
Business Campus, Dun Laoghaire, Co. Dublin, Ireland
Tel:
+353-1-202-1280
Fax: +353-1- 202-1299
Peter.Reynolds@bowneglobal.ie
Web Site: http//www.bowneglobal.com
http://elcano.bowneglobal.com/
uploadFile
This document details the draft specification for a standard for using Web services within the translation industry. The document has been drafted by the Translation Web service technical committee at OASIS. It is focussed on specifying the calls needed to use Web services for the submission and retrieval of translation and other work.
The methods are grouped into categories in order to simplify the breakdown of discussions. These are described are as follows –
Status, Notification and Delivery
This section covers a single method only, and that is the “Query Support†method, however the decisions made as to the means of service specification, will impact most if not all other method definitions.
The method used for Service support is the retrieveServiceList
call. The purpose of this call is to get a complete list of services offered by a particular vendor. This will include the languages dealt with and services offered by a particular vendor.
retrieveServiceList
retrieveServiceList
Note : For the following we should decide whether we wish to include it, and if so, whether its Explicit (and restricted), Free Format or Extensible (i.e. some definitions provided only).
Support | Comment | Include, Format |
---|---|---|
Languages support | Language support | Yes, Explicit |
Service Types | See Appendix 1 | Yes, Combination |
Mime Types | Types of file supported | Yes, Extensible |
Domain |
<xsd:element name="retrieveServiceListRequest"> <xsd:complexType> <xsd:sequence/> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveServiceListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:languagePairs"/> <xsd:element ref="types:services"/> <xsd:element ref="types:mimeTypes"/> <xsd:element ref="types:domains"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="locale"> <xsd:complexType> <xsd:attribute name="country" type="iso3166:CodeContentType" use="required"/> <xsd:attribute name="language" type="iso639:CodeContentType" use="required"/> <xsd:attribute name="variant" type="xsd:string" use="optional"/> </xsd:complexType> </xsd:element> <xsd:element name="source"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:locale"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="target"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:locale"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="languagePair"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:source"/> <xsd:element ref="types:target"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="languagePairs"> <xsd:complexType> <xsd:sequence> <xsd:element minOccurs="1" maxOccurs="unbounded" ref="types:languagePair"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="service" type="WSTransServiceTypes:CodeContentType"/> <xsd:element name="services"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:service"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="mimeType" type="WSTransMimeTypes:CodeContentType" /> <xsd:element name="mimeTypes"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:mimeType"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="domain" type="WSTransDomainTypes:CodeContentType"/> <xsd:element name="domains"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:domain"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveServiceListRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"/> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveServiceListResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <languagePairs> <languagePair> <source> <locale country="US" language="en"/> </source> <target> <locale country="FR" language="fr"/> </target> </languagePair> <languagePair> <source> <locale country="US" language="en"/> </source> <target> <locale country="DE" language="de"/> </target> </languagePair> </languagePairs> <services> <service>01.00</service> <service>01.01</service> <service>01.02</service> <service>01.03</service> <service>01.04</service> <service>01.05</service> <service>01.06</service> <service>01.07</service> <service>01.08</service> <service>01.09</service> </services> <mimeTypes> <mimeType>application/EDI-Consent</mimeType> <mimeType>application/EDI-X12</mimeType> <mimeType>application/EDIFACT</mimeType> <mimeType>application/SLA</mimeType> <mimeType>application/STEP</mimeType> </mimeTypes> <domains> <domain>01.00</domain> <domain>01.01</domain> <domain>01.02</domain> <domain>01.03</domain> <domain>01.04</domain> </domains> </retrieveServiceListResponse> </soapenv:Body> </soapenv:Envelope>
This specification relies on OASIS WS-Security standard to provide basic security during a web service transaction taking place between two or more parties. WS-Security provides an end-to-end message level security that achieves 3 goals:
The default mechanism which this spec recommends is username/password over SSL.
WS-Security specification provides several methods in which to secure communications. Two systems can conform to the WS-Security spec and still fail to authenticate each other if one system only supports, say, username/password while the other expects digital signatures. Consequently, this specification also recommends WS-Security Policy to specify security policies that define what message integrity it supports, and/or which encryption algorithm it accepts regarding confidentiality.
The recommendation of using username/password over SSL is the minimum level of security. Additional security measures can be implement by agreement between the parties. Future specifications may specify additional security measures.
[Optional] WS-Trust, WS-Secure Conversation, WS-Federation, WS-Privacy, and WS-Authorization are not recommended for spec revision.
This section covers the request for a quote and the request for translations, as by and large, they require the same information to be submitted.
Reject quote has been removed from the previous specification draft as this is probably not core to requirements (and quotes will eventually go out of date regardless)
Suspend/Cancel has been moved to the last section as again more a useful than core requirement.
One definition shared across all methods in this section and in fact in future sections, is job identifiers.
Call 1 | |
requestQuote |
Job ticket created by publisher. Meta data sent about the job. The location of a file can be indicated using a URI. Quote information returned |
Call 2 | |
retrieveQuote |
Quote is retrieved by the calling client |
Call 3 | |
acceptQuote |
Quote is accepted by the publisher. Payment information is sent |
As an alternative, the client can simplify the transaction:
Call 1 | |
submitJob |
Job ticket created by publisher. Meta data sent about the job. File can be attached as a SOAP attachment. Quote information returned |
requestQuote
This is the point at which meaningful information about the job is needed by the system in order to estimate costs and return them to the user.
Two formats (i.e. two methods) should be available, however the first format may not produce a binding quote.
Passed In<xsd:element name="requestQuoteRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:count-group"/> <xsd:element ref="types:service"/> <xsd:element ref="types:domain"/> <xsd:element ref="types:languagePair"/> <xsd:element ref="types:requiredBy"/> <xsd:element ref="types:info"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="ticket"> <xsd:complexType> <xsd:attribute name="jobId" type="string" use="required"/> <xsd:attribute name="projectId" type="string" use="required"/> <xsd:attribute name="userId" type="string" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name="count-group"> <xsd:complexType> <xsd:sequence minOccurs="0" maxOccurs="unbounded"> <xsd:element name="count" type="xlf:ElemType_count"/> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required"/> </xsd:complexType> <xsd:element name="requiredBy"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="optional"/> </xsd:complexType> </xsd:element> <xsd:element name="info" type="string"/>
<xsd:element name="requestQuoteResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:available"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="available"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name="ticket"> <xsd:complexType> <xsd:attribute name="jobId" type="string" use="required"/> <xsd:attribute name="projectId" type="string" use="required"/> <xsd:attribute name="userId" type="string" use="required"/> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <requestQuoteRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> <count-group name='project-count'> <count count-type="total" unit="words">1001</count> </count-group> <service name="01.00"/> <domain>01.00</domain> <languagePair> <source> <locale country="US" language="en"/> </source> <target> <locale country="FR" language="fr"/> </target> </languagePair> <requiredBy date="2004-10-13T15:12:41.826Z"/> <info>Info</info> </requestQuoteRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <requestQuoteResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> <available date="2004-10-22T17:30:30.836Z"/> </requestQuoteResponse> </soapenv:Body> </soapenv:Envelope>
retrieveQuote
This call allows for the retrieval of the quote.
<xsd:element name="retrieveQuoteRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveQuoteResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveQuoteRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> </retrieveQuoteRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveQuoteResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> </retrieveQuoteResponse> </soapenv:Body> </soapenv:Envelope>
acceptQuote
Using the Job ticket a quote may be accepted, thereby initiating translation of the job. Payment details in the form of either Purchase Order or Credit Card Info should be supplied.
<xsd:element name="acceptQuoteRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:purchaseOrder"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="purchaseOrder"> <xsd:complexType> <xsd:attribute name="id" type="string" use="required"/> </xsd:complexType> </xsd:element>
<xsd:element name="acceptQuoteResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:acknowledgement"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="acknowledgement" type="string"/>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <acceptQuoteRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> <purchaseOrder id="PO-123-456"/> </acceptQuoteRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <acceptQuoteResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> <acknowledgement>Quote for job job-001 accepted with PO: PO-123-456</acknowledgement> </acceptQuoteResponse> </soapenv:Body> </soapenv:Envelope>
As an alternative to requestQuote
& acceptQuote
, where a relationship already exists, or the cost is prepaid for all required translations, or perhaps the translation service is deployed in-house and is a MT engine, there may be a case to simply call translate as the quote/accept mechanism isn’t required.
<xsd:element name="submitJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:count-group"/> <xsd:element ref="types:service"/> <xsd:element ref="types:domain"/> <xsd:element ref="types:languagePair"/> <xsd:element ref="types:requiredBy"/> <xsd:element ref="types:info"/> <xsd:element ref="types:purchaseOrder"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="ticket"> <xsd:complexType> <xsd:attribute name="jobId" type="string" use="required"/> <xsd:attribute name="projectId" type="string" use="required"/> <xsd:attribute name="userId" type="string" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name="count-group"> <xsd:complexType> <xsd:sequence minOccurs="0" maxOccurs="unbounded"> <xsd:element name="count" type="xlf:ElemType_count"/> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required"/> </xsd:complexType> <xsd:element name="requiredBy"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="optional"/> </xsd:complexType> </xsd:element> <xsd:element name="info" type="string"/>
<xsd:element name="submitJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:acknowledgement"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <submitJobRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-001" userId="user-001"/> <count-group name='project-count'> <count count-type="total" unit="words">1001</count> </count-group> <service>01.00</service> <domain>01.00</domain> <languagePair> <source> <locale country="US" language="en"/> </source> <target> <locale country="FR" language="fr"/> </target> </languagePair> <requiredBy date="2004-10-14T09:47:07.415Z"/> <info>Info</info> <purchaseOrder id="PO-123-456"/> </submitJobRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <submitJobResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <acknowledgement>Quantity: 10000 words Service: 01.00 Domain: 01.00 LanguagePair: US_en -> FR_fr RequiredBy: 05-Oct-04 Info: Info PurchaseOrder: PO-123-456 </acknowledgement> </submitJobResponse> </soapenv:Body> </soapenv:Envelope>
To support management of submitted/accepted jobs the Web Service must provide means for the caller to:
retrieveActiveJobsList
), or get a list of all jobs whether active or not (retrieveFullJobsList
)retrieveJobInformation
)retrieveJobInformation
)retrieveJob
)suspendJob
)resumeJob
)cancelJob
)Typical use cases are described in separate sections below.
In the initial version of this specification there will be no active notification mechanism. Instead a polling mechanism will need to be used by the caller. The polling mechanism has the advantage that it does not require the caller to provide a means to be contacted explicitly by the Web Service.
It is the caller’s responsibility to check the Web Service to find out if things have changed.
Note: Presentation of a return Web Service or BPEL4WS notification messages may be used in future versions.
A list of active jobs can be retrieved using retrieveActiveJobsList
. For any job ticket retrieveJobInformation
can be used to get the status information.
Call 1 | |
retrieveActiveJobsList |
The caller gets a list of all active jobs associated with their account. This is returned as a list of job tickets |
Call 2 | |
retrieveJobInformation |
The caller gets status information for each job. |
history
section of the response. Here is an example of what this section could look like:
<history> <event stage="job" status="start" timeStamp="2004-12-01T18:00:00.000Z"> <event stage="evaluation" status="start" timeStamp="2004-12-01T18:00:00.000Z"> <event stage="job" status="estimated completion" date="2005-02-01T18:00:00.000Z" timeStamp="2004-12-01T18:00:00.000Z"> <event stage="evaluation" status="complete" timeStamp="2005-01-05T13:34:10.000Z"> <event stage="pre-translation" status="start" timeStamp="2005-01-05T13:34:10.100Z"> <event stage="job" status="estimated completion" date="2005-02-08T18:00:00.000Z" timeStamp="2005-01-06T18:32:00.000Z"> </history>
From this example we can see that the job has completed evaluation stage and is currently in pre-translation, and that the estimated completion date for the whole job has slipped to 2005-02-08.
More information about the job history can be found in the Job History section.
At any time the list of active jobs can be retrieved using retrieveActiveJobsList
. Then for each job ticket retrieveJobInformation
can be used to get the status information. The caller can then check whether a job is complete and if so use retrieveJob
to get the document returned.
Call 1 | |
retrieveActiveJobsList |
The caller gets a list of all active jobs associated with their account. This is returned as a list of job tickets. |
Call 2 | |
retrieveJobInformation |
For each Job the caller can get the status information. If the history in the response has an event where stage="job" and status="complete" then the job is completed and can be downloaded. |
Call 3 | |
retrieveJob |
The caller downloads the completed job. |
This call allows the client to view the Job history for any particular job. This might be used together with retrieveActiveJobsList
to check the status of all jobs for the client and to download them when the status changes to complete. The status information uses the event element. This gives the status for each event that takes place when a job is being worked on.
The job history is described in detail in the Job History section.
Here is an example:
<history> <event stage="job" status="start" timeStamp="2004-01-01T18:00:00.000Z"> <event stage="evaluation" status="start" timeStamp="2004-01-01T18:00:00.000Z"> <event stage="job" status="estimated completion" date="2004-02-02T18:00:00.000Z" timeStamp="2004-01-01T18:00:00.000Z"> <event stage="evaluation" status="complete" timeStamp="2004-01-03T18:00:00.000Z"> <event stage="job" status="estimated completion" date="2004-02-04T18:00:00.000Z" timeStamp="2004-01-06T18:00:00.000Z"> </history>
<xsd:element name="retrieveJobInformationRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveJobInformationResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:count-group"/> <xsd:element ref="types:service"/> <xsd:element ref="types:domain"/> <xsd:element ref="types:languagePair"/> <xsd:element ref="types:requiredBy"/> <xsd:element ref="types:info"/> <xsd:element ref="types:purchaseOrder"/> <xsd:element ref="types:associations"/> <xsd:element ref="types:history"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="count-group"> <xsd:complexType> <xsd:sequence minOccurs="0" maxOccurs="unbounded"> <xsd:element name="count" type="xlf:ElemType_count"/> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required"/> </xsd:complexType> <xsd:element name="associations"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:resource"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="resource"> <xsd:complexType> <xsd:attribute name="uri" type="anyURI" use="required"/> </xsd:complexType> </xsd:element> <xsd:element name="history"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:event"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="event"> <xsd:complexType> <xsd:attribute name="timeStamp" type="xsd:dateTime" use="required"/> <xsd:attribute name="stage" type="xsd:string" use="required"/> <xsd:attribute name="status" type="WSTransStatus:CodeContentType" use="required"/> <xsd:attribute name="date" type="xsd:date" use="optional"/> <xsd:attribute name="additionalInformation" type="xsd:string" use="optional"/> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveJobInformationRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> </retrieveJobInformationRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveJobInformationResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <count-group name='project-count'> <count count-type="total" unit="words">1001</count> </count-group> <service name="01.00"/> <domain>01.00</domain> <languagePair> <source> <locale country="US" language="en"/> </source> <target> <locale country="FR" language="fr"/> </target> </languagePair> <requiredBy date="2004-12-01T18:00:00.000Z"/> <info>Info string</info> <purchaseOrder id="PO-123-456"/> <associations> <resource uri="http://www.simship.com/TM.zip"/> <resource uri="ftp://ftp.connectcgs.com/pub/referenceDoc.pdf"/> </associations> <history> <event timeStamp="2004-10-01T09:00:00.000Z" stage="job" status="01" date="2004-09-20T07:00:00.000Z"/> <event timeStamp="2004-10-02T12:00:00.000Z" stage="translation" status="02" date="2004-09-24T09:00:00.000Z"/> </history> </retrieveJobInformationResponse> </soapenv:Body> </soapenv:Envelope>
This topic explains the job history that can be retrieved from retrieveJobInformation
in more details.
The job history is comprised of a list of chronological events. Each event is represented by an <event>
element with the following attributes:
stage
– (required) identifies what the event applies to, e.g. a particular task or the entire job.status
– (required) the status value that the event represents. This is always interpreted in the scope of the stage
value.date
– (optional) a date value for status values that are associated with dates, such as the estimated completion date
or the start
date of a stage.additionalInformation
– (optional) any additional information that is associated with the event, if applicable. For example the reason specified why a job was rejected through a call to rejectJob
.timeStamp
– (required) the time and date that the event was recorded in the history.The different values and how they work together is in the following sections.
The following table explains the possible values for the stage
attribute of a history event.
Value | Meaning |
---|---|
job |
Overall job status |
quotation |
Quotation in progess, the quote is being created or has been created but has not yet been accepted. |
evaluation |
Evaluation of the job |
pre-translation |
Preparatory work before actual translation work commences |
translation |
Translation work and directly related activities |
post-translation |
Work after the translation stage has completed |
engineering |
Localisation engineering work |
internationalisation |
Internationalisation work |
quality assurance |
Quality Assurence work |
miscellanous |
General/unspecified localization work |
(other) | Application defined (custom) work stage and/or status scope. |
The following table explains the possible values for the status
attribute of a history event.
Value | Meaning |
---|---|
start |
Work stage started at the time indicated by the timeStamp value. |
complete |
Work stage completed at the time indicated by the timeStamp value. |
cancelled |
Work stage cancelled at the time indicated by the timeStamp value. |
on hold |
The work task was put on hold by the the Web Service Host at the time indicated by the timeStamp value. |
suspended |
The job was suspended by the Web Service Client through a call to suspendJob at the time indicated by the timeStamp value. This status value can currently only be used with stage="job" . |
resumed |
A suspended job was resumed by the Web Service Client through a call to resumeJob at the time indicated by the timeStamp value. This status value can currently only be used with stage="job" . |
resource associated |
A resource was associated with the job through a call to associateResource . The timestamp value indicates when the actual association was made, which could in fact be before the job was created. The additional information attribute contains the URI of the associated resource. This value can only be used with stage="job" . |
resource disassociated |
A resource was detached from the job through a call to disassociateResource . The timestamp value indicates when the association between the resource and the job was terminated. The additional information attribute contains the URI of the disassociated resource. This value can only be used with stage="job" . |
estimated completion |
An estimated completion date for the work task was set by the Web Service Host. The estimated completion date is indicated by the date value. The timeStamp value indicates the time this estimation was published. |
retrieved |
The completed job was downloaded by a call to retreiveJob at the time indicated by the timeStamp value.This value can only be used with stage="job" . |
required by |
A new deadline was specified for the job. The new required completion date is indicated by the date value. The deadline update was recorded at the time indicated by the timeStamp value.This value can only be used with stage="job" . |
rejected |
The completed job was rejected by the Web Service Client through a call to rejectJob at the time indicated by the timeStamp value. The information about why the job was rejected is available through the additional information attribute.This value can only be used with stage="job" . |
x-(other) | Application defined (custom) status value or a free form comment in clear text, prefixed by x- to make it easy to distinguish from the values defined in this specification. |
There is no way for the caller to explicitly set a new “Required By” date. This can only be achieved through communication not covered by this version of the standard. This will be addressed in a future version of the specification.
Just like in real life the past, here in the shape of already recorded events, should never change during the lifetime of a job and beyond.
As the job progresses or properties of the job changes new events will be added after the already existing events in the history. It should always be possible to get an overview of the entire job history, including all events relevant for the job, by looking at the history. This can be important in order to find out what really happened during a job at a later stage.
The job history can also be important as a means of communicating changes in expected delivery dates. Below is an example that illustrates this.
The current job status can be deducted from the job history. In this example it looks like this:
<history> <event stage="job" status="start" timeStamp="2004-12-01T18:00:00.000Z"> <event stage="evaluation" status="start" timeStamp="2004-12-01T18:00:00.000Z"> <event stage="job" status="estimated completion" date="2005-02-01T18:00:00.000Z" timeStamp="2004-12-01T18:00:00.000Z"> <event stage="evaluation" status="complete" timeStamp="2005-01-05T13:34:10.000Z"> <event stage="pre-translation" status="start" timeStamp="2005-01-05T13:34:10.100Z"> <event stage="job" status="estimated completion" date="2005-02-08T18:00:00.000Z" timeStamp="2005-01-06T18:32:00.000Z"> </history>
The original estimated completion date
for the job
stage (i.e. the whole job) was 2005-02-01, as can be seen from the third event in the list. The timestamp
further indicates that this original estimate was made on 2004-12-01.
The last event in the list contains a second estimated completion date
for the job, which indicates that the completion of the job is expected to slip to 2005-02-08. The timestamp indicates that this updated estimate was recorded on 2005-01-06.
The order of events in the history should be chronological, so by searching for the last occurence of the estimated completion date
for the stage with value job
you should always be able to find the most recent estimated date of completion.
Note that estimated completion date
can also be used for other stage values, in which they simply provide an indication on when that particular stage of the job is estimated to be completed.
This call is a mechanism for downloading a completed job. It can be used in conjunction with the retrieveJobInformation
call. When the job status has been changed to complete this call can be used to retrieve the URI from which to download the file.
Job-ticket | The job ticket. |
Resource URI | URI that can be used to download the file containing the completed job. |
Rejection deadline | If the job has not been rejected (by calling rejectJob ) before this deadline is reached it will be deemed accepted, and the job will no longer be considered active. |
<xsd:element name="retrieveJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:resource" /> <xsd:element ref="types:rejectionDeadline"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="rejectionDeadline"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="optional"/> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveJobRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> </retrieveJobRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveJobResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <resource uri="http://www.xml-intl.com/translated-fr.zip"/> <rejectionDeadline date="2004-12-31T23:59:59.389Z"/> </retrieveJobResponse> </soapenv:Body> </soapenv:Envelope>
See also: Appendix 4, retrieveActiveJobsList
, retrieveJobInformation
, submitJob
, rejectJob
, acceptQuote
This call is allows for the translation to be rejected if it is incomplete or requires correction. It also allows for feedback to be submitted.
A rejected job will remain active even after the rejection deadline returned from retrieveJob
.
An entry with the following information will be added to the <history>
element returned from retrieveJobInformation
:
<event stage="job" status="rejected" timeStamp="2005-01-01T12:00:00.000Z" additionalInformation="Rejection Details"/>
<xsd:element name="rejectJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:reason" /> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="rejectJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:acknowledgement"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="reason" type="xsd:string"/>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <rejectJobRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <reason>Poor quality translation. Contact PM for details.</reason> </rejectJobRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <rejectJobResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <acknowledgement>Job rejected with reason: Poor quality translation. Contact PM for details.</acknowledgement> </rejectJobResponse> </soapenv:Body> </soapenv:Envelope>
This call allows the client to retrieve a list of their currently active jobs. This can used together with retrieveJobInformation
to get the current status for the active jobs.
<xsd:element name="retrieveActiveJobsListRequest"> <xsd:complexType> <xsd:sequence/> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveActiveJobListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveActiveJobsListRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"/> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveActiveJobsListResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="project-001" userId="user-001"/> <ticket jobId="job-002" projectId="project-002" userId="user-002"/> <ticket jobId="job-003" projectId="project-003" userId="user-003"/> </retrieveActiveJobsListResponse> </soapenv:Body> </soapenv:Envelope>
See also: retrieveFullJobsList
This is similar to the retrieveActiveJobsList
but retrieves a list of all jobs associated with a particular caller, whether or not they are active.
<xsd:element name="retrieveFullJobsListRequest"> <xsd:complexType> <xsd:sequence/> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveFullJobListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveFullJobsListRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"/> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveFullJobsListResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="project-001" userId="user-001"/> <ticket jobId="job-002" projectId="project-002" userId="user-002"/> <ticket jobId="job-003" projectId="project-003" userId="user-003"/> </retrieveFullJobsListResponse> </soapenv:Body> </soapenv:Envelope>
See also: retrieveActiveJobsList
The Client may request that any currently active, not yet completed job be temporarily suspended by calling this method.
Note: This is a request only as the service cannot guarantee to comply with this immediately. There may still be a cost incurred.
A suspended job can be cancelled (by calling cancelJob
) or resumed at a later stage (by calling resumeJob
.
suspendJob
will fail if the job status is complete.
An entry with the following information will be added to the history
returned from retrieveJobInformation
:
<event stage="job" status="suspended" timeStamp="2005-01-01T12:00:00.000Z"/>
<xsd:element name="suspendJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="suspendJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:succeeded"/> <xsd:element ref="types:info"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <suspendJobRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> </suspendJobRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <suspendJobResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <succeeded>0</succeeded> <info>Suspension not allowed at this time</info> </suspendJobResponse> </soapenv:Body> </soapenv:Envelope>
Using this method the caller may request that a job which has previously been temporarily suspended (by a call to suspendJob
) is resumed.
Note: This is a request only as the service cannot guarantee to comply with this immediately. There may still be a cost incurred.
An entry of the following format will be added to the <history>
element returned from retrieveJobInformation
:
<event stage="job" status="resumed" timeStamp="2005-01-01T12:00:00.000Z"/>
<xsd:element name="resumeJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="resumeJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:succeeded"/> <xsd:element ref="types:info"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <resumeJobRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> </resumeJobRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <resumeJobResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <succeeded>1</succeeded> <info>Resumption succeeded</info> </resumeJobResponse> </soapenv:Body> </soapenv:Envelope>
Using this method the Client may request that any currently active, not completed job be cancelled.
Note: This is a request only as the service cannot guarantee to comply with this immediately. There may still be a cost incurred.
cancelJob
will fail if the job is in a completed state.
An entry with the following information will be added to the <history>
element returned from retrieveJobInformation
:
<event stage="job" status="cancelled" timeStamp="2005-01-01T12:00:00.000Z"/>
<xsd:element name="cancelJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="cancelJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:succeeded"/> <xsd:element ref="types:info"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="succeeded" type="xsd:boolean"/>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <cancelJobRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> </cancelJobRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <cancelJobResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <succeeded>1</succeeded> <info>Cancellation succeeded</info> </cancelJobResponse> </soapenv:Body> </soapenv:Envelope>
Both translatable and non-translatable files may be needed for a job.
Examples of non-translatable files include:
The calls described in this section allow for such resource files, as well as other translatable files, to be associated with a job.
Some of these resource types, such as translation memories and terminology databases, may be updated as part of executing the job. It is important that the updated resources can be accessed both during the job and as part of the delivery when the job is completed.
In some cases it may even be necessary to upload such resources before the job itself is submitted, e.g. to provide all input required to get an accurate quote or estimate for the job.
For this reason it is possible to call associateResource
with a job ticket that is not yet known to the system (e.g before submitJob
has been called).
Resources can be associated with more than one job.
retrieveJobInformation
.retrieveResourceInformation
.disassociateResource
.retrieveFullResourceList
.Call 1 | |
associateResource |
The content owner associates a translation memory with a new job that has not yet been uploaded. A resource URI is returned, which can be used to reference or retrieve the translation memory. |
Call 2 | |
requestQuote |
The content owner submits the rest of the job information and initiates the quoting process. The same job ticket as was passed to the previous call is used here. |
Call 3 | |
retrieveQuote |
The content owner retrieves the quote for the job. |
Call 4 | |
acceptQuote |
The content owner accepts the quote and the job is started. |
Call 5 | |
retrieveJob |
Once the job is completed the content owner retrieves the URI from which the results can be downloaded. |
The final version of the translation memory can now be downloaded from the URI returned from the original associateResource
call.
See also: associateResource
, disassociateResource
, retrieveResourceInformation
, retrieveJobInformation
, retrieveFullResourceList
This call allows for the association of a resource file such as translation memory or the URI for a glossary with a particular job. The same resource file can be associated with any number of jobs.
Job tickets
– One or more jobs the resource should be associated withResource URI
– URI for the resource to be associated with the specified jobsPurpose
– Explains what the resource is intended to be used forJob ticket
Success Indication
Resource URI
– This may be a different URI from the one passed in.If the web service implementation returns a different URI from the one passed in this may refer to a modified version of the resource. An example of this would be a translation memory that is updated as part of executing the job.
It is recommended that the passed-in URI should remain active and accessible for the duration of all jobs that the resource has been associated with.
An entry of the following format will be added to the <history>
element returned from retrieveJobInformation
:
<event stage="job" status="resource associated" timeStamp="2005-01-01T12:00:00.000Z" additionalInformation="http://aCompany.com/Resource.tm"/>
You can call retrieveResourceInformation
to find out which jobs a particular resource URI is associated with.
To remove the association between a resource and a job, call disassociateResource
.
<xsd:element name="associateResourceRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:resource"/> <xsd:element ref="types:purpose"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="purpose"> <xsd:complexType> <xsd:sequence> <xsd:attribute name="usage" type="xsd:string" use="required"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="associateResourceResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:succeeded"/> <xsd:element ref="types:resource"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <associateResourceRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <resource uri="http://www.simship.com/resource1.pdf"/> <purpose usage="reference"/> </associateResourceRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <associateResourceResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <succeeded>0</succeeded> <resource uri="http://www.translate-this.com/trans-ws/download/resource1.pdf"/> </associateResourceResponse> </soapenv:Body> </soapenv:Envelope>
See also: disassociateResource
, retrieveResourceInformation
Removes the association between a resource and specified jobs.
Resource URI
– This can be either the original resource URI passed to associateResource
or the URI returned from that call.Job tickets
– List of jobs for which the association should be removed.An entry of the following format will be added to the <history>
element returned from retrieveJobInformation
:
<event stage="job" status="resource disassociated" timeStamp="2005-01-01T12:00:00.000Z" additionalInformation="http://aCompany.com/Resource.tm"/>
<xsd:element name="disassociateResourceRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:resource"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="disassociateResourceResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:succeeded"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <disassociateResourceRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <resource uri="http://www.simship.com/resource1.pdf"/> </disassociateResourceRequest> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <disassociateResourceResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <ticket jobId="job-001" projectId="proj-002" userId="user-003"/> <succeeded>1</succeeded> </disassociateResourceResponse> </soapenv:Body> </soapenv:Envelope>
See also: associateResource
, retrieveResourceInformation
Returns all known informaton about a resource.
URI
– This can either be the URI originally supplied with the associateResource
call, or the URI returned from it (if different).Job ticket
– Job that this resource is currently associated with.Purpose
– The purpose specified for the resource when it was associated with the job in the associateResource
call.Original URI
– The URI that was passed in to the associateResource
call.Current URI
– The URI that was returned from the associateResource
call.Note that the same resource URI can be associated with different jobs for potentially different purposes (using separate calls to associateResource
). This call returns the information about the resource for each job it is associated with separately.
<xsd:element name="retrieveResourceInformationRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:resource"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveResource Information Response"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket"/> <xsd:element ref="types:purpose"/> <xsd:element ref="types:resource"/> <xsd:element ref="types:resource"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveFullResourceListRequest"> <xsd:complexType> <xsd:sequence/> </xsd:complexType> </xsd:element>
<xsd:element name="retrieveFullResourceListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:resource"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveFullResourceListRequest xmlns="urn:oasis:names:tc:wstrans:v1:types"/> </soapenv:Body> </soapenv:Envelope>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Body> <retrieveFullResourceListResponse xmlns="urn:oasis:names:tc:wstrans:v1:types"> <resource uri="http://company.com/server/resource.zip"/> <resource uri="file:C:\Temp\File.zip"/> </retrieveFullJobsListResponse> </soapenv:Body> </soapenv:Envelope>
See also: retrieveResourceInformation
This method is optional and should be used to upload assetts to the localization suppliers. A URI with the location of this asset is returned and this is used for the other calls in the specification.
The asset should be attached using SOAP messages. It is the responsibility of those using this call to decide which technology they would like to use for attaching the asset.
Passed In<xsd:element name="fileUpload"> <xsd:complexType> <xsd:sequence> </xsd:sequence> </xsd:complexType> </xsd:element>
<xsd:element name="fileUploadResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:uri"/> </xsd:sequence> </xsd:complexType> </xsd:element>
<input> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> <mime:part> <mime:content part="image" type="image/jpeg"/> </mime:part> </mime:multipartRelated> </input> <output> <soap:body use="literal"/> </output> </operation> <operation name="sendOctet"> <soap:operation soapAction="/"> <input> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> <mime:part> <mime:content part="octet" type="application/octet-stream"/> </mime:part> </mime:multipartRelated> </input> <output> <soap:body use="literal"/> </output> </operation> </binding>
Call | Optional | Errors |
---|---|---|
retrieveServiceList |
2 | Operation failed |
requestQuote |
2 | Operation failed,Invalid ticket,un-supported language pairs |
acceptQuote |
2 | Operation failed, Invalid ticket |
retrieveQuote |
2 | Operation failed, Invalid ticket |
submitJob |
0 | Operation failed, Invalid ticket, un-supported language pairs |
retrieveJobInformation |
0 | Operation failed, Invalid ticket |
retrieveJob |
0 | Operation failed, Invalid ticket |
rejectJob |
1 | Operation failed, Invalid ticket |
retrieveActiveJobsList |
0 | Operation failed, Invalid ticket |
retrieveFullJobsList |
2 | Operation failed, Invalid ticket |
suspendJob |
0 | Operation failed, Invalid ticket |
resumeJob |
0 | Operation failed, Invalid ticket |
cancelJob |
0 | Operation failed, Invalid ticket |
associateResource |
1 | Operation failed, Invalid ticket,Malformed URI |
disassociateResource |
1 | Operation failed, Invalid ticket,Malformed URI |
retrieveResourceInformation |
1 | Operation failed, Malformed URI |
Optional: | 0 - must have |
1 - should have | |
2 - may have |
The model for schema enabled presentation and validation of code list for country code, languages and content domains is based on the OASIS UBL recommendation “Universal Business Language (UBL) Code List Rules”
(http://www.oasis-open.org/committees/ubl/ndrsc/archive/wd-ublndrsc-codelist-01.pdf)
The UBL Code List Rules recommend the “Multiple Namespace Types Method”
whereby the elements that represent a code from a particular list are bound to types that may have come from an external organization’s schema module.
The instance of each code instance is related by namespace to the validating schema document e.g.:
<doc xmlns:iso3166="http://example.iso.org/schemas/CountryCodesISO3166.xsd"> <langCode> <iso3166:CodeContentType>US</iso3166:CodeContentType> </langCode> </doc>
The Translation Web Services specification defines the following code verification schemas:
These schemas will be hosted by TBA and can be referenced by the following URL addresses: TBA
In the original proposal for Translation Web Services it was proposed that SwA (SOAP with Attachments) could be used in order to facilitate the upload and download of files.
Subsequent detailed discussions established that using WWW URI mechanism to specify the location of a file would be a better way of locating files. This leaves the retrieval mechanism including any security arrangements and clean up to the party responsible for the supply of the file. However we have included an optional fileUpload method is you need to use the SwA mechanism.
The reasoning behind this decision is as follows:
The URI mechanism provides a common way for specifying the location of all data objects.
<?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions targetNamespace="urn:oasis:names:tc:wstrans:v1:service" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:service="urn:oasis:names:tc:wstrans:v1:service" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:bind="urn:oasis:names:tc:wstrans:v1:bind" xmlns="http://schemas.xmlsoap.org/wsdl/"> <wsdl:import namespace="urn:oasis:names:tc:wstrans:v1:bind" location="WSTransBind.wsdl"/> <wsdl:service name="WSTransService"> <wsdl:port name="WSTransRecommended_Port" binding="bind:WSTransRecommended_Binding"> <wsdlsoap:address location="http://localhost:9080/WSTransWeb/services/WSTransRecommended_Port"/> </wsdl:port> <wsdl:port name="WSTransRequired_Port" binding="bind:WSTransRequired_Binding"> <wsdlsoap:address location="http://localhost:9080/WSTransWeb/services/WSTransRequired_Port"/> </wsdl:port> <wsdl:port name="WSTransOptional_Port" binding="bind:WSTransOptional_Binding"> <wsdlsoap:address location="http://localhost:9080/WSTransWeb/services/WSTransOptional_Port"/> </wsdl:port> </wsdl:service> </wsdl:definitions>
<?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions targetNamespace="urn:oasis:names:tc:wstrans:v1:bind" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:intf="urn:oasis:names:tc:wstrans:v1:intf" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:bind="urn:oasis:names:tc:wstrans:v1:bind" xmlns="http://schemas.xmlsoap.org/wsdl/"> <wsdl:import namespace="urn:oasis:names:tc:wstrans:v1:intf" location="WSTransIntf.wsdl"/> <wsdl:binding name="WSTransRecommended_Binding" type="intf:WSTransRecommended_PT"> <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="rejectJob"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:rejectJob"/> <wsdl:input name="rejectJobRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="rejectJobResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="associateResource"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:associateResource"/> <wsdl:input name="associateResourceRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="associateResourceResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="disassociateResource"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:disassociateResource"/> <wsdl:input name="disassociateResourceRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="disassociateResourceResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="retrieveJobListForResource"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveJobListForResource"/> <wsdl:input name="retrieveJobListForResourceRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveJobListForResourceResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:binding name="WSTransRequired_Binding" type="intf:WSTransRequired_PT"> <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="submitJob"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:submitJob"/> <wsdl:input name="submitJobRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="submitJobResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="retrieveJobInformation"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveJobInformation"/> <wsdl:input name="retrieveJobInformationRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveJobInformationResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="retrieveJob"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveJob"/> <wsdl:input name="retrieveJobRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveJobResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="retrieveActiveJobsList"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveActiveJobsList"/> <wsdl:input name="retrieveActiveJobsListRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveActiveJobsListResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="suspendJob"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:suspendJob"/> <wsdl:input name="suspendJobRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="suspendJobResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="resumeJob"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:resumeJob"/> <wsdl:input name="resumeJobRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="resumeJobResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="cancelJob"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:cancelJob"/> <wsdl:input name="cancelJobRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="cancelJobResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:binding name="WSTransOptional_Binding" type="intf:WSTransOptional_PT"> <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="retrieveServiceList"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveServiceList"/> <wsdl:input name="retrieveServiceListRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveServiceListResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="requestQuote"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:requestQuote"/> <wsdl:input name="requestQuoteRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="requestQuoteResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="acceptQuote"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:acceptQuote"/> <wsdl:input name="acceptQuoteRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="acceptQuoteResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="retrieveQuote"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveQuote"/> <wsdl:input name="retrieveQuoteRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveQuoteResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> <wsdl:operation name="retrieveFullJobsList"> <wsdlsoap:operation soapAction="urn:oasis:names:tc:wstrans:v1:retrieveFullJobsList"/> <wsdl:input name="retrieveFullJobsListRequest"> <wsdlsoap:body use="literal"/> </wsdl:input> <wsdl:output name="retrieveFullJobsListResponse"> <wsdlsoap:body use="literal"/> </wsdl:output> </wsdl:operation> </wsdl:binding> </wsdl:definitions>
<?xml version="1.0" encoding="UTF-8"?> <wsdl:definitions targetNamespace="urn:oasis:names:tc:wstrans:v1:intf" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:intf="urn:oasis:names:tc:wstrans:v1:intf" xmlns:types="urn:oasis:names:tc:wstrans:v1:types"> <wsdl:types> <xsd:schema elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:types" schemaLocation="WSTransTypes.xsd"/> </xsd:schema> </wsdl:types> <wsdl:message name="retrieveJobListForResourceResponse"> <wsdl:part name="parameters" element="types:retrieveJobListForResourceResponse"/> </wsdl:message> <wsdl:message name="retrieveJobListForResourceRequest"> <wsdl:part name="parameters" element="types:retrieveJobListForResourceRequest"/> </wsdl:message> <wsdl:message name="disassociateResourceRequest"> <wsdl:part name="parameters" element="types:disassociateResourceRequest"/> </wsdl:message> <wsdl:message name="associateResourceResponse"> <wsdl:part name="parameters" element="types:associateResourceResponse"/> </wsdl:message> <wsdl:message name="resumeJobRequest"> <wsdl:part name="parameters" element="types:resumeJobRequest"/> </wsdl:message> <wsdl:message name="rejectJobRequest"> <wsdl:part name="parameters" element="types:rejectJobRequest"/> </wsdl:message> <wsdl:message name="resumeJobResponse"> <wsdl:part name="parameters" element="types:resumeJobResponse"/> </wsdl:message> <wsdl:message name="requestQuoteRequest"> <wsdl:part name="parameters" element="types:requestQuoteRequest"/> </wsdl:message> <wsdl:message name="retrieveFullJobsListRequest"> <wsdl:part name="parameters" element="types:retrieveFullJobsListRequest"/> </wsdl:message> <wsdl:message name="submitJobResponse"> <wsdl:part name="parameters" element="types:submitJobResponse"/> </wsdl:message> <wsdl:message name="retrieveServiceListRequest"> <wsdl:part name="parameters" element="types:retrieveServiceListRequest"/> </wsdl:message> <wsdl:message name="submitJobRequest"> <wsdl:part name="parameters" element="types:submitJobRequest"/> </wsdl:message> <wsdl:message name="retrieveActiveJobsListRequest"> <wsdl:part name="parameters" element="types:retrieveActiveJobsListRequest"/> </wsdl:message> <wsdl:message name="retrieveJobResponse"> <wsdl:part name="parameters" element="types:retrieveJobResponse"/> </wsdl:message> <wsdl:message name="suspendJobRequest"> <wsdl:part name="parameters" element="types:suspendJobRequest"/> </wsdl:message> <wsdl:message name="retrieveJobInformationRequest"> <wsdl:part name="parameters" element="types:retrieveJobInformationRequest"/> </wsdl:message> <wsdl:message name="retrieveFullJobsListResponse"> <wsdl:part name="parameters" element="types:retrieveFullJobsListResponse"/> </wsdl:message> <wsdl:message name="acceptQuoteResponse"> <wsdl:part name="parameters" element="types:acceptQuoteResponse"/> </wsdl:message> <wsdl:message name="cancelJobRequest"> <wsdl:part name="parameters" element="types:cancelJobRequest"/> </wsdl:message> <wsdl:message name="suspendJobResponse"> <wsdl:part name="parameters" element="types:suspendJobResponse"/> </wsdl:message> <wsdl:message name="retrieveJobInformationResponse"> <wsdl:part name="parameters" element="types:retrieveJobInformationResponse"/> </wsdl:message> <wsdl:message name="retrieveQuoteResponse"> <wsdl:part name="parameters" element="types:retrieveQuoteResponse"/> </wsdl:message> <wsdl:message name="retrieveJobRequest"> <wsdl:part name="parameters" element="types:retrieveJobRequest"/> </wsdl:message> <wsdl:message name="cancelJobResponse"> <wsdl:part name="parameters" element="types:cancelJobResponse"/> </wsdl:message> <wsdl:message name="acceptQuoteRequest"> <wsdl:part name="parameters" element="types:acceptQuoteRequest"/> </wsdl:message> <wsdl:message name="associateResourceRequest"> <wsdl:part name="parameters" element="types:associateResourceRequest"/> </wsdl:message> <wsdl:message name="retrieveQuoteRequest"> <wsdl:part name="parameters" element="types:retrieveQuoteRequest"/> </wsdl:message> <wsdl:message name="disassociateResourceResponse"> <wsdl:part name="parameters" element="types:disassociateResourceResponse"/> </wsdl:message> <wsdl:message name="retrieveActiveJobsListResponse"> <wsdl:part name="parameters" element="types:retrieveActiveJobsListResponse"/> </wsdl:message> <wsdl:message name="requestQuoteResponse"> <wsdl:part name="parameters" element="types:requestQuoteResponse"/> </wsdl:message> <wsdl:message name="retrieveServiceListResponse"> <wsdl:part name="parameters" element="types:retrieveServiceListResponse"/> </wsdl:message> <wsdl:message name="rejectJobResponse"> <wsdl:part name="parameters" element="types:rejectJobResponse"/> </wsdl:message> <wsdl:portType name="WSTransRequired_PT"> <wsdl:operation name="submitJob"> <wsdl:input name="submitJobRequest" message="intf:submitJobRequest"/> <wsdl:output name="submitJobResponse" message="intf:submitJobResponse"/> </wsdl:operation> <wsdl:operation name="retrieveJobInformation"> <wsdl:input name="retrieveJobInformationRequest" message="intf:retrieveJobInformationRequest"/> <wsdl:output name="retrieveJobInformationResponse" message="intf:retrieveJobInformationResponse"/> </wsdl:operation> <wsdl:operation name="retrieveJob"> <wsdl:input name="retrieveJobRequest" message="intf:retrieveJobRequest"/> <wsdl:output name="retrieveJobResponse" message="intf:retrieveJobResponse"/> </wsdl:operation> <wsdl:operation name="retrieveActiveJobsList"> <wsdl:input name="retrieveActiveJobsListRequest" message="intf:retrieveActiveJobsListRequest"/> <wsdl:output name="retrieveActiveJobsListResponse" message="intf:retrieveActiveJobsListResponse"/> </wsdl:operation> <wsdl:operation name="suspendJob"> <wsdl:input name="suspendJobRequest" message="intf:suspendJobRequest"/> <wsdl:output name="suspendJobResponse" message="intf:suspendJobResponse"/> </wsdl:operation> <wsdl:operation name="resumeJob"> <wsdl:input name="resumeJobRequest" message="intf:resumeJobRequest"/> <wsdl:output name="resumeJobResponse" message="intf:resumeJobResponse"/> </wsdl:operation> <wsdl:operation name="cancelJob"> <wsdl:input name="cancelJobRequest" message="intf:cancelJobRequest"/> <wsdl:output name="cancelJobResponse" message="intf:cancelJobResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:portType name="WSTransOptional_PT"> <wsdl:operation name="retrieveServiceList"> <wsdl:input name="retrieveServiceListRequest" message="intf:retrieveServiceListRequest"/> <wsdl:output name="retrieveServiceListResponse" message="intf:retrieveServiceListResponse"/> </wsdl:operation> <wsdl:operation name="requestQuote"> <wsdl:input name="requestQuoteRequest" message="intf:requestQuoteRequest"/> <wsdl:output name="requestQuoteResponse" message="intf:requestQuoteResponse"/> </wsdl:operation> <wsdl:operation name="acceptQuote"> <wsdl:input name="acceptQuoteRequest" message="intf:acceptQuoteRequest"/> <wsdl:output name="acceptQuoteResponse" message="intf:acceptQuoteResponse"/> </wsdl:operation> <wsdl:operation name="retrieveQuote"> <wsdl:input name="retrieveQuoteRequest" message="intf:retrieveQuoteRequest"/> <wsdl:output name="retrieveQuoteResponse" message="intf:retrieveQuoteResponse"/> </wsdl:operation> <wsdl:operation name="retrieveFullJobsList"> <wsdl:input name="retrieveFullJobsListRequest" message="intf:retrieveFullJobsListRequest"/> <wsdl:output name="retrieveFullJobsListResponse" message="intf:retrieveFullJobsListResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:portType name="WSTransRecommended_PT"> <wsdl:operation name="rejectJob"> <wsdl:input name="rejectJobRequest" message="intf:rejectJobRequest"/> <wsdl:output name="rejectJobResponse" message="intf:rejectJobResponse"/> </wsdl:operation> <wsdl:operation name="associateResource"> <wsdl:input name="associateResourceRequest" message="intf:associateResourceRequest"/> <wsdl:output name="associateResourceResponse" message="intf:associateResourceResponse"/> </wsdl:operation> <wsdl:operation name="disassociateResource"> <wsdl:input name="disassociateResourceRequest" message="intf:disassociateResourceRequest"/> <wsdl:output name="disassociateResourceResponse" message="intf:disassociateResourceResponse"/> </wsdl:operation> <wsdl:operation name="retrieveJobListForResource"> <wsdl:input name="retrieveJobListForResourceRequest" message="intf:retrieveJobListForResourceRequest"/> <wsdl:output name="retrieveJobListForResourceResponse" message="intf:retrieveJobListForResourceResponse"/> </wsdl:operation> </wsdl:portType> </wsdl:definitions>
<?xml version="1.0" encoding="UTF-8"?> <schema targetNamespace="urn:oasis:names:tc:wstrans:v1:types" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:WSTransDomainTypes="urn:oasis:names:tc:wstrans:v1:WSTransDomainTypes" xmlns:WSTransMimeTypes="urn:oasis:names:tc:wstrans:v1:WSTransMimeTypes" xmlns:WSTransScope="urn:oasis:names:tc:wstrans:v1:WSTransScope" xmlns:WSTransServiceTypes="urn:oasis:names:tc:wstrans:v1:WSTransServiceTypes" xmlns:WSTransStatus="urn:oasis:names:tc:wstrans:v1:WSTransStatus" xmlns:iso3166="urn:oasis:names:tc:wstrans:v1:WSTransCountryCodesISO3166" xmlns:iso639="urn:oasis:names:tc:wstrans:v1:WSTransLanguageCodesISO639" xmlns:types="urn:oasis:names:tc:wstrans:v1:types" xmlns:un.ece.unedocs.cl.iso4217="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CurrencyCode.xsd" xmlns:xlf="urn:oasis:names:tc:xliff:document:1.1" elementFormDefault="qualified" xmlnsxsd="http://www.w3.org/2001/XMLSchema"> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransCountryCodesISO3166" schemaLocation="WSTransCountryCodesISO3166.xsd" /> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransDomainTypes" schemaLocation="WSTransDomainTypes.xsd" /> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransLanguageCodesISO639" schemaLocation="WSTransLanguageCodesISO639.xsd" /> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransMimeTypes" schemaLocation="WSTransMimeTypes.xsd" /> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransScope" schemaLocation="WSTransScope.xsd" /> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransServiceTypes" schemaLocation="WSTransServiceTypes.xsd" /> <xsd:import namespace="urn:oasis:names:tc:wstrans:v1:WSTransStatus" schemaLocation="WSTransStatus.xsd" /> <xsd:import namespace="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CurrencyCode.xsd" schemaLocation="http://www.unece.org/etrades/unedocs/repository/codelists/xml/CurrencyCode.xsd" /> <xsd:import namespace="urn:oasis:names:tc:xliff:document:1.1" schemaLocation="xliff-1.1.xsd" /> <!-- - - retrieveServiceList --> <xsd:element name="retrieveServiceListRequest"> <xsd:complexType> <xsd:sequence /> </xsd:complexType> </xsd:element> <xsd:element name="retrieveServiceListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:languagePairs" /> <xsd:element ref="types:services" /> <xsd:element ref="types:mimeTypes" /> <xsd:element ref="types:domains" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="locale"> <xsd:complexType> <xsd:attribute name="country" type="iso3166:CodeContentType" use="required" /> <xsd:attribute name="language" type="iso639:CodeContentType" use="required" /> <xsd:attribute name="variant" type="xsd:string" use="optional" /> </xsd:complexType> </xsd:element> <xsd:element name="source"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:locale" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="target"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:locale" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="languagePair"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:source" /> <xsd:element ref="types:target" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="languagePairs"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:languagePair" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="service" type="WSTransServiceTypes:CodeContentType" /> <xsd:element name="services"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:service" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="mimeType" type="WSTransMimeTypes:CodeContentType" /> <xsd:element name="mimeTypes"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:mimeType" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="domain" type="WSTransDomainTypes:CodeContentType" /> <xsd:element name="domains"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="1" ref="types:domain" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - requestQuote --> <xsd:element name="requestQuoteRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:count-group" /> <xsd:element ref="types:service" /> <xsd:element ref="types:domain" /> <xsd:element ref="types:languagePair" /> <xsd:element ref="types:requiredBy" /> <xsd:element ref="types:info" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="requestQuoteResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:available" /> <!-- <xsd:element ref="types:quotation"/> <xsd:element ref="types:expires"/> <xsd:element ref="types:info"/> --> </xsd:sequence> <!-- <xsd:attribute name="null" type="xsd:string" use="optional"/> --> </xsd:complexType> </xsd:element> <xsd:element name="available"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="required" /> </xsd:complexType> </xsd:element> <xsd:element name="info" type="string" /> <xsd:element name="requiredBy"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="optional" /> </xsd:complexType> </xsd:element> <xsd:element name="ticket"> <xsd:complexType> <xsd:attribute name="jobId" type="string" use="required" /> <xsd:attribute name="projectId" type="string" use="required" /> <xsd:attribute name="userId" type="string" use="required" /> </xsd:complexType> </xsd:element> <xsd:element name="count-group"> <xsd:complexType> <xsd:sequence minOccurs="0" maxOccurs="unbounded"> <xsd:element name="count" type="xlf:ElemType_count"/> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required"/> </xsd:complexType> <xsd:element name="quotation"> <xsd:complexType> <xsd:attribute name="amount" type="decimal" use="required" /> <xsd:attribute name="binding" type="boolean" use="required" /> <xsd:attribute name="currency" type="un.ece.unedocs.cl.iso4217:CurrencyCoded" use="required" /> </xsd:complexType> </xsd:element> <!-- - - retrieveQuote --> <xsd:element name="retrieveQuoteRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="retrieveQuoteResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - acceptQuote --> <xsd:element name="acknowledgement" type="string" /> <xsd:element name="acceptQuoteRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:purchaseOrder" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="acceptQuoteResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:acknowledgement" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="purchaseOrder"> <xsd:complexType> <xsd:attribute name="id" type="string" use="required" /> </xsd:complexType> </xsd:element> <!-- - - submitJob --> <xsd:element name="submitJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:count-group" /> <xsd:element ref="types:service" /> <xsd:element ref="types:domain" /> <xsd:element ref="types:languagePair" /> <xsd:element ref="types:requiredBy" /> <xsd:element ref="types:info" /> <xsd:element ref="types:purchaseOrder" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="submitJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:acknowledgement" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - retrieveJobInformation --> <xsd:element name="retrieveJobInformationRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="retrieveJobInformationResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:count-group" /> <xsd:element ref="types:service" /> <xsd:element ref="types:domain" /> <xsd:element ref="types:languagePair" /> <xsd:element ref="types:requiredBy" /> <xsd:element ref="types:info" /> <xsd:element ref="types:purchaseOrder" /> <xsd:element ref="types:associations" /> <xsd:element ref="types:history" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="associations"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:resource" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="resource"> <xsd:complexType> <xsd:attribute name="uri" type="anyURI" use="required" /> </xsd:complexType> </xsd:element> <xsd:element name="history"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:event" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="event"> <xsd:complexType> <xsd:attribute name="timestamp" type="xsd:dateTime" use="required" /> <xsd:attribute name="stage" type="xsd:string" use="required" /> <xsd:attribute name="status" type="WSTransStatus:CodeContentType" use="required" /> <xsd:attribute name="date" type="xsd:date" use="optional" /> </xsd:complexType> </xsd:element> <!-- - - retrieveJob --> <xsd:element name="retrieveJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="retrieveJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:resource" /> <xsd:element ref="types:rejectionDeadline" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="rejectionDeadline"> <xsd:complexType> <xsd:attribute name="date" type="dateTime" use="optional" /> </xsd:complexType> </xsd:element> <!-- - - rejectJob --> <xsd:element name="rejectJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:reason" /> <xsd:element ref="types:info" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="rejectJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:acknowledgement" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="reason" type="xsd:string" /> <!-- - - retrieveActiveJobsList --> <xsd:element name="retrieveActiveJobsListRequest"> <xsd:complexType> <xsd:sequence /> </xsd:complexType> </xsd:element> <xsd:element name="retrieveActiveJobsListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - retrieveFullJobsList --> <xsd:element name="retrieveFullJobsListRequest"> <xsd:complexType> <xsd:sequence /> </xsd:complexType> </xsd:element> <xsd:element name="retrieveFullJobsListResponse"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - cancelJob --> <xsd:element name="cancelJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="cancelJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:succeeded" /> <xsd:element ref="types:info" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="succeeded" type="xsd:boolean" /> <!-- - - suspendJob --> <xsd:element name="suspendJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="suspendJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:succeeded" /> <xsd:element ref="types:info" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - resumeJob --> <xsd:element name="resumeJobRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="resumeJobResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:succeeded" /> <xsd:element ref="types:info" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - associateResource --> <xsd:element name="associateResourceRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:resource" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="associateResourceResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:succeeded" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - disassociateResource --> <xsd:element name="disassociateResourceRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:resource" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="disassociateResourceResponse"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:ticket" /> <xsd:element ref="types:succeeded" /> </xsd:sequence> </xsd:complexType> </xsd:element> <!-- - - retrieveJobListForResource --> <xsd:element name="retrieveJobListForResourceRequest"> <xsd:complexType> <xsd:sequence> <xsd:element ref="types:resource" /> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name="retrieveJobListForResourceResponse"> <xsd:complexType> <xsd:sequence> <xsd:element maxOccurs="unbounded" minOccurs="0" ref="types:ticket" /> </xsd:sequence> </xsd:complexType> </xsd:element> </schema>
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]