Hi,
Ich möchte auch hier meine Spezifikation vorstellen: Personal Avatar (aka Pavatar)
Aha. Und ich habe mich schon die ganze Zeit gefragt, was das genau werden soll, mich aber nie getraut zu fragen ;-)
Sieht insgesamt ganz gut durchdacht aus, auf Anhieb nichts Falsches gefunden. Das Diskussionswuerdige moegen andere diskutieren ;-)
Ich setze hier mal ein paar Vorschlaege hin (es ist einiges redundant und auch nicht immer eindeutig), ich hoffe ich bin nicht zu spaet und alles ist schon laengst perfekt in Form, Farbe und Schnitt :-)
1. Introduction
The Personal Avatar system is a way to use personalized small graphics to make commentators more recognizable through all sorts of websites where commentators leave comments. Commentators are able to host their Personal Avatars themselves and the implementation MUST support the commentators ability to restrict access to their Personal Avatar. The publisher of the Personal Avatar SHOULD be able to edit and cache the Personal Avatar. The publisher MUST be able to refuse a Personal Avatar.
1.a. Definitions
Commentator
Commentator is the one who leaves a comment, posts, annotations or simmilar on a publishers page and is the possessor of the Personal Avatar. The commentator and the publisher MAY be the same.
Commentors Website
A commentors website MUST be a valid HTTP URL according to [RFC 1738], which the commentor has specified as his website.
Personal Avatar
A Personal Avatar is a picture stored on the commentor's website conforming to the Personal Avatar Conformance Requirements described in 2.
Publisher
The publisher provides the service for the commentator to act. The publisher and the commentator MAY be the same.
The Personal Avatar implementation (short: implementation)
This is the implementation running the publishers's service dealing the Personal Avatars.
Now
Now referrs to the time the HTTP request is finished.
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119].
1.b. Technical Details
The implementation MUST use HTTP ([RFC 1945], [RFC 2616]) to test for the availability of a Personal Avatar at the URL specified by the commentator. In case of success, it SHOULD download, save and serve it localy but MAY also referr to the originating URL of the Personal Avatar.
An implementation MUST be able to use the HTPP caching mechanisms.
2. Personal Avatar Conformance Requirements
2.a. Technical Definition
A valid Personal Avatar MUST be a 80x80 pixel sized image in GIF ([GIF89a]), PNG ([PNG]) or JPEG ([ISO/IEC IS 10918-1], [ISO/IEC IS 14495-1], [ISO/IEC IS 15444-1]) format and MUST NOT exceed the size of 102400 Bit (twice the size of an uncompressed 80x80pixel big picture with 8-bit color depth).
A valid Personal Avatar MUST be publicly accessible through a valid HTTP URL ([RFC 1738]). This URL MUST be used to reference the Personal Avatar (see Autodiscovery).
The Personal Avatar MUST have the correct Content-Type header (e.g. with help of Apaches MultiViews). The commentator MAY use HTTP Cache-Control and/or Expires headers.
2.b. Refusing Personal Avatar requests
The commentator MAY restrict access to the Personal Avatar. The commentator MUST act accordingly to HTTP, e.g. SHOULD response with a 403 HTTP status code, if access is denied.
It is RECOMMENDED to use the key word "none" of the HTTP-Header "X-Pavatar" as described in 3.a to refuse the delivery of the Personal Avatar completly.
3. Autodiscovery
The URL of the Personal Avatar MUST be offered by the commentator in one or more of the following ways to the publisher, the use of 3.a. and 3.b. is RECOMMENDED. The publisher MUST accept all three ways.
3.a. HTTP Header
If choosed a reference to a Personal Avatar MUST be returned with a X-Pavatar HTTP header, for example:
X-Pavatar: http://example.com/my/directory/my-own_pavatar.png
The value of the X-Pavatar header MUST be the absolute URL of the Personal Avatar or the keyword "none".
The server response MUST NOT include more than one X-Pavatar
3.b. Link element
If choosed an HTML or XHTML Personal Avatar enabled page MUST contain a <link> element. It MUST have one of the following forms:
HTML
<link rel="pavatar" href="URL">
XHTML
<link rel="pavatar" href="URL" />
The URL in the "href" attribute MUST be a valid and absolute HTTP URL according to [RFC 1738] or the keyword "none".
3.c. Direct URL
If choosed there MUST be a file named "pavatar" on the commentators server.
The URL for this file MUST conform to the following form. The EBNF keywords used here are similar to the ones used in [RFC 1738].
puri = "http://" hostport *[ "/" hsegment ] "/pavatar"
Example in pseudocode:
1 IF the last hsegmet ends with a slash: GOTO 3
2 Remove the first hsegment
3 Append "pavatar" to the result
4 IF success (i.e. a 2xx answer to an HEAD request) EXIT(SUCCESS)
5 ELSE remove all hsegments
6 Append "pavatar" to the result
7 IF success (i.e. a 2xx answer to an HEAD request) EXIT(SUCCESS)
8 EXIT(FAILURE)
3.d. Precedence
The HTTP Header(3.a.) method MUST have the highest precedence, the Direct URL(3.c) method the lowest.
4. Dealing with Personal Avatars
The implementation SHOULD ensure to use as little traffic as possible to deal with Personal Avatars (e.g., use conditional get HTTP headers like If-Modified-Since).
5. Support of Conformance to Arbitrary Rules
The implementation MUST include an automatic denial-of-publish mechanism if the pavatar is unknown to the system. It SHOULD include a notification mechanism in case of an automatic denial-of-publish.
so short
Christoph Zurnieden