An Introduction to XLIFF The XML Localisation Interchange File Format.

81
An Introduction to XLIFF The XML Localisation Interchange File Format

Transcript of An Introduction to XLIFF The XML Localisation Interchange File Format.

An Introductionto XLIFF

The XML Localisation Interchange File Format

Slide 2

Agenda

• Overview of Open Standards Benefits, drawbacks and development process

Survey of Localisation Standards TMS, TBX, OpenTag

• Overview of XLIFF 1.0Definition, goals, and benefits of XLIFFBusiness Use CasesBrief history of XLIFF

• ArchitectureMain features of XLIFF 1.0

• The Real WorldExample of using XLIFFTools support for XLIFF 1.0

• Current State of AffairsXLIFF 1.1 – What’s newWork at OASIS on XLIFF

Slide 3

Industry Standards Overview

A little bit about “Standards”…

Slide 4

Definition of a “Standard” is...

A definition or format that has been approved by a recognized standards organization or is accepted as a de facto standard by the industry. Standards exist for programming languages, operating systems, data formats, communications protocols, and electrical interfaces*

* Definition by www.webopedia.com

Slide 5

Standards are created by...

• Default acceptance of private specifications by the market

• Government regulation via state regulatory agency or public utility

• Formal standardisation via consensus body or committee

Slide 6

Categories of Standards

• Units, reference, definition- temperature, weights, lengths, volumes, etc.

• Similarity - screw gauges, character sets, colour schemes, UNIX operating system

• Compatibility - API’s, UI’s, nuts and bolts, hand tools and implements, radio transmitter & radio, modem standards (v32, v34), XLIFF 1.0

• Etiquette - The IETF Internet draft Protocol Extension Protocol (PEP), designed to accommodate extensions of applications such as HTTP clients, servers and proxies, 3G

Slide 7

Further Reading on Standards…

• The Role of Standards in Today’s Society and in the Future, Dr. Carl Cargill, Director – Corporate Standards, Sun Microsystems. Inc:http://www.house.gov/science/cargill_091300.htm

• The Business of Open-Source Software, Frank Hecker, Originally published May 1998, revised 20 June 2000: http://www.hecker.org/writings/setting-up-shop.html

• Standards Making: Behind the Scenes, Don Deutsch:http://otn.oracle.com/oramag/webcolumns/2003/opinion/deutsch_opinion.html

Slide 8

XLIFF 1.0 Overview

A glance at the definitions, goals and benefits of the XML Localisation Interchange File Format.

Slide 9

What is XLIFF?

• A specification

• for the lossless interchange of localizable data and its related information,

• which is tool-neutral,

• has been formalized as an XML vocabulary (document type definition),

• and features an extensibility mechanism.

Slide 10

XLIFF TC’s Charter

“The purpose of the OASIS XLIFF TC is to define, through XML vocabularies, an extensible specification for the interchange of localization information. The specification will provide the ability to mark up and capture localizable data and interoperate with different processes or phases without loss of information. The vocabularies will be tool-neutral, support the localization-related aspects of internationalization and the entire localization process. The vocabularies will support common software and content data formats. The specification will provide an extensibility mechanism to allow the development of tools compatible with an implementer's own proprietary data formats and workflow requirements.”

Slide 11

Why XLIFF is Needed?

Localization offers the following challenges:

• Insufficient interoperability between tools.

• Lack of support for overall localization workflow.

• Necessity of localization tools developers to deal with many formats.

• Large number of proprietary intermediate formats.

Slide 12

Advantages – Localization Customer

• Single format for adjunct processing (e.g. quality control in terms of spell checking).

• Less dependency on vendors which are able to work with special formats.

• Tighter control on what goes to localization (Pre-filtering of what to translate or not).

• Controlled information flow (author/developer notes, item properties, etc.).

• ID-based leveraging.• All advantages of XML-based processing.

Slide 13

Advantages – Tools Vendor

• Focus on development of core functionality rather treatment of source format.

• Allow usage of tools in new contexts.

• All advantages of XML-based processing.

Slide 14

Advantages – Service Provider

