- From: Grosso, Paul <pgrosso@ptc.com>
- Date: Mon, 4 May 2009 11:06:42 -0400
- To: <public-xml-core-wg@w3.org>
Assuming we have the necessary participants on the telcon this week, I plan to go through these suggested clarifications. Simon has suggested more SHOULDs should be MUSTs. Other than that, I have seen no comments. Please be prepared to discuss on the telcon. paul > -----Original Message----- > From: public-xml-core-wg-request@w3.org > [mailto:public-xml-core-wg-request@w3.org] On Behalf Of Grosso, Paul > Sent: Friday, 2009 April 17 16:42 > To: public-xml-core-wg@w3.org > Subject: RE: xml-stylesheet issues--suggested resolutions > > Having reviewed what Arbortext does [1] and (thanks to Henry) > what Saxon does [2], embedded herein are my suggestions for > clarifications to the Associating Stylesheets Rec [3]. > > In general, we will need to decide if the various error > cases are "it is an error (the xml-stylesheet processor > may ignore the whole thing, may ignore what it doesn't > understand and try to process the rest, etc.)" or "fatal > xml-stylesheet error (a compliant xml-stylesheet processor > must ignore the entire PI)" or "it is an error; the > xml-stylesheet processor must recover by XXXX". > > In most cases, I'm tempted to say "is an error; the > xml-stylesheet processor MAY ignore the entire PI; if > it tries to recover, it SHOULD xxxx." Thoughts? > > [1] > http://lists.w3.org/Archives/Public/public-xml-core-wg/2009Feb/0022 > [2] > http://lists.w3.org/Archives/Public/public-xml-core-wg/2009Apr/0025 > [3] http://www.w3.org/1999/06/REC-xml-stylesheet-19990629/ > > > -----Original Message----- > > From: public-xml-core-wg-request@w3.org > > [mailto:public-xml-core-wg-request@w3.org] On Behalf Of > Simon Pieters > > Sent: Tuesday, 2009 February 17 10:38 > > To: public-xml-core-wg@w3.org > > Subject: xml-stylesheet issues > > > > As promised here are some issues with the existing > > xml-stylesheet spec (probably not exhaustive): > > > > > > * What happens when the PI is XML 1.0-well-formed but doesn't > > follow the xml-stylesheet syntax? > > The entire PI should be ignored by the xml-stylesheet processor. > (That is, it is effectively not considered an xml-stylesheet PI.) > This includes the case where either of the two required > pseudo-attributes--href and type--are omitted (or ignored > due to unacceptable values). > > As an aside, I'm not sure why the spec required the type > pseudo-attribute. It doesn't seem to be required by the > HTML spec, and Arbortext doesn't make use of it. Perhaps > we should not require it--or at least, not require that > a processor ignore the whole PI if it is missing. After > all, the processor can use the href value to find the > resource whose type might be obvious by inspection. > Thoughts? > > > > > * What happens when there are unknown pseudo-attributes? > > The unknown pseudo-attributes should be ignored. The rest of > the PI should be processed by the xml-stylesheet processor. > > > > > * What happens when there are unknown values? > > If a known pseudo-attribute has an unknown, unrecognized, or > invalid value, the xml-stylesheet processor should act as though > that pseudo-attribute assignment was not there. Since href > and type are required, if either of them are ignored (due > to an unacceptable value), the PI should be ignored by the > xml-stylesheet processor. > > Specifically, the recognized pseudo-attributes are: > * href -- required > * type -- required (though I'm not sure why) > * title -- can't see how this could be invalid > * media -- not sure how this could be invalid, but if so, ignore > * charset -- if the value isn't a valid charset, ignore > * alternate -- if not yes or no, defaults to no > > > > > * What happens when there are duplicate pseudo-attributes? > > (This seems to actually be allowed in the syntax.) > > The xml-stylesheet processor should use the last one (parsing > the PI left to right) specified. > > > > > * What happens when a CharRef hits the [WFC: Legal Character] > > constraint in XML 1.0? (Unclear to me whether this is allowed > > in the syntax.) > > As far as I can tell, the XML Rec says: > > [16] PI ::= '<?' PITarget (S (Char* - (Char* '?>' Char*)))? '?>' > > and Char is "any unicode character..." so I don't see how there > could be a CharRef in a PI. > > > > > * When is the processing of the PI invoked? > > - What happens if you change the PI's 'data'? > > - What happens if you change the PI's 'target'? > > - What happens if you remove the PI from the DOM? > > - What happens if you add the PI to the DOM (with scripting)? > > - What happens if you insert the PI somewhere other than in > > the prologue? > > - What happens if the PI is a child of Document but after > > the root element and you then move the root element so that > > the PI becomes part of the prologue? > > This is outside the scope of the associating stylesheet Rec. > Talk to the XML Processing Model WG. > > > > > * Is it conforming for a document to have an xml-stylesheet > > PI anywhere other than in the prologue? Is it used or ignored? > > The Assoc SS spec says: > > The xml-stylesheet processing instruction is allowed only in > the prolog of an XML document. > > So an xml-stylesheet processor should ignore any PI not in the prolog. > > I would add that an xml-stylesheet processor should ignore any PI > that is not physically in the document entity. > > I would also add that, in the case of multiple xml-stylesheet PIs > for the same media, the xml-stylesheet processor should ignore all > but the last in document order. > > > > > * Browsers support type="text/xsl" but text/xsl is not a > > registered media type and is not an XML media type per RFC 3023. > > I don't think this is an issue for the xml-stylesheet PI spec. > Besides, type="text/xsl" has been in use for so long that the > XSL WG should make it official, but that's not our call. > > > > > * If charset is specified and the PI points to an XSLT > > transformation, should the charset='' information be used? > > Used for what? For reading the XSLT resource, yes. For > what the XSLT transformation generates, no. But I'm not > sure the Assoc SS spec needs to say anything here. > > > > > * media='' references HTML4 which is outdated; browsers use > > the Media Queries spec here. > > I'm not sure we have to do anything here. > > We could update some references, but this just starts us down > the road of how to reference one spec from another in a changing > world. I mostly want the Assoc SS spec to say how one gets values > for various things (like media) and let another spec say how to > interpret those values. > > Right now the Assoc SS spec says: > > The semantics of the pseudo-attributes are exactly as with > <LINK REL="stylesheet"> in HTML 4.0. > > So where does the Media Queries spec fit in? Does it modify > what HTML4 says, or are browsers that use the Media Queries > spec not compliant with HTML4? > > > > > * CSSOM integration: > > http://dev.w3.org/cvsweb/~checkout~/csswg/cssom/Overview.html? > > content-type=text/html;%20charset=utf-8#the-linkstyle defines > > the LinkStyle interface that HTML <link> and > > <?xml-stylesheet?> implement -- we should coordinate with Anne here. > > I don't quite understand this, but I'm pretty sure this is > outside the scope of the xml-stylesheet PI spec. > > I do not feel the Assoc SS spec should define a DOM interface > to the xml-stylesheet PI any more than the XML spec defines > a DOM interface to anything. > > > > > * CSS issues: it's unclear whether referencing an element > > should work if type="text/css" -- the type of the document > > would be an XML type which is not a CSS type, and browsers > > largely don't support this anyway. > > Simon later gave the following example: > > Consider > > <?xml-stylesheet type='text/css' href='#foo'?> > <test xml:id='foo'> test { background:lime } </test> > > Should the background be lime, assuming the UA supports > xml-stylesheet, xml:id and CSS? > > I don't think the Assoc SS spec needs to say anything here. > What the PI says is that the associated stylesheet--which > it says is of type='text/css'--is: > > <test xml:id='foo'> test { background:lime } </test> > > Now, it's up to the CSS processor to see if it can handle this. > > I'm guessing most can't, but that's not an Assoc SS issue. > > Consider instead: > > <?xml-stylesheet type='text/css' href='#xpath1(id(foo)/text())'?> > <test xml:id='foo'> test { background:lime } </test> > > If the UA supported xml-stylesheet, xml:id, and the xpath1 xpointer > scheme, then this would be saying that the associated > stylesheet--which > it says is of type='text/css'--is: > > test { background:lime } > > Assuming the UA also supported CSS, I would expect the background > for the test element to be lime. > > But the Assoc SS spec doesn't need to say anything different from > what it says now for this to be the case. > > paul > >
Received on Monday, 4 May 2009 15:09:34 UTC