TDL 3 has undergone some big changes since my last note about it, the least of which is my decision to drop the “0.” from the version numbers. If TDL 3 turns out to be good enough for use, I don’t want to have to call it “0.3” forever or issue a trivial revision just so I can call it “1.0”.
Anyway, the big change since my last note is that threads (formerly called topics)
no longer define the order of their posts. After a great deal of thought, I finally
came to agree with Danny Ayers that there really aren’t any circumstances where you
would say that one post precedes another in a one topic, but follows in another.
Applications are free to display posts in whatever manner they want, but in
terms of posts themselves, all we need to do is provide a loose chronological order.
TDL 3 does this with the relation follows
(Resource
→ Resource
; that is,
it relates one resource to another). Its actual meaning is closer to “does not
precede”, but “follows” is close enough. follows
is
transitive, so if A follows B and B follows C,
then A also follows C. Linear threads would be primarily
described using follows
.
Next is mentions
(Post
→ Resource
), which fills the same role as
refersTo
and did in TDL 2. For example, this post links to my earlier post
about TDL 3, so we could relate them with mentions
. mentions
is a
sub-property of follows
, on the logic that anything that mentions something
else must have followed it chronologically. (This creates other complications,
which I will discuss elsewhere.)
A post which talks about something can be related to it with discusses
(Post
→ Resource
). For example, this post discusses TDL 3. discusses
is a sub-property of mentions
, since you can’t talk about something without
mentioning it.
A post which replies to an earlier post is related with respondsTo
(Post
→ Post
). This is the basis of forked threading, seen in message
boards, Usenet, and e-mail. It is also a sub-property of mentions
.
There is some overlap in meaning between discusses
and respondsTo
;
in cases where both senses are meaningful, one can use both.
The two sub-properties of respondsTo
are agreesWith
and disagreesWith
(both Post
→ Post
). As in TDL 2, these are used to indicate concurring
and dissenting opinions.
partOf
(Post
→ Thread
) relates a post to an explicitly-declared thread
which includes it.
And… that’s pretty much it. Notable absences include subtopicOf
and its associates,
hasPosts
, and the weblog-specific vocabulary. There are four properties which may
or may not get carried forward: initialPost
, finalPost
, content
, and
excerpt
. I have a schema written out, but I’m holding off on posting it until I
finalize what URIs I’ll be using.