[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: What is an agent compelled to do when it encounters a violation?
I understand that a writer (enricher, modifier, extractor, . . .) who creates XLIFF that violates a constraint or processing requirement is identified as being non-compliant, and the XLIFF they create is non-compliant.
But I am not clear on what a reader (or even a writer) is compelled to do what it encounters a violation.
I think some interpret the requirement to be that the reader or writer rejects the XLIFF and expresses an error. But I have not found an explicit statement in the spec that compels this.
Consider this use case.
I am a reader and a writer. Let’s say my application decorates an XLIFF file with Fragment IDs. And I get the following XLIFF file where we have an empty skeleton, but we do not have an @href. This violates
. . .
The attribute href is REQUIRED if and only if the <skeleton> element is empty.
So if my agent receives
<xliff xmlns="urn:oasis:names:tc:xliff:document:2.0" version="2.0" srcLang="en" trgLang="fr">
At which point does the agent become non-compliant if it does the following steps:
(1) Read the XLIFF file
(2) Generate a report that says “Bad: an empty <skeleton> must have an href attribute”
(3) Writes a decorated file
(4) In this decorated file inserts a comment that flags the violation, like this:
<xliff xmlns="urn:oasis:names:tc:xliff:document:2.0" srcLang="en" trgLang="fr" version="2.0">
<file id="f1" xmlns:xmrk="http://www.xmarker.com" xmrk:FragID="bad_EmptySkeletonWithoutHref.xlf/#f=f1">
<skeleton/><!-- Bad: an empty <skeleton> must have an href attribute -->
<unit id="1" xmrk:FragID="bad_EmptySkeletonWithoutHref.xlf/#f=f1/u=1">
I suppose we might say the agent became non-compliant at step (3). But given the output file that flags the violation, is the output non-compliant? Or to make the use case even sillier, what if the application’s purpose is to decorate XLIFF files with comments that identify every place in an XLIFF file that there is a violation of a constraint or processing requirement? Is such an application, or its output doomed to be non-compliant?
I suppose what I’m asking in the end, where do we say *how* an agent must react to a violation?