Re: SGML output from XSL?

Subject: Re: SGML output from XSL?
From: Chris Lilley <chris@xxxxxx>
Date: Tue, 09 Feb 1999 07:01:34 +0100

Paul Prescod wrote:
> Chris Lilley wrote:
> >
> > No; XSL outputs XML.
> The XSL specification does not formally define an output language. It
> defines a concept called a "result tree." That result tree has no
> serialization syntax. XML is an obvious syntax for engines that want to
> serialize the output tree, but that doesn't mean that an XSL
> implementation needs to output that tree in XML or any other syntax.

Hmm ... in that case, it needs to be clarified that XML is the
serialisation syntax.

> > If XSL can output HTML, it is because it can be
> > expressed in XML which is what Voyager does.
> The XSL specification explicitly describes how to create non-XML HTML. The
> note in section 2.2 is very explicit.

The note is documenting an obscure quirk of one particular
implementation. Creating non-XML is outside the chartered scope of XSL.

> > So it needs a URI to
> > define the HTML namespace and ther URI for the HTML 4.0 recommendationis
> > as good as any.
> The URI for the HTML 4.0 recommenndation is a pointer to *HTML 4.0*.

Yes. But when used as a namespace, the URI is not dereferenced. It
merely serves as a globally unique identifier.

> HTML 4.0 is based on full SGML not XML. 

I know, I helped write it. 

> Voyager has its own URI.

Not a stable one. However, the facilities in Voyager are those of HTML
4.0, by design. Until recently, the namespace URI used in Voyager was
that of HTML 4.0 - I see that has changed for the public draft. In that
case, the XSL WD should be updated to reflect the new namespace URI for

> James Clark has already implemented this:

yes, I know. That does not necessarily make it a good idea. James has a
lot of good ideas; this is not one of them, IMHO.

> > OK well I would say that is outside the scope of XSL. It was discussed
> > earlier, and the idea of a post processing filter that takes XML and
> > spits out some wierd stuff seemed to be that way people thought this
> > should be done.
> Right. And it is triggered with a result-ns declaration.

;-) okay - which is saying that it is triggered by saying that the
result is not FO (which is what the result-ns is really saying) and
thus, since you the "stylesheet" author get to write your own output
schema , you can euaully welldefine some additional filter to further
transform the XZML result to non-XML.

> > > "If an implementation wishes to use something in the result tree or
> > > stylesheet to control the output of a non-XML representation of the result
> > > tree, it should use the result namespace."
> >
> > But the result namespace is not the same thing as the name of the
> > non-XML representation (whic, not being XML, doesn';t have a namespace).
> Namespaces are not required to name "XML vocabularies" or "XML schemas" or
> anything else even vaguely XML related. Namespaces are a completely
> abstract concept and the namespace URI can point to anything or nothing.

This seems to contradict your earlier problem with using the HTL 4.0 REC
URI as a namespace URI (because it points to something written in SGML).
I agree that it does not matter what the URI points to.


 XSL-List info and archive:

Current Thread