Re: Exclude-inline-prefixes and unused prefixes

Toman_Vojtech@emc.com writes:
> If you do not explicitly exclude an inline prefix using
> exclude-inline-prefixes, and this prefix is not used in the content of
> p:inline, will/must/should the prefix appear in the resulting document?

The binding must appear in the document. Any other behavior would make
it impossible for a user to know if inline content can contain
references to that namespace.

> Currently, the exclude-inline-prefixes related tests in the test suite
> expect these prefixes to appear in the document. For instance, the
> following test (exclude-inline-prefixes-001):
>
> <p:declare-step name="main"
> 		xmlns:t="http://xproc.org/ns/testsuite"
> 		xmlns:p="http://www.w3.org/ns/xproc"
> 		xmlns:c="http://www.w3.org/ns/xproc-step"
> 		xmlns:err="http://www.w3.org/ns/xproc-error">
>   <p:output port="result"/>
>   <p:identity>
>     <p:input port="source">
>       <p:inline exclude-inline-prefixes="t p err"><doc/></p:inline>
>     </p:input>
>   </p:identity>
>
>   <p:wrap-sequence wrapper="wrapper"/>
>
>   <p:escape-markup/>
> </p:declare-step>
>
> Is expected to return:
>
> <wrapper>&lt;doc
> xmlns:c="http://www.w3.org/ns/xproc-step"/&gt;</wrapper>
>
> I am asking because in our implementation, the prefix "c" does not
> appear in the inline document.

I believe that's an error. Suppose that instead of "<doc/>", my content
was "<doc>What about {c:foo}?</doc>"?

If you lose the c: binding,then the application that interprets the
meaning of content in curly braces doesn't have a binding to consult.

                                        Be seeing you,
                                          norm

-- 
Norman Walsh <ndw@nwalsh.com> | Reality is what refuses to go away when
http://nwalsh.com/            | I stop believing in it.--Philip K. Dick

Received on Wednesday, 11 March 2009 17:59:53 UTC