• Single format for adjunct processing (e.g. quality control in terms of spell checking).

• Less dependency on specific localization tools.

• Controlled information flow (author/developer notes, item properties, etc.).

• Allow usage of tools in new contexts.

• All advantages of XML-based processing.

• Open and standard solution for proprietary formats.

Slide 15

Advantages – Technology (1/2)

• For a given utility, only one implementation is necessary (e.g. not one spell checker for RTF, and another one for HTML).

• Increases usability of utilities (i.e. all formats with XLIFF filters can be used with XLIFF-enabled utilities).

Slide 16

Advantages – Technology (2/2)

• All advantages of XML-based processing:– Use of its internationalization features.– Better interoperability and cross-platform support.– Powerful rendering options (XSL-FO, CSS).– Powerful transformation options (XSLT).– Greater integration with Web services.

• Access to existing, and often open-source, XML implementation (lower costs).

Slide 17

Basic Use Case – without XLIFF

Tool ResourceFilters

DeveloperApplications TranslatorCustomer

SpecificTool (s)

Native File 2(e.g., JavaFiles)

Native File 1(e.g., HTML)

Native File 3(e.g., Java Properties)

Native File n

Publisher/CustomerDomain

LocalisationDomain

Slide 18

Basic Use Case –with XLIFF

XLIFF compliant DeveloperApplications

TranslatorXLIFFCompliantEditor

XLIFF file(s) containingHTML, Java, Properties, etc translatable resources

Non XLIFF compliant DeveloperApplications

- OR -

Publisher/CustomerDomain

LocalisationDomain

Direct toXLIFF authoring

HTML

Java Properties

RC Data

Pre-processing

Slide 19

Simple Automated Localisation Use Case

Developer Translator

GenerateXLIFF

Pseudo Translate / Test

LocalizationEngineer

XLIFF Translation Kit

Leverage

TranslationRepository

DefectReport

XLIFF Editor

Update

XLIFF Translation Kit

Translate

RequiresTranslation

100%Translated

0% Translated

100%Translated

Slide 20

Automated Localisation with CAT Use Case

Developer Translator

GenerateXLIFF

Pseudo Translate / Test

LocalizationEngineer

XLIFF Translation Kit

100% match

TranslationRepository

DefectReport

XLIFF Editor

XLIFF Translation Kit

Translate

RequiresTranslation

100%Translated

0% Translated

100%Translated

Fuzzymatch

TranslationMemory

MachineTranslation

MachineTranslate

Update

Slide 21

Genesis of XLIFF

• Founded: Sept 2000

• Founding Members: Novell, Oracle and Sun

• Initially named “DataDefinition” group

Slide 22

XLIFF 1.0 Timeline

• September 2000 - DataDefinition Kickoff• December 2000 - first face to face• March 2001 - second face to face• End March 2001 - draft 1.0 spec and DTD published• June 2001 - White Paper published • December 2001 - OASIS XLIFF Technical

Committee Proposal submitted• April 2002 – XLIFF 1.0 Specification approved by

formal vote as an OASIS Committee Specification

Slide 23

OASIS: A New Home for XLIFF

• OASIS: Organization for the Advancement of Structured Information Standards

• World’s largest independent, non-profit organization dedicated to the standardisation of XML applications and Web Services

• More than 150 member companies plus individuals

• Operates XML.ORG Registry, the open community clearinghouse of XML application schemas clearinghouse of XML application schemas

• Technical work on XML interoperability includes XML conformance and XML Registries/Repositories

• General XML technical resource

Slide 24

Drivers Behind XLIFF

Alchemy SoftwareBowne Global SolutionsConvey SoftwareEktron, IncGlobalsightHPLotus/IBMLionbridgeLRCMoravia IT

NovellOracleMicrosoftRWS GroupSAPSDL InternationalSun MicrosystemsTektronix

Slide 25

Present OASIS XLIFF TC

• TC Officers: – TC Chair: Tony Jewtushenko, Oracle Corporation– TC Vice-Chair: Jonathan Clark, Lionbidge– TC Secretary: Peter Reynolds, Bowne Global Solutions– TC Editor: Yves Savourel

