Subject: PaceLinkPurpose - working on the wording

From: Antone Roundy <[email-masked]>
Date: Wed, 20 Oct 2004 10:48:55 -0600

I've added the following to PaceLinkPurpose, just below the mention of 
@rel values being defined by extensions:

     '''Note to extension authors:''' When deciding whether to use an 
Atom Link Construct
     in your extension, or whether to use or define a different element, 
consider the
     following examples of appropriate usage.

     Example 1: If an HTML author intends for a stylesheet to be used to 
apply styling to
     an HTML page, they reference it using the HTML <link> tag. If they 
intend for the
     visitor to view the stylesheet itself, they reference it using the 
<a> tag. Link
     Constructs are to be used only for the <a> tag case.

     Example 2: To reference an image to be displayed within an HTML 
document, the <img>
     tag is used. To point to an image to be displayed by itself, the 
<a> tag is used.
     Again, Link Constructs are only to be used for the <a> tag case.

On another note, I would not object to removing the sentence "When 
retrieving the resource pointed to by the href attribute using HTTP, 
the GET method MUST be used."  The remaining definition of a Link 
Construct would be:

     A Link Construct specifies a hyperlink primarily intended to be 
traversed
     in response to an explicit user action such as clicking, selecting 
a menu item,
     drag and drop, etc. It MUST NOT have any child content.

We could go a little further and define it something like this:

	A Link Construct specifies a hyperlink to a resource related to its 
parent, which is
	primarily intended to be traversed in response to an explicit user 
action such as
	clicking, selecting a menu item, drag and drop, etc.

A final thought: if people are concerned about the possibility of 
confusion with HTML's link tag, we could call Atom's element atom:hlink 
(hyperlink) or something.

---

From: Dare Obasanjo <[email-masked]>
Date: Wed, 20 Oct 2004 10:12:19 -0700 (PDT)

--- Antone Roundy <[email-masked]> wrote:

> 
> I've added the following to PaceLinkPurpose, 
...
>      Constructs are to be used only for the <a> tag

This example is confusing since you use the example of
how things work with the HTML <link> element then say
"Don't do that". 

>      Again, Link Constructs are only to be used for

Instead of using these examples why not just grab the
definitions and exposition from the HTML 4.0 spec
since it is clear that's the idea you are trying to
get across? 

=====
THINGS TO DO IF I BECOME AN EVIL OVERLORD #23
I will keep a special cache of low-tech weapons and train my troops in their use. That way -- even if the heroes manage to neutralize my power generator and/or render the standard-issue energy weapons useless -- my troops will not be overrun by a handful of savages armed with spears and rocks.

_______________________________
Do you Yahoo!?
Declare Yourself - Register online to vote today!
http://vote.yahoo.com

---

From: Antone Roundy <[email-masked]>
Date: Wed, 20 Oct 2004 11:37:09 -0600

> how things work with the HTML <link> element then say
The point I'm trying to make is that Atom Link Constructs are NOT the 
same as HTML's link tag.  I suppose I could start off the example with 
a sentence that says that explicitly.

> since it is clear that's the idea you are trying to
Link Constructs are much closer to the HTML <a> tag, but of course, not 
identical (they don't have @name, @accesskey, @shape, @coords, 
@tabindex, @onfocus, etc.)  I took a look at the spec, but didn't see 
anything that seemed to me to define the concept I'm getting at more 
clearly.

The point of the two examples is to tell people not to do two of the 
things that people have historically tried to add values to @atom:rel 
to do.  I suspect that if we don't explicitly call these things out, 
people are going to pollute atom:link with extensions that make it 
unsuitable for use in a manner similar to what Mozilla does with links 
after it has filtered out a few values.

---

From: Dare Obasanjo <[email-masked]>
Date: Wed, 20 Oct 2004 11:00:15 -0700 (PDT)

--- Antone Roundy <[email-masked]> wrote:
>
> > Link Constructs are much closer to the HTML <a>
tag,
> but of course, not 

The HTML spec has a clear definition of what it means
to be an anchor, see
http://www.w3.org/TR/REC-html40/struct/links.html#h-12.1
in case you missed it. Instead of trying to paraphrase
what the experts in that area have written it makes
more sense to me to either grab the text from there or
simply reference the definitions in the HTML spec. 

=====

__________________________________
Do you Yahoo!?
Yahoo! Mail Address AutoComplete - You start. We finish.
http://promotions.yahoo.com/new_mail

---

From: Antone Roundy <[email-masked]>
Date: Wed, 20 Oct 2004 12:45:24 -0600

On Wednesday, October 20, 2004, at 12:00  PM, Dare Obasanjo wrote:
> in case you missed it.
I looked there.

> Instead of trying to paraphrase
I don't think referencing the HTML spec would do, given that there are 
differences between atom:link/Atom's Link Construct and HTML's <link> 
and <a> elements.  In retrospect at least, we can see that the experts 
created kind of a sloppy element in <link>--the special casing that 
Mozilla does with it being the perfect example of the flaw.  <a> is 
much better--it's usage is consistent--but it's not exactly what we're 
aiming for.  Some of the differences are pointed out above (the quote 
from my previous email).  Restating part of that conceptually, Atom's 
Link Constructs are not going to be used as the destination endpoints 
of a link the way an <a> element with @name is.  If we adopt the @rev 
attribute, they will in a way become destination endpoints, but still 
not quite in the way <a> with @name is--at least not in any usage I've 
ever seen.

As for clear definitions, I think they have good general definitions, 
but nothing specific enough for Link Constructs.  Here are a few 
candidates and what they're missing.

	"A link is a connection from one Web resource
	to another."

Yes, but we need to be more specific. For example, we DON'T mean the 
kind of connection created by img/@src, which fits that sentence fine.

	'A link has two ends -- called anchors -- and
	a direction. The link starts at the "source"
	anchor and points to the "destination" anchor,
	which may be any Web resource (e.g., an image,
	a video clip, a sound bite, a program, an HTML
	document, an element within an HTML document,
	etc.)'

Sure, and we may want to add some prose like that, but it doesn't get 
at the details of what one specific type of link which we call the Link 
Construct does.  This is a fairly general statement that by itself 
covers a lot more ground than the Link Construct.

	"The default behavior associated with a link
	is the retrieval of another Web resource.
	This behavior is commonly and implicitly
	obtained by selecting the link (e.g., by
	clicking, through keyboard input, etc.)."

Sure, and we may want some prose like this, but this is talking about 
behavior.  We don't yet have a definition of a Link Construct.

If there's "a clear definition of what it means to be an anchor" that 
would accurately define what it means to be a Link Construct, I don't 
see it there.  If you see something there that would work, please point 
out the specific text rather than just pointing to a document and 
expecting someone else to do it.