Semantic, or useful?
Inspired by the semantic elegance of Slide 12 in Tantek’s The Elements Of Meaningful XHTML presentation, I threw together a Firefox extension to do the work for me: select some text, right-click and select BlogQuote, and it wraps the text in a <blockquote> with a cite attribute and puts the page title (a first crack at getting a name-thing, maybe later I’ll try to parse things like meta elements and the dc:creator in TrackBack RDF) in a cite element, and copies the whole thing to the clipboard, so you’re ready to paste
<p><cite>Eric Meyer</cite> wrote:</p>
<blockquote cite="http://meyerweb.com/eric/thoughts/2005/03/11/social-protocols/">
<p>What's so interesting to me is that the guys who decided
to focus on the positive went out and did something;
those who want to mix in the negative seem to have
nothing to offer except complaints.</p></blockquote>
into a post. (Well, okay, you’ll be pasting <cite>Eric’s Archived Thoughts: Social Protocols</cite> wrote:, but it’s a first cut.) But here’s the problem: it’s useless blogging. It gives you (with a little cite editing):
Eric Meyer wrote:
What’s so interesting to me is that the guys who decided to focus on the positive went out and did something; those who want to mix in the negative seem to have nothing to offer except complaints.
which causes me to complain “where’s my bloody link?” Browsers don’t do anything with the cite attribute, and the cite element doesn’t have any attribute to provide a URI for the citation, and if it did browsers probably wouldn’t do anything with it, and I need a link, damn it!
The cite element can contain a link, which makes semantic sense to me, but is likely to foul up its use as million dollar markup, or a link can contain a cite element, but either way around I don’t want to imply by my link that Eric Meyer == http://meyerweb.com/eric/thoughts/2005/03/11/social-protocols/.
Is what I actually want
<p>In <a href="http://meyerweb.com/eric/thoughts/2005/03/11/social-protocols/"><cite>Social Protocols</cite></a>, <a href="http://meyerweb.com/"><cite>Eric Meyer</cite></a> wrote:</p>
(since, after all, one may cite a publication like the New York Times or an article like Mac Browser Roundup, or a weblog article like Social Protocols), or am I in danger of disappearing up my own semantic navel?
Or you add the traditional link as the last line in the blockquote. But to keep it more or less semantic, use the name of the source as link text, not simply ’link’ like Boingboing annoyingly does.
In either case, it is a workaround for browsers that don’t autogenerate such links. And browsers have no incentive to autogenerate such links, because that would usually duplicate a real link already put in, or in the vicinity of, the blockquote. Conclusion: adding the cite attribute would be wasteful duplication. A single
citeelement insideblockquoteis good enough for million dollar markup.<p><cite>Eric Meyer</cite> wrote:</p>
<blockquote>
<p>What's so interesting to me ...</p>
<p>(Link: <a href="http://meyerweb.com/eric/thoughts/2005/03/11/social-protocols/"><cite>Social protocols</cite></a>)</p>
</blockquote>
You may be right, the semantics of
blockquotemay be so polluted that we are free to put anything inside one that we want, but it just doesn’t feel right to me.How would you tell your quote plus cite from a quote of someone else’s cite? In context, for a reader who knows that (Link: … ) means ”this is my addition to the quote,” yes, but for someone or some program looking at a single post for the first time?
You can just link directly to slide 12, rather than providing detailed instructions to find it ourselves.
I also agree that browsers really do need to make use of the cite attribute somehow. The question is what could be done with it?
Perhaps someone could make a Firefox extension to do this in one way or another and if it proves useful, perhaps it would be included by default and copied by other browsers.
Bloody hell. I did try the obvious thing, linking to the anchor, but I wasn’t smart enough to try it externally. I just added #slide12 to the URL while I was on another slide.
A non-visible thing like a context menu option doesn’t seem like it would see much use: blockquotes with cites are probably very rare, and I’m not likely to right-click every one I come across, just to see if there’s an option there.
Greasemonkeying in a link would be easy enough, but to not be weird it would need to look half a dozen nodes on either side of the blockquote, and only insert a link if there wasn’t already one there, and how tiny a number of target pages is that, that have a blockquote cite with a URL but don’t also link to the URL near the quote?
I use a little Javascript on my weblog (http://dealmeida.net/js/46_blockquotes.js) that extracts the URI from the cite attribute and append it in a link below the blockquote.
You can also use URIs like
urn:quote:author_name, ie:And the script will make a link to more quotations by Feynman.
That is not a valid URN. ”quote” is not a registered URN Namespace Identifier, and ”Richard Feynman” is not a valid Namespace Specific String. Please read RFC 2141.
That’s why someday I’m going to write an article called “Why XHTML is too hard for oceanographers”… :)
I could easily fix “Richard Feynman” to “Richard%20Feynman”, but what could I do about the “quote” NID? I just want to put a valid URN when citing somebody without an URL.
I’ve seen a lot of people use variations on Simon Willison’s blockquotes script (I even use it myself), but I’ve never seen the urn:quote thing. That’s quite cute.
Note to self: never let Anne do UI ;)
And that’s in a weblog post?
The Mozilla Markup Reference suggests using
<address>with<blockquote>to link back to the source document:http://www.mozilla.org/contribute/writing/markup#quotations
Well the Mozilla Markup Reference is wrong. The <address> element type is contact information for the author of the HTML document. It’s got nothing to do with quotes.
http://www.w3.org/TR/REC-html40/struct/global.html#edef-ADDRESS
In a typical blog quote post, the quote is as much of the document as the post author’s share, or more, and the only contact information the post author has the right to publish without asking is the URL where a reader can go looking for email addresses and the like.
Not perfect, but would something like:
blockquote:after
{
content: ”From: ” attr(cite);
}
in the CSS help?
This is probably not possible, but: can that sort of thing be linked?
Theoretically, certain versions of Opera should be able to, through their CSS Linking Extensions.
In practice, you’re left with using ECMAScript and the DOM.
It is very unfortunate that they never supported it for any namespace. It would be awesome if they updated Opera to reflect that.
Not really, because you want it to be a link. You could then *maybe* use that in conjunction with one of the bundled a GreaseMonkey scripts (or an extension) that turns plain text URLs into links.
Or you could just wait for someone to write the GreaseMonkey script to do it all for you.
Sorry, I framed the question poorly, and sent you off on interesting tangents, but tangents none the less.
This is BlogQuote, an attempt to automate making the standard ”link, quote, comment” blog post as semantic as possible. Things that would work well with blockquotes in an article or academic paper, or would work well when only a small number of readers are likely to be interested in a link to the source, aren’t options, and I don’t think that anything which puts the link at the end of the quote is an option.
When you quote someone in an article or paper or book, you want to say ”’The foo is frobisher.’ John Smith said that.” When you quote someone in a blog post, you want to say ”In a post at this URL, John Smith said that ’The foo is frobisher.’”
The link is the core, the heart, the very reason for the post’s existence. A blog consisting of nothing but links is a fine and useful thing. A blog consisting of nothing but unattributed quotes would be useless. So, I don’t think anything which involves JavaScript, no matter how clever, or CSS, no matter how elegant, is on the table.
Borrowing Tantek’s response:
Which is fine as far as it goes, but: my problem is that I don’t add the semantics to quotes (beyond
<blockquote>because I’m too lazy, and my existing bookmarklet tools don’t do it for me, so I’m building a tool that will, but it also needs to deal with the basics.Basics which are going to be, at best, poorly dealt with: a little looking around at where I can find person-name-things and publication-name-things doesn’t make me very confident. More people (and WordPresses) all the time seem to be just dropping TrackBack autodiscovery RDF, or it may be found in the DOM (mine) or just as an unparsed wodge of comment (most people’s), but it’s still only likely to net me the author’s login name for Movable Type.
”Basics which are going to be, at best, poorly dealt with: a little looking around at where I can find person-name-things and publication-name-things doesn’t make me very confident.”
Phil: Well, there’s a lotta FOAF out there. I’d certainly look for that before trying to dig something useful out of Trackback’s autodisco.
User Javascript in Opera 8 beta 3
Opera 8 beta 3 adds User Javascript functionality. Use it to get rid of site annoyances, and extend web site functionality.