Re: Extensibility strategies, was: Deciding in public (Was: SVGWG SVG-in-HTML proposal)

On Tue, 5 Aug 2008, Julian Reschke wrote:
> > 
> > Could you actually give an example where people using different 
> > disambiguation schemes would somehow come up with clashing names? It 
> > seems like it is quite possible to design disambiguation schemes that 
> > can't be confused with other disambiguation schemes and therefore 
> > can't have clashes.
> 
> If Alice's disambiguation scheme is tld.sld-identifier, and Bob's is 
> sld.tld-identifier, and Alice's domain name is "ab.cd", and Bob's domain 
> is "cd.ab", and they both want to define "title", both will end up with
> 
>   "ab.cd-title"

Aha, ok. This does indeed some like a possibility. Given that most people 
aren't minting their own vocabularies, that the TLD space will be 
relatively limited even under the new proposed ICANN scheme, that two 
unrelated vocabularies aren't likely to have many clashes anyway, that 
it's unlikely that these vocabularies would be used together anyway, that 
it's likely that people will use different disambiguation schemes, and 
that even if despite all this there are clashes, the two groups could 
communicate to avoid clashes, it seems somewhat unlikely that a clash is 
going to happen often enough that we need to explicitly design around it 
not happening, but I'll grant you that "domain-word" is a suboptimal 
scheme.


> This can be avoided by mandating exactly one scheme.

It can also be avoided by allowing people to use any schemes, so long as 
those schemes can't be confused with each other. For example, 
com.example.word and word.example.com are both sensible schemes, but 
example.com.word wouldn't really be a good scheme. So if someone uses a 
sensible scheme, they are ok.


> A URI-based scheme would be a candidate, and have the advantage that 
> those are well understood and are used almost everywhere else (which 
> makes roundtripping easy).

You can use a URI-based scheme.


> > > > > That being said, clashes have occurred (what does the "title" 
> > > > > class name stand for?), and it's also a known problem that you 
> > > > > get in trouble once you want to nest information.
> > > >
> > > > These problems are fixable without complicated disambiguation 
> > > > schemes.
> > >
> > > How?
> > 
> > Using different classes, defining precise behaviour, etc.
> 
> That requires central coordination.

It requires coordination between those who are clashing, yes. Is that a 
big problem? It seems like communication is something humans can do.


> As far as I can tell, the problems with microformats are well understood 
> by now (nesting, abuse of title attribute, process only works for a few 
> common formats), but it seems you prefer to ignore them.

It's not clear to me how I am ignoring them, or what it would mean to not 
ignore them. Despite all their problems, as you put it, Microformats are 
doing fine. The problems with URI-based extension mechanisms (people 
dereference them unnecessarily, causing high load; they are verbose; their 
behaviour in the face of relative URI references causes confusion, etc) 
are well-understood too at this point.


> > > > I mean that instead of sticking your extension here:
> > > > 
> > > >    <xxxx>
> > > > 
> > > > ...you stick it here:
> > > > 
> > > >    <div class="xxxx">
> > > > 
> > > > It's a different syntactic space than the language's main 
> > > > vocabulary. Is that an acceptable price?
> > >
> > > If it would work *reliably*, yes. I don't see how it could, as class 
> > > already has different semantics.
> > 
> > It has the exact semantics you want -- author-defined extension point.
> > 
> > Why would it not work reliably? Could you provide an example of 
> > something that would be unreliable?
> 
> It would work only reliably if a naming scheme is chosen that makes it 
> impossible that different authors accidentally choose the same name for 
> different purposes. To avoid that, a concrete syntax needs to be 
> defined.

Use URIs.

-- 
Ian Hickson               U+1047E                )\._.,--....,'``.    fL
http://ln.hixie.ch/       U+263A                /,   _.. \   _\  ;`._ ,.
Things that are impossible just take longer.   `._.-(,_..'--(,_..'`-.;.'

Received on Tuesday, 5 August 2008 08:24:10 UTC