W3C home > Mailing lists > Public > www-svg@w3.org > May 2009

Re: <link> and <param> in SVG (SVG ACTION-2534)

From: Doug Schepers <schepers@w3.org>
Date: Fri, 01 May 2009 15:13:45 -0400
Message-ID: <49FB49E9.5090300@w3.org>
To: Jonas Sicking <jonas@sicking.cc>
CC: "public-html@w3.org" <public-html@w3.org>, www-svg <www-svg@w3.org>
Hi, Jonas-

Jonas Sicking wrote (on 5/1/09 4:41 AM):
> On Fri, May 1, 2009 at 12:18 AM, Doug Schepers<schepers@w3.org>  wrote:
>>  Through an oversight, the only specified way to link to an external CSS
>>  stylesheet is through an XML PI.  While this works okay, it's not the best
>>  way to do it, and is different than the way HTML does it.  We're looking at
>>  a couple of options:
>>  1) we add @xlink:href to<svg:style>
> Gecko supports the @null:src attribute on<html:style>  elements. I
> don't know if this is supported in any other browsers. Would be nice
> to line it up with this, and would also make it more consistent with
> things like script@src which I've understood the SVG WG to be
> investigating?

Correct, we haven't worked out the details, but we do plan to 
"decommission" @xlink:href, allowing @null:href and/or @null:src in its 
place.  The only open questions, IIRC, are whether @null:href and 
@null:src can be used interchangeably, or if @null:href is for 
"outbound" links and @null:src for "inbound" ones; and when and where 
exactly to specify this... we're doing a set of modules (read: smaller 
specs) for SVG 2.0, so either it will go in related modules (say, where 
we talk about <use> or <image>), or in the "core" spec.  Not an issue, 
just a logistical blip.  I'd like to see this issue settled by the time 
inline-SVG (SVG-in-text/html) is.

>>  2) we add a new element, like<link>, to SVG (I've already shown that this
>>  sometimes works when the<link>  is in the XHTML NS [1], but that isn't
>>  specified anywhere, and isn't intuitive)
> If you do add this (which I think you should), it'd be nice if
> <svg:link>  and<html:link>  was compatible in more areas other than
> just linking to stylesheets.

Yes, we intend for them to be more or less the same in terms of syntax 
and functionality.  What specifically did you have in mind?

>>  Regarding passing parameters, SVG has never had a mechanism for this. We
>>  would like to add one.  Again, we can either create a new element, or we
>>  could repurpose the<param>  element from the HTML<object>, for use in SVG.
> Why do you want to pass parameters?
> The only "stylesheet" language which supports parameters that I know
> of is XSLT, and XSLT is unlikely to ever work with any other linking
> mechanism than<?xml-stylesheet?>. If you do want to add parameter
> passing to<?xml-stylesheet?>  we couldn't use a<param>  element since
> <?xml-stylesheet?>  has no children. Gecko has support for parameter
> passing using the<?xslt-param-namespace?>  and<?xslt-param?>  PIs,
> which might be a good starting point for standardizing this.

Sorry, I wasn't clear.  The theme of my email was "adding elements with 
the same name as those in HTML", not "stuff about stylesheets". :)  So, 
the <link> and <param> elements wouldn't necessarily interact.

The <param> element would be used, for example, as a child of the <use> 
or <animation> elements, where it's referencing other SVG files which 
can take parameters.  In other words, it would be used like it is in 

  <use xlink:href="somefile.svg#someElement">
   <param name="color" value="cornflowerblue"/>

Is there in insuperable problem with adding these elements to SVG, given 
matching syntax and behavior?

(Note that <param> *could* concievably interact with CSS, using a 
combination of Glazou's CSS Variables proposal [1] and the SVG 'param()' 
spec [2].  That might be cool, but we're not going there just yet.)

[1] http://disruptive-innovations.com/zoo/cssvariables/
[2] http://www.w3.org/TR/2009/WD-SVGParam-20090430/

-Doug Schepers
W3C Team Contact, SVG and WebApps WGs
Received on Friday, 1 May 2009 19:13:55 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 March 2017 09:47:17 UTC