OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

xliff message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Re: Sharing your custom XLIFF extensions


HI Rodolfo,

Thank you for your email. We do not use any extensions for XLIFF apart from allowing GMX/V namespace for metrics.

In fact we use a very small subset of XLIFF - ours must be the most simple and straight forward implementation of XLIFF that there is. In our view this is all that is absolutely required.

Best Regards,

AZ

On 15/03/2011 17:08, Rodolfo M. Raya wrote:
005d01cbe333$906cae70$b1460b50$@maxprograms.com" type="cite">
Hi Andrzej,

The XLIFF TC is collecting the custom extensions to XLIFF 1.2 used in
different tools and is publishing them at
http://wiki.oasis-open.org/xliff/FrontPage 

Can you, please, share the custom extensions used in XTM? If you send the
corresponding XML schemas to the TC's mailing list, I can add the links to
the wiki.

Thanks in advance,
Rodolfo
--
Rodolfo M. Raya   <rmraya@maxprograms.com>
Maxprograms      http://www.maxprograms.com



<?xml version="1.0" encoding="UTF-8"?>
<!--
XTM XLIFF XSD 29-09-2009
-->
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xmlns:xlf="urn:oasis:names:tc:xliff:document:1.2" elementFormDefault="qualified" targetNamespace="urn:oasis:names:tc:xliff:document:1.2" xml:lang="en">
	<!-- Import for xml:lang and xml:space -->
	<xsd:import namespace="http://www.w3.org/XML/1998/namespace"; schemaLocation="http://www.w3.org/2001/xml.xsd"/>
	<!-- Attributes Lists -->
	<xsd:simpleType name="XTend">
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="x-[^\s]+"/>
		</xsd:restriction>
	</xsd:simpleType>

	<xsd:simpleType name="datatypeValueList">
		<xsd:annotation>
			<xsd:documentation>Values for the attribute 'datatype'.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:NMTOKEN">
			<xsd:enumeration value="xml">
				<xsd:annotation>
					<xsd:documentation>Indicates an XML document.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="stateValueList">
		<xsd:annotation>
			<xsd:documentation>Values for the attribute 'state'.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:NMTOKEN">
			<xsd:enumeration value="final">
				<xsd:annotation>
					<xsd:documentation>Indicates the terminating state.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="needs-adaptation">
				<xsd:annotation>
					<xsd:documentation>Indicates only non-textual information needs adaptation.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="needs-l10n">
				<xsd:annotation>
					<xsd:documentation>Indicates both text and non-textual information needs adaptation.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="needs-review-adaptation">
				<xsd:annotation>
					<xsd:documentation>Indicates only non-textual information needs review.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="needs-review-l10n">
				<xsd:annotation>
					<xsd:documentation>Indicates both text and non-textual information needs review.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="needs-review-translation">
				<xsd:annotation>
					<xsd:documentation>Indicates that only the text of the item needs to be reviewed.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="needs-translation">
				<xsd:annotation>
					<xsd:documentation>Indicates that the item needs to be translated.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="new">
				<xsd:annotation>
					<xsd:documentation>Indicates that the item is new. For example, translation units that were not in a previous version of the document.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="signed-off">
				<xsd:annotation>
					<xsd:documentation>Indicates that changes are reviewed and approved.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="translated">
				<xsd:annotation>
					<xsd:documentation>Indicates that the item has been translated.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="state-qualifierValueList">
		<xsd:annotation>
			<xsd:documentation>Values for the attribute 'state-qualifier'.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:NMTOKEN">
			<xsd:enumeration value="exact-match">
				<xsd:annotation>
					<xsd:documentation>Indicates an exact match. An exact match occurs when a source text of a segment is exactly the same as the source text of a segment that was translated previously.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="fuzzy-match">
				<xsd:annotation>
					<xsd:documentation>Indicates a fuzzy match. A fuzzy match occurs when a source text of a segment is very similar to the source text of a segment that was translated previously (e.g. when the difference is casing, a few changed words, white-space discripancy, etc.).</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="id-match">
				<xsd:annotation>
					<xsd:documentation>Indicates a match based on matching IDs (in addition to matching text).</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="leveraged-glossary">
				<xsd:annotation>
					<xsd:documentation>Indicates a translation derived from a glossary.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="leveraged-inherited">
				<xsd:annotation>
					<xsd:documentation>Indicates a translation derived from existing translation.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="leveraged-mt">
				<xsd:annotation>
					<xsd:documentation>Indicates a translation derived from machine translation.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="leveraged-repository">
				<xsd:annotation>
					<xsd:documentation>Indicates a translation derived from a translation repository.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="leveraged-tm">
				<xsd:annotation>
					<xsd:documentation>Indicates a translation derived from a translation memory.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="mt-suggestion">
				<xsd:annotation>
					<xsd:documentation>Indicates the translation is suggested by machine translation.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="rejected-spelling">
				<xsd:annotation>
					<xsd:documentation>Indicates that the item has been rejected because of incorrect spelling.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="tm-suggestion">
				<xsd:annotation>
					<xsd:documentation>Indicates the translation is suggested by translation memory.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="reformatValueYesNo">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="yes">
				<xsd:annotation>
					<xsd:documentation>This value indicates that all properties can be reformatted. This value must be used alone.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="no">
				<xsd:annotation>
					<xsd:documentation>This value indicates that no properties should be reformatted. This value must be used alone.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="purposeValueList">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="information">
				<xsd:annotation>
					<xsd:documentation>Indicates that the context is informational in nature, specifying for example, how a term should be translated. Thus, should be displayed to anyone editing the XLIFF document.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="location">
				<xsd:annotation>
					<xsd:documentation>Indicates that the context-group is used to specify where the term was found in the translatable source. Thus, it is not displayed.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="match">
				<xsd:annotation>
					<xsd:documentation>Indicates that the context information should be used during translation memory lookups. Thus, it is not displayed.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="alttranstypeValueList">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="proposal">
				<xsd:annotation>
					<xsd:documentation>Represents a translation proposal from a translation memory or other resource.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="previous-version">
				<xsd:annotation>
					<xsd:documentation>Represents a previous version of the target element.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="rejected">
				<xsd:annotation>
					<xsd:documentation>Represents a rejected version of the target element.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="reference">
				<xsd:annotation>
					<xsd:documentation>Represents a translation to be used for reference purposes only, for example from a related product or a different language.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="accepted">
				<xsd:annotation>
					<xsd:documentation>Represents a proposed translation that was used for the translation of the trans-unit, possibly modified.</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<!-- Other Types -->
	<xsd:complexType name="ElemType_ExternalReference">
		<xsd:choice>
			<xsd:element ref="xlf:internal-file"/>
		</xsd:choice>
	</xsd:complexType>
		<xsd:simpleType name="AttrType_datatype">
		<xsd:union memberTypes="xlf:datatypeValueList xlf:XTend"/>
	</xsd:simpleType>

	<xsd:simpleType name="AttrType_purpose">
		<xsd:list>
			<xsd:simpleType>
				<xsd:union memberTypes="xlf:purposeValueList xlf:XTend"/>
			</xsd:simpleType>
		</xsd:list>
	</xsd:simpleType>
	<xsd:simpleType name="AttrType_alttranstype">
		<xsd:union memberTypes="xlf:alttranstypeValueList xlf:XTend"/>
	</xsd:simpleType>
	<xsd:simpleType name="AttrType_state">
		<xsd:union memberTypes="xlf:stateValueList xlf:XTend"/>
	</xsd:simpleType>
	<xsd:simpleType name="AttrType_state-qualifier">
		<xsd:union memberTypes="xlf:state-qualifierValueList xlf:XTend"/>
	</xsd:simpleType>
	<xsd:simpleType name="AttrType_YesNo">
		<xsd:restriction base="xsd:NMTOKEN">
			<xsd:enumeration value="yes"/>
			<xsd:enumeration value="no"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="AttrType_Coordinates">
		<xsd:annotation>
			<xsd:documentation>Values for the attribute 'coord'.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:pattern value="(-?\d+|#);(-?\d+|#);(-?\d+|#);(-?\d+|#)"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="AttrType_Version">
		<xsd:restriction base="xsd:string">
			<xsd:enumeration value="1.2"/>
		</xsd:restriction>
	</xsd:simpleType>
	<!-- Groups -->
	<xsd:group name="ElemGroup_TextContent">
		<xsd:choice>
			<xsd:element ref="xlf:g"/>
			<xsd:element ref="xlf:x"/>
		</xsd:choice>
	</xsd:group>
	<xsd:attributeGroup name="AttrGroup_TextContent">
		<xsd:attribute name="id" type="xsd:string" use="required"/>
		<xsd:anyAttribute namespace="##any" processContents="skip"/>
	</xsd:attributeGroup>
	<!-- XLIFF Structure -->
	<xsd:element name="xliff">
		<xsd:complexType>
			<xsd:sequence maxOccurs="unbounded">
                <xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
				<xsd:element ref="xlf:file"/>
			</xsd:sequence>
			<xsd:attribute name="version" type="xlf:AttrType_Version" use="required"/>
			<xsd:attribute ref="xml:lang" use="optional"/>
			<xsd:anyAttribute namespace="##any" processContents="skip"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="file">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element minOccurs="0" ref="xlf:header"/>
				<xsd:element ref="xlf:body"/>
			</xsd:sequence>
			<xsd:attribute name="original" type="xsd:string" use="required"/>
			<xsd:attribute name="source-language" type="xsd:language" use="required"/>
			<xsd:attribute name="datatype" type="xlf:AttrType_datatype" use="required"/>
			<xsd:attribute name="date" type="xsd:dateTime" use="optional"/>
			<xsd:attribute ref="xml:space" use="optional"/>
			<xsd:attribute name="target-language" type="xsd:language" use="optional"/>
			<xsd:attribute name="product-name" type="xsd:string" use="optional"/>
			<xsd:attribute name="product-version" type="xsd:string" use="optional"/>
			<xsd:attribute name="build-num" type="xsd:string" use="optional"/>
			<xsd:anyAttribute namespace="##any" processContents="skip"/>
		</xsd:complexType>
		<xsd:unique name="U_group_id">
			<xsd:selector xpath=".//xlf:group"/>
			<xsd:field xpath="@id"/>
		</xsd:unique>
		<xsd:key name="K_unit_id">
			<xsd:selector xpath=".//xlf:trans-unit"/>
			<xsd:field xpath="@id"/>
		</xsd:key>
		<xsd:keyref name="KR_unit_id" refer="xlf:K_unit_id">
			<xsd:selector xpath=".//g|.//x"/>
			<xsd:field xpath="@xid"/>
		</xsd:keyref>
		<xsd:key name="K_tool-id">
			<xsd:selector xpath="xlf:header/xlf:tool"/>
			<xsd:field xpath="@tool-id"/>
		</xsd:key>
		<xsd:keyref name="KR_file_tool-id" refer="xlf:K_tool-id">
			<xsd:selector xpath="."/>
			<xsd:field xpath="@tool-id"/>
		</xsd:keyref>
		<xsd:unique name="U_uid">
			<xsd:selector xpath=".//xlf:external-file"/>
			<xsd:field xpath="@uid"/>
		</xsd:unique>
	</xsd:element>
	<xsd:element name="header">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element minOccurs="1" maxOccurs="1" name="skl" type="xlf:ElemType_ExternalReference"/>
				<xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="internal-file">
		<xsd:complexType>
			<xsd:simpleContent>
				<xsd:extension base="xsd:string">
					<xsd:attribute name="form" type="xsd:string"/>
					<xsd:attribute name="crc" type="xsd:NMTOKEN"/>
				</xsd:extension>
			</xsd:simpleContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="note">
		<xsd:complexType>
			<xsd:simpleContent>
				<xsd:extension base="xsd:string">
					<xsd:attribute ref="xml:lang" use="optional"/>
					<xsd:attribute name="from" type="xsd:string" use="optional"/>
				</xsd:extension>
			</xsd:simpleContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="body">
		<xsd:complexType>
			<xsd:choice maxOccurs="unbounded" minOccurs="0">
				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:group"/>
				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:trans-unit"/>
			</xsd:choice>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="group">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:choice maxOccurs="unbounded">
					<xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:trans-unit"/>
				</xsd:choice>
			</xsd:sequence>
			<xsd:attribute name="id" type="xsd:string" use="optional"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="trans-unit">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element ref="xlf:source"/>
				<xsd:element minOccurs="0" ref="xlf:target"/>
				<xsd:choice maxOccurs="unbounded" minOccurs="0">
					<xsd:element ref="xlf:note"/>
					<xsd:element ref="xlf:alt-trans"/>
				</xsd:choice>
				<xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
			</xsd:sequence>
			<xsd:attribute name="id" type="xsd:string" use="required"/>
			<xsd:attribute name="approved" type="xlf:AttrType_YesNo" use="optional"/>
			<xsd:attribute default="yes" name="translate" type="xlf:AttrType_YesNo" use="optional"/>
			<xsd:attribute name="maxwidth" type="xsd:NMTOKEN" use="optional"/>
			<xsd:attribute name="minwidth" type="xsd:NMTOKEN" use="optional"/>
			<xsd:attribute name="maxheight" type="xsd:NMTOKEN" use="optional"/>
			<xsd:attribute name="minheight" type="xsd:NMTOKEN" use="optional"/>
			<xsd:attribute name="maxbytes" type="xsd:NMTOKEN" use="optional"/>
			<xsd:attribute name="minbytes" type="xsd:NMTOKEN" use="optional"/>
			<xsd:attribute name="charclass" type="xsd:string" use="optional"/>
			<xsd:attribute default="yes" name="merged-trans" type="xlf:AttrType_YesNo" use="optional"/>
			<xsd:anyAttribute namespace="##any" processContents="skip"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="source">
		<xsd:complexType mixed="true">
			<xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
			<xsd:attribute ref="xml:lang" use="optional"/>
			<xsd:attribute name="ts" type="xsd:string" use="optional"/>
			<xsd:anyAttribute namespace="##any" processContents="skip"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="target">
		<xsd:complexType mixed="true">
			<xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
			<xsd:attribute name="state-qualifier" type="xlf:AttrType_state-qualifier" use="optional"/>
			<xsd:anyAttribute namespace="##any" processContents="skip"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="alt-trans">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element minOccurs="0" ref="xlf:source"/>
				<xsd:element maxOccurs="unbounded" ref="xlf:target"/>
				<xsd:element maxOccurs="unbounded" minOccurs="0" ref="xlf:note"/>
				<xsd:any maxOccurs="unbounded" minOccurs="0" namespace="##other" processContents="skip"/>
			</xsd:sequence>
			<xsd:attribute name="match-quality" type="xsd:string" use="optional"/>
			<xsd:attribute name="origin" type="xsd:string" use="optional"/>
			<xsd:attribute name="extype" type="xsd:string" use="optional"/>
			<xsd:anyAttribute namespace="##any" processContents="skip"/>
		</xsd:complexType>
	</xsd:element>
	<!-- Element for inline codes -->
	<xsd:element name="g">
		<xsd:complexType mixed="true">
			<xsd:group maxOccurs="unbounded" minOccurs="0" ref="xlf:ElemGroup_TextContent"/>
			<xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="x">
		<xsd:complexType>
			<xsd:attributeGroup ref="xlf:AttrGroup_TextContent"/>
		</xsd:complexType>
	</xsd:element>
</xsd:schema>


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]