Namespaces in Extension Objects

Currently we are using following namespaces for extension objects:

 

    xmlns:se="http://org.w3c.ppl.xslt/saxon-extension"

    xmlns:runfop="runfop"

    xmlns:runahf="runahf"

    xmlns:runahfdotnet="pi.ep.ppl.xslt.ext.ahf.dotnet"

    xmlns:runfopdotnet="pi.ep.ppl.xslt.ext.fop.dotnet"

  <xalan:script lang="javaclass"
src="xalan://org.w3c.ppl.xslt.ext.fop.xalan" />

  <xalan:script lang="javaclass"
src="xalan://org.w3c.ppl.xslt.ext.ahf.xalan" />

 

I think namespaces for extension objects shouldn't depend on XSLT
processors. This is already solved in ppl-extension.xslt, by checking
vendor-url.

They should only depend on FO processors.

 

My suggestion:

 

xmlns:runfop="http://org.w3c.ppl.xslt.ext.fop"

xmlns:runahf="http://org.w3c.ppl.xslt.ext.ahf"

 

Furthermore we should distinguish versions of FO processors. At least in
.Net this is necessary, but I think this is a common issue:

 

xmlns:runfop10="http://org.w3c.ppl.xslt.ext.fop.10"

xmlns:runfop11="http://org.w3c.ppl.xslt.ext.fop.11"

xmlns:runahf61="http://org.w3c.ppl.xslt.ext.ahf.61"

xmlns:runahf62="http://org.w3c.ppl.xslt.ext.ahf.62"

 

Extensions should always be called by the same name. Currently areatree
functions are named 

RunFOPXalan.areaTree (Xalan)

areaTree (DotNet)

area-tree (Saxon)

 

If we name function consistently they can be called, independent on any XSLT
processor, like:

 

runfop10:area-tree($fo-tree) ;

runfop11:area-tree($fo-tree);

runahf61:area-tree($fo-tree);

runahf62:area-tree($fo-tree);

 

I think, if we standardize this in that or a similar way, users could be
uninterested in XSLT processors, and perhaps vendor checking in
ppl-extension.xsl isn't necessary anymore!?

 

Your thoughts?

 

Markus Wiedenmaier

 

Received on Saturday, 1 March 2014 16:58:48 UTC