• Current Members of TC: • Gérard Cattin des Bois, Microsoft • Doug Domeny • Mirek Driml, Moravia-IT • Milan Karásek, Moravia-IT • Mark Levins, IBM/Lotus • Christian Lieske, SAP • Mat Lovatt, Oracle • Enda McDonnell • David Pooley, SDL • John Reid, Novell• Reinhard Schaler, LRC• Bryan Schnabel, Tektronix • Shigemichi Yazawa

Slide 26

XLIFF TC in the Community

• Shared interests with the OSCAR SIG at LISA– Segmentation and word-count.– Content markup (inline codes).

• Shared interests with the W3C i18n WG– Localization directives.– Best practices.– In the localization aspects of the W3C.

recommendations.– Web services.

Slide 27

Architecture

A look at XLIFF’s main features and how they work together.

Slide 28

Extract-Localize-Merge Paradigm

• Separate data related to localization from parts not related to localization.

• Merge translated data with codes at the end of the process to create the final document.

• Skeleton file is optional, so this paradigm is also optional

Slide 29

A Birds-Eyes View

An XLIFF document can capture anything needed for a localization project:

1. Localizable objects (e.g. text strings) in source and target languages.

2. Supplementary information (e.g. glossaries, or material to recreate the original format).

3. Administrative information (e.g. workflow data).

4. Custom data (e.g. initialization information for tools).

Slide 30

The XLIFF Document

• An XLIFF document is designed to store the extracted data related to localization.

• Each given source container (e.g. a file, a database table, and so forth) corresponds to a <file> element in XLIFF.

• Each XLIFF document can include several <file> elements.

• A whole localization project can possibly be stored in a single XLIFF document.

Slide 31

Bilingual Model

• Each <file> element is designed to store one source language and one target language.

• The rational is that the translation of different target language is done by different people most of the time.

• However, languages in <alt-trans> element can be different. For example, proposed matches in national Portuguese when translating into Brazilian Portuguese.

Slide 32

Localizable Objects – Overview

• XLIFF allows not only text string as localizable object but also other object types such as graphics.

• Supplementary information can be represented in a generic way through inline codes (e.g. formatting of text).

• Relationship between object can be captured (e.g. all items in a menu).

Slide 33

Localizable Objects – Text

Extracted text goes in translation units (<trans-unit>), in a <source> element. The translation will go into a <target> element.

<trans-unit id='1' datatype='winres' resname='IDCANCEL' restype='button' coord='8;80;50;14' style='0x20000'> <source xml:lang='en'>Cancel</source> <target xml:lang='fr'>Annuler</target></trans-unit>

Slide 34

Localizable Objects – Inline Codes (1/3)

Supplementary information for translation units (e.g. formatting, links, image references, etc.) can be encapsulated, using a set of elements (<bpt>, <ept>, <it>, and <ph>) very similar to the ones used in TMX.

<source xml:lang='en'>Text in<bpt id='1'>&lt;b></bpt>bold<ept id='1'>&;lt;/b></ept>.</source>

Slide 35

Localizable Objects – Inline Codes (2/3)

Supplementary information can also be stored in the Skeleton; in this case, placeholders elements (<g>, <x/>, <bx/>, <ex/>), like the ones used in OpenTag, are inserted in the translation units.

<source xml:lang='en'>Text in <g id='1‘ ctype=“bold”>bold</g>.</source>

Slide 36

Localizable Objects – Inline Codes (3/3)

XLIFF provides furthermore the general purpose element <mrk> to associate supplementary information to an arbitrary span of text.

<source>The <mrk mtype='part-of-speech' ts='adjective'>fat</mrk> cat sleeps soundly.</source>

Slide 37

Localizable Objects – Non-Textual

Non-textual objects such as bitmap, cursor, etc. can be stored in the XLIFF document, internally or externally), using a <bin-unit> element.

<bin-unit id='1' resname='IDB_OPEN' mime-type='image/bitmap' restype='bitmap'> <bin-source> <external-file href='Open.bmp'/> </bin-source></bin-unit>

