[Bug 19597] [QT3TS] prohibit-all-optional-features-2

https://www.w3.org/Bugs/Public/show_bug.cgi?id=19597

--- Comment #19 from Jonathan Robie <jonathan.robie@gmail.com> ---
(In reply to comment #18)
> We state that the result must be "as if" the processor did not support
> module import, which means it "MUST raise a static error [err:XQST0016] if
> it encounters a module declaration or a module import." 
> 
> But the specification also says "It is a static error [err:XQST0059] if the
> implementation is not able to process a module import by finding a valid
> module definition with the specified target namespace." 

But where does the second paragraph occur? In the description of Schema Import.
An implementation can only encounter this condition by attempting to do an
import, and the specification clearly says that the implementation must not
attempt to do so:

<quote>
If an XQuery implementation does not provide the Schema Aware Feature, it MUST
raise a static error [err:XQST0009] if it encounters a schema import, and it
MUST raise a static error [err:XQST0075] if it encounters a validate
expression.
</quote>

The definition of prohibit-feature is quite clear that this means the
implementation must act as though the feature were not implemented:

<quote>
A prohibit-feature option declaration provides a list of named features that
must not be enabled in the module in which the option declaration occurs; if
any of these QNames corresponds to a feature that the implementation supports,
it must disable that feature, acting as though the feature were not
implemented, or raise a static error [err:XQST0131].
</quote>

An implementation that does not implement schema import does not try to import
a schema, so it does not raise [err:XQST0059], which can only occur if an
attempt to import a schema is made.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Tuesday, 4 June 2013 20:07:29 UTC