W3C home > Mailing lists > Public > public-opentag@w3.org > April 2012

how to refer to a user

From: Michiel de Jong <michiel@unhosted.org>
Date: Wed, 25 Apr 2012 00:32:11 +0200
Message-ID: <CA+aD3u2BRCunMW8goVWhGjGKirvC+0Rb+W8PtUUV0Rq7oQRouA@mail.gmail.com>
To: public-opentag@w3.org
Thanks for opening this community group! I have a question right away:
how should we refer to a user?

I consider 5 ways to do this (this is a cross-post from last week on
the 'unhosted web apps' mailing list:

human-readable ways to refer to a user:
-----
H1- by their user address (user@host)
H2- with a non-unique description, e.g. avatar + first name + last name


machine-readable ways to refer to a user:
----
M1- by dereferencing a document about that user, e.g. http://host/user.html*
M2- by dereferencing an interface to that user, e.g. mailto:user@host*
M3- as the user herself is not "on" the web, simply don't refer to it.
refer instead to her interfaces (e.g. her email address) and documents
about her (e.g. her webfinger profile)
M4- the w3c way (this is a bit complicated and inconsistent, but i'll
explain it below)

I think when we ask a user to identify themselves, it should always be
done in way H1. If we ask a user to identify another user, it can be
done in way H1 or H2. If we want to display a reference to a user,
then it can be done with (a combination of) H1 and H2.

I when referring to a user in a machine-readable document, the obvious
way to do it would be M1, M2 or M3. A machine can treat an email
address as if it were just a magical thing. A human is probably
incapable of thinking about an email address without thinking about
the user behind it, so that's why i put M3 only under the
machine-readable options and not under the human-readable ones.

The w3c way is a variation on M3, with the following modifications:
- instead of saying that when we say mailto:user@host we are talking
about an email address, we have to interpret the context. If an email
address fits into the context, then it refers to the email address. if
a user fits in the context, then it refers to the user owning the
email address. If both would fit then it breaks. (this can happen for
instance if you talk about the colour of a building. you might be
talking about the colour of the web page that describes the building.
- all interfaces (mailto:, xmpp:, tel:, etcetera) are allowed, but
http and https addresses are only allowed if they point to fragments
of documents, not if they point to whole documents. So if you see a
URN with no '#' symbol in it, then you can be sure that it refers to
the document. If there /is/ a '#' in it, then it might refer to either
the document or to the thing described by the document.

Especially the third special rule seems very random to me.

I find the w3c way of referring to a thing crazy and wrong, and I
think it's holding back the web. I think a lot of people agree with
this. M1 and M2 are probably not going to get a lot of adoption, since
pointers are hard to understand. So we can use M3, which means instead
of:

  user == 'mailto:user@host*'

we say:

  userContactMethods == ['mailto:user@host']

and:

    userDescriptions == ['http://host/~user/foaf.json#me']

I think this is called the fenomenological approach to metaphysics. It
avoid incorrect statements like user ==
'http://host/~user/foaf.json#me' and also avoids scary dereferencing
of pointers. This is for machine-readable references to a user. For
human-readable ones, we just use user addresses, and imprecise things
like first + last name.


Cheers,
Michiel
Received on Tuesday, 24 April 2012 22:32:40 UTC

This archive was generated by hypermail 2.3.1 : Tuesday, 6 January 2015 19:35:46 UTC