Slide 38

Localizable Objects – Relationships

Relations between objects can be captured by the mean of the <group> element. (note: a <group> can also contain another <group>).

<group restype='menu'> <trans-unit id='1' resname='ID_OPENFILE'> <source>&amp;File...</source> </trans-unit> <trans-unit id='2' resname='ID_EXITAPP'> <source>E&amp;xit</source> </trans-unit></group>

Slide 39

Supplementary Info – Overview

• XLIFF provides “hooks” for storing supplementary information (for example to glossaries or translation memories which should be used).

• The supplementary information can be referenced (i.e. reside outside of the document), or embedded within the document.

Slide 40

Supplementary Info – References (1/2)

Pointers to reference material such as TMs or glossaries can be listed in the <header> of each <file> element.

...<header><reference> <external-file href="TranslationStyleGuidelines.doc" /></reference>...

Slide 41

Supplementary Info – References (2/2)

Alternatively, the reference material can also be stored directly in the XLIFF document.

...<header><glossary> <internal-file form="text"><![CDATA["English term 1","German term 1""English term 2","German term 2"...]]></internal-file></glossary>...

Slide 42

Supplementary Info – Skeleton (1/2)

Non-localizable parts can be references in Skeleton files, which can be referenced from within the XLIFF document.

...<header> <skl> <external-file href="JavaApp.properties.skl" uid="3d4031aa1ab"/> </skl></header>...

Slide 43

Supplementary Info – Skeleton (2/2)

The Skeleton content can also be embedded in the XLIFF document itself.

...<header> <skl> <internal-file crc="d341e458" form="base64">PE9LRlNLTDEwMDpSRVM6OTY0MDA4MjYxPg0KI2luY2x1ZGUgInJlc291cmNlLmgiDQpJRERfRElBTE9HMSBESUFMTX01PREFMRlJBTUUgfCBXU19QpDQVBUSU9O... </internal-file> </skl></header>...

Slide 44

Administrative Info – Overview

XLIFF provides mechanisms for capturing administrative information:

• For relating source material to XLIFF documents.

• For storing workflow data.

• For providing pre-translation entries.

• For keeping track of changes.

Slide 45

Administrative Info – Source

First, define what is in the document, and how it relates to the source.

<?xml version="1.0" encoding="utf-8"?><xliff version="1.0"> <file original="JavaApp.properties" tool="OkapiFilter:JavaProperties" source-language="en" datatype="java" date="2002-07-25T17:13:14Z" target-language="ja"> <header>...

Slide 46

Administrative Info – Workflow (1/2)

Simple data about the steps of the process for each <file> element can be stored in its <header> element.

...<header> <phase-group> <phase phase-name="Step-001" process-name="Extraction" tool="myTool" contact-email="[email protected]"/> </phase> </phase-group>...

Slide 47

Administrative Info – Workflow (2/2)

Reference to the different phases can be set in the different items of the <file> element (for example: where this edit came from? etc.)

<trans-unit id='1'> <source xml:lang='en'>The text</source> <target xml:lang='fr' phase-name='Edit' >Le texte</target> <alt-trans> <target xml:lang='fr' phase-name='Trans' >Un texte</target> </alt-trans></trans-unit>

Slide 48

Administrative Info – Pre-Leveraging

A set of proposed translation can be included for each <trans-unit> element, using the <alt-trans> element.

<trans-unit id='1'> <source xml:lang='en'>The text</source> <alt-trans quality-match='high' origin='MTsystem'> <target xml:lang='fr'>Le texte</target> </alt-trans></trans-unit>

Slide 49

Administrative Info – Tracking Changes

Modifications made during the course of the process (translation, edit, proof, review, etc.), can also be stored using <alt-trans>.

<trans-unit id='1'> <source xml:lang='en'>The text</source> <target xml:lang='fr' phase-name='Edit' >Le texte</target> <alt-trans> <target xml:lang='fr' phase-name='Trans' >Un texte</target> </alt-trans></trans-unit>

Slide 50

