- edited description
SDLXLIFF: Improve handling of seg-def @conf values
SDLXLIFF has a custom set of segment states, such as "ApprovedForSignoff", "Draft", "Translated", etc. However, these are not stored in the state
attribute on <target>
. Instead, they are stored in the custom segment definition metadata:
<sdl:seg id="723" conf="Translated" origin="tm" ...>
The current behavior of the okf_xliff-sdl filter is to update this attribute when the file is merged. However, the value is fixed as part of the configuration, so for example we automatically set all segments conf values to "Translated" by default. This is bad for a number of use cases (see for example issue #588).
A better way to handle this (suggested by Saša Hasan of Lilt) would be to:
- On extraction, parse out the seg conf values and store them using
Property.STATE
on the target TextContainer that references the segdef, just like we do for normal segment states. We can either map these values directly to approved XLIFF 1.2 spec values, or we can just prefix everything withx-
as a custom value, eg<target state="x-sdl-Draft">
. This will preserve the original status value and expose it to the translator. - The translator or whatever else processes the file can modify these statuses normally.
- On merge, we reverse the process. We update the seg conf values based on the live
STATE
property value on the target, again mapping to SDL values if necessary.
This will let us pass the status values through the workflow in a way that actually gives people fine-grained control over them.
Comments (3)
-
reporter -
reporter - edited description
-
reporter - changed status to resolved
- Log in to comment
One question is what to do with the current default behavior.