[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Subject: RE: [xliff] Phase name attribute use
Hi John and All, here is my reaction on the phase-name attribute. I agree that the phase is overloaded in the XLIFF file and I partialy agree with John's proposal, that the phase-name attribute could be used in the <trans-unit> element, but it still needs some re-formation of the structure inside the <trans-unit>, due to redundancy of data and inconsistency. We have to distinguish more precisely all cases that can occur. First case, the history of the translation is now stored in <alt-trans> element and doesn't have any <source> defined, because this is taken from the <trans-unit>'s original source. Let's consider we will use just one <alt-trans> element for one phase in this case, so there will be allways one <target> element in one <alt-trans> for one phase: <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target>Annuler le Rapport</target> <alt-trans reason="Approved" phase-name="4review"> <target>Annuler le Rapport</target> </alt-trans> <alt-trans reason="Rejected-Inaccurate" phase-name="3trans"> <target>Annuler le rapport</target> </alt-trans> </trans-unit> Second case is the origin of the translation (pre-translation), where the content has its <source> defined in the <alt-trans>, because pre-translated source may be different from the original source. Match-quality is defined as the unit of similarity between the original source (in <trans-unit>) and pre-translated source in the <alt-trans> element. Note, that there can be more than one <target> element with several forms of translation in one <alt-trans> for one match-quality: <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target>Annuler le Rapport</target> <alt-trans match-quality="50%" reason="TM-Suggestion" phase-name="2pretrans"> <source>Cancel All</source> <target>Annuler tout</target> <target>Annuler Tout</target> </alt-trans> <alt-trans match-quality="100%" reason="TM-Suggestion" phase-name="2pretrans"> <source>Cancel Report</source> <target>Annuler le rapport</target> </alt-trans> </trans-unit> As you could note, I haven't used any phase-name attribute in the <target> element. When we consider the rules I mentioned (one <alt-trans> with one <target> for one phase in history AND one <alt-trans> for one match-quality for one phase for origin of the translation), we can simply remove the phase-name attribute from the <target> element -- all information about the phase is strored in the level above the <target>. I can see the problem in first case (history): in the file structure definition, <alt-trans> may have more than one occurences of the <target>, so we have to either define a strong rules for using <alt-trans> OR add a new element, which will distinguish the history from the translation origin (e.g. add the <prev-trans> element at this place) and will have defined just one <target> element inside. Overall example: <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target>Annuler le Rapport</target> <!-- TRANSLATION HISTORY: --> <prev-trans reason="Approved" phase-name="4review"> <target>Annuler le Rapport</target> </prev-trans> <prev-trans reason="Rejected-Inaccurate" phase-name="3trans"> <target>Annuler le rapport</target> </prev-trans> <!-- ORIGIN OF (PRE)TRANSLATION: --> <alt-trans match-quality="50%" reason="TM-Suggestion" phase-name="2pretrans"> <source>Cancel All</source> <target>Annuler tout</target> <target>Annuler Tout</target> </alt-trans> <alt-trans match-quality="100%" reason="TM-Suggestion" phase-name="2pretrans"> <source>Cancel Report</source> <target>Annuler le rapport</target> </alt-trans> </trans-unit> Note that there is the same content in the history (phase '4review') and in <trans-unit> (phase '5final'). In John's proposal, there was a phase-name used in both <trans-unit> and its <target>, which is (as I think) a little bit confusing and lead to inconsistency. I propose that when the string between two phases remains the same (unchanged translation), it should be add to the history with the same content in the <target> and with appropriate phase-name in <alt-trans> (<prev-trans>). Yes, it is a redundancy, but the history tracking is kept in the file in a consistent way. I'm looking forward to your comments and to future cooperation that will continue after a little break. Cheers, Milan -----Original Message----- From: John Reid [mailto:jreid@novell.com] Sent: Monday, December 09, 2002 6:53 AM To: xliff@lists.oasis-open.org Subject: RE: [xliff] Phase name attribute use Hello Mirek, Mark, and All, This discussion brings out some problems with the phase information as it is currently defined. Phase is a bit overloaded. First, phase is used for versioning the file and the parts of the file. This is the case in <trans-unit> and <bin-unit> where the phase can mark which have gone through a proofreading and which have not. Second, phase is used for specifying the origin of translations. This is the case for the phase-name in the <target> and <bin-target>. Thus, the phase of <trans-unit> may be different than phase of <target>. In addition, each <trans-unit> may have multiple <alt-trans> (>=0). An <alt-trans> may have a <source>, which is useful in providing fuzzy matches. For example, in the following, the <trans-unit> has had a final review, the <target> of the <trans-unit> was entered during the translation phase, and the <alt-trans> came into the file during pretranslation. <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target phase-name="3trans">Annuler le rapport</target> <alt-trans match-quality="50%"> <source>Cancel All</target> <target phase-name="2pretrans">Annuler tout</target> </alt-trans> </trans-unit> In the above example, though, the phase associated with the fuzzy match is stored all the way down in the target rather than the more sensible position of in the <alt-trans>. One could easily imagine the scenario where another <alt-trans> is used to store translator entered translation that is acceptable but changed upon review, possibly because of context information; this information may be required for historical reasons or so the difference can be arbitrated by a final review. (I'll use case as the differentiator since my language skills aren't sufficient to create a better example. Please bear with me.) <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target phase-name="4review">Annuler le Rapport</target> <alt-trans> <target phase-name="3trans">Annuler le rapport</target> </alt-trans> <alt-trans match-quality="50%"> <source>Cancel All</target> <target phase-name="2pretrans">Annuler tout</target> </alt-trans> </trans-unit> Here, as in the first example, there is no information in the <alt-trans> as to when it was entered in the file. The assumption is made that it entered at the time of the review since that is the phase of the <trans-unit>'s target. Now, if we remove the occurence of phase-name as proposed, we no longer know if the <trans-unit> has been reviewed or not. It can only be assumed, erroneously, to be at the phase of the last phase entered in the <trans-unit>, phase-name="4review". Since this information may be useful but is not required, I disagree with removing the phase-name from the <trans-unit> and <bin-unit>. This information becomes even more important as we split and recombine XLIFF files during their processing. <trans-unit id="1"> <source>Cancel Report</source> <target phase-name="4review">Annuler le Rapport</target> <alt-trans> <target phase-name="3trans">Annuler le rapport</target> </alt-trans> <alt-trans match-quality="50%"> <source>Cancel All</target> <target phase-name="2pretrans">Annuler tout</target> </alt-trans> </trans-unit> Adding in the reason attribute, if I understand it correctly, we have the following. <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target phase-name="4review">Annuler le Rapport</target> <alt-trans reason="Rejected-Inaccurate"> <target phase-name="3trans">Annuler le rapport</target> </alt-trans> <alt-trans match-quality="50%" reason="TM-Suggestion"> <source>Cancel All</target> <target phase-name="2pretrans">Annuler tout</target> </alt-trans> </trans-unit> Although this does answer the question of the reason for the <alt-trans>, it still does not fix the problem of the deeply embedded phase-name. Also, if the reasons aren't strongly typed somehow (read 'enumerated') that information won't easily be interpretted. Thus we will have added more unusable data. I don't have a strong opinion one way or the other about the reason attribute. It solves some problems but may introduce others, especially if it is required. It still needs some more work. I do think we should add the phase-name attribute to the alt-trans as an optional attribute. Following along with Yves's original thoughts on this, the phase-name could be placed at the <alt-trans> level for any <alt-trans> that has a <source>. It would be placed in the target of any <alt-trans> that does not have a <source>. <trans-unit id="1" phase-name="5final"> <source>Cancel Report</source> <target phase-name="4review">Annuler le Rapport</target> <alt-trans reason="Rejected-Inaccurate"> <target phase-name="3trans">Annuler le rapport</target> </alt-trans> <alt-trans match-quality="50%" reason="TM-Suggestion" phase-name="2pretrans"> <source>Cancel All</target> <target>Annuler tout</target> </alt-trans> </trans-unit> cheers, john
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]
Powered by eList eXpress LLC