Custom Data

Use the <prop> element and the ts attribute to store user-defined information.

<trans-unit id='1' ts='ctx:23a7'> <prop-group> <prop prop-type='myType' >Some property data</prop> </prop-group> <source>Text</source></trans-unit>

Slide 51

The Real World

A look at some concrete examples on how XLIFF can be used in localization projects.

Slide 52

Streamlining L10n Files Exchanges

Localization Customer

LocalizationPreprocessorLocalizationPreprocessor

Pre-translatedProprietary Format File

Localization Vendor

Customer Supported

Localization Tool

INCCSV

DOCDBLANG

SHLMDB

CATCFG

.INI.TXT

ZINCDOCLANG

MSGAGENT

ICSFILXLIFF

HTML.XSL

XML

INSNLM

ASDHGFF

VBNPARA

CATXRDB

PROP.JAVA

C++

HLPRC

MCEN

XSFTFD

LDIMENU

PCT.EXE

..DLL

Localization Customer

INCCSV

DOCDBLANG

SHLMDB

CATCFG

.INI.TXT

ZINCDOCLANG

MSGAGENT

ICSFILXLIFF

HTML.XSL

XML

INSNLM

ASDHGFF

VBNPARA

CATXRDB

PROP.JAVA

C++

HLPRC

MCEN

XSFTFD

LDIMENU

PCT.EXE

..DLL

Localization Vendor

VendorLocalization Process

Localization Customer Localization Vendor

Any tools based on XLIFF Industry

Standard

INCCSV

DOCDBLANG

SHLMDB

CATCFG

.INI.TXT

ZINCDOCLANG

MSGAGENT

ICSFILXLIFF

HTML.XSL

XML

INSNLM

ASDHGFF

VBNPARA

CATXRDB

PROP.JAVA

C++

HLPRC

MCEN

XSFTFD

LDIMENU

PCT.EXE

..DLL

XLIFFLocalizationPreprocessorLocalizationPreprocessor

Slide 53

Concrete Examples

• Before– Windows Executable file– Java Properties file

• After– Extracted Executable file in XLIFF– Extracted Java Properties file in XLIFF

Slide 54

Benefits: Use of XML Technologies

• XSL can be used to perform many tasks on XLIFF documents, for example:– Display translatable content in Web browser.– Generate statistics (e.g. number of localizable

objects).

• Availability of many XML engines makes using XLIFF easy.– Content-related checks (e.g. that certain characters

do not appear as textual contents) can be performed with ordinary Web browsers.

Slide 55

XML-Enabled Translation Tools

• Any XML-enabled translation tool can work with an XLIFF document, as long as the text to translate is initially copied in the <target> elements. However, this does not mean it supports all XLIFF features, but just permits translation of <target> content.

• Many tools cannot handle conditional translation (for example: <trans-unit translate="no">). Then, you need to add extra elements temporarily.

Slide 56

Case Study – DGW+Elcano (1/2)

• IBM’s Lotus Domino Global WorkBench (DGW) version 6 is an application used to localize Domino Web applications and Notes database applications.

– The localizable text from Notes/Domino *.nsf and *.ntf formats is extracted into a Notes-based glossary application.

– DGW 6 now supports XLIFF export and import.– Translation step previously required a Notes

installation and translation in a restrictive comma-delimited text file.

Slide 57

Case Study – DGW+Elcano (2/2)

• Elcano (Bowne Global Solutions) recently developed a Translation Web Service using XLIFF for translation content.

– Domino Global WorkBench glossary application calls directly to the Elcano Web Service.—To submit jobs for translation.

—To check job status.

—To receive translated jobs & import into glossary.

– Allows DGW 6 users fast and convenient access to efficient, high quality human translation

Slide 58

3rd Party Tools Support for XLIFF 1.0• RWS Group (to be demo’d): Extraction Utility for RC Data and

Java Properties to XLIFF 1.1 http://dotnet.goglobalnow.net/ Various Utilities: http://www.translate.com/shared/tools

• Alchemy Software (to be demo’d) - Catalyst 6.0 – Visual XLIFF 1.1 Editor http://www.alchemysoftware.ie

• XML-Intl (to be demo’d): XLIFF Editor http://www.xml-intl.com • Heartsome (to be demo’d) XLIFF Editor:

http://www.heartsome.org• SDL International: SDLX support for XLIFF currently in

development. See http://www.sdlx.com for more information.• Trados: No direct XLIFF support, but can edit XLIFF files using

modified INI file (will demo Workbench with INI file setting)• PASS: (to be demo’d) Passolo Editor, http://www.passolo.com• Bowne Global Solutions: Elcano, Online Translation Service has a

web service based connector for XLIFF files http://elcano.bowneglobal.com

Slide 59

More Tools Support for XLIFF 1.0• Oracle (to be demo’d): HyperHub: Internal Tool for

editing Oracle based data contained in XLIFF archives

• IBM: Domino Global Workbench Version 6 (http://www6.software.ibm.com/devcon/devcon/docs/dwkbbet6.htm)

• Sun : Internal XLIFF Editor as described in this article: http://www.sun.com/developers/gadc/technicalpublications/articles/xliff.html

• Open Source XSLT Tools: http://sourceforge.net/project/showfiles.php?group_id=42949&release_id=67485

Slide 60

Current State of Affairs

A look at the work under way at the OASIS XLIFF TC, the future, etc.

Slide 61

Current State of Affairs – Versions

• XLIFF version 1.0 released as an OASIS TC specification in April 2002 and is used today by various companies.

• XLIFF 1.1 was approved as Committee Specification on 20 May 2003

Slide 62

Current State of Affairs – To Do

• Specification of canonical representation in XLIFF of some formats (e.g. Windows resources, Java properties), so all XLIFF representations are the same regardless which tool created the document.

• Translation/Localization tools that support XLIFF out-of-the-box (not just as another XML format).

• Open Source filters (e.g. to convert from Windows message catalogues to XLIFF).

Slide 63

Overview of Changes from 1.0 -> 1.1

• Validation by Schema (XSD)

• Extending XLIFF elements, attributes, attribute values

• Embedding XLIFF in XML documents

• Changed, added or deprecated 1.0 features

Slide 64

Validation by Schema (XSD)

• In 1.0, validation by DTD

• In 1.1, validation by XML Schema – XSD

• XSD provides better control over XML document: – Structure – structured order can be specified– Content – support for standard datatypes like

date– Semantics – can specify range of valid values

or pattern– Support for namespace

Slide 65

Extending Elements

• Extension points in the following elements: – <header>, <group>, <tool>,

<trans-unit>, <alt-trans>, and  <bin-unit>.

• content of each custom element can be any valid XML content:– empty content, PCDATA, mixed content, and so

forth

• Custom elements defined in private namespace schema

Slide 66

Example of Extending Elements in XLIFF

• Example of Extended XLIFF file

• Example of private namespace schema

Slide 67

Extending Attributes

• Attributes of a namespace different than XLIFF can be included in these XLIFF elements: – <file>, <group>, <trans-unit>, <source>,

<target>, <tool>, <bin-unit>, <bin-source>, <bin-target>, <alt-trans>, <mrk>, <g>, <x/>, <bx/>, <ex/>, <bpt>, <ept>, <ph>, and <it>

• No specific location where to insert the non-XLIFF attributes

• No limit to the number of non-XLIFF attributes that can be used in an XLIFF document

Slide 68

Example of Extending Attributes

• attributes from the XHTML vocabulary extend the <group> and <trans-unit>

• Click for Example…

Slide 69

Extending Attribute Values

• Attributes where the list of values can be extended are the following: context-type, count-type, ctype, datatype, mtype, restype, size-unit, state, unit, priority, and purpose

• User-defined values must start with a “x-” prefix

• There is no specified mechanism to validate individual user-defined values, beyond starting with “x-”

Slide 70

Example of Extending Attribute Values

• The following excerpt shows how the user-defined value x-for-engineer can be utilized in a document:...<group>

<context-group name='EngineersData'><context context-type='x-for-

engineers'>Data...</context></context-group>

</group> ...

Slide 71

Validating Extensions

• Add the schemaLocation attribute of the XML schema-instance namespace to define what schemas to use to validate:

<xliff version='1.1' xmlns='urn:oasis:names:tc:xliff:document:1.1'

xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation=' urn:oasis:names:tc:xliff:document:1.1 xliff-1-1.xsd http://www.ChaucerState.ac.pg/Frm/XLFSup-v1 XLFSupv1.xsd' > ... </xliff>

Slide 72

Embedding XLIFF

• Can embed an entire or part of an XLIFF doc in other XML doc

• XML defined by XML Schema (XSD) that includes an <any> element in the definition of the element where the XLIFF data can be inserted

Slide 73

Example of Embedding XLIFF

• The following XSD excerpt illustrates the case of an element type dataBlockType that can contain zero, one or more XLIFF constructs after a mandatory <type> element:

...

<xsd:complexType name="dataBlockType">

<xsd:sequence>

<xsd:element name="type" type="string" minOccurs="0"/>

<xsd:any namespace="##other" processContents="strict" minOccurs="0" maxOccurs="unbounded"/>

</xsd:sequence>

</xsd:complexType>

...

Slide 74

Deprecated or changed 1.0

• reformat – feature changed

• tool attribute becomes tool element

• new tool-id attribute

• ts, prop / prop-group - deprecated

• header was required, now optional

• default –can specify default values for given scope

Slide 75

Reformat

• 1.0 supported values of “yes” or “no”, which wasn’t granular enough• 1.1 supports the following values:

– “yes" = all format attributes may be changed– "no" = no format attributes may be changed...or a semicolon-delimited list of the following in any order. If an attribute is listed, it means it

may be reformatted.• coord = all 4 coords, coord-x, coord-y, coord-cx, coord-cy, font = all 3 font values, font-name, font-size,

font-weight, css-style, style, exstyle,

Example:

<trans-unit coord="#;#;183;272" font="Arial;2;normal" reformat="coord-cx;font-name">

<source>...</source> <target coord="#;#;181;272" font="System;2;normal">...</target> <alt-trans coord="#;#;183;272" font="Arial;2;normal"> <target coord="#;#;180;272" font="Arial Bold;2;normal">...</target> <target coord="#;#;185;272" font="Arial, Helvetica;2;normal">...</target> </alt-tran></trans-unit>

Slide 76

Tool Element

• Tool attribute promoted to element in 1.1…<header>

</tool tool-name=‘Oracle HyperHub’ tool-id=‘ora-hhub-030721’ tool-company=‘Oracle Tools Group’ tool-version= ‘3.7.21’/>

</header>…

Slide 77

New tool-id attribute

• Replaces tool attribute where it was defined

• Points to <tool> defined in <header>, linked by tool-id value

• Used in <file>, <phase>, <alt-trans>, <tool>

Slide 78

Deprecated features

• ts, prop / prop-group , but can use private namespace extensions to customise elements, attributes, attrib values

• tool attribute deprecated, but richer feature set using <tool> element and tool-id attribute

Slide 79

Default Attribute Value

• These attributes added to <group> so that default value can be set with scope across entire group: charclass maxbytes maxheight maxwidth minbytes minheight minwidth size-unit translate reformat

• Example, where maxwidth default set across entire group, except for trans-unit 4:

<body> <group size-unit="char" maxwidth="2000"> <trans-unit id="1">...</trans-unit> <trans-unit id="2">...</trans-unit> <trans-unit id="3">...</trans-unit> <trans-unit id="4" maxwidth="225">...</trans-unit> <trans-unit id="5">...</trans-unit> </group></body>

Slide 80

More Information

• The XLIFF TC Web Site: http://www.xliff.org

• Presenter: – XLIFF TC Chair: Tony Jewtushenko (Oracle)

([email protected])

• Significant Contributors to this Presentation:– Christian Lieske, (SAP)

([email protected])

– Yves Savourel (RWS Group)([email protected])

Slide 81

That’s it...

Any Questions?