Subject: OFFTOPIC: How do we add metrics data to entries?

From: "Bob Wyman" <[email-masked]>
Date: Tue, 16 Nov 2004 17:53:36 -0500

I realize that some day we'll have Atom extensibility worked out; however, I
need to add some stuff to an Atom 0.3 feed now and would like some advice on
doing it properly and in a fashion that has a chance of being compatible
with Atom v1.0. Please bear with me.

What we'd like to do is augment entries that we put in our compound feeds by
adding  "metric" information that can be used by aggregators to sort,
select, etc. For instance, at http://pubsub.com/linkranks.php we compute a
"LinkRank" for blogs based on the pattern of incoming links that they get.
We've been asked by a number of aggregator developers to insert this rank
into the entries that we publish so that they can be used in sorting,
selecting, etc. 

There are other metrics that we could add as well - various measures of
activity, popularity, relevance to specific topic areas, classifications,
etc. But, LinkRanks will be the first we deal with.

We're currently thinking that we'd like to add elements like the following
to the entries that we republish:

<ps:metric scheme="ps:LinkRank">27</ps:metric>

            This would indicate that the feed had a LinkRank of 27.

            <ps:metric scheme="ps:classification">politics</ps:metric>

            This would indicate that our classification engine believes that
the entry is discussing "politics". This would not replace any user
specified "category" data.

            Would the encoding shown above be appropriate for use in feeds?
Do you think it will end up being compatible with whatever the Atom V1.0
extensibility rules end up being? If not, can you suggest a better encoding?
Also, if you think this makes sense, could you suggest some metrics that you
would like to see inserted into entries by in-channel processors like
PubSub.com?

                        bob wyman

---

From: Danny Ayers <[email-masked]>
Date: Wed, 17 Nov 2004 22:04:18 +0100

On Tue, 16 Nov 2004 17:53:36 -0500, Bob Wyman <[email-masked]> wrote:

I think the idea has a *lot* of potential. 
The information that needs to be carried is of a pretty generic type:
(name, value) so this should make a very good use case for Atom
extensibility - on topic.

The syntax seems fine for Atom, but it would be nice* to be able to
use the same extension syntax for RSS 1.0 and 2.0 as well.
Unfortunately RDF/XML balks on this structure:

<item rdf:about="http://example.org/sdf">
      <ps:metric ps:scheme="ps:LinkRank">27</ps:metric>
</item>   

"item" is the subject, "ps:metric" is the property, and object
is...[*crunch*]

Alternatives that should work for RSS 1.0, 2.0 and Atom (assuming
appropriate namespacing) include:

<item>
  <linkRank>27</linkRank>
  <classification>politics<classification>
</item>

<item>
   <metric rdf:parseType="Resource">
      <name>LinkRank</name>
      <value>27</value>
   </metric>
</item>

<item>
   <metric>
      <Metric>
          <name>LinkRank</name>
          <value>27</value>
      </Metric>
   </metric>
</item>

<item>
<metrics rdf:parseType="Resource">
  <linkRank>27</linkRank>
  <classification>politics<classification>
</metrics>
</item>

+ plenty of others... 

> would like to see inserted into entries by in-channel processors like

Hmm, most of what could be inserted in an individual feed that would
be available to a client anyway, though things like update stats might
be good for client auto-optimization. What I've been wanting to play
with for a long while are similarity measures - how similar is this to
the posts from Tim Bray say, allowing "more like this" or (not
referring to Tim, 'course) "less like this"...and a dirty-word
rating?... yep, all that wacky machine learning stuff that's been
around for years waiting for an application...

Cheers,
Danny.

* nice, in that at least it would allow easier XSLT, at most it would
highlight modelling errors.
-- 

http://dannyayers.com