- From: Maciej Stachowiak <mjs@apple.com>
- Date: Mon, 12 May 2008 08:23:37 -0700
- To: Bjoern Hoehrmann <derhoermi@gmx.net>
- Cc: public-webapi <public-webapi@w3.org>
On May 12, 2008, at 8:00 AM, Bjoern Hoehrmann wrote:
> * Maciej Stachowiak wrote:
>> This does not look much better (it does avoid repeatedly mentioning
>> the xmlns namespace at least):
>>
>> function resolver(prefix) {
>> if (prefix == "xht") {
>> return "http://www.w3.org/1999/xhtml";
>> } else if if (prefix == "svg") {
>> return "http://www.w3.org/2000/svg";
>> } else if (prefix == "mml") {
>> return "http://www.w3.org/2000/xmlns/";
>> }
>> return null; // ???
>> }
>>
>> However, this does look better:
>>
>> var namespaces = {xht: "http://www.w3.org/1999/xhtml"; svg: "http://www.w3.org/2000/svg
>> "; mml: "http://www.w3.org/1998/Math/MathML" };
>
> You can just use `function(p) { return namespaces[p]; }` then.
Sure, but there's no actual need to allow running arbitrary code and
all the risks that creates/
> You'll have to define what happens if you pass `{ get svg()
> { ... } }` if you
> allow this,
I would define that getters are ignored (after all, the point of this
is to avoid code execution)
> and what to pass in other language bindings.
Other language bindings are the 1% case for this API (and that's being
generous). They can just use Nodes. Or anyone who wishes to champion a
more convenient syntax for some specific binding can propose what
language-specific dictionary type should be allowed to use Nodes.
Regards,
Maciej
Received on Monday, 12 May 2008 15:24:17